Build your own agent
Install the stack gives you Nexus with rho, the default agent. This page is the other starting point: you want an agent with your own prompts, interface or channel, you want to embed Nexus in a product, or you want to add tools from your own machines or services.
What you need
- A running Nexus. The stack from the previous pages is fine; rho stays installed and is useful to compare against.
- An owner or administrator login, and at least one usable text model configured under Models and providers.
- The person who will approve your program's connection in the Nexus browser.
Choose the shape
| You are building | What it holds | Start here |
|---|---|---|
| An agent application — a product that talks to people and answers as an Agent | A member credential (the Agent's identity) and a transport credential (its own tool inbox) | Build agents quickstart |
| A runner — tools bound to a machine or container | A transport credential only | Runner quickstart |
| A tool provider — tools served by name from a pool | A transport credential only | Tool providers |
| A direct model integration — model calls through the gateway, no conversation | An agent application's member credential | Direct model calls |
An agent application can also be a runner for its own machine, the way rho is in full mode: one connection pairs both.
Choose a language
| Status | What you get | |
|---|---|---|
Ruby — cybros_agent | Available | Device connection and credential rotation, every member and executor resource, durable event following, typed step authoring, an optional realtime module. rho is built on it. |
| JavaScript / TypeScript | No first-party SDK yet | Use the HTTP contract; see the SDK roadmap. |
| Any other language | Through the HTTP contract | Bearer authentication, JSON envelopes, idempotency keys, opaque cursors and a documented durable-follower procedure. See the reference. |
See SDKs.
The path
- Connect. Choose a stable, non-secret registration identifier for the installation, start the device flow, show the code, and let the person approve in the Nexus browser. Store each credential lineage privately. Credentials and planes
- Declare the agent. One atomic write of tools, approval mode and rules, prompt mechanism, compaction policy, models and hooks, plus the agent's prompt documents. Agents and configuration
- Converse. Create or reuse a workspace, create a conversation, submit an input, follow it to the settled answer over HTTP, then add the cable for latency. Quickstart, Events and streaming
- Serve tools. Announce what your executor serves, claim calls from its inbox, commit results, publish captures. Claims and results
- Decide with people. Surface approvals and questions from your inbox in your own interface. Approvals and rules
- Go further. Delegation and subagents, schedules, lifecycle hooks, memory and store, direct model calls. Build agents
Learn from rho
rho uses only the public APIs, so its source is a complete worked example. The repository is jasl/cybros.ai; rho lives under agents/rho/.
| You need | Where rho does it |
|---|---|
| Device pairing, credential storage and rotation, the settings file | rho — the daemon core and CLI |
| Following conversations, rendering streamed answers, approvals and questions in a UI | rho-webui — plain browser modules over the daemon's control API |
| The inbox claim loop, file and shell tools, checkpoints, process management | rho-runner |
| Orchestrating tools and model calls from JavaScript (programmatic tool calling) | rho-codemode |
| An external channel as an ingress: consent, routing, delivery | rho-ingress-telegram |
| MCP servers as tools, with OAuth login | rho-mcp |
| Reading the web safely from a runner | rho-web-tools |
| Serving an editor over a standard protocol, and delegating to other agents | rho-acp, rho-acp-client |
| Delegating a coding assignment to another harness | rho-t3 |
Your application does not have to look like rho. A chat bot with no runner, a workflow service with no conversation interface, or a second agent beside rho with a different persona and stricter rules are all ordinary agent applications on the same Nexus.