@llm-flow/plugin
v0.1.0
Published
Claude Code plugin: analyze → plan → revise → build → review → rebuild → document workflow with multi-model fan-out
Downloads
29
Maintainers
Readme
llm-flow plugin
A Claude Code plugin that ships a multi-model development workflow:
analyze → plan → revise plan → build → review build → rebuild → documentMulti-model fan-out happens at revise plan (validators in parallel) and review build (reviewers in parallel). Each phase is its own slash command; /llm-flow:full-cycle is the orchestrator.
Install
Recommended: as a Claude Code plugin
# From a marketplace (once published):
claude plugin install llm-flow
# From a git URL or local path during development:
claude plugin install <git-url>
claude --plugin-dir /path/to/packages/pluginThis installs the slash commands, subagents, the Stop hook (rebuild-iteration cap), and registers the multi-model MCP server.
Portable: into bare .claude/ directories
For older Claude Code versions or other agent tools that read .claude/skills/ and .claude/agents/:
# Per-user (writes ~/.claude/skills/llm-flow-*/ and ~/.claude/agents/llm-flow-*.md):
./bin/install-portable --user
# Per-project (writes <path>/.claude/...):
./bin/install-portable --project /path/to/projectPortable mode prefixes every skill/agent name with llm-flow- (e.g. /llm-flow-analyze, @llm-flow-explorer) to avoid collisions. It does NOT install the Stop hook or MCP server automatically — see the script's output for manual wiring instructions.
Required: @llm-flow/multi-model
Either install path requires the multi-model CLI on PATH for fan-out to work:
npm install -g @llm-flow/multi-model
multi-model doctor # confirm provider CLIs are authenticatedProvider CLIs (claude, gemini, codex) must already be installed and authenticated.
Usage
# Run the full cycle on a feature request:
/llm-flow:full-cycle "add a /healthz endpoint with 200 OK"
# Or invoke phases individually:
/llm-flow:analyze "..."
/llm-flow:plan
/llm-flow:revise-plan
/llm-flow:build
/llm-flow:review-build
/llm-flow:documentThe orchestrator pauses at four user checkpoints: after analyze, after revise-plan, at the rebuild iteration cap, and before commit.
Configure
Optional .llm-flow/config.json at project root:
{
"phases": ["analyze","plan","revise-plan","build","review-build","document"],
"models": {
"revise-plan": ["claude","gemini","codex"],
"review-build": ["claude","gemini","codex"]
},
"maxRebuildIterations": 3
}phases— overrides the default phase list. Names not in the canonical seven are looked up as/llm-flow:<name>(plugin) or.claude/skills/<name>/SKILL.md(project-local).models— per-phase provider subset. Defaults to all available.maxRebuildIterations— hard cap, enforced by the Stop hook. Defaults to 3.
Customize
Three layers, in order of weight:
- Config:
.llm-flow/config.json(above) — most teams stop here. - Drop-in phases: create a project-local skill at
.claude/skills/<name>/SKILL.mdand add its name to thephasesarray. Use/llm-flow:new-workflow <name>to scaffold one. - Fork: for fundamental topology changes, fork the plugin.
Artifacts
Per-run state lives at .llm-flow/:
.llm-flow/current-task.md— task description and phase status..llm-flow/exploration.md—analyzeoutput..llm-flow/plan.md— current plan (overwritten byrevise-planif validators recommend changes)..llm-flow/code-review.md— synthesized review (overwritten each cycle)..llm-flow/summary.md,.llm-flow/commit-message.txt— generated bydocument..llm-flow/sessions/<id>/— multi-model fan-out artifacts (one dir per fan-out call).
Add .llm-flow/ to .gitignore unless you want session history checked in.
Phases
| Skill | Purpose | Multi-model | User checkpoint |
|---|---|---|---|
| analyze | @explorer maps codebase, identifies impact | no | yes |
| plan | @planner produces initial plan | no | no |
| revise-plan | Multi-model validators, @synthesizer merges | yes | yes |
| build | @implementer executes plan | no | no |
| review-build | Multi-model reviewers, @synthesizer merges | yes | only at iter ≥ cap |
| rebuild | @implementer addresses feedback; loops back to review-build | no | no |
| document | @documenter updates docs, @summarizer drafts commit | no | yes (final) |
Subagents
@explorer, @planner, @implementer, @reviewer, @synthesizer, @documenter, @summarizer.
(In portable install they are prefixed llm-flow-.)
