Examples

Runnable configs that put your coding agent on rails — clone one, point Claude Code or Cursor at it, and watch the skipped step stop being a move it can make. The coding-agent examples lead; start there if you're new. New to flowgate? See the three ways to run it — from inside Claude Code to flowgate's own runtime.

For coding agents

TDD that can't be skipped

examples/tdd/

View source

Your agent loves to write the implementation first and backfill a test that always passes. Here it can't: the red → green → refactor cycle is the workflow, so there's no move to write production code until a test is actually failing. Try to jump the queue and you get INVALID_TRANSITION — the step simply isn't on the menu. Dogfooded in CI with a mechanical driver.

tests no test-skipping CI

Deploy gate

examples/deploy-pipeline/

View source

The agent that ships before CI is green can't here — deploy isn't a move until lint, test, and build have all passed. Those three steps run back-to-back on their own: the agent calls flowgate.command once and gets the result at the deploy decision — three real commands run, zero extra round trips to the model.

deploy gate CI auto-chained steps

Other workflows

Content publishing

examples/content-publish/

View source

Same rails, a non-coding workflow: draft → brand review → human approval → publish. The agent walks the steps on its own, but at the approval gate it stops cold — that move is reserved for a human, and the agent literally can't make it.

guardrails human approval agent-can't-self-approve

Expense approval

examples/expense-approval/

View source

How far the guards stretch: a multi-tenant expense workflow with two-tier approval. Small expenses need one manager; large ones need sign-off from several approvers before they clear. Payment is idempotent — the executor won't double-pay on a retry.

multi-tenant multi-approver sign-off conditional guards

Starter configs

examples/

View source

Small, single-pattern configs to copy from: simple-proxy.yaml (pass a tool straight through), governed-change.yaml (a single approval gate), import-and-discovery.yaml (pull tools in from other MCP servers). Good starting points when you already know the shape you want.

proxy import discovery