Orchestrate parallel codebase mapper agents to analyze codebase and produce structured documents in .planning/codebase/ Each agent has fresh context, explores a specific focus area, and **writes documents directly**. The orchestrator only receives confirmation + line counts, then writes a summary. Output: .planning/codebase/ folder with 7 structured documents about the codebase state. **Why dedicated mapper agents:** - Fresh context per domain (no token contamination) - Agents write documents directly (no context transfer back to orchestrator) - Orchestrator only summarizes what was created (minimal context usage) - Faster execution (agents run simultaneously) **Document quality over length:** Include enough detail to be useful as reference. Prioritize practical examples (especially code patterns) over arbitrary brevity. **Always include file paths:** Documents are reference material for Claude when planning/executing. Always include actual file paths formatted with backticks: `src/services/user.ts`. Check if .planning/codebase/ already exists: ```bash ls -la .planning/codebase/ 2>/dev/null ``` **If exists:** ``` .planning/codebase/ already exists with these documents: [List files found] What's next? 1. Refresh - Delete existing and remap codebase 2. Update - Keep existing, only update specific documents 3. Skip - Use existing codebase map as-is ``` Wait for user response. If "Refresh": Delete .planning/codebase/, continue to create_structure If "Update": Ask which documents to update, continue to spawn_agents (filtered) If "Skip": Exit workflow **If doesn't exist:** Continue to create_structure. Create .planning/codebase/ directory: ```bash mkdir -p .planning/codebase ``` **Expected output files:** - STACK.md (from tech mapper) - INTEGRATIONS.md (from tech mapper) - ARCHITECTURE.md (from arch mapper) - STRUCTURE.md (from arch mapper) - CONVENTIONS.md (from quality mapper) - TESTING.md (from quality mapper) - CONCERNS.md (from concerns mapper) Continue to spawn_agents. Spawn 4 parallel gsd-codebase-mapper agents. Use Task tool with `subagent_type="gsd-codebase-mapper"` and `run_in_background=true` for parallel execution. **CRITICAL:** Use the dedicated `gsd-codebase-mapper` agent, NOT `Explore`. The mapper agent writes documents directly. **Agent 1: Tech Focus** Task tool parameters: ``` subagent_type: "gsd-codebase-mapper" run_in_background: true description: "Map codebase tech stack" ``` Prompt: ``` Focus: tech Analyze this codebase for technology stack and external integrations. Write these documents to .planning/codebase/: - STACK.md - Languages, runtime, frameworks, dependencies, configuration - INTEGRATIONS.md - External APIs, databases, auth providers, webhooks Explore thoroughly. Write documents directly using templates. Return confirmation only. ``` **Agent 2: Architecture Focus** Task tool parameters: ``` subagent_type: "gsd-codebase-mapper" run_in_background: true description: "Map codebase architecture" ``` Prompt: ``` Focus: arch Analyze this codebase architecture and directory structure. Write these documents to .planning/codebase/: - ARCHITECTURE.md - Pattern, layers, data flow, abstractions, entry points - STRUCTURE.md - Directory layout, key locations, naming conventions Explore thoroughly. Write documents directly using templates. Return confirmation only. ``` **Agent 3: Quality Focus** Task tool parameters: ``` subagent_type: "gsd-codebase-mapper" run_in_background: true description: "Map codebase conventions" ``` Prompt: ``` Focus: quality Analyze this codebase for coding conventions and testing patterns. Write these documents to .planning/codebase/: - CONVENTIONS.md - Code style, naming, patterns, error handling - TESTING.md - Framework, structure, mocking, coverage Explore thoroughly. Write documents directly using templates. Return confirmation only. ``` **Agent 4: Concerns Focus** Task tool parameters: ``` subagent_type: "gsd-codebase-mapper" run_in_background: true description: "Map codebase concerns" ``` Prompt: ``` Focus: concerns Analyze this codebase for technical debt, known issues, and areas of concern. Write this document to .planning/codebase/: - CONCERNS.md - Tech debt, bugs, security, performance, fragile areas Explore thoroughly. Write document directly using template. Return confirmation only. ``` Continue to collect_confirmations. Wait for all 4 agents to complete. Read each agent's output file to collect confirmations. **Expected confirmation format from each agent:** ``` ## Mapping Complete **Focus:** {focus} **Documents written:** - `.planning/codebase/{DOC1}.md` ({N} lines) - `.planning/codebase/{DOC2}.md` ({N} lines) Ready for orchestrator summary. ``` **What you receive:** Just file paths and line counts. NOT document contents. If any agent failed, note the failure and continue with successful documents. Continue to verify_output. Verify all documents created successfully: ```bash ls -la .planning/codebase/ wc -l .planning/codebase/*.md ``` **Verification checklist:** - All 7 documents exist - No empty documents (each should have >20 lines) If any documents missing or empty, note which agents may have failed. Continue to commit_codebase_map. Commit the codebase map: ```bash git add .planning/codebase/*.md git commit -m "$(cat <<'EOF' docs: map existing codebase - STACK.md - Technologies and dependencies - ARCHITECTURE.md - System design and patterns - STRUCTURE.md - Directory layout - CONVENTIONS.md - Code style and patterns - TESTING.md - Test structure - INTEGRATIONS.md - External services - CONCERNS.md - Technical debt and issues EOF )" ``` Continue to offer_next. Present completion summary and next steps. **Get line counts:** ```bash wc -l .planning/codebase/*.md ``` **Output format:** ``` Codebase mapping complete. Created .planning/codebase/: - STACK.md ([N] lines) - Technologies and dependencies - ARCHITECTURE.md ([N] lines) - System design and patterns - STRUCTURE.md ([N] lines) - Directory layout and organization - CONVENTIONS.md ([N] lines) - Code style and patterns - TESTING.md ([N] lines) - Test structure and practices - INTEGRATIONS.md ([N] lines) - External services and APIs - CONCERNS.md ([N] lines) - Technical debt and issues --- ## ▶ Next Up **Initialize project** — use codebase context for planning `/gsd:new-project` `/clear` first → fresh context window --- **Also available:** - Re-run mapping: `/gsd:map-codebase` - Review specific file: `cat .planning/codebase/STACK.md` - Edit any document before proceeding --- ``` End workflow. - .planning/codebase/ directory created - 4 parallel gsd-codebase-mapper agents spawned with run_in_background=true - Agents write documents directly (orchestrator doesn't receive document contents) - Read agent output files to collect confirmations - All 7 codebase documents exist - Clear completion summary with line counts - User offered clear next steps in GSD style