Skip to main content

Overview

The add-todo command captures ideas, tasks, or issues that surface during work as structured todos for later action. It extracts context from the conversation, organizes by area, and tracks in STATE.md.

Syntax

description
string
Brief description of the todo. If omitted, GSD extracts context from the recent conversation.

How It Works

  1. Extracts content from arguments or recent conversation
  2. Infers area from file paths or content (api, auth, frontend, etc.)
  3. Checks for duplicates to prevent redundant todos
  4. Creates todo file with frontmatter and structured sections
  5. Updates STATE.md to track pending todo
  6. Commits to git with descriptive message

Todo File Structure

Usage Examples

Explicit description

GSD creates:

From conversation context

During a phase execution:
GSD extracts:
  • Description: “Add indexes to user_events table”
  • Area: database
  • Related files: src/db/schema.ts
  • Context: Slow queries, missing indexes

During code review

GSD creates:

From debug session

GSD extracts from debug context:
  • Description: “Fix session timeout configuration”
  • Area: auth
  • Related: .planning/debug/intermittent-logout.md
  • Context: Debug session findings

Area Inference

GSD infers todo area from:
  1. File paths mentioned (e.g., src/auth/* → auth)
  2. Content keywords (e.g., “database query” → database)
  3. Active phase (e.g., working in API phase → api)
  4. User specification (e.g., “frontend todo: …”)
Common areas:
  • api - API endpoints and handlers
  • auth - Authentication and authorization
  • database - Schema, queries, migrations
  • frontend - UI components and pages
  • backend - Server-side logic
  • infra - Infrastructure and deployment
  • testing - Test coverage and quality
  • docs - Documentation
  • general - Miscellaneous or cross-cutting

Duplicate Detection

Before creating a todo, GSD checks for similar existing todos:
GSD finds similar:

Directory Structure

STATE.md Tracking

Todos are counted in STATE.md:

Priority Levels

Todos can have priority indicators:
High priority:
  • Security vulnerabilities
  • Production bugs
  • Blocking issues
Medium priority:
  • Performance improvements
  • Feature enhancements
  • Refactoring
Low priority:
  • Nice-to-haves
  • Documentation
  • Minor cleanup

When to Use

Perfect for

  • Ideas during development
  • Issues found in code review
  • “TODO” comments in code
  • Future improvements
  • Technical debt items
  • Follow-up from debug sessions
  • User feedback items
  • Performance optimizations

Not for

  • Urgent issues (use /gsd:debug or /gsd:quick)
  • Planned roadmap items (use /gsd:plan-phase)
  • Active work (continue current phase)

Working on Todos

After capturing todos, work on them:

Git Commits

Todo creation generates clean commits:

Success Criteria

  • ✅ Directory structure created
  • ✅ Existing areas checked
  • ✅ Content extracted (arguments or conversation)
  • ✅ Area inferred correctly
  • ✅ Duplicates checked
  • ✅ File created with slug
  • ✅ STATE.md updated
  • ✅ Git commit created