Skill Tracer
Skills › Skills For Real Engineers › implement-spec

implement-spec

skill · 42 lines · MIT · skills/engineering/implement-spec/SKILL.md

The facts

Its description

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

The description the agent reads to decide when to use it.

From its settingsline 3

When it starts

This skill is not chosen from its description: it carries `disable-model-invocation: true`, so the agent never picks it up on its own and only follows it once the user invokes it as a command with a spec (and its tickets) already in hand. Its description frames it as implementing the result of /to-spec and /to-tickets in code.

A model's summary of when it is used.

A model's reading

Who can start it

Only you

Only you can start it. The agent never picks it on its own.

From its settingsline 4

Starts other agents

9 lines mention starting other agents (first 5 linked)

Lines in the file that mention starting another agent. Found by matching words, so treat them as pointers.

Found by matching wordsline 15 line 17 line 19 line 25 line 29

What it leads to

Other skills this one hands off to, calls, requires or offers instead, as a model read them.

A model's reading

What leads to it

Other skills that hand off to this one, call it, require it or offer it instead, as a model read them.

A model's reading

Licence

MIT, from LICENSE

The terms its author shares it under, which let it be shown here.

From the repositorylicence text
Other files in this skill (1) Close

The text

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1---
2name: implement-spec
3description: "Implement the result of /to-spec and /to-tickets in code."
4disable-model-invocation: true
5---
6
7You have been provided a spec. This spec should have tickets associated with it, describing how to implement the spec.
8
9The issue tracker should have been provided to you. If not, tell the user to run `/setup-matt-pocock-skills`.
11The goal is the entire spec implemented on a single **integration branch**, with every ticket resolved the way the issue tracker closes work.
13The 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.
15Start every subagent with a fresh context window.
17Communication 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.
19**Implementer subagents** should be run in the background where possible for maximum concurrency.

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.

Raw lines 1 to 20
Names a skill to-spec :3
Names a skill to-tickets :3
Names a skill setup-matt-pocock-skills :9
Starts an agent subagent :15
Starts an agent subagents :17
21## Steps
231. Read the spec and tickets to understand the task graph.
252. (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.
273. 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.
294. Use a fresh **implementer subagent** for each ticket, each in its own worktree on its own branch. Each implementer subagent:
30 - confirms its worktree is based on the integration branch before starting, and resets onto it if not;
31 - calls the Skill tool with `tdd` to build the ticket;
32 - merges the integration branch tip into its own branch before reporting done
345. Once an **implementer subagent** completes, merge its work to the integration branch with a **merger subagent**.
366. If this changes the **frontier** of available tickets, kick off more **implementer subagents** to work on the new tickets. This allows for maximum concurrency.
387. 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**.
408. 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.
429. Clean up all **implementer subagent** worktrees.

Steps

  1. Read the spec and tickets to understand the task graph.
  1. (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.
  1. 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.
  1. Use a fresh implementer subagent for each ticket, each in its own worktree on its own branch. Each implementer subagent:
  2. confirms its worktree is based on the integration branch before starting, and resets onto it if not;
  3. calls the Skill tool with tdd to build the ticket;
  4. merges the integration branch tip into its own branch before reporting done
  1. Once an implementer subagent completes, merge its work to the integration branch with a merger subagent.
  1. If this changes the frontier of available tickets, kick off more implementer subagents to work on the new tickets. This allows for maximum concurrency.
  1. 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.
  1. 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.
  1. Clean up all implementer subagent worktrees.
Raw lines 21 to 42
Starts an agent subagent :25
Starts an agent subagents :25
Names a skill tdd :31
Names a skill code-review :38

From mattpocock/skills at 4ae2317, 2026-10-31. Skills read by DeepSeek V4.1 Flash on 2026-11-04. Summary and techniques by Claude Opus 5.5 on 2026-11-06.