feat: add GSD integration skill for existing projects#57
feat: add GSD integration skill for existing projects#57leonvanzyl merged 1 commit intoAutoForgeAI:masterfrom
Conversation
Add skill to convert GSD codebase mapping (.planning/codebase/*.md) to Autocoder app_spec.txt format. This enables onboarding existing projects to Autocoder without manually writing the XML spec. Workflow: 1. Run /gsd:map-codebase on existing project 2. Run /gsd-to-autocoder-spec to generate app_spec.txt 3. Start Autocoder normally Closes AutoForgeAI#55 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
📝 WalkthroughWalkthroughThis pull request adds documentation and specification files for converting GSD (Get Shit Done) codebase mappings into Autocoder's app_spec.txt format, enabling automated specification generation from existing codebases without manual XML authoring. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In @.claude/skills/gsd-to-autocoder-spec/SKILL.md:
- Around line 90-102: The mapping table in SKILL.md is inconsistent with
app-spec-format.md: reconcile by updating SKILL.md’s table entries so they match
app-spec-format.md’s mappings — specifically change STRUCTURE.md mapping from
`<ui_layout>` to “Informs feature organization” (or map it to `<overview>` if
app-spec-format.md uses that), and add the missing mappings: ARCHITECTURE.md
Pattern → `<overview>` and STACK.md Runtime → `<prerequisites>`; ensure all
other rows (e.g., STACK.md Languages → `<technology_stack>`, STACK.md Frameworks
→ `<frontend>, <backend>`, STACK.md Dependencies → `<prerequisites>`,
ARCHITECTURE.md Layers → `<core_features>`, ARCHITECTURE.md Data Flow →
`<key_interactions>`, ARCHITECTURE.md Entry Points → `<implementation_steps>`,
INTEGRATIONS.md APIs → `<api_endpoints_summary>`, INTEGRATIONS.md Services →
`<prerequisites>`) exactly match app-spec-format.md so both documents are
aligned.
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
.claude/commands/gsd-to-autocoder-spec.md.claude/skills/gsd-to-autocoder-spec/SKILL.md.claude/skills/gsd-to-autocoder-spec/references/app-spec-format.md
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2026-01-10T08:23:04.012Z
Learnt from: CR
Repo: leonvanzyl/autocoder PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-01-10T08:23:04.012Z
Learning: Two-agent pattern: Initializer Agent reads app spec and creates features in first session; Coding Agent implements features one by one in subsequent sessions
Applied to files:
.claude/skills/gsd-to-autocoder-spec/references/app-spec-format.md
🪛 markdownlint-cli2 (0.18.1)
.claude/skills/gsd-to-autocoder-spec/SKILL.md
41-41: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
193-193: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (6)
.claude/commands/gsd-to-autocoder-spec.md (1)
1-10: LGTM! Clean command specification.The YAML front matter correctly defines allowed tools (Read, Write, Bash, Glob, Grep) that align with the workflow requirements in the referenced SKILL.md. The file reference at line 10 appropriately points to the detailed skill documentation.
.claude/skills/gsd-to-autocoder-spec/references/app-spec-format.md (1)
1-293: Comprehensive XML format reference.The documentation provides a complete and well-structured reference for Autocoder's app_spec.txt XML format. Each section includes clear examples, and the feature writing rules (lines 120-125) are actionable and specific. The feature count guidelines (lines 268-277) offer practical targets for different project complexities.
.claude/skills/gsd-to-autocoder-spec/SKILL.md (4)
1-28: Well-structured skill documentation.The YAML front matter clearly defines the skill with comprehensive trigger phrases. Prerequisites appropriately distinguish between required (STACK.md, ARCHITECTURE.md, STRUCTURE.md) and optional (CONVENTIONS.md, INTEGRATIONS.md) GSD mapping files.
31-80: Solid workflow steps with proper error handling.The first three steps implement robust verification and data extraction:
- Step 1 appropriately halts execution if prerequisites are missing
- Step 2's shell commands correctly handle optional files with
2>/dev/null || true- Step 3 gracefully handles missing package.json
117-169: Sample XML template provides good starting point.The heredoc template includes all major sections with clear placeholder comments indicating data sources. The structure aligns with the XML format reference, and the feature generation guidelines (lines 104-112) match the counts in app-spec-format.md.
172-209: Comprehensive validation and completion steps.Step 5's validation checklist ensures the generated spec meets quality requirements. Step 6 provides clear next steps with both CLI and UI options for starting Autocoder, correctly noting that the Initializer will create features.db from the spec (aligning with the two-agent pattern from learnings).
| **Mapping GSD Documents to Autocoder Spec:** | ||
|
|
||
| | GSD Source | Autocoder Target | | ||
| |------------|------------------| | ||
| | STACK.md Languages | `<technology_stack>` | | ||
| | STACK.md Frameworks | `<frontend>`, `<backend>` | | ||
| | STACK.md Dependencies | `<prerequisites>` | | ||
| | ARCHITECTURE.md Layers | `<core_features>` categories | | ||
| | ARCHITECTURE.md Data Flow | `<key_interactions>` | | ||
| | ARCHITECTURE.md Entry Points | `<implementation_steps>` | | ||
| | STRUCTURE.md Layout | `<ui_layout>` (if frontend) | | ||
| | INTEGRATIONS.md APIs | `<api_endpoints_summary>` | | ||
| | INTEGRATIONS.md Services | `<prerequisites>` | |
There was a problem hiding this comment.
Reconcile mapping table with app-spec-format.md.
The mapping table differs from the one in app-spec-format.md (lines 278-293):
Inconsistencies:
- STRUCTURE.md Layout: This file maps to
<ui_layout>(if frontend), but app-spec-format.md says it "Informs feature organization" - Missing mappings: app-spec-format.md includes:
- ARCHITECTURE.md Pattern →
<overview> - STACK.md Runtime →
<prerequisites>
- ARCHITECTURE.md Pattern →
Ensure both documents use the same mapping to avoid confusion during conversion.
📋 Suggested alignment
Either update this table to match app-spec-format.md or update app-spec-format.md to match this. Recommended approach is to align this file with app-spec-format.md:
| GSD Source | Autocoder Target |
|------------|------------------|
| STACK.md Languages | `<technology_stack>` |
+| STACK.md Runtime | `<prerequisites>` |
| STACK.md Frameworks | `<frontend>`, `<backend>` |
| STACK.md Dependencies | `<prerequisites>` |
+| ARCHITECTURE.md Pattern | `<overview>` |
| ARCHITECTURE.md Layers | `<core_features>` categories |
| ARCHITECTURE.md Data Flow | `<key_interactions>` |
| ARCHITECTURE.md Entry Points | `<implementation_steps>` |
-| STRUCTURE.md Layout | `<ui_layout>` (if frontend) |
+| STRUCTURE.md Layout | Informs feature organization |
| INTEGRATIONS.md APIs | `<api_endpoints_summary>` |
| INTEGRATIONS.md Services | `<prerequisites>` |📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| **Mapping GSD Documents to Autocoder Spec:** | |
| | GSD Source | Autocoder Target | | |
| |------------|------------------| | |
| | STACK.md Languages | `<technology_stack>` | | |
| | STACK.md Frameworks | `<frontend>`, `<backend>` | | |
| | STACK.md Dependencies | `<prerequisites>` | | |
| | ARCHITECTURE.md Layers | `<core_features>` categories | | |
| | ARCHITECTURE.md Data Flow | `<key_interactions>` | | |
| | ARCHITECTURE.md Entry Points | `<implementation_steps>` | | |
| | STRUCTURE.md Layout | `<ui_layout>` (if frontend) | | |
| | INTEGRATIONS.md APIs | `<api_endpoints_summary>` | | |
| | INTEGRATIONS.md Services | `<prerequisites>` | | |
| **Mapping GSD Documents to Autocoder Spec:** | |
| | GSD Source | Autocoder Target | | |
| |------------|------------------| | |
| | STACK.md Languages | `<technology_stack>` | | |
| | STACK.md Runtime | `<prerequisites>` | | |
| | STACK.md Frameworks | `<frontend>`, `<backend>` | | |
| | STACK.md Dependencies | `<prerequisites>` | | |
| | ARCHITECTURE.md Pattern | `<overview>` | | |
| | ARCHITECTURE.md Layers | `<core_features>` categories | | |
| | ARCHITECTURE.md Data Flow | `<key_interactions>` | | |
| | ARCHITECTURE.md Entry Points | `<implementation_steps>` | | |
| | STRUCTURE.md Layout | Informs feature organization | | |
| | INTEGRATIONS.md APIs | `<api_endpoints_summary>` | | |
| | INTEGRATIONS.md Services | `<prerequisites>` | |
🤖 Prompt for AI Agents
In @.claude/skills/gsd-to-autocoder-spec/SKILL.md around lines 90 - 102, The
mapping table in SKILL.md is inconsistent with app-spec-format.md: reconcile by
updating SKILL.md’s table entries so they match app-spec-format.md’s mappings —
specifically change STRUCTURE.md mapping from `<ui_layout>` to “Informs feature
organization” (or map it to `<overview>` if app-spec-format.md uses that), and
add the missing mappings: ARCHITECTURE.md Pattern → `<overview>` and STACK.md
Runtime → `<prerequisites>`; ensure all other rows (e.g., STACK.md Languages →
`<technology_stack>`, STACK.md Frameworks → `<frontend>, <backend>`, STACK.md
Dependencies → `<prerequisites>`, ARCHITECTURE.md Layers → `<core_features>`,
ARCHITECTURE.md Data Flow → `<key_interactions>`, ARCHITECTURE.md Entry Points →
`<implementation_steps>`, INTEGRATIONS.md APIs → `<api_endpoints_summary>`,
INTEGRATIONS.md Services → `<prerequisites>`) exactly match app-spec-format.md
so both documents are aligned.
|
Thank you. |
…rgeAI#57) Implemented derive_tool_policy() function that generates appropriate tool_policy configurations based on task_type with: - Tool sets for coding, testing, refactoring, documentation, audit, custom - Standard forbidden_patterns applied to ALL task types (security baseline) - Task-specific forbidden_patterns for additional restrictions per type - Tool hints for proper usage guidance - Support for allowed_directories, additional_tools, additional_patterns Task type capabilities: - coding: file edit (Read/Write/Edit), Bash (restricted), feature tools - testing: file read only, Bash (test commands), feature status tools - documentation: file write (docs), read-only code access, web research - audit: read-only everything - no modifications allowed - refactoring: file edit, no feature status changes - custom: minimal default set (fallback) Test Results: - tests/test_feature_57_tool_policy_derivation.py: 69/69 tests PASS - tests/test_tool_policy.py: 50/50 tests PASS (no regressions) - tests/verify_feature_57.py: All 8 verification steps PASS Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Feature AutoForgeAI#58: Budget Derivation from Task Complexity - VERIFIED - All 110 unit tests pass - All 9 verification steps pass - No regressions in related tests (Feature AutoForgeAI#57) - Progress: 77/103 features passing (74.8%) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
feat: add GSD integration skill for existing projects
Summary
/gsd-to-autocoder-specChanges
How It Works
Test plan
/gsd:map-codebaseon an existing project/gsd-to-autocoder-specto generate specprompts/app_spec.txthas correct XML structureCloses #55
🤖 Generated with Claude Code
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.