implement-spec
Implement the result of to-spec and to-tickets in code.
Skill by RollRollRoll
Chalk Labs
Need help deploying implement-spec?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/rollrollroll-implement-spec
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
implement-spec- Description
- Implement the result of to-spec and to-tickets in code.
- License
- Apache-2.0
- Instructions
- 36 lines in SKILL.md · view on GitHub
Files (3)
- LICENSE.upstream
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
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-env`. 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. 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. They have no channel to the user: their questions come back to you as a **blocked** report (see [Questions for the user](#questions-for-the-user)). ## 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. For each ticket on the **frontier**, create a worktree on its own branch from the integration branch tip, inside the repo under `.worktrees/`, and dispatch an **implementer subagent** into it. `.worktrees/` stays untracked in the main checkout, so stage files by name whenever you commit there. Brief it with pointers to the spec and its ticket, and with the workflow in [Implementer subagents](#implementer-subagents). 5. When an **implementer subagent** reports **blocked**, relay its questions as described in [Questions for the user](#questions-for-the-user). When it reports done, fast-forward the integration branch onto its branch (`git merge --ff-only`). If the integration branch has moved since the subagent merged it, the fast-forward fails: [resume](#resuming-an-implementer-subagent) the same subagent to redo its merge step, and hold every other merge until it reports done and you fast-forward. After each fast-forward, tell every running **implementer subagent** that the integration branch has moved, so its merge step picks up the new tip. 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 **implementer subagent**, with the review findings in place of a ticket. 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. ## Implementer subagents Each **implementer subagent** builds one ticket in its own worktree: 1. Confirm the worktree is based on the integration branch tip, and reset onto it if not. Note that commit: it is the fixed point for its own `code-review` below. 2. Fetch the ticket from the issue tracker and state its title before starting. 3. Call the Skill tool with `tdd` to build the ticket. The seams listed in the spec's Test Seams section count as already confirmed with the user. Any other seam is a question for the user. 4. Run typechecking regularly, single test files regularly, and the full test suite once at the end. 5. Call the Skill tool with `code-review`, using the commit from step 1 as the fixed point and the ticket as the spec. Fix the issues it raises. 6. Commit to its own branch, then merge the integration branch tip into it, resolving any conflicts and rerunning the full test suite if the merge brought in changes. 7. Report done: the branch name and a one-line summary. Whenever a step needs a decision from the user (an unconfirmed seam, an ambiguous ticket, a ticket that disagrees with the spec or with a file it points to, a choice the spec leaves open), or hits an environment problem it cannot solve within its permissions (a path, a permission, a failing tool), the subagent commits its work in progress to its branch, stops, and reports **blocked** with: - each question, with the options it sees and the one it recommends; - what is already built, and what each answer changes. ## Questions for the user A **blocked** report comes back to you. Ask the user its questions, keeping the subagent's options and recommendation, and naming the ticket each question belongs to. The user decides every one of them, environment problems included, even when you could pick an option yourself. When several subagents are blocked at once, ask their questions together. The other **implementer subagents** keep running while you wait. With the answers, [resume](#resuming-an-implementer-subagent) the subagent. If an answer applies beyond its ticket, add it to the brief of every **implementer subagent** dispatched after it. Environment problems you hit yourself (a denied write, a failed cleanup) go to the user the same way: stop that action, report what failed and the options you see, and let the user decide. ## Resuming an implementer subagent Resume the same subagent if your harness can message a running or finished subagent. Otherwise dispatch a new **implementer subagent** into the same worktree, with what it needs to continue (the user's answers, or the step to redo) and a pointer to the commits already on its branch.
From RollRollRoll/agent-toolkit, Apache-2.0.
More from RollRollRoll/agent-toolkit
- 0.570score
codebase-design
RollRollRoll
Design deep modules with a shared vocabulary.
SkillAFreshness: AClaude Code +9 - 0.570score
diagnosing-bugs
RollRollRoll
Diagnose hard bugs and performance regressions with a reproducible, verifiable loop.
SkillAFreshness: AClaude Code +9 - 0.570score
tdd
RollRollRoll
Build features or fix bugs test-first.
SkillAFreshness: AClaude Code +9 - 0.567score
codebase-analyzer
RollRollRoll
Investigate an unfamiliar project or codebase and explain its purpose, architecture, and implementation in a structured Chinese report.
SkillAFreshness: AClaude Code +9 - 0.567score
git-commit-push
RollRollRoll
Resolve an in-progress git merge, rebase, or cherry-pick conflict, or organize finished changes into atomic commits and push them after the user confirms.
SkillAFreshness: AClaude Code +9 - 0.561score
finish-branch
RollRollRoll
Wrap up the current branch or worktree: clean up debugging leftovers, run final verification, then let the user decide whether to merge, keep, open a PR, or…
SkillAFreshness: AClaude Code +9 - 0.561score
grill-demand
RollRollRoll
Interview the user in depth to settle problem, scope, behavior, and technical decisions layer by layer, creating docs (ADRs and glossary) as you go.
SkillAFreshness: AClaude Code +9 - 0.558score
setup-worktree
RollRollRoll
Create and verify an isolated Git worktree, locking the base commit explicitly before creating it.
SkillAFreshness: AClaude Code +9 - 0.544score
domain-modeling
RollRollRoll
Build and sharpen a project's domain model.
SkillAFreshness: AClaude Code +9 - 0.544score
prototype
RollRollRoll
Build a throwaway prototype to answer a design question.
SkillAFreshness: AClaude Code +9 - 0.541score
triage
RollRollRoll
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
SkillAFreshness: AClaude Code +9 - 0.541score
setup-env
RollRollRoll
Configure this repo for these skills: set up its issue tracker, triage label vocabulary, and domain doc layout.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 19, 2026 (12 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/RollRollRoll/agent-toolkit
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from RollRollRoll
- 0.570score
diagnosing-bugs
RollRollRoll
Diagnose hard bugs and performance regressions with a reproducible, verifiable loop.
SkillAFreshness: AClaude Code +9 - 0.570score
tdd
RollRollRoll
Build features or fix bugs test-first.
SkillAFreshness: AClaude Code +9 - 0.570score
codebase-design
RollRollRoll
Design deep modules with a shared vocabulary.
SkillAFreshness: AClaude Code +9 - 0.567score
codebase-analyzer
RollRollRoll
Investigate an unfamiliar project or codebase and explain its purpose, architecture, and implementation in a structured Chinese report.
SkillAFreshness: AClaude Code +9 - 0.567score
git-commit-push
RollRollRoll
Resolve an in-progress git merge, rebase, or cherry-pick conflict, or organize finished changes into atomic commits and push them after the user confirms.
SkillAFreshness: AClaude Code +9 - 0.561score
grill-demand
RollRollRoll
Interview the user in depth to settle problem, scope, behavior, and technical decisions layer by layer, creating docs (ADRs and glossary) as you go.
SkillAFreshness: AClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get implement-spec running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
implement-spec skill. Agent Mart. https://agentmart.dev/skills/rollrollroll-implement-spec (last updated 2026-10-24)