How it works

One request, one role, a small set of extras.

1. Route

The first message of a conversation goes to route_and_load. The server ranks the available personas and returns candidates, or a ready bundle when the choice is clear.

2. Load

get_agent_context returns four blocks: the persona prompt, always-on rules, relevant skills and optional reasoning implants. The client applies them as the active role and keeps a descriptor of what is loaded.

3. Keep, switch or refresh

Follow-up messages inside the same role need no server calls. A new specialisation switches the role; a task that needs more skills refreshes the same role. Each new bundle replaces the previous one instead of piling up.

4. Delegate

When work is handed to a subagent, the server prepares a compact package with the task, acceptance criteria and result schema. The result comes back as structured JSON and is validated before the parent accepts it.

5. Log

Every answer is logged with its attribution, so you can see which role, skills and rules produced it.

Deployment

Standalone stdio process, or a shared HTTP daemon bound to the loopback interface on one machine. The daemon is not designed to be exposed to the internet.