consensus-step
Run a single step in a client-driven consensus loop: init, record blind verdict, dispatch peer review, adjudicate, or submit revision. Each call advances the session toward convergence.
Instructions
Client-driven consensus loop where YOU (the host model) are the arbiter, one action per call: init (returns sessionId + blind prompt) -> record_blind (your pre-commit verdict) -> dispatch_peers (server fans out to the providers) -> submit_adjudication (your verdict + per-issue accept/dismiss/defer) -> submit_revision (your revised plan), looping until converged or consensus.maxRounds rounds (default 5). Only the dispatch_peers action calls external providers; the others are local transitions on the ephemeral per-session loop store (keyed by sessionId, lost on server restart). Each call returns a text-wrapped JSON envelope with the next status/round (plus blindPrompt, opinions[], or finalReport by action). Advisory to the outside world, but mutates server loop state on every call.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | dispatch_peers only: working directory the peer providers run in. | |
| action | Yes | Which loop step to run this call, in order: init -> record_blind -> dispatch_peers -> submit_adjudication -> submit_revision. | |
| expert | No | init only: optional persona for the peer panel (see the expert tools). | |
| prompt | No | init only: the plan/proposal under review. | |
| verdict | No | submit_adjudication only: your adjudicated verdict after weighing the panel. | |
| decisions | No | submit_adjudication only: per-issue rulings, each { source, category, description, action: accept|dismiss|defer, reason }; dismiss/defer require a reason. | |
| sessionId | No | Loop id returned by init; required on every action except init. | |
| diffSummary | No | submit_revision only: one line summarizing what changed. | |
| revisedPlan | No | submit_revision only: the full revised plan addressing accepted issues. | |
| blindVerdict | No | record_blind only: your pre-commit verdict text, written before the panel is revealed. |