Components

Convene / D.O.P.E.

docs/07-CONVENE-DOPE.md: point agents at a target — a task, a path, a glob, or a description — and the right team assembles, reasons, and executes, escalating to a human only at defined walls. The CLI's job is only the phase state machine; everything a phase does is agent judgment over the seven verbs.

Status: DESIGN APPROVED 2026-07-02 — pending written-spec review before implementation

The 11 phases

A linear graph with two exceptions: DISCUSS loops on itself up to discuss_cap before auto-tiebreaking, and ESCALATED is reachable from any non-terminal phase — "the only door a human walks through."

01
ACQUIRE
Target resolution. Classifier checks in order: task-tracker ID shape, an existing path, a glob, else treated as a description and logged as a context gap rather than failed.
docs/07-CONVENE-DOPE.md §4
Mixed targets
A task ID AND a file path are both supported — the case file just gets a section for each.
02
CASE_FILE
The CLI assembles CASE-FILE.md: target description, Headbox harvest if present (preferred, not required), relevant GOALS.md entries + latest checkpoint, and an explicit Context Gaps section — load-bearing, not a footnote.
docs/07-CONVENE-DOPE.md §5
Rule
No scout reads the raw target without this file first.
03
JUDGMENT
Two generalist scouts classify what KIND of operation this is before anyone picks a specialist team — "you cannot know the right lineup until you know the operation."
docs/07-CONVENE-DOPE.md §6
operation_shape values
research | interview | implementation_plan | ops_plan | briefs | sprawl | mixed
04
SCOUT_SELECT
Two agents from DIFFERENT capability profiles — never two from the same lane — preferring heavier-budget lanes. Light-lane agents join later, at EXECUTE, not as first-in scouts.
docs/07-CONVENE-DOPE.md §7
Depends on
agent.schema.json's planned `lane: heavy|light` field — see components-schemas.html#agent-schema
05
DISCUSS ⟲
Each scout independently writes RECON-<agent>.md: atomized claims with citations, an explicit contradictions list, an explicit gaps list — "sprawl-lite." discuss_round is mechanical; converge within discuss_cap (default 3) or the CLI auto-selects a third capability-matched tiebreaker.
docs/07-CONVENE-DOPE.md §7
Explicit non-rule
Disagreement between scouts is NEVER itself an escalation to a human — only §10's four triggers are.
06
TEAM_SELECT
Capability-match every roster agent's agent.json against operation_shape and the case file — not the raw target. Assemble the smallest team that covers what's needed.
docs/07-CONVENE-DOPE.md §8
Zero qualified candidates
Escalate to hub — but the fast path is real: a TEMPORARY persona (soul.md + heartbeat.md + agent.json flagged "temporary": true) can be generated on the spot, scoped to this convening, retired at CLOSED unless promoted.
07
ORGANIZE
The reconciled Discuss output becomes a self-authored BRIEF.md — same shape as a hand-written wave brief. If operation_shape includes "sprawl", this is where a real Sprawler instance gets bootstrapped as a handoff, not something Convene supervises.
docs/07-CONVENE-DOPE.md §9, §7.1
Hard rule
Cannot enter TEAM_SELECT without a non-null operation_shape on file (enforced by the CLI, not agreed).
08
PRIORITIZE
The roster's designated orchestrator persona is pulled in as convening lead for Organize/Prioritize/Execute — regardless of whether they scouted. Discuss stays decentralized; execution routes through a stable lead.
docs/07-CONVENE-DOPE.md §9
Reuse, don't rebuild
No new execution primitives — same ujima send assignments, two-check merge gate, poll cadence.
09
EXECUTE
Work happens through the seven verbs already defined: ujima send assignments, ujima status/ujima log, the adaptive poll cadence. Light-lane agents join here for review and small mechanical tasks.
docs/07-CONVENE-DOPE.md §9
Hard rule
Cannot enter EXECUTE without initiatives/<slug>/BRIEF.md existing on disk.
10
CLOSED
Terminal. Reachable only from EXECUTE via `convene close`, and only with a checkpoint reference — writes a `ujima checkpoint` summarizing the convening and archives initiatives/<slug>/.
docs/07-CONVENE-DOPE.md §3, §9 · cli/ujima.py:1674
Hard rule
CLOSED requires a checkpoint reference. No exceptions.
11
ESCALATED
"The only door a human walks through." Reachable from any non-terminal phase via `convene escalate`; `convene resume` returns to the phase it left after the human answers.
docs/07-CONVENE-DOPE.md §10 · cli/ujima.py:1663,1670
CLI enforcement, verbatim intent
"ESCALATED is reachable from any phase, and is the ONLY phase a human message originates from." — §3