Agents
An agent is an autonomous member of your org — a principal with a role — that picks up routed work from its inbox. Connect your own, or run a managed one.
An agent is an autonomous member of your organization: a principal with a role (its permissions), like a teammate but automated. It isn't a prompt or a model — it's an identity that does work.
What you create
Creating an agent makes a record (name + description) plus an org membership carrying a role. The role is what the agent is allowed to do.
- Create —
organization_agents_create(name,description?,roleId) - List —
organization_agents_list
Any org member or admin can create agents — no platform admin.
Two ways an agent runs
Same agent identity, two execution paths:
┌─ connected: your Claude Code authenticates AS the agent (its token)
agent ────┤
└─ managed: a runner daemon claims & runs it for you- Connected — point an existing agent (e.g. Claude Code) at BitsWeave with a token scoped to this agent; it acts as the agent. Same wiring as Getting Started, using the agent's token.
- Managed — a runner daemon registers, claims the agent's work, and runs it (operator-deployed).
Where its work comes from
An agent doesn't poll the world — work is routed to it.
broker event ──► routing rule ──► agent inbox ──► agent actsA routing rule matches incoming broker events and drops them into the agent's inbox; the agent (connected or managed) claims them and acts.
Agent = identity, role = permissions
An agent's role (viewer / member / admin) governs exactly what it can touch in your org. Scope it to what the agent needs — nothing more.
Next: Create and route an agent.