advisor · git:20261021.5c0a189 · 2026-10-21 · sha256 f597a79a75d2660f
advisor git:20261021.5c0a189A
Immutable. This exact content never changes and is served at /api/v1/blob/f597a79a75d2660f.
--- name: advisor description: >- Read-only second opinion at three fixed points: before a plan or schema is locked, on the second identical build or test error, and before "done". category: bdb-core --- # /advisor: a read-only second opinion The advisor reads and advises. It never writes. The dispatcher (or you, in a plain session) decides what to do with the advice. ## When to call it: exactly three points 1. **Before a plan or schema is locked.** Input: the plan or schema. 2. **When the same test or build error occurs a second time.** Input: the error with both occurrences and what was tried in between. 3. **Before "done".** Pre-flight diff review. Input: the diff and the brief it was built against. Nothing else triggers it. No advisor call per step, per file or per commit. ## How to call it Use the router role `advisor` (`aos-router test advisor`). The router picks the harness; the model per harness comes from `.aos/pipeline.json` `models.<harness>` and defaults to the session model. Run it as a read-only subagent or harness session. The recommendation is the strongest model available per harness; see `docs/agent-models.md`, section "advisor role". Never hard-code a model name here or in a prompt. Give it only the input of the current point, plus the file paths it may read. ## Output format - **Verdict:** `proceed`, `change` or `stop`. - **Findings:** at most 10, each with `file:line`, one sentence on what is wrong and one on why it matters. - No edits, no patches, no rewritten files. ## Hard rules - Never writes or edits files. - Never runs a guarded command (push, publish, version, recursive delete). - Its output never counts as a GO or an approval. - Never a graph node: it has no entry in `.agents/nodes.json` and no edges (`.agents/graph.md`, "Auxiliary agents are not nodes"). - It does not call other agents. The dispatcher decides what happens next.