Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

CLI Reference

wiggum init

Interactively create a new plan file.

wiggum init [--plan <path>]
OptionDescription
--plan, -pPath to write the generated plan TOML (default: plan.toml)

wiggum generate

Generate all artifacts from a plan file.

wiggum generate <plan> [OPTIONS]
OptionDescription
<plan>Path to the plan TOML file
--output, -oOverride the output directory (defaults to project.path from the plan)
--forceOverwrite existing files without prompting
--dry-runPreview what would be generated without writing files
--estimate-tokensShow estimated token counts for generated artifacts
--skip-agents-mdSkip AGENTS.md generation
--target <vscode|opencode|claude|agent-rules|all>Override the target tool selection. Overrides the plan’s [targets] section. See Targets.
--no-summarySuppress the plan quality scorecard printed after generation
--thinUniversal artifacts only — skip every per-tool prompt directory (.vscode/, .opencode/, .claude/, agent_rules)

wiggum check

Score the quality of a plan file before generating. Unlike validate --lint, which checks structural correctness, check scores the substance of a plan on five dimensions and produces concrete improvement suggestions. The same score is now printed at the end of wiggum generate so the quality signal lands at the moment it matters most — right after scaffolding. Pass --no-summary to suppress it.

wiggum check <plan> [--json]
OptionDescription
<plan>Path to the plan TOML file
--jsonOutput results as JSON instead of human-readable text

The six scoring dimensions are:

DimensionWhat it measures
GranularityWhether tasks are sized for a single agent session (not too broad or too narrow)
Dependency healthDAG fan-out, orphan detection, and over-coupling
CoverageBalance of task kinds across the plan
RichnessPresence of hints, must-haves, evaluation criteria
Token budgetEstimated prompt size across all generated artifacts
Harness complexityWhether the evaluator harness matches plan scale — penalises over-engineered harnesses on tiny plans and rewards high criteria coverage

Each dimension scores 0–10. The overall score is a weighted composite. Plans scoring ≥ 7 are considered healthy; wiggum check exits with a non-zero status if the plan is below this threshold.

Run check before generate to catch low-quality plans early:

wiggum check plan.toml
wiggum check plan.toml --json

wiggum validate

Validate a plan file without generating artifacts.

wiggum validate <plan> [--lint]
OptionDescription
<plan>Path to the plan TOML file
--lintRun lint rules to check plan quality

wiggum add-task

Add a task to an existing plan file interactively.

wiggum add-task <plan>

wiggum bootstrap

Bootstrap a plan from an existing project directory. Detects language, build system, and project structure.

wiggum bootstrap [path] [OPTIONS]
OptionDescription
[path]Path to the project directory (default: .)
--output, -oPath to write the generated plan TOML (default: <path>/plan.toml)
--forceOverwrite existing plan file without prompting

wiggum reverse

Clone a remote git repo into a tempdir and generate a plan.toml skeleton from its contents. Optionally merge a hints file (TOML for structured overrides, Markdown for freeform rules) and/or run an LLM pass to produce intelligent phases + tasks.

wiggum reverse <url> [OPTIONS]
OptionDescription
<url>Any URL git clone accepts (GitHub, GitLab, self-hosted, SSH, file://)
--hintsOptional hints file — .toml for structured, .md for freeform rules
--output, -oPath to write the generated plan TOML (default: ./plan.toml)
--forceOverwrite existing plan file without prompting
--keep-tmpKeep the cloned tempdir after generation (for debugging)
--subdirScope the clone to a specific subfolder of the repo. For GitHub URLs, /tree/<branch>/<path> works too
--github-apiPrefer the GitHub REST API for fetching repo metadata/tree/files (falls back to git clone on failure)
--llmUse an LLM to generate intelligent phases + tasks. Provider = anthropic or minimax. Requires <PROVIDER>_API_KEY env var
--llm-modelOverride the LLM model (default: claude-sonnet-4-5 for anthropic, MiniMax-M3 for minimax)
--api-keyOverride the LLM API key (otherwise read from ANTHROPIC_API_KEY / MINIMAX_API_KEY)

Examples:

# Deterministic, no LLM
wiggum reverse https://github.com/foo/bar --hints hints.toml

# Scope to a monorepo subpackage
wiggum reverse https://github.com/foo/bar/tree/main/services/api --hints hints.md

# LLM-driven phase decomposition (Anthropic Claude)
ANTHROPIC_API_KEY=sk-... wiggum reverse https://github.com/foo/bar --llm anthropic

# LLM-driven (MiniMax)
MINIMAX_API_KEY=... wiggum reverse https://github.com/foo/bar --llm minimax

# Pick a specific MiniMax model
wiggum reverse https://github.com/foo/bar --llm minimax --llm-model MiniMax-M2.7-highspeed

The hints TOML supports [project], [orchestrator], and [[phase]] blocks. See reference/example-hints.toml for the full schema, and reference/example-hints.md for the Markdown variant.

When --llm is set, the deterministic skeleton is replaced by an LLM-generated phase decomposition. The LLM receives the detected language, manifest, top-level tree, README excerpt, and your hints; it returns a JSON plan that we validate and merge. The LLM pass honours any phases you declared in your hints TOML — your structure wins over the model’s.

wiggum serve

Start the MCP server for agent integration.

wiggum serve --mcp

wiggum version

Show the CLI version and embedded git SHA.

wiggum version

Output format:

wiggum <version> (<sha|unknown>)

wiggum retro

Analyse a completed PROGRESS.md and emit retrospective improvement suggestions.

wiggum retro [OPTIONS]
OptionDescription
--progressPath to PROGRESS.md (default: PROGRESS.md)
--planPath to the plan TOML (used to correlate task slugs)
--saveSave the retrospective as a reusable pattern in ~/.wiggum/patterns/

wiggum replan

Re-generate a single task file after a failure. Reads the current plan and any failure evidence recorded in PROGRESS.md, then re-renders the task’s .md file with augmented hints.

wiggum replan <plan> --task <slug> [--dry-run]
OptionDescription
<plan>Path to the plan TOML file
--task, -tSlug of the task to re-generate (required)
--dry-runPrint the new content to stdout instead of writing to disk

Failure evidence is extracted from lines in PROGRESS.md that are tagged [~] or contain “required fix”. Extracted lines are prepended as [Previous failure] hints in the regenerated task file so the subagent has full context for the retry.

wiggum patterns

Manage the local pattern store (~/.wiggum/patterns/). Patterns are reusable TOML files derived from retrospectives that can be applied as hint augmentations to future plans.

wiggum patterns <action> [OPTIONS]

list

List all saved patterns.

wiggum patterns list

save

Save a pattern from a PROGRESS.md file (or an existing retro output).

wiggum patterns save --from <progress-path> --plan <plan-path>
OptionDescription
--fromPath to the source PROGRESS.md
--planPath to the plan TOML (provides language metadata)

apply

Apply matching patterns as additional hints to a plan file. Patterns are matched by language.

wiggum patterns apply --plan <plan-path>
OptionDescription
--planPath to the plan TOML to augment

wiggum report

Generate a post-execution report from PROGRESS.md.

wiggum report [OPTIONS]
OptionDescription
--progressPath to PROGRESS.md (default: PROGRESS.md)
--project-dirProject directory for git timeline (optional)

wiggum watch

Watch PROGRESS.md for live progress updates.

wiggum watch [OPTIONS]
OptionDescription
--progressPath to PROGRESS.md (default: PROGRESS.md)
--poll-msPoll interval in milliseconds (default: 1000)
--stall-secsSeconds before an in-progress task triggers a stall warning (default: 1800; set to 0 to disable)

When --stall-secs is non-zero, the watch display emits a ⚠ HEALTH warning next to any task that has remained [~] in-progress for longer than the threshold. The warning continues to refresh on every poll cycle until the task transitions to a terminal state.