Multi-Agent Setup

Why separate Identities?

When running multiple agents, each should have its own Identity:

  • Isolation — one agent’s credentials don’t leak to another
  • Clean inboxes — each agent only sees its own messages
  • Parallel operation — agents work independently without blocking each other
  • Revocability — disable one agent without affecting others

Example setup

research-agent   → research@in.ravi.app    (newsletters, reports, data platforms)
scheduler-agent  → calendar@in.ravi.app    (meeting invites, reminders)
finance-agent    → invoices@in.ravi.app    (receipts, billing, expense tracking)

Create Identities

ravi identity create --name "research-agent" --json
ravi identity create --name "scheduler-agent" --json
ravi identity create --name "finance-agent" --json

Per-project configuration

Use per-project config files to automatically scope each project to its Identity. Place a .ravi/config.json in each project directory:

~/projects/research-agent/.ravi/config.json

{
  "identity_uuid": "research-uuid-here",
  "identity_name": "research-agent"
}

~/projects/finance-agent/.ravi/config.json

{
  "identity_uuid": "finance-uuid-here",
  "identity_name": "finance-agent"
}

When the agent runs from its project directory, the CLI automatically uses the correct Identity.

Switching Identities manually

If you’re not using per-project configs, switch with:

ravi identity use research-agent
# ... run research commands ...

ravi identity use finance-agent
# ... run finance commands ...

OpenClaw multi-agent

For OpenClaw, configure each agent instance with a different Identity in the plugin config:

plugins:
  ravi:
    identityUuid: "research-uuid-here"

Each OpenClaw instance reads its own config, so agents stay isolated.

Security considerations

  • Each Identity has its own encryption keys derived from the same PIN
  • One Identity’s vault cannot be accessed from another Identity
  • Revoking an Identity disables all its email, phone, and vault access
  • Agent compromises are contained to the affected Identity

Next steps