flow-next is a free, open source version control & collaboration project written in Python and released under MIT. It has 715 GitHub stars, 62 forks and 6 open issues, and was last pushed 18 hours ago. On this registry it ranks #40 of 50 tracked projects in Version Control & Collaboration, with 5 head-to-head comparisons available. It gained 11 stars over the last 30 tracked days.

What is flow-next?

Flow-Next is a workflow plugin that runs inside AI coding agents such as Claude Code, Codex, Cursor, and Droid, turning a change request into specs, implementation, adversarial cross-model review, and a pull request with recorded evidence, and it is aimed at individual developers and teams who already generate code with agents but lack a repeatable way to verify the result.

What it is

Flow-Next is an MIT-licensed, Python-based workflow layer that lives in the Claude Code plugin ecosystem and is also listed for Codex, Cursor, and Droid. Its topics describe it as an agentic workflow and autonomous agent tool with a CLI, code review, and execution as first-class concerns. It is mentioned in the awesome-claude-code-workflows list, and its documentation is split across a doc index, a teams guide, and a worked example of one real change passing through review.

The concrete problem it addresses is that generating a change became cheap while clarifying the requirement, keeping the implementation aligned with it, checking the result, and explaining the diff to a reviewer all stayed manual. Flow-Next replaces the chat session as the source of truth. Specs, decisions, and task state are written into the repository, so intent survives beyond a single conversation, and every task closes through a recorded verdict rather than an informal assumption that the work is done.

Key capabilities

  • Runs the pipeline from slash commands such as /flow-next:... inside the host agent, or from plain-language prompts.
  • Keeps specs, decisions, and task state in the repository, so a review correction becomes a lesson the next task can read.
  • Performs cross-model plan review and implementation review, each recording a verdict such as SHIP before the work advances.
  • Closes a task through flowctl done with an evidence JSON payload covering commits, tests, and pull requests, which the receipt records.
  • Opens pull requests that already argue their case, mapping each change to the acceptance criterion it satisfies, the decisions still needing a human, and what deliberately did not change.
  • Runs unattended: the recorded demo drives every step through claude -p "...", the headless non-interactive mode.
  • Ships with zero dependencies, with documentation at plugins/flow-next/docs/README.md, teams.md, and worked-example.md.

Who uses it and how

  • A single developer starts with one change and adapts the same workflow later.
  • A team scales that workflow to shared specs, with a product owner and an engineer refining one file in their own separate passes.
  • Teams running an unattended backlog use headless mode so the whole run captures without a person at the keyboard.
  • Projects that want review corrections to feed forward into later tasks rely on the repository-resident lessons store.
  • CI runs across three operating systems, as shown by the test workflow badge.

Getting started

Flow-Next installs as a plugin into the coding agent, then runs through its /flow-next:... commands or plain-language prompts, with the doc index at plugins/flow-next/docs/README.md and the full site at flow-next.dev as entry points.

How it compares

The provided facts list no paid products that Flow-Next replaces and name no direct alternatives, only the host agents it runs inside. On the evidence available, it stands alone in this registry.

When to use it — and when not to

A user must already have a supported coding agent, and the spec, decision, and task state are files kept in the repository rather than a managed service. The README is explicit that the pipeline proves a change does what was asked but does not prove the codebase stays maintainable; structural checks ask two questions during plan review and technical refine, and measuring what happened to the code afterwards is described as separate, later work. Teams wanting measured long-term code health or a hosted service should not pick it for that purpose.

project readme (upstream, from github) — read inline

Flow-Next

GitHub stars CI Latest release Mentioned in Awesome License: MIT

Agents generate. flow-next proves.

Implementation got cheap. Reviewing it, verifying it, and keeping a codebase coherent did not.

Flow-Next is a workflow plugin that runs inside your coding agent. Give it the change you want and the rules your project follows. It turns that intent into specs, implementation, review, and pull requests with evidence. Your specs, decisions, and task state live in your repository.

A real recorded run: plan, then cross-model plan review (catches a missing guard, fix, SHIP), then implement plus tests, then impl review SHIP, ending on the receipt. Nothing staged; every frame is live output.

The recording drives each tick with claude -p "..." (Claude Code's non-interactive / headless mode) so the whole run captures unattended. In normal use you type the prompt or the /flow-next:... command in your interactive session: same pipeline, same gates.

📖 Doc index · 👥 Teams guide · 💬 Discord · Full documentation site: flow-next.dev


Why this exists

Generating a change is only part of the work. Someone still has to clarify the requirement, keep the implementation aligned with it, check the result, and explain the diff to a reviewer.

Flow-Next makes that work repeatable. A spec preserves intent beyond the chat. Focused workers reread it before implementing. Review and live QA examine the result, and the PR connects changes to their requirements and evidence. Start with one change, then adapt the same workflow to a team or an unattended backlog.

The pipeline proves the change does what was asked and records what it did; it does not prove the codebase stays maintainable. Plan review and the technical refine pass ask two structural questions while the change is still a plan (does it make the same edit twice, does it bend a dependency direction) and record the answer; measuring what happened to the code after the fact is separate, later work.

The evidence page covers the measured problem behind this approach, field use, and internal evaluations. One real change through review shows what the workflow produced in this repository.

What you get

Decide what to build, build it, and verify the result. Describe the workflow in plain language or invoke its skills directly. The host agent runs the process and adapts it to the work.

Everything reaches your queue already reviewed. Configured review checks the design or implementation and records its verdict; the work contract closes each task through flowctl done with its evidence JSON (commits, tests, PRs), which the receipt records. Review settings, completion-review policy and opt-in QA apply on both direct and planned routes.

Open a PR that already makes its argument. The pull request arrives explaining itself: which acceptance criterion each change satisfies, which decisions still need a human, what deliberately did not change.

Decide what to build before anyone builds it. An idea too big to write down gets charted one decision at a time; a conversation becomes a spec; a product owner and an engineer refine it in their own passes on one file.

Your team's context lives in the repo. A review correction becomes a lesson the next task can read. Specs, decisions, glossary, and memory stay in your repository, available to the next agent and your teammates.

Prove it in the running app, not by reading the source. Live QA drives the app the way a user would, from the spec's own criteria, and files what it finds with screenshots and a verdict you can audit.

Hand over as much as the receipts have earned. One dial from a supervised pair to a loop draining the backlog overnight. The gates do not change as you climb.

Choose the model for each job. Name a model per role once in your CLAUDE.md, or say it in the prompt for a single run. Whatever you pick, the model that wrote the diff never reviews it. The pipeline shape per item and the model per job are decided separately, and each decision prints its reason: orchestration.

A way of working, not a tool you bolt on. The same rails carry a solo developer on a Sunday and a fifty-person organisation on a rollout. The spec is the handover object, and it reads the same to product, engineering, and the next agent run.

Your process outlives your agent. The same specs, gates, receipts, and task state across harnesses. In a harness that can dispatch subagents, the same routing runs across models in-host with no bridge at all. Specs and task state live under .flow/, in Git and available for review. The files remain readable when you stop using Flow-Next.

The vocabulary underneath: seven tenets
Tenet What it means
Spec-driven Intent survives the chat. The unit of work is the spec, never the ticket, the transcript, or the PR title. One durable document at .flow/specs/.md, evolving through layers. Acceptance criteria are prose judged against evidence (unlike ATDD, where a criterion only counts once it exists as an executable test).
Context-fit planning Optional task decomposition on a positive signal, where a plan was asked for, separate people implement, or delivery is staged across several PRs. Dependencies, execution constraints, size, and risk alone do not trigger planning. A ready cohesive spec can run through work with one owner.
Re-anchored work Fresh context per task. Every worker subagent re-reads the spec, the task, and git state before touching code: no token bleed, no stale assumptions.
Adversarial gates Fix until SHIP. A different model (RepoPrompt / Codex / Copilot / Cursor / Claude) reviews the design or implementation when configured. Different models make different mistakes, and the disagreement surface is where the gaps live.
Receipts "Done" means there is proof. Commits, tests, review verdicts, and evidence recorded per task, never narration.
Multi-harness One workflow everywhere. First-class on Claude Code, OpenAI Codex, Factory Droid, Cursor, xAI Grok Build, and OpenCode.
Self-improving Compounds as you work. Memory, glossary, decision records, and strategy grow as side-effects of the workflow you already run, with no manual "refresh" ceremony, ever.

Where it already runs

Flow-Next's ways of working are coached and run in enterprise engineering organisations worldwide, from CAD and construction software to proptech and education, across modern monorepos, hundred-repo microservice estates, and 30-year-old legacy stacks, on GitHub Enterprise, GitLab, and Jira. A 2-3 hour structured discovery interview reliably produces 8-11 implementation-ready specs with numbered acceptance criteria, boundaries, and task breakdowns; the edge cases surface in the interview instead of the sprint. Receipts, evidence JSON, and review gates are the audit trail enterprise adoption asks for: approval checkpoints and traceability are built in.

Try it on one change that crosses roles. Check whether the spec makes the intended behavior clear, the review catches a concrete defect, and the PR gives the next person enough evidence to decide. Use those handovers to judge which stages your team needs.

The open-source record is linkable, so it speaks in its own words: an outside contributor shipping a correct flowctl patch in PR #95, a feature in awesome-claude-code-workflows for plan-first workflows, Ralph autonomous mode, and receipt-based gating (#96), and a 3-OS test matrix on every push, because the field runs all three.

"I am enjoying your version of all these cool new plugins. So far yours has worked the best." @patrickmichalina

"really enjoying this project, thanks for making it and making it public" @possibilities, external contributor

"it’s been really useful in my workflow." @raydocs


Quick start

Install

Claude Code OpenAI Codex Factory Droid
/plugin marketplace add \
  https://github.com/gmickel/flow-next
/plugin install flow-next
/reload-plugins
/flow-next:setup
git clone https://github.com/gmickel/flow-next.git
cd flow-next
./scripts/install-codex.sh flow-next
# For another Codex home (any path you like):
# CODEX_HOME="$HOME/.codex-work" ./scripts/install-codex.sh
# Run once per home.
# then, in your project’s Codex conversation: $flow-next-setup
droid plugin marketplace add \
  https://github.com/gmickel/flow-next
# /plugins → install flow-next

Use installation commands in your terminal or the host's plugin interface as shown above. Workflow invocations belong in the agent conversation. Codex uses $flow-next-; OpenCode uses /flow-next-; the other hosts accept /flow-next: (Cursor also accepts the hyphen form).

Cursor, Grok Build, or OpenCode? Install by platform has the current steps. Codex installs are per home; set CODEX_HOME when you use more than one.

Trying it for the first time? Your First 30 Minutes includes a two-file Python example, the review setup, and the output to inspect. You need your agent access, Python 3.11+, and the project tools; review and GitHub PR plumbing also use jq and gh.

The recommended happy path

/flow-next:flow <anything>           # Say what you have and let flow pick the route

Flow takes whatever you have (nothing, an idea, a spec id, a branch, a pasted bug report, a how or why question about the code, a slowness to measure, a cleanup that keeps behaviour, a design fork to settle), picks the smallest sufficient route, runs it, and stops at the next decision that is yours. Describe the request without naming a skill and flow picks it up; a stage's pick is asked inline and the run continues. /flow-next:flow --explain shows the route without running it.

Add --until=merge for a selected spec to continue through landing. On a plain attended rerun with an existing PR, flow offers landing and asks once unless you have already authorized that item; declining or leaving the question unanswered causes no landing mutation. The same path by hand:

/flow-next:capture                   # 1. Synthesize conversation → .flow/specs/<id>.md
/flow-next:work <spec-id> --no-plan  # 2. Implement a ready cohesive spec through Flow-Next
/flow-next:make-pr <spec-id>         # 3. Open a PR connecting requirements to evidence
/flow-next:resolve-pr <PR#>          # 4. Fetch review threads → triage → resolve
/flow-next:land                     # 5. Opt in to gated landing of eligible PRs

Direct execution is the default for a ready cohesive spec and a capable coding agent. Plan is chosen on a positive signal, where you asked for one, separate people will implement, or delivery is staged across several PRs. Multi-file scope or risk alone does not require decomposition. Refine unresolved material choices with /flow-next:refine; when the spec names a library or API the repo does not use yet, refine --scope=research reads the docs first. An explicit plan-review can review the spec design without task files. Live QA is opt-in (pipeline.qa set to on, or auto, which runs QA only when the acceptance criteria are UI-observable, the surface is drivable, and a target can be started, and records skipped(reason) when any of the three is absent) and neither review nor QA guarantees every regression is caught. The route guide explains when each stage helps; running lean explains the agent work each layer adds.

After every update

Nothing to do. Nothing is copied into your repo: flowctl resolves from the plugin install on every host, the agent guide is pulled live via flowctl usage, and the spec template resolves from the bundled copy. Plugin updates land silently. Re-run /flow-next:setup only when setup tells you the docs-snippet schema bumped, or to change configuration. If a repo still carries .flow/bin/ from an older install, delete it; setup offers to, and nothing reads it. Details: platforms.md.


Compose the pipeline

Start with the established workflow, then shape it in plain language. Choose which stages run, which models do the work, and what must pass before merge. Keep a policy in CLAUDE.md or AGENTS.md for repeated use, or steer one run in conversation.

Your situation What to say
Anything at all, and you want the route chosen for you "/flow-next:flow ", or "/flow-next:flow --explain" to see the route first.
A ready cohesive spec "Run /flow-next:work fn-N --no-plan with the configured checks."
A migration whose approach needs checking "Review this spec design with another model family; plan tasks if staged delivery needs them."
Ready work between your visits "Work the ready backlog overnight; stop on unresolved product decisions."
A prototype that settled the requirements "Capture the intent from this prototype, then run Flow-Next work --no-plan if the spec is ready and cohesive."
Several jobs that need different models "Keep the UI work yourself; send the API plumbing to the implementer tier."

The host reads the item's state and your instructions, chooses the route, and reports its reason. A stage you invoke keeps its execution and evidence contract; configured review policy applies across the arrangements you choose. Pipeline variations · Orchestration and model routing · Cookbook.

One change through review

In PR #215, a performance change batched Git searches. Requirement R8 said reference attribution must stay unchanged. Review caught a forced-color Git setting that broke output parsing and dropped references. The correction added --color=never; the task recorded the fix and verification, and the PR pointed the human reviewer at that exact change.

Follow the requirement, correction, and evidence.

The optional HTML views present the same spec and PR information for readers who prefer a visual review surface.

Going autonomous

/flow-next:flow --auto drives one ready spec to a draft pull request by default. Add --until=merge to carry the selected spec through land's CI and review convergence, gated merge, spec close, and persistence. Destination and interaction mode are independent; /flow-next:flow --until=merge uses the attended route. Release and tracker actions retain their existing authorization and configuration. Run flow --auto once per item, or flow --auto --tick under your host's loop primitive where sessions are short. The same skills you use interactively do the work.

/flow-next:flow --auto                      # one item, hop after hop, to its draft PR
/flow-next:flow --auto <spec-id> --until=merge # same route through gated landing
/loop 30m /flow-next:flow --auto --tick     # one hop per interval on a host that loops
/goal keep running /flow-next:flow --auto --tick until PILOT_VERDICT=NO_WORK

--tick performs at most one landing tick. A longer run can continue across CI and review waits using land's cadence; external waits do not consume pilot strikes. Merge consent covers the selected spec and PR while active, including retries. A fresh session needs the flag again or current explicit authorization; old receipts are not consent. See the landing contract for scope, ownership, and recovery.

/flow-next:pilot keeps working for one release as an alias for flow --auto --tick.

Work the ready specs overnight. Plan changes with unresolved design risk,
work fully understood changes directly, review with another model family,
and run live QA before opening the PR. Stop on product decisions I need
to make. Use land under this repository's merge policy.

Drive a loop for your host, or read unattended operation for isolation, readiness, and stop conditions. The field case describes a run that landed 38 PRs under one paragraph of policy.

Existing Ralph installation? Ralph is deprecated; its reference remains available. New setups should use flow --auto and land.

Why it works

What needs to survive Mechanism
Intent across sessions A durable spec with numbered acceptance criteria
Context across tasks Fresh workers reread the spec, task, and current Git state
Review findings A fix-and-review loop with recorded verdicts
Verification Test evidence and receipts connected to the work
Human understanding A PR that maps requirements to changes and directs review attention
Lessons from earlier work Repository memory read by later tasks

Where it fits

Flow-Next is useful when requirements, coordination, or review deserve a record that outlives a chat. It works inside your coding agent and alongside your repository, tests, CI, and tracker. Use direct edits for disposable work where no durable context matters.

Humans own product decisions, risk tolerance, and production responsibility. The workflow makes those decisions easier to inspect through specs and evidence. Stage selection and model routing remain yours to shape.

Commands

Use the skill name or describe what you want in the agent conversation. The skills catalog covers all 31 skills and their invocation forms; the CLI reference covers scripting and state inspection.

Job Skills
Shape intent capture, refine; chart for an oversized unclear idea
Plan and implement plan, work
Review and verify plan-review, impl-review, spec-completion-review, qa
Open and finish a PR make-pr, resolve-pr, land
Start anywhere flow
Keep work moving flow --auto; pilot is its deprecated alias for one release
Maintain project knowledge audit, features, strategy, sync

Flow picks the route from whatever you have; --explain shows the route without running it. The optional /flow-next:chart stage resolves an oversized idea one decision at a time before capture. Review findings keep a defect's identity and history across review rounds.

Adopting in a team

Start with one repository and one change. Product reviews the goal and acceptance criteria in a shared spec. Engineering adds constraints and reviews the approach. Agents implement the tasks. The reviewer receives a PR connecting the changes to those criteria and their evidence.

After the trial, judge whether the spec surfaced a missed decision, review found useful defects, and the PR reduced investigation work. Add the stages that earn their time. Team guide.

Keep your existing board when the team needs it. The tracker bridge projects specs to Linear, GitHub, GitLab, or Jira and reconciles them two-way. Claude Code teams can deploy the plugin through managed settings, with setup once per repository.

Where to look

You want to Website Repository reference
Try one change First run Quick start
See an actual review correction Worked example Worked example
Choose or adapt the workflow Routes Pipeline variations
Assign models and drive loops Orchestration Orchestration
Adopt with a team For teams Teams
Choose optional layers Costs Running lean
Inspect commands or receipts Reference Docs index
Recover or uninstall Troubleshooting Troubleshooting

Requirements

Flow-Next is MIT-licensed. You supply access to your coding agent and its providers, plus your project environment. Additional planning, implementation, review rounds, and live QA consume agent usage. There is no Flow-Next account or hosted service to run.

  • Python 3.11+ (or the py launcher on Windows): the bundled flowctl CLI is pure-stdlib. Launchers skip broken aliases and working interpreters below the supported floor before loading flowctl.
  • jq and gh: required for the review subsystem and PR plumbing.
  • bun (optional): only needed for the Ralph TUI.

Platforms

First-class on Claude Code, OpenAI Codex, Factory Droid, Cursor, xAI Grok Build, and OpenCode.

Platform Status
Claude Code First-class (canonical surface)
OpenAI Codex (CLI + Desktop) First-class (mirror at plugins/flow-next/codex/, regenerated by scripts/sync-codex.sh)
Factory Droid First-class (regex-OR matchers handle Execute ↔ Bash)
Cursor First-class. Recommended: team-marketplace repo import (admin imports this GitHub repo via the Cursor GitHub App; Default Off/On/Required; auto-refresh on push). Fallback: local plugin (./scripts/install-cursor.sh / install-cursor.ps1). Skills, commands, multi-agent, native asks, slash autocomplete verified; Ralph intentionally not built for Cursor (details)
Grok Build (xAI) First-class via Claude Code compatibility: skills, /flow-next:* commands, hooks, and multi-agent flows (verified). Type /flow-next: to open the command autocomplete; /flow-next- filters the separate hyphen-named skill surface. Ralph intentionally not built (details)
OpenCode ./scripts/install-opencode.sh (see docs/platforms.md)

Detailed install + cross-platform patterns in docs/platforms.md, the canonical home for the tiering sentence above.

Upgrading from 0.x? The 1.0 release renamed the epic surface to spec; the legacy aliases and automated migration commands were removed in 3.0. Update the plugin, then follow the manual three-step pre-1.0 layout port in troubleshooting.

Ecosystem

Project Platform
flow-next-opencode OpenCode, superseded by the in-repo installer
FlowFactory Factory.ai Droid
Ralph TUI Cross-platform TUI for Ralph runs

Contributing

Bug reports and PRs welcome: start at CONTRIBUTING.md (local dev, adding skills, the docs-only rule) and SECURITY.md for private disclosure. Questions and show-and-tell: GitHub Discussions. Or come say hi on Discord.

Every PR runs the same gate: the full test suite on a 3-OS matrix (Ubuntu / macOS / Windows) plus an offline docs-linkcheck - green CI is the merge floor.

Also check out

GNO: local hybrid search for your notes, docs, and code. Long-term memory over your files via MCP.

bun install -g @gmickel/gno && gno mcp install --target claude-code

License

MIT. See LICENSE.

Made by Gordon Mickel · @gmickel · gordon@mickel.tech

Author Twitter

Sponsor

Frequently asked questions

Is flow-next free to use?

flow-next is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does flow-next do?

Repeatable agentic engineering. The workflow layer that turns AI coding agents into a disciplined factory: durable specs, fresh-context workers, adversarial cro

What is flow-next written in?

flow-next is primarily written in Python. Its source is publicly available at https://github.com/gmickel/flow-next, and it has 715 GitHub stars.