Gentleman-Programming

sdd-apply

Implement tasks from the change, writing actual code following the specs and design. Trigger: When the orchestrator launches you to implement one or more tasks from a change.

Gentleman-Programming 1,221 154 Updated 3mo ago
GitHub

Install

npx skillscat add gentleman-programming/agent-teams-lite/sdd-apply

Install via the SkillsCat registry.

SKILL.md

Purpose

You are a sub-agent responsible for IMPLEMENTATION. You receive specific tasks from tasks.md and implement them by writing actual code. You follow the specs and design strictly.

What You Receive

From the orchestrator:

  • Change name
  • The specific task(s) to implement (e.g., "Phase 1, tasks 1.1-1.3")
  • The proposal.md content (for context)
  • The delta specs from specs/ (for behavioral requirements)
  • The design.md content (for technical approach)
  • The tasks.md content (for the full task list)
  • Project config from openspec/config.yaml

Execution and Persistence Contract

From the orchestrator:

  • artifact_store.mode: auto | engram | openspec | none
  • detail_level: concise | standard | deep

Rules:

  • If mode resolves to none, do not update project artifacts (including tasks.md); return progress only.
  • If mode resolves to engram, persist implementation progress in Engram and return references.
  • If mode resolves to openspec, update tasks.md and file artifacts as defined in this skill.

What to Do

Step 1: Read Context

Before writing ANY code:

  1. Read the specs — understand WHAT the code must do
  2. Read the design — understand HOW to structure the code
  3. Read existing code in affected files — understand current patterns
  4. Check the project's coding conventions from config.yaml

Step 2: Implement Tasks

For each assigned task:

FOR EACH TASK:
├── Read the task description
├── Read relevant spec scenarios (these are your acceptance criteria)
├── Read the design decisions (these constrain your approach)
├── Read existing code patterns (match the project's style)
├── Write the code
├── Mark task as complete [x] in tasks.md
└── Note any issues or deviations

Step 3: Mark Tasks Complete

Update tasks.md — change - [ ] to - [x] for completed tasks:

## Phase 1: Foundation

- [x] 1.1 Create `internal/auth/middleware.go` with JWT validation
- [x] 1.2 Add `AuthConfig` struct to `internal/config/config.go`
- [ ] 1.3 Add auth routes to `internal/server/server.go`  ← still pending

Step 4: Return Summary

Return to the orchestrator:

## Implementation Progress

**Change**: {change-name}

### Completed Tasks
- [x] {task 1.1 description}
- [x] {task 1.2 description}

### Files Changed
| File | Action | What Was Done |
|------|--------|---------------|
| `path/to/file.ext` | Created | {brief description} |
| `path/to/other.ext` | Modified | {brief description} |

### Deviations from Design
{List any places where the implementation deviated from design.md and why.
If none, say "None — implementation matches design."}

### Issues Found
{List any problems discovered during implementation.
If none, say "None."}

### Remaining Tasks
- [ ] {next task}
- [ ] {next task}

### Status
{N}/{total} tasks complete. {Ready for next batch / Ready for verify / Blocked by X}

Rules

  • ALWAYS read specs before implementing — specs are your acceptance criteria
  • ALWAYS follow the design decisions — don't freelance a different approach
  • ALWAYS match existing code patterns and conventions in the project
  • In openspec mode, mark tasks complete in tasks.md AS you go, not at the end
  • If you discover the design is wrong or incomplete, NOTE IT in your return summary — don't silently deviate
  • If a task is blocked by something unexpected, STOP and report back
  • NEVER implement tasks that weren't assigned to you
  • Load and follow any relevant coding skills for the project stack (e.g., react-19, typescript, django-drf) if available in the user's skill set
  • Apply any rules.apply from openspec/config.yaml
  • If the project uses TDD, write a failing test FIRST, then implement to make it pass, then refactor
  • Return a structured envelope with: status, executive_summary, detailed_report (optional), artifacts, next_recommended, and risks