sf Stageflow
Run / product-intelligence
01 / 07
ACTIVE STAGECollect evidence

A workflow you can see thinking

Complex work.
Clear motion.

Scroll through one live run. Every decision, handoff, and verification becomes part of the product story.

Scroll to start ↓

01 / One focused job

Agents get a stage.
Not a universe.

The researcher gathers evidence. The analyst finds the signal. The writer shapes the brief. Smaller contexts create work you can inspect.

02 / Typed handoffs

Meaning survives
the handoff.

Every stage passes a schema-checked artifact forward—not an ambiguous transcript that the next agent has to reinterpret.

# output contract
produces: evidence.v1
requires:
  - source_url
  - claim
  - confidence

03 / Verification

Prove it before
it moves.

Structure, citations, policy, tests, or your own acceptance rules decide whether the workflow advances, retries, or asks for help.

04 / Dynamic routing

The route adapts.
The bounds do not.

Verified outputs choose the next stage. Every possible branch is still declared, visible, and safe to reason about.

05 / Human checkpoint

Judgment enters
at the right moment.

The run pauses with its state intact. You review the decision—not the entire history—then approve, revise, or choose another route.

06 / Simple YAML

Extraordinary runs.
Ordinary files.

The whole route stays readable, reviewable, and versioned beside your code. No proprietary canvas required.

id: product-intelligence
stages:
  - uses: ./research.yaml
    entry: true
    route: [{ to: verify }]
  - uses: ./verify.yaml
    route: [{ to: publish }]
  - uses: ./publish.yaml
Build your first flow →

Open source · MIT licensed · Node 20+

From zero to a visible run.

Stageflow gives every stage a focused agent session, every handoff a contract, and every run an inspectable history. Start locally, then take the exact same workflow to CI or MCP.

run / product-intelligencecompleted
01researchevidence.v1
02verify3 checks pass
03publishbrief.v1
3 stages · 2 typed handoffs · 1 immutable run

Install Stageflow

Use the install script on macOS or Linux. Node.js 20 or newer is required.

terminal
$ curl -fsSL https://raw.githubusercontent.com/tejasghutukade/stageflow/main/install.sh | bash

Scaffold a first workflow

Initialize Stageflow inside a project. It creates a manifest, example pipeline, and task file you can edit.

terminal
$ sf init

Open the console and run

Connect a model provider in the console, then run the generated task against the generated pipeline.

terminal
$ sf ui
$ sf run --pipeline pipelines/hello.pipeline.yaml --task tasks/hello.task.yaml
Continue the full quick start →

03 / Working examples

Start from a route
that already runs.

Browse every example ↗
Featured / CIArchitecture diagrams on every PR

Conditional fork, skill binding, typed envelopes, and GitHub Actions delivery.

inspect route ↗
HITLPlan → review → decision

A multi-stage workflow that stops at a human gate without losing run state.

inspect route ↗
RoutingConditional fork

One verified result, two declared branches, and an explicit operator choice.

inspect route ↗
MCPLibrary research brief

Resolve a library, fetch current documentation, and hand a typed brief forward.

inspect route ↗
01 / LOCAL

See every run.

Use the operator console to triage runs, connect providers, inspect artifacts, and answer human gates.

sf ui
02 / HEADLESS

Ship the same route.

Validate and execute the exact workflow in CI with predictable JSON output and exit codes.

sf validate --strict --json
03 / MCP

Let agents call it.

Expose trusted workflow tools or run a single stage directly and chain its typed envelope into the next call.

http://127.0.0.1:3847/mcp

04 / Built in the open

The workflow is yours.
So is the runtime.

Stageflow is MIT licensed. Read every line, open an issue, contribute a fix, or keep every run on your own machine. The YAML lives beside your code—reviewable, versioned, and portable.

sf / oss ↗
THROWAWAY SPATIAL PROTOTYPE