Sections
On this page

Statuses, MCP, and glossary

A compact reference for run states, the live MCP surface, budgets, policies, and council vocabulary.

queuedrunningwaiting_for_agentwaiting_for_usercompletedfailedcancelled

MCP surface

Builder

harness.list · create · create_version · add_role · add_workflow_node · connect_workflow_nodes · set_budget · set_context_policy · set_output_schema · set_policy · validate · publish

Runs

harness.start_run · get_run · list_runs · list_pending_approvals · retry_step

Participants

work.list_available · work.claim · work.get_context · work.heartbeat · work.complete · work.fail

Decisions

council.get_deliberation · submit_proposal · submit_claim · submit_critique · cast_vote · abstain · submit_judgement

The complete generated MCP reference on this site is imported from the server registration. Tool names use dots, and every example must use the exact schema shown there.

MCP · example call
council.submit_proposal({
  deliberation_id: "deliberation_8f2c1",
  author_agent_id: "architect-1",
  title: "Separate the worker",
  summary: "Move asynchronous delivery into its own service",
  body: "This reduces release coupling and scales the queue independently",
  confidence: 0.82
})

Runtime rules at a glance

  • Published versions are immutable; only a published version can be started.
  • agent_task and review create one work item. debate and vote create min_instances work items. judge creates one.
  • condition, loop, human_gate, create_flow_nodes, and end are driven by the runtime. parallel_group and transform currently do no work and produce node.unimplemented_type warnings.
  • Nodes in one council share a deliberation only when their config.deliberation_key matches.
  • Vote rules live in the vote node config. Debate rounds live in config.max_rounds; generic rework lives in a loop node.
  • Only tools policy is enforced for work.* and council.*. Other categories return policy.not_enforced.
  • Role output_schema is enforced on work.complete; the version output_schema (harness.set_output_schema) on steps leading into end. Mismatches return output.schema_violation, invalid schemas output.schema_invalid.
  • harness.set_context_policy selects work.get_context sections (run_input, role, predecessors, all_steps), strips exclude keys, and caps step outputs with max_tokens.
  • Budgets cover run duration, work-item count, reported tokens, and reported cost. An exhausted limit fails the run with budget.exceeded.

Glossary

  • Definition — a named template; Version — a draft or immutable published configuration.
  • Run — one execution of a Version; StepRun — one pass through a workflow node; WorkItem — leased work for an external agent.
  • Proposal — a decision option; Claim — a verifiable assertion; Evidence — supporting or contradicting material; Critique — a reasoned objection and its responses.
  • Deliberation — shared council state; Ballot — a vote over its proposals; Decision — a recorded judgement or winning proposal.
  • ApprovalRequest — a human decision requested by human_gate or a require_approval tools policy.
  • Artifact — a referenced output. create_flow_nodes can materialize a confirmed output.flow_nodes list as real Flownix nodes.

Frequently asked questions

Can I edit a published version?

No. Create another draft version, or clone the full definition. Existing runs keep their original version.

How does an agent get all context?

Claim the work item and call work.get_context. It returns the run input, source nodes, role, predecessor outputs, deliberation ID, and the ballot for vote work — as selected by the version's context policy.

How do I see why a run is waiting?

Read it with harness.get_run; for human decisions call harness.list_pending_approvals. Agents cannot answer those approvals.

What if an agent misses its lease?

The attempt is spent and the work item returns to the queue while attempts remain. Lease duration and retries come from the workflow node.