Flownix
Sections
On this page

How to use a Harness

The practical sequence: assemble a version, run it, connect a participant, review the decision, and move only a confirmed result into the plan.

Assemble a version

  1. Create a Harness for one repeatable decision type, not a universal council.
  2. Create a Version and pin its input/output schema, roles, and step graph.
  3. For each role, state its objective, responsibilities, prohibitions, and result format.
  4. Add rules for tools, data access, voting, budget, and human approval.
  5. Validate the graph and publish a version only after it passes review.
MCP · assembling a version
harness_create({ name: "architecture-review", description: "Evaluate architecture options before a decision" })
harness_create_version({ harness_id, input_schema, output_schema })
harness_add_role({ version_id, key: "proposer", goal: "Propose a solution option" })
harness_add_workflow_node({ version_id, kind: "proposal", role_key: "proposer" })
harness_validate({ version_id })
harness_publish({ version_id })

Run and observe

A Run receives a concise goal, the needed context, and links to Flownix nodes. Follow the timeline, assignments, open critiques, votes, budget checks, and approval requests—not a hidden chat.

External agent participation

An agent finds available WorkItem, claims its lease, sends heartbeats, and publishes a structured result. If it cannot finish, the lease expires and work safely returns to the queue; duplicate execution must not create a second result.

MCP · agent participation
work_list_available({ run_id })
work_claim({ work_item_id, agent_instance_id })
work_heartbeat({ work_item_id, lease_token })
work_complete({ work_item_id, lease_token, result: { summary: "Outcome of the assigned step" } })