CLI Reference
Complete reference for all godark commands. Global flag: --config <path> overrides the config file (default: godark.yaml).
Core Workflow
godark run Run the development loop for a milestone Fetch issues from a GitHub milestone, resolve dependencies, and process each unblocked issue through the implement → review → merge loop. Use "godark implement" to process individual issues by number.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | GitHub repository (owner/repo) |
--milestone | string | GitHub milestone to process (exact title) |
--tag | string | Milestone tag (e.g., phase-3) — resolved to full milestone title |
--max-retries | int | Maximum review/fix retry cycles (default: 3) |
--dry-run | bool | Print execution plan without taking action |
--force | bool | Clear any existing run lock before starting |
--no-judge | bool | Disable the container health judge |
--model | string | Claude model: sonnet (default) or opus |
--no-tui | bool | Disable TUI and use plain-text output |
--auto-merge-feature | string | Feature merge strategy: none, low_risk, all (default: none) |
--auto-merge-rollup | string | Rollup merge strategy: none, manual, auto (default: manual) |
--config | string | Path to configuration file (default: godark.yaml) |
--punchlist | string | Write manual testing punchlist to file |
--base-branch | string | Base branch for PRs (overrides repo default) |
--default-branch | string | Default branch of the repository (auto-detected if omitted) |
--watch | bool | After first pass, keep polling for PR reviews until none await review |
godark run --tag phase-3 --auto-merge-feature low_risk godark implement Implement one or more GitHub issues by number Fetch specific issues and run the implement → review → merge loop directly, without milestone or dependency resolution. Issue numbers may be provided as positional arguments, via --issues, or both.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | GitHub repository (owner/repo) |
--issues | string | Comma-separated issue numbers (e.g. 160,161,162) |
--max-retries | int | Maximum review/fix retry cycles (default: 3) |
--dry-run | bool | Print issue details and exit |
--no-judge | bool | Disable the container health judge |
--model | string | Claude model: sonnet (default) or opus |
--no-tui | bool | Disable TUI and use plain-text output |
--auto-merge-feature | string | Feature merge strategy: none, low_risk, all (default: none) |
--auto-merge-rollup | string | Rollup merge strategy: none, manual, auto (default: manual) |
--force | bool | Clear any existing run lock before starting |
--config | string | Path to configuration file (default: godark.yaml) |
--base-branch | string | Base branch for PRs (overrides repo default) |
--default-branch | string | Default branch of the repository (auto-detected if omitted) |
--punchlist | string | Write manual testing punchlist to file |
godark implement 160 161 162 --auto-merge-feature all godark watch Poll for PRs awaiting human review and address feedback Long-lived process that detects CHANGES_REQUESTED reviews on PRs labeled godark:awaiting-human-review. Resumes the implementer agent to address feedback, then re-labels the PR. When APPROVED is detected, the PR is merged automatically.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | GitHub repository (owner/repo) |
--config | string | Path to configuration file (default: godark.yaml) |
--no-tui | bool | Disable TUI and use plain-text output |
godark watch --repo owner/repo Project Setup
godark init Initialize a project with godark skills and default config Write Claude Code skill files and a default godark.yaml to the current directory. Skills are always overwritten. When creating a new config, auto-detects the project toolchain and writes build/test/format/lint commands. When --repo is provided and the config already exists, updates the repo field.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | GitHub repository (owner/repo) — populates repo field and creates labels |
--reset-claude-md | bool | Replace existing CLAUDE.md with the harness template |
godark init --repo owner/my-project godark new Create a new project with all harness files Create a new directory, initialize git, and scaffold all harness files including CLAUDE.md, .gitignore, skills, godark.yaml, and documentation structure.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | GitHub repository (owner/repo) |
godark new my-project --repo owner/my-project Validation
godark vet Validate roadmap docs and issue quality Check that issues, scenarios, planning docs, and architecture definitions are well-formed and actionable by agents.
Subcommands
vet issues | Validate GitHub issue structure for agent consumption |
vet scenarios | Validate scenario spec files against canonical format |
vet roadmap | Validate planning docs against milestone issues |
vet architecture | Validate architecture layer definitions for DAG correctness |
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | GitHub repository (owner/repo) |
--milestone | string | GitHub milestone to validate |
--tag | string | Milestone tag — resolved to full title |
--json | bool | Output findings as JSON |
--scenario-dir | string | Path to scenario specs (default: tests/scenarios/) |
--planning-dir | string | Path to planning docs (default: docs/planning/) |
--architecture-file | string | Path to architecture JSON (default: docs/architecture.json) |
godark vet issues --tag phase-3 --json Operations
godark status Start the dashboard web server Serve a local dashboard UI that lists all runs from ~/.godark/runs/, with per-issue outcomes, agent logs, and cost tracking.
Flags
| Flag | Type | Description |
|---|---|---|
--port | int | Port to listen on (default: 8374) |
godark status --port 9090 godark analyze Analyze run data and print aggregate report Read run data from the stats database (~/.godark/stats.db), apply filters, and print outcome distribution, flag frequencies, retry statistics, cost statistics, and detected prompt gaps.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | Filter to runs for this repository |
--milestone | string | Filter to runs for this milestone |
--since | string | Only runs at or after this date (YYYY-MM-DD) |
--until | string | Only runs at or before this date (YYYY-MM-DD) |
--json | bool | Output as JSON |
--legacy | bool | Fall back to filesystem scan (~/.godark/runs/) instead of the stats database |
godark analyze --repo owner/repo --since 2026-01-01 --json godark report Generate a sprint summary report Read run data from the stats database, apply a date range and optional repo filter, and print a sprint summary report. Includes an LLM-generated executive summary by default.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | Filter to runs for this repository |
--since | string | Duration before --until to start report window (e.g. 2w, 30d, 7d; default: 2w) |
--until | string | End of report window (YYYY-MM-DD; default: now) |
--format | string | Output format: terminal, markdown, or html (default: terminal) |
--no-summary | bool | Skip LLM executive summary generation |
godark report --since 2w --format markdown godark doctor Verify system dependencies and environment Pre-flight checks for system requirements: Docker running, gh CLI installed and authenticated, Anthropic auth token set.
godark doctor godark unlock Clear a stale run lock Remove the godark-in-progress label from all open issues and delete the local lock file. Use when a previous run crashed mid-execution.
Flags
| Flag | Type | Description |
|---|---|---|
--repo | string | GitHub repository (owner/repo) |
godark unlock --repo owner/repo godark version Print the version and build time godark version