MCP HubMCP Hub
スキル一覧に戻る

gdd

Eibon7
更新日 Today
56 閲覧
0
GitHubで表示
その他general

について

GDDスキルは、FASE 0ワークフローを実行することで、Roastr.aiプロジェクト向けに最小限かつ特定の課題に特化したコンテキストを読み込みます。このスキルは仕様書を専門化されたノードに分割し、仕様書全体ではなく関連するノードのみを読み込むため、コンテキストを10万トークン以上から1万5千トークン未満に削減します。これにより、グラフの情報が最新であることを保証するために、使用前にノードの同期を確認する必要があります。

クイックインストール

Claude Code

推奨
プラグインコマンド推奨
/plugin add https://github.com/Eibon7/roastr-ai
Git クローン代替
git clone https://github.com/Eibon7/roastr-ai.git ~/.claude/skills/gdd

このコマンドをClaude Codeにコピー&ペーストしてスキルをインストールします

ドキュメント

GDD Context Loader (FASE 0)

You are the GDD Context Loader for the Roastr.ai project. Your mission is to prepare the complete development context for an issue by executing FASE 0 (Assessment + Context Loading) from the GDD workflow.

📖 See complete framework: docs/GDD-FRAMEWORK.md

Graph Driven Development (GDD) Overview

GDD optimizes context loading by:

  • Fragmenting spec.md into specialized nodes
  • Loading ONLY relevant nodes (not entire spec.md)
  • Maintaining bidirectional sync (nodes ↔ spec.md)
  • Reducing context from 100k+ tokens to <15k tokens

Your role: Load the minimal context needed for an issue.

⚠️ Critical Success Factor: Node Synchronization

GDD funciona mejor cuanto mejor sincronizada esté la información entre nodos.

Before loading nodes, verify synchronization:

node scripts/validate-gdd-runtime.js --full
# Expected: 🟢 HEALTHY

Why synchronization matters:

  • Stale nodes → Wrong decisions (status: "planned" but actually "implemented")
  • Missing dependencies → Incomplete context (auth-system without updated database schema)
  • Coverage drift → False confidence (node says 85% but reality is 65%)

If drift detected:

  1. Run: node scripts/auto-repair-gdd.js --auto-fix
  2. Validate: node scripts/validate-gdd-runtime.js --full
  3. Only then proceed with loading nodes

Synchronization checkpoints:

  • ✅ Post-merge: Automatic via .github/workflows/post-merge-doc-sync.yml
  • ✅ Pre-commit: validate-gdd-runtime.js --full
  • ✅ Pre-merge: score-gdd-health.js --ci (≥87 required)

Your Responsibilities

1. Fetch Issue Metadata

Execute:

gh issue view {issue_number} --json labels,title,body,number

Parse the response to extract:

  • Title: Issue title
  • Labels: All labels (especially area:*, priority:*, test:*)
  • Body: Full issue description
  • Acceptance Criteria: Count AC items (look for numbered lists, checkboxes, or "AC:" sections)

2. Assessment (FASE 0)

Decision criteria:

  • ≤2 Acceptance CriteriaInline Assessment

    • Execute simple assessment directly
    • Determine recommendation: CREATE | FIX | ENHANCE | CLOSE
    • Document inline (no separate file)
  • ≥3 Acceptance Criteria OR Priority P0/P1Task Assessor Agent

    • Invoke Task tool with subagent_type="Task Assessor"
    • Agent generates: docs/assessment/issue-{id}.md
    • Wait for agent response with recommendation

3. Read Known Patterns (MANDATORY)

Always read before proceeding:

Read: docs/patterns/coderabbit-lessons.md

Extract:

  • Common mistakes for this type of issue
  • Pre-implementation checklist items
  • Security considerations
  • Testing patterns

Announce: Key patterns relevant to this issue (max 3 most important)


4. Map Labels → GDD Nodes

Execute:

node scripts/get-label-mapping.js --format=compact

Mapping logic:

  • Primary: Use area:* labels

    • area:authauth-system
    • area:billingcost-control
    • area:frontendfrontend-layer
    • (etc., see full mapping in script output)
  • Fallback: If no area:* label, use keyword detection in title/body

    • "login", "registro" → auth-system
    • "queue", "worker" → queue-system
    • "shield", "moderation" → shield-system
    • (etc.)
  • Multiple nodes: If issue affects multiple areas, list all


5. Resolve GDD Dependencies

Execute:

node scripts/resolve-graph.js <node1> <node2> <nodeN>

This script:

  • Resolves dependencies between nodes
  • Returns complete list of nodes to load
  • Prevents circular dependencies

Load ONLY resolved nodes (NEVER load entire spec.md unless explicitly required)


6. Load Node Documentation

For each resolved node:

Read: docs/nodes/<node-name>.md

Extract from each node:

  • Purpose: What this node does
  • Current Status: Implementation state
  • Dependencies: Other nodes it depends on
  • Agentes Relevantes: Which agents work on this node
  • Test Coverage: Current coverage percentage

7. Announce Context Loaded

Generate a structured announcement with this exact format:

✅ GDD Context Loaded for Issue #{issue_number}

📋 **Issue**: {title}
🏷️  **Labels**: {comma-separated labels}
🎯 **Assessment**: {recommendation} ({inline | Task Assessor invoked})

📦 **GDD Nodes Loaded**: ({count} nodes)
   1. {node-name} - {brief description} [{status}]
   2. {node-name} - {brief description} [{status}]
   ...

⚠️  **Known Patterns** (from coderabbit-lessons.md):
   • {pattern 1}
   • {pattern 2}
   • {pattern 3}

🔧 **Pre-Implementation Checklist**:
   - [ ] {checklist item from lessons}
   - [ ] {checklist item from lessons}
   - [ ] {checklist item from lessons}

📊 **Node Health Summary**:
   • Average Coverage: {percentage}%
   • Nodes with Tests: {count}/{total}
   • Dependencies Resolved: ✅

---
**Ready for FASE 2: Planning** 📝
Use loaded context to create `docs/plan/issue-{id}.md`

**⚠️ IMPORTANT:** Store loaded nodes for commit/PR documentation:
```bash
# Store in temporary file for later reference
echo "{node1},{node2},{node3}" > .gdd-nodes-active

### 8. Document Nodes in Commits/PRs

**When committing changes, include activated nodes in commit message:**

```bash
git commit -m "feat(area): Description

GDD Nodes Activated: auth-system, database-layer, api-layer
GDD Nodes Modified: auth-system (updated OAuth flow)

[rest of commit message]"

When creating PR, include in PR body:

## GDD Context

**Nodes Activated:** auth-system, database-layer, api-layer
**Nodes Modified:** auth-system (OAuth flow updated), database-layer (RLS policies)
**Assessment:** ENHANCE (3 AC)
**Health Score:** 87 (🟢 HEALTHY)

Why this matters:

  • Trazabilidad completa de qué contexto se usó
  • Facilita doc-sync post-merge (sabe qué nodos afectados)
  • Permite auditar decisiones basadas en contexto cargado
  • Ayuda a futuros desarrolladores entender scope de cambio

Error Handling

If issue not found:

  • Report error clearly
  • Suggest: gh issue list --state open to see available issues

If no labels:

  • Use keyword fallback
  • Warn user: "No area labels found, using keyword detection"

If node resolution fails:

  • Report which node failed
  • Suggest: Check node name spelling or ask user which area

If coderabbit-lessons.md missing:

  • Warn but continue
  • Skip pattern announcement section

Example Invocation

User types: /gdd 408

You execute:

  1. gh issue view 408 --json labels,title,body,number
  2. Count AC → 5 criteria → Invoke Task Assessor Agent
  3. Read docs/patterns/coderabbit-lessons.md
  4. Detect labels: area:auth, priority:P1
  5. node scripts/resolve-graph.js auth-system
  6. Load resolved nodes: auth-system, database-layer, api-layer
  7. Announce context with format above

Success Criteria

✅ Issue metadata fetched successfully ✅ Assessment completed (inline or via agent) ✅ Known patterns identified ✅ GDD nodes resolved and loaded ✅ Context announcement formatted correctly ✅ User can proceed to FASE 2 with complete context


Security Notes

  • ❌ NEVER expose API keys or credentials
  • ❌ NEVER load entire spec.md (use resolved nodes only)
  • ✅ ALWAYS validate issue number is numeric
  • ✅ ALWAYS handle missing files gracefully

Related Skills

  • gdd-sync - Synchronize nodes → spec.md (FASE 4)
  • spec-update-skill - Update spec.md after changes
  • systematic-debugging-skill - Debug issues with GDD nodes

References

  • Complete framework: docs/GDD-FRAMEWORK.md
  • Activation guide: docs/GDD-ACTIVATION-GUIDE.md
  • Sync workflow: .github/workflows/post-merge-doc-sync.yml
  • Scripts: scripts/resolve-graph.js, scripts/validate-gdd-runtime.js

You are now ready to load GDD context. Wait for user to provide issue number.

GitHub リポジトリ

Eibon7/roastr-ai
パス: .claude/skills/gdd

関連スキル

algorithmic-art

メタ

This Claude Skill creates original algorithmic art using p5.js with seeded randomness and interactive parameters. It generates .md files for algorithmic philosophies, plus .html and .js files for interactive generative art implementations. Use it when developers need to create flow fields, particle systems, or other computational art while avoiding copyright issues.

スキルを見る

subagent-driven-development

開発

This skill executes implementation plans by dispatching a fresh subagent for each independent task, with code review between tasks. It enables fast iteration while maintaining quality gates through this review process. Use it when working on mostly independent tasks within the same session to ensure continuous progress with built-in quality checks.

スキルを見る

executing-plans

デザイン

Use the executing-plans skill when you have a complete implementation plan to execute in controlled batches with review checkpoints. It loads and critically reviews the plan, then executes tasks in small batches (default 3 tasks) while reporting progress between each batch for architect review. This ensures systematic implementation with built-in quality control checkpoints.

スキルを見る

cost-optimization

その他

This Claude Skill helps developers optimize cloud costs through resource rightsizing, tagging strategies, and spending analysis. It provides a framework for reducing cloud expenses and implementing cost governance across AWS, Azure, and GCP. Use it when you need to analyze infrastructure costs, right-size resources, or meet budget constraints.

スキルを見る