Current dated version: 2026-11-11.
Agentic Team Protocol: host behaviour (non-normative), version 2026-11-11
Non-normative. This page describes how a host treats an Agentic Team Protocol package, using Domios as the reference host. Nothing here is a conformance requirement of the package format, and RFC 2119 keywords are not used here. The portable format is defined only in index.md. This specification defines no permission authority: a package asks, and each host decides what to grant under its own policy.
1. Portable format and host policy
The package format (index.md) says what a package contains and when it is valid. Everything else is host policy:
- what a host grants
- where secret values come from
- how teams start, recover and are updated
- which models are chosen
- how packages are found
Hosts can differ on all of these points and still read the same packages.
2. Practices for any host
2.1 Imported permissions start at zero
A package's permissions, secrets, requires and inputs are requests, not grants. Domios grants nothing by default when it imports a package. A package from another person counts as unverified and starts with zero default grants. It goes through the same owner preview and consent as any package that needs new grants. Opening a preview is not consent.
2.2 Secrets by name only
A package names the secrets it needs (secrets[].name, with purpose and required). It never carries their values. The host binds each named secret to a value from its own local secret store, on the machine where the role runs. Exports leave out every secret value, from instructions, files, memory and skills alike. Secret values never travel with a package and never cross machines with it.
2.3 Version updates never change running teams
A package version is immutable once published. Domios pins each team's role registrations to the package identity (name and version). A new package version, or an updated template, does not change a team that is already running. Re-running a start on an existing team skips the managers and registrations that already exist and reports them. A registration pinned to a different package version is reported and never overwritten.
2.4 Runtime recovery
- If a manager fails to start, for example because no usable model or harness is available, the failure goes back to the caller.
- Once the orchestrator is up, any later start failures go to it once, as one summary of the roles that started and the roles that failed, with reasons. The host does not retry silently.
- The orchestrator recovers through respawn and model substitution, and asks the owner about anything outside its own authority.
- If a model becomes unusable mid-run (sign-out, quota, removal), the coordinator is respawned on the next eligible model in the role's list. When the list runs out, the owner is asked.
- A peer that goes offline before or during a run is reported explicitly. There is no false-ready member, no duplicate Worker and no blind replay.
2.5 Literal instructions plus host runtime text
A role's instructions reach the agent exactly as written: nothing is substituted. The host then appends its own runtime text per group (managers, workers) and per manager slot. In Domios this text is the primer, routing contract, AgentPad, plan-task flags, Worker context, rendering and reporting rules. Package instructions cannot replace or override host text: the host text is appended after them, never replaced by them. The host runtime text is never written into an exported package.
2.6 Default-package semantics
When a team is created without a package, Domios uses its builtin default package. That package is pre-release and is not published with this version of the specification. Its host default roles behave as follows:
- The
with_teammanagers,orchestratorandplanner, start with the team. cartographer(on_demand) and the workersworker,qa,reviewerandrelease_manager(on_demand) are registered, not pre-spawned. The orchestrator starts them when it needs them.curatorruns on its45m..2hschedule withmodel: {same_as: orchestrator}.- The package defines no other models. The owner picks a model for each
with_teammanager at start, and workers use the host's dispatch defaults. - A package that omits an optional manager slot gets Domios's default manager for that slot.
- The Domios host profile lists the built-in worker names
worker,qa,reviewerandrelease_manager. When Domios runs the reference validator, this profile is the default (index.md section 10.7). - A package worker with one of these names, and a package manager slot, takes the Domios default role's value for each field it omits, instructions included. Built-in workers that the package does not name stay available.
- Teams with no role registrations, including Teams restored from before packages existed, resolve to the default package.
3. Domios-specific behaviour
The rest of this page describes Domios as the reference host. Other hosts are not expected to copy it.
3.1 Team lifecycle
- A template is one package in any of its three forms. Starting a team from a template uses Domios's existing Team-creation primitive. Without a template, it uses the builtin default package. There is no separate template rail and no pre-spawned fleet.
- On start, Domios creates the
with_teammanagers and records the remaining roles in a durable, per-Team role-registration store. That store survives restart and restore. - The orchestrator starts registered roles when it needs them, through ordinary
agent spawn --roleandplan task dispatch --role, including on mesh peers. - Payload items are applied at start:
filesland in the Team's knowledge directory and are listed, with their descriptions, in role prompts.memoryitems are seeded intodomios mem, scoped to the Team.skillsregister as Team-scoped skills.automationis applied as Domios Blueprints.- The preview lists every payload item with a per-item opt-out and flags scripts as executable. Items the owner opts out of are never applied.
- The
x-domiosextension holds only Domios-specific keys, such asmin_version. Other hosts ignore it. domios team checkvalidates all three forms.team exportand "Save as template" write any form (--format yaml|team|folder; yaml by default). A binary asset such as a PNG icon requiresteamorfolder. Export, then import, then export is byte-identical. Baking a team recordsderived_fromfrom the template it started from. The exporter shows a scrub report of the personal data and secrets it removed.
3.2 Authority
- Manager slots have duties that Domios knows. A slot's authority comes from the host, never from the package.
- Role precedence is task > team > builtin. A task's personality, role guidance and model override the role's own.
- Machine placement is Domios registration data that the owner chooses. Packages do not set it.
3.3 Consent
- The Domios server enforces consent. A package that is unverified, or that needs new grants, starts only with a recorded owner decision issued by the preview.
- Missing inputs are gathered first.
- Domios's General agent asks the owner for choices and never grants permissions to itself.
- An unresolved skill reference is shown as a warning in the preview and returned by start. A malformed package is refused.
3.4 Model policy
- One decision service chooses each role's model. It takes the role's model list, the target machine's catalogue and the role's hard needs (reasoning effort,
requires.harnesses, tool presence). It returns the chosen model with a reason, ranked eligible alternatives, or a blocked reason. - Falling back within the role's list happens automatically and is always shown to the owner. A model outside the list needs a human pick.
- A
with_teammanager with no model gets the owner's pick at start. A worker with no model uses the dispatch defaults. {same_as: <role>}resolves to that role's resolved model on the target machine.- An unsupported
reasoningvalue is quietly clamped to the nearest supported value. - Renamed model ids get ranked suggestions of close ids. Remote roles use the target peer's catalogue.
- Owner choices are kept in the Team's registrations or in local preferences, never in the package.
- Domios clamps a valid curator
schedulerange to its own bounds and keeps the existing Curator modes (Auto, Heartbeat, Off). Clamping is host policy. It is not a format error: the format rejects only malformed durations and a<min>greater than<max>.
3.5 Memory recall
Builtin and saved templates are indexed in domios mem by title, description and when. When a team is created, Domios suggests the best-matching template first, and the default package is always available as a fallback. There is no separate search index.