singularity-forge/docs/auto-mode.md
Tom Boucher 59134fa426 docs: update documentation for v2.23 release features (#788)
New v2.23 features documented:

- getting-started.md: Add VS Code extension install section (chat participant,
  sidebar dashboard, command palette, RPC requirement)
- README.md: Add VS Code extension to documentation index, update troubleshooting
  link to include forensics
- docs/README.md: Add VS Code extension to user documentation table
- architecture.md: Add headless mode, MCP server mode, and VS Code extension to
  system structure diagram; expand Browser Tools description to cover 10 new tools
  (PDF export, device emulation, visual regression, structured extraction, route
  mocking, etc.); add missing extensions (Async Jobs, Remote Questions, TTSR,
  Universal Config)
- auto-mode.md: Add validate-milestone phase to the pipeline diagram and phase
  descriptions — reconciliation gate before milestone completion
- configuration.md: Add models.json resolution section — custom model definitions
  with ~/.gsd/agent/models.json and ~/.pi/agent/models.json fallback

Co-authored-by: TÂCHES <afromanguy@me.com>
2026-03-16 21:56:00 -06:00

6.9 KiB

Auto Mode

Auto mode is GSD's autonomous execution engine. Run /gsd auto, walk away, come back to built software with clean git history.

How It Works

Auto mode is a state machine driven by files on disk. It reads .gsd/STATE.md, determines the next unit of work, creates a fresh agent session, injects a focused prompt with all relevant context pre-inlined, and lets the LLM execute. When the LLM finishes, auto mode reads disk state again and dispatches the next unit.

The Loop

Each slice flows through phases automatically:

Research → Plan → Execute (per task) → Complete → Reassess Roadmap → Next Slice
                                                                      ↓ (all slices done)
                                                              Validate Milestone → Complete Milestone
  • Research — scouts the codebase and relevant docs
  • Plan — decomposes the slice into tasks with must-haves
  • Execute — runs each task in a fresh context window
  • Complete — writes summary, UAT script, marks roadmap, commits
  • Reassess — checks if the roadmap still makes sense
  • Validate Milestone — reconciliation gate after all slices complete; compares roadmap success criteria against actual results, catches gaps before sealing the milestone

Key Properties

Fresh Session Per Unit

Every task, research phase, and planning step gets a clean context window. No accumulated garbage. No degraded quality from context bloat. The dispatch prompt includes everything needed — task plans, prior summaries, dependency context, decisions register — so the LLM starts oriented instead of spending tool calls reading files.

Context Pre-Loading

The dispatch prompt is carefully constructed with:

Inlined Artifact Purpose
Task plan What to build
Slice plan Where this task fits
Prior task summaries What's already done
Dependency summaries Cross-slice context
Roadmap excerpt Overall direction
Decisions register Architectural context

The amount of context inlined is controlled by your token profile. Budget mode inlines minimal context; quality mode inlines everything.

Git Isolation

GSD isolates milestone work using one of three modes (configured via git.isolation in preferences):

  • worktree (default): Each milestone runs in its own git worktree at .gsd/worktrees/<MID>/ on a milestone/<MID> branch. All slice work commits sequentially — no branch switching, no merge conflicts mid-milestone. When the milestone completes, it's squash-merged to main as one clean commit.
  • branch: Work happens in the project root on a milestone/<MID> branch. Useful for submodule-heavy repos where worktrees don't work well.
  • none: Work happens directly on your current branch. No worktree, no milestone branch. Ideal for hot-reload workflows where file isolation breaks dev tooling.

See Git Strategy for details.

Parallel Execution

When your project has independent milestones, you can run them simultaneously. Each milestone gets its own worker process and worktree. See Parallel Orchestration for setup and usage.

Crash Recovery

A lock file tracks the current unit. If the session dies, the next /gsd auto reads the surviving session file, synthesizes a recovery briefing from every tool call that made it to disk, and resumes with full context.

Stuck Detection

If the same unit dispatches twice (the LLM didn't produce the expected artifact), GSD retries once with a deep diagnostic prompt. If it fails again, auto mode stops with the exact file it expected, so you can intervene.

Post-Mortem Investigation

When auto mode fails or produces unexpected results, /gsd forensics provides structured post-mortem analysis. It inspects activity logs, crash locks, and session state to identify root causes — whether the failure was a model error, missing context, a stuck loop, or a broken tool call. See Troubleshooting for more on diagnosing issues.

Timeout Supervision

Three timeout tiers prevent runaway sessions:

Timeout Default Behavior
Soft 20 min Warns the LLM to wrap up
Idle 10 min Detects stalls, intervenes
Hard 30 min Pauses auto mode

Recovery steering nudges the LLM to finish durable output before timing out. Configure in preferences:

auto_supervisor:
  soft_timeout_minutes: 20
  idle_timeout_minutes: 10
  hard_timeout_minutes: 30

Cost Tracking

Every unit's token usage and cost is captured, broken down by phase, slice, and model. The dashboard shows running totals and projections. Budget ceilings can pause auto mode before overspending.

See Cost Management.

Adaptive Replanning

After each slice completes, the roadmap is reassessed. If the work revealed new information that changes the plan, slices are reordered, added, or removed before continuing. This can be skipped with the balanced or budget token profiles.

Controlling Auto Mode

Start

/gsd auto

Pause

Press Escape. The conversation is preserved. You can interact with the agent, inspect state, or resume.

Resume

/gsd auto

Auto mode reads disk state and picks up where it left off.

Stop

/gsd stop

Stops auto mode gracefully. Can be run from a different terminal.

Steer

/gsd steer

Hard-steer plan documents during execution without stopping the pipeline. Changes are picked up at the next phase boundary.

Capture

/gsd capture "add rate limiting to API endpoints"

Fire-and-forget thought capture. Captures are triaged automatically between tasks. See Captures & Triage.

Visualize

/gsd visualize

Open the workflow visualizer — interactive tabs for progress, dependencies, metrics, and timeline. See Workflow Visualizer.

Dashboard

Ctrl+Alt+G or /gsd status shows real-time progress:

  • Current milestone, slice, and task
  • Auto mode elapsed time and phase
  • Per-unit cost and token breakdown
  • Cost projections
  • Completed and in-progress units
  • Pending capture count (when captures are awaiting triage)

Phase Skipping

Token profiles can skip certain phases to reduce cost:

Phase budget balanced quality
Milestone Research Skipped Runs Runs
Slice Research Skipped Skipped Runs
Reassess Roadmap Skipped Runs Runs

See Token Optimization for details.

Dynamic Model Routing

When enabled, auto-mode automatically selects cheaper models for simple units (slice completion, UAT) and reserves expensive models for complex work (replanning, architectural tasks). See Dynamic Model Routing.