Orkestra
GitHub

Stages can be extended in three ways. Questions are available on every stage with no configuration. Agentic Gates (gate: true) add an agent-produced verdict to the human approval step. Subtraks (capabilities.subtasks) let an agent decompose work into parallel child Traks. This page covers all three — note that only capabilities.subtasks uses the capabilities YAML field; gates are a separate top-level field.

Questions

Every agent stage can ask clarifying questions — no configuration needed. When an agent produces questions, the Trak pauses for the human to answer. The session resumes with those answers before the agent produces its artifact.

Multiple question rounds are supported. The agent keeps asking until it has what it needs, then produces the artifact.

Typical use: Planning stages, where ambiguous requirements would cause the agent to guess wrong.

Agentic Gate

A stage with gate: true acts as an Agentic Gate: instead of producing a plain artifact, the agent produces an explicit approve or reject verdict.

On approve — the verdict is stored as the stage’s artifact and the Trak advances normally.

On reject — the agent specifies which earlier stage to route back to. The rejection includes the agent’s reasoning as feedback.

When the Trak is not in auto mode, a reject verdict pauses for human review. The human can:

  • Confirm the rejection — the Trak routes to the target stage with the feedback
  • Override the rejection — the verdict is discarded and the same stage continues with a new iteration

This gives the human final say over agent-produced verdicts without requiring them to perform the evaluation themselves.

Typical use: Review stages, where an agent evaluates a work stage’s output and recommends whether to accept or send it back.

Subtraks

A stage with capabilities.subtasks can decompose the Trak into child Traks called Subtraks. The agent produces a structured breakdown; the human reviews it; on approval, Orkestra creates the Subtraks and the parent enters the Waiting on Subtraks phase.

Subtraks can declare dependencies on each other. Those without dependencies start immediately and run in parallel. Those with dependencies wait until their predecessors complete.

When all Subtraks finish, the parent advances to the next stage in its flow. If any Subtrak fails, the parent fails immediately.

The subtasks capability has one optional setting:

  • flow — the flow assigned to child Traks. Defaults to the default flow.

Single-Subtrak inlining: If the breakdown produces exactly one Subtrak, Orkestra inlines it directly onto the parent Trak — no child Trak is created. The parent advances with the Subtrak’s instructions as a breakdown artifact.

Typical use: Breakdown stages, where a large Trak needs to be split into parallel implementation Subtraks before the work stage begins.

What’s next

See Agents to understand how the AI agents that execute stages work.