Core workflow
The commands that plan, build and verify. These are the ones you use daily.
| Command | Arguments | What it does |
|---|---|---|
/devflow:new-project | [--auto] | Set up a new project from scratch — asks what you're building, researches the domain, defines requirements, and creates a development roadmap. |
/devflow:discuss-objective | <objective-number> | Capture implementation decisions for an objective before planning — lock in preferences so research and planning don't drift into assumptions. |
/devflow:research-objective | [objective] | Research how to build something before planning it — discovers best practices, architecture patterns, and pitfalls for the domain. |
/devflow:plan-objective | [objective] [--auto] [--research] [--skip-research] [--gaps] [--skip-verify] [--work TYPE] [--tdd POSTURE] [--depth LEVEL] [--model PROFILE] | Create a detailed execution plan for an objective, breaking it into concrete tasks with success criteria. |
/devflow:execute-objective | <phase-number> [--gaps-only] | Execute all planned tasks for an objective, running independent tasks in parallel for speed. |
/devflow:build | <objective-number-or-description> [--pause] [--skip-research] [--work TYPE] [--tdd POSTURE] [--depth LEVEL] [--model PROFILE] | Build a feature from start to finish — plans the work, executes it, and verifies the result in one command. |
/devflow:verify-work | [objective number, e.g., '4'] | Test what was built by walking through expected behavior and checking it matches reality. |
/devflow:quick | [--full] | Small features (single executor, no planner, no verifier) — between micro (1-line) and build (multi-subsystem). Cutoff: <5 files, <200 LOC, no new abstractions. |
/devflow:micro | <description> | Sub-30-LOC, single-file changes. The cheapest DevFlow path (~2k tokens). Use for typo fixes, single-line bug fixes, prop renames, dependency bumps, missing semicolons. |
/devflow:debug | [issue description] | Investigate bugs using a structured approach that survives context resets. Tracks hypotheses, evidence, and progress across sessions. |
Choosing a tier
The single biggest cost lever in DevFlow is picking the right entry point.
| Scope | Command | What runs |
|---|---|---|
| Sub-30 LOC, one file | /devflow:micro | No agents. ~2k token floor. |
| Under 5 files, under 200 LOC, no new abstractions | /devflow:quick | One executor. No planner, no verifier. |
| Multi-file feature, more than one subsystem | /devflow:build | Full plan → execute → verify |
| Something is broken | /devflow:debug | Structured investigation with persistent state |
/devflow:build
The workhorse. Chains planning, execution and verification with gates in between.
/devflow:build 4
/devflow:build "add rate limiting to the public API"
/devflow:build 4 --pause --model budget
Routes on phrases like
build this build objective let's build implement this ship this make this work build the work on objective start building let's implement
| Flag | Effect |
|---|---|
--pause | Stop after planning so you can review before execution |
--skip-research | Skip the research agent — use on familiar ground |
--work TYPE | Override the objective’s work type |
--tdd POSTURE | Override the derived TDD posture |
--depth LEVEL | quick / standard / comprehensive |
--model PROFILE | quality / balanced / budget for this run only |
The last four override the intent model resolution for this run without changing any files.
/devflow:plan-objective
Planning on its own, when you want to review before committing to execution.
/devflow:plan-objective 4
/devflow:plan-objective 4 --research --depth comprehensive
/devflow:plan-objective 4 --gaps # plan gap-closure work after verification
Runs objective-researcher → planner → job-checker. The job-checker is the
part worth knowing about: it reads the plan before it executes and asks whether
running it would actually achieve the objective’s goal. Disable it with
workflow.job_check: false if you find it redundant on a familiar project.
/devflow:execute-objective
Execution on its own, against plans that already exist.
/devflow:execute-objective 4
/devflow:execute-objective 4 --gaps-only # only the gap-closure jobs
Groups jobs into waves and dispatches each to an
executor in a fresh window and its own git worktree.
/devflow:verify-work
/devflow:verify-work 4
Tests against the objective’s goal, not against the task list. Produces
VERIFICATION.md and UAT.md. Backend-aware: web surfaces are driven through
Playwright, Flutter through Maestro.
If it finds gaps, the objective’s status becomes gaps_found; plan the follow-up
with /devflow:plan-objective 4 --gaps.
/devflow:quick
/devflow:quick "add a --json flag to the status command"
/devflow:quick --full # forces the full quick pipeline
One executor, atomic commits, no planning ceremony. If the change turns out to be
bigger than the cutoff, it tells you and suggests /devflow:build.
/devflow:micro
/devflow:micro "rename userId to accountId in auth.go"
The cheapest path. No agents at all. It has its own commit flow:
df-tools micro start "<description>"
df-tools micro commit [--files <path>...]
df-tools micro abort
/devflow:debug
/devflow:debug "login redirects to 404 after password reset"
A different loop from build. The debugger agent works a structured scientific
method — hypothesis, prediction, experiment, evidence — and writes it all to
.planning/debug/. That persistence is the point: a hard bug outlives a context
window, and starting over from scratch each session is how bugs stay unfixed.
Resolved sessions archive to .planning/debug/resolved/.
Routes on phrases like
debug this something's broken fix this bug not working there's an error why isn't this working?