consensus
Run multi-round consensus convergence with a provider arbiter to settle questions, or synthesize open-ended queries in one pass.
Instructions
Run the FULL multi-round consensus convergence loop server-side with a provider arbiter (blind pass + peer fan-out -> adjudicate -> revise) and return the converged verdict. Default depth is consensus.maxRounds (config, default 5); pass maxRounds to override. Pass synthesizeAlways:true for a SINGLE arbiter synthesis pass instead of the loop (best for open questions, not plan convergence): it returns a free-text synthesis and maxRounds is ignored. Configure the arbiter via consensus.arbiter - a concrete provider/openrouter alias runs server-side; host mode returns the opinions for YOU to synthesize. Advisory; pass expert to apply a persona. Calls external providers (keys/CLI; rate limits apply); returns a text-wrapped JSON envelope (split verdict/synthesis, loop fields nullable) and persists a session record only when sessions.persist is enabled (default off). NOTE (Claude Code): use the /consensus slash command for the transcript-visible host-arbiter loop (it drives consensus-step); this tool is the provider-arbiter path for any host.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | Working directory the provider runs in (used to resolve relative file refs). Defaults to the server process directory. | |
| files | No | Optional attachments for providers that read files (Grok/OpenRouter; inlined as context for Codex/Gemini). Each item is EXACTLY ONE of path/dir/file_id/file_url. | |
| expert | No | Optional persona: architect, plan-reviewer, scope-analyst, code-reviewer, security-analyst, researcher, or debugger. On a named expert tool the tool's own persona wins and this is ignored. | |
| prompt | Yes | The question or task for the provider(s)/expert. | |
| maxRounds | No | Override consensus.maxRounds for this call (loop mode only; ignored when synthesizeAlways is true). Clamped to 50. | |
| reasoningEffort | No | Reasoning depth where the provider supports it (Grok, OpenRouter): low, medium, high, or none. CLI providers (Codex, Gemini) ignore it. | |
| synthesizeAlways | No | Run ONE arbiter synthesis pass instead of the convergence loop. Returns a free-text `synthesis` (verdict/converged/confidence are null, rounds is 1). Best for open questions. | |
| developerInstructions | No | Optional system/developer instructions injected verbatim; overrides the built-in persona for `expert`. |