Internal Ops Agent Template
What it is
A starting point for an internal agent that does operational work. It is connected to your tools (Slack, email, your database) and runs on a schedule. Sensitive actions go through a tool-approval gate so a human signs off before the agent sends or writes anything.
Recursiv ships hundreds of data integrations, so the same pattern extends to whatever your ops touch.
What it includes
How to start it
Create the agent and its database, then connect integrations.
Connect integrations
Connect the providers your ops touch. Browse the catalog with r.integrations.listApps() and r.integrations.getTools(provider).
Run on a schedule
A cron job runs the agent’s routine. Its handler_code executes in the project sandbox.
Approve tool calls
Because the agent is in permission mode, sensitive tool calls wait for a human. Surface pending calls and approve or reject them.
Key SDK calls
r.agents.create({ tool_mode: 'permission', model, system_prompt })- the gated agentr.databases.ensure({ project_id, name })- ops state and logsr.integrations.listApps(),r.integrations.getTools(provider),r.integrations.connect({ provider, organization_id })- wire up toolsr.integrations.executeTool({ connection_id, tool, arguments })- run a tool deterministicallyr.jobs.create({ name, cron, handler_code, project_id })- the scheduled routiner.integrations.listPendingExecutions(conversationId),approveExecution(id),rejectExecution(id)- tool approvals
Next steps
- Connect Node.js to script the agent
- Quickstart for first calls
- API Reference for every endpoint