Community코딩 & 개발github.com

mattpocock/implement-spec

스펙을 코드로 구현합니다.

implement-spec란 무엇인가요?

이 스킬은 주어진 사양(spec)을 코드로 완전히 구현하는 PR(Pull Request)을 생성하는 에이전트 워크플로우를 제공합니다. 사양과 연관된 티켓들은 단순한 목록이 아니라 블로킹 관계를 가진 **작업 그래프(task graph)**로 구성되어 있어, 항상 작업 가능한 **프론티어(frontier)** 티켓 집합이 존재합니다. 서브 에이전트 간의 통신은 스펙, 티켓, 연구 노트, 이전 커밋과 같은 **컨텍스트 포인터**를 통해 최소한으로 유지하며, 최대 동시성을 위해 **구현 서브 에이전트**를 백그라운드에서 실행합니다. 주요 단계로는 사양 및 티켓 분석, 탐색 서브 에이전트를 통한 사전 조사, 브랜치 및 드래프트 PR 생성, 각 티켓 별 구현 서브 에이전트 실행 및 병합, 완료 후 코드 리뷰 및 수정, 최종 PR 검토 요청 및 정리 작업을 포함합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mattpocock/skills/tree/main/skills/in-progress/implement-spec

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

사양(spec)이 제공되었습니다. 이 사양에는 사양을 구현하는 방법을 설명하는 티켓들이 연결되어 있습니다.

목표는 단일 브랜치에서 전체 사양을 구현하는 PR을 만드는 것입니다.

티켓은 단계별 목록이 아닙니다. 티켓은 서로 블로킹 관계를 가진 **작업 그래프(task graph)**입니다. 즉, 항상 작업을 시작할 준비가 된 프론티어(frontier) 티켓 집합이 존재합니다.

서브 에이전트 간의 통신은 간결해야 합니다. 주로 컨텍스트 포인터(사양, 티켓, 연구 노트, 이전 커밋)를 통해 소통하고, 포인터를 통해 이미 얻을 수 있는 정보는 중복해서 전달하지 마세요.

구현 서브 에이전트는 가능한 경우 최대 동시성을 위해 백그라운드에서 실행해야 합니다.

단계

  1. 사양과 티켓을 읽습니다. 작업 그래프를 이해할 수 있을 만큼 충분히 읽습니다.

  2. (선택 사항) 탐색 서브 에이전트를 사용하여 티켓에 필요한 탐색(관련 코드베이스 파일 또는 외부 문서)을 수행합니다. 탐색 서브 에이전트가 파일을 저장할 수 있는지 확인하세요. 마크다운 노트를 리포지토리 외부의 모든 미래 서브 에이전트가 접근 가능한 디렉토리에 저장해야 합니다. 이렇게 하면 구현 서브 에이전트가 탐색보다는 구현에 집중할 수 있습니다.

  3. 브랜치와 드래프트 PR을 생성합니다. PR은 사양 이슈와 티켓을 '종료(closing)'하는 것으로 표시되어야 합니다.

  4. 구현 서브 에이전트를 사용하여 각 티켓을 구현합니다. 각 구현 서브 에이전트는 자체 워크트리(worktree)와 자체 브랜치에서 작업해야 합니다.

  5. 구현 서브 에이전트가 완료되면 병합 서브 에이전트를 사용하여 해당 작업을 PR 브랜치에 병합합니다.

  6. 이로 인해 사용 가능한 티켓의 프론티어가 변경되면, 더 많은 구현 서브 에이전트를 시작하여 새 티켓을 작업합니다. 이를 통해 최대 동시성을 확보할 수 있습니다.

  7. 모든 티켓이 완료되면 PR 브랜치에서 /code-review를 실행합니다. 코드 리뷰에서 제기된 모든 문제를 단일 구현 서브 에이전트에서 수정합니다.

  8. PR을 검토 준비 완료(ready for review)로 표시합니다.

  9. 모든 구현 서브 에이전트의 워크트리를 정리합니다.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

mattpocock/ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

mattpocock/caveman

Ultra-compressed communication mode. Cuts token usage ~75% by dropping filler, articles, and pleasantries while keeping full technical accuracy. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman.

mattpocock/claude-handoff

Hand the current conversation off to a fresh background agent that picks up the work immediately.

mattpocock/codebase-design

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

mattpocock/design-an-interface

Generate multiple radically different interface designs for a module using parallel sub-agents. Use when user wants to design an API, explore interface options, compare module shapes, or mentions "design it twice".

mattpocock/diagnose

Disciplined diagnosis loop for hard bugs and performance regressions. Reproduce → minimise → hypothesise → instrument → fix → regression-test. Use when user says "diagnose this" / "debug this", reports a bug, says something is broken/throwing/failing, or describes a performance regression.

mattpocock/diagnosing-bugs

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.

mattpocock/domain-modeling

Build and sharpen a project's domain model. Use when the user wants to pin down domain terminology or a ubiquitous language, record an architectural decision, or when another skill needs to maintain the domain model.

mattpocock/edit-article

Edit and improve articles by restructuring sections, improving clarity, and tightening prose. Use when user wants to edit, revise, or improve an article draft.

mattpocock/git-guardrails-claude-code

Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute. Use when user wants to prevent destructive git operations, add git safety hooks, or block git push/reset in Claude Code.

mattpocock/grilling

Grill the user relentlessly about a plan or design. Use when the user wants to stress-test a plan before building, or uses any 'grill' trigger phrases.

mattpocock/grill-me

Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".

mattpocock/grill-with-docs

Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise. Use when user wants to stress-test a plan against their project's language and documented decisions.

mattpocock/handoff

Compact the current conversation into a handoff document for another agent to pick up.

mattpocock/implement

Implement a piece of work based on a PRD or set of issues.

mattpocock/improve-codebase-architecture

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

mattpocock/loop-me

Grill me about specs for the workflows I want to build, within this workspace.

mattpocock/migrate-to-shoehorn

Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.

mattpocock/obsidian-vault

Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.

mattpocock/prototype

Build a throwaway prototype to flesh out a design — a runnable terminal app for state/business-logic questions, or several radically different UI variations toggleable from one route.

관련 스킬