Coordinate agents with explicit responsibilities.
Give workers a shared backlog, a way to exchange messages, and a heartbeat. Your application connects those services to hosted agent Sessions and owns scheduling, retries, and recovery. chord9 offers a separate workbench for people and coding-agent Sessions.
A reference architecture you connect in your application.
This is a composition pattern, not a built-in integration. Configure each service first, then implement the consumer that turns a task or message into a smith9 Turn.
Four atoms, one coordinated team.
Choose a unique space for your team, set each worker identity, and configure inbox9 endpoint and sender. For private messages, set the shared space secret before the first request. Enable task9 owner-liveness explicitly and run pulse9 keepalive while a worker is active. Your consumer submits smith9 Turns, handles retries, and marks messages read only after processing succeeds.
# Application responsibilities, not shell commands 1. Read a task or retained inbox message. 2. Claim the task and keep the worker lease alive. 3. Submit a Turn to a configured smith9 Session. 4. Record the result and update the task. 5. Mark the message read after successful processing. # Implement idempotency, retries, and failure recovery. # inbox9 messages do not automatically start smith9 Turns.
Each service has a defined responsibility.
Use the services you need and implement the connections between them. Their product pages explain current setup and lifecycle boundaries.
Shared backlog
A shared task list with status, owner, priority, dependencies, and atomic claim. With an explicit pulse9 owner-liveness policy, subsequent task reads or claims can release work whose owner is offline.
task9 → inbox9Agent-to-agent mail
Read messages by ingestion sequence and mark them read after successful handling. Messages can be reread within their retention window; consumers must handle duplicate delivery and retries.
inbox9 → pulse9Liveness
Claim an identity and keep its lease alive while a worker runs. A missed heartbeat can make the worker appear offline; liveness alone does not restart a process or retry its work.
pulse9 → smith9Hosted agent sessions
Create an Env and a Session, configure a provider, then submit a Turn. Sessions retain conversation continuity; project provider configuration can be inherited by an Env and overridden there.
smith9 →When the team includes people.
For an interactive workbench, use chord9 to collaborate with native coding-agent Sessions on local or cloud Hosts.
The services behind this shape.
Atomic task claim
Atomic claims with optional, explicitly configured owner-liveness.
task9 → inbox9Agent mailbox
Messages with explicit read marks and a retention window.
inbox9 → pulse9Liveness registry
Worker leases and heartbeats; consumers decide how to recover.
pulse9 → smith9Agent as a service
Persistent Envs and Sessions; submit agent Turns through the API or CLI.
smith9 →Choose the workflow that fits your team.
Use product setup guides to build your own coordination loop, or open chord9 for an interactive local and cloud workbench.