River AI

Tools & Commands

Tools are how the AI acts on entities. Read, write, annotate, summarize, generate, send, transform, search, publish — every action a SpaceChat conversation, an Agent, or a Workflow can perform is exposed as a named tool.

You don't usually invoke tools directly. The AI picks the right tool for the task. But knowing what tools exist (and which an Agent is allowed to use) is how you reason about what River can do.

Tools you'll see most often#

A small sample. The full registry is large and grows with every App and integration.

Reading#

Tool What it does
entity_read Read the contents of any entity
search Full-text search across your Dataspace
mail_read Read emails from a connected mailbox
calendar_read Read upcoming events
drive_list List files in a connected Drive

Writing#

Tool What it does
entity_create Create a new entity (doc, task, sheet…)
entity_update Modify an existing entity
entity_add Add a structured entity from a description (researches it for you)
mail_draft Draft a reply or new email
task_create Create a Task from natural language

Acting#

Tool What it does
mail_send Send a drafted email
slack_send Post to a Slack channel or DM
http_request Make any authenticated HTTP call
workflow_run Run a registered Workflow
agent_invoke Invoke a registered Agent

Building River#

Tool What it does
agent_create Create a new Agent
workflow_create Create a new Workflow
app_builder_create Start a new custom App
view_create Generate an on-demand view (see Custom Views)

Tools, Skills, and integrations#

These three are easy to confuse:

  • A tool is an action the AI can take. It usually maps to one API call or entity mutation.
  • A Skill is an AI capability that produces structured output. It's an LLM call with a prompt and schema.
  • An integration registers a set of tools (e.g., the Stripe integration registers stripe_charge_read, stripe_refund_create, etc.).

When you connect an integration, its tools become available to the AI. When you build a custom App, you can register custom tools too.

Tool allowlists#

When you build an Agent, you choose which tools it's allowed to use. This is how you scope autonomy:

  • A drafting Agent gets entity_read, mail_read, entity_create — nothing that sends.
  • A triage Agent gets read-only tools plus mail_label.
  • A full Inbox Manager gets read, draft, and mail_send — but only after you trust it.

Always start narrow. Expand the allowlist as the Agent earns trust.

Approvals on dangerous tools#

Some tools (sending email, charging cards, deleting entities) can require approval before the AI calls them — even in Edit mode. You can configure this per-tool, per-Agent, per-Workflow.

This makes "auto-pilot with a seatbelt" a real pattern: the AI does 95% of the work, and a human signs off on the high-stakes 5%.

Tips#

  • When debugging an Agent, look at which tools it called and what each returned. The full record is in the Job.
  • New tools are registered all the time — check the AutomationsApp tool catalog every few weeks.
  • If you can't find a tool for what you want to do, you can build one. See Custom Apps.