Back to skills

Agent Skill

Implement Spec

implement-spec

Implement the result of /to-spec and /to-tickets in code.

MattpocockGeneralShell

344K installs

•

mattpocock/skills

•

by Mattpocock

Score

9.0

/ 10

Installs

344K

Repo Stars

317.9K

Last Updated

2d ago

Fresh

Quality Ratio

86%

Description

Verified

Language

Shell

First Published

Aug 2026

Summary

The Implement Spec agent skill orchestrates the complex process of turning a technical specification, defined by a task graph of tickets, into a fully implemented pull request by intelligently managing concurrent subagent activity. This agent skill is invaluable for developers and engineering teams tackling large features or projects that require decomposing a specification into an interconnected task graph and managing concurrent development. It is a skill with 142K installs, indicating significant adoption within the agent skill registry. This agent skill guides the AI to treat tickets as a "task graph" with blocking relationships, identifying a "frontier" of available tasks for subagents. It instructs "implementer subagents" to work concurrently on these tickets in separate worktrees and branches, maximizing parallel execution and merging their progress via a "merger subagent." Communication between subagents is sparse, relying on "context pointers" to the spec, tickets, and commits to prevent redundant information sharing and ensure efficient collaboration as the task frontier evolves.

Skill Definition

You have been provided a spec. This spec should have tickets associated with it, describing how to implement the spec.

The issue tracker should have been provided to you. If not, tell the user to run /setup-matt-pocock-skills.

The goal is the entire spec implemented on a single integration branch, with every ticket resolved the way the issue tracker closes work.

The tickets are not a list of steps. They are a task graph with blocking relationships between them. This means there is always a frontier of tickets which are ready to be grabbed.

Start every subagent with a fresh context window.

Communication to and from subagents should be sparse. Communicate primarily through context pointers: to the spec, tickets, research notes, and previous commits. Don't duplicate information already available via pointers.

Implementer subagents should be run in the background where possible for maximum concurrency.

Steps

  1. Read the spec and tickets to understand the task graph.

  2. (optional) Use an exploration subagent to conduct any exploration required by the tickets - relevant codebase files or external documentation. Ensure the exploration subagent can save files - it should save its markdown notes in a directory outside the repo, accessible by all future subagents. This lets implementer subagents focus on implementation rather than exploration.

  3. Create the integration branch. If the issue tracker closes work through PRs, or the user asks for one, open a draft PR after the first merge in step 5 (a branch with no commits ahead of main can't open one), marked as closing the spec and tickets.

  4. Use a fresh implementer subagent for each ticket, each in its own worktree on its own branch. Each implementer subagent:

    • confirms its worktree is based on the integration branch before starting, and resets onto it if not;
    • calls the Skill tool with tdd to build the ticket;
    • merges the integration branch tip into its own branch before reporting done
  5. Once an implementer subagent completes, merge its work to the integration branch with a merger subagent.

  6. If this changes the frontier of available tickets, kick off more implementer subagents to work on the new tickets. This allows for maximum concurrency.

  7. Once all tickets are complete, call the Skill tool with code-review on the integration branch. Fix all issues raised by the code review in a single fresh implementer subagent.

  8. If a draft PR exists, mark it ready for review. Otherwise, resolve each ticket the way the issue tracker closes work, and report the integration branch.

  9. Clean up all implementer subagent worktrees.

How to Use

Use in O-mega

Claude Code

npx skills add mattpocock/skills implement-spec