implement
Skill0 starsChanged 26 days agoMITView on GitHub
Turn a task from Azure DevOps, Jira, another connected tracker, pasted text, or a local file into a tested and reviewed pull request. Use when the user asks to implement, build, or fix a task, feature, or bug.
- Commits and pushes
191 other projects use a version of this.
Adopted by
Most recently taken up by
- revisit-studies/studytheir own version, first seen Nov 9, 2026
- dz114879/skillstheir own version, first seen Nov 8, 2026
- Dimon94/dveritytheir own version, first seen Nov 8, 2026
- Dimon94/skillstheir own version, first seen Nov 8, 2026
- The-Vibe-Company/quivrtheir own version, first seen Nov 8, 2026
- miklschmidt/archboardtheir own version, first seen Nov 8, 2026
Used with
Projects with it also use setup-ts-deep-modules, ask-matt and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
liufeng1976Skillsetup-ts-deep-modules
Wire dependency-cruiser into a TypeScript repo so each package is a deep module — implementation hidden in subfolders, reachable only through its entry-point files. User-invoked.
Also in 43 projects that use this
GoogleSkillask-matt
Ask which skill or flow fits your situation. A router over the skills in this repo.
Also in 91 projects that use this
RoentekSkillloop-me
Grill me about specs for the workflows I want to build, within this workspace.
Also in 50 projects that use this
AWSSkillto-questionnaire
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
Also in 88 projects that use this
ryotaroh180105Skillclaude-handoff
Hand the current conversation off to a fresh background agent that picks up the work immediately.
Also in 42 projects that use this
GoogleSkillto-spec
Turn the current conversation into a spec and publish it to the project issue tracker — no interview, just synthesis of what you've already discussed.
Also in 168 projects that use this
- +3 more from google
Other versions191 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 191
- mattpocock/skills★ 309ksame name
- QuivrHQ/quivr★ 40ksame name
- The-Vibe-Company/quivr★ 40ksame name
- foambubble/foam★ 17ksame name
- formbricks/formbricks★ 13ksame name
- ArcReel/ArcReel★ 6.3ksame name
- vinvcn/mattpocock-skills-zh-CN★ 5.5ksame name
- fallow-rs/fallow★ 5.3ksame name
- withcoral/coral★ 4.9ksame name
- bestofjs/bestofjs★ 3.1ksame name
181 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository10 other files it gives its agents.
- .github/copilot-instructions.mdCopilot instructions
- ado-implementSkill
- branch-policiesSkill
- grillingSkill
- grill-meSkill
- lintSkill
- pr-reviewSkill
- prSkill
- spec-kitSkill
- teachSkill
The file
We split this skill into the rules it gives an agent
10 rules. 0 are common, 8 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 171 edited versions we read keep these.
8
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Pasted request: use the supplied text as the initial task.
- Distinctive: line 16
Local file: read the path the user supplied.
- Distinctive: line 18
No request supplied: ask for a tracker URL/ID, pasted text, or file path.
- Distinctive: line 47
Every gate is an interview round:
- Distinctive: line 49
Ask the whole frontier of decisions whose prerequisites are settled, numbered.
- Distinctive: line 51
Use the question tool when the client provides one.
- Distinctive: line 85
Only use capabilities actually exposed by the integration.
- Very specific: line 111
If tasks are split, create child records only through an available Create child capability with approval.
- Very specific: line 117
Read AGENTS.md, CONTRIBUTING.md, .github/copilot-instructions.md, branch policies, and recent branch/commit conventions.
- Distinctive: line 139
Run PR Reviewer, Security Reviewer, and Privacy Reviewer in parallel with the task spec, acceptance checklist/evidence, base ref, full …
“Common” is measured: kept by at least 6 in 10 of the 171 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Turn a task request into a pull request ready for review. The source can be a tracker issue, text in chat, or a local text/Markdown file. The task's agreed acceptance criteria are the completion contract: every criterion must map to evidence (a passing test or observed behavior).
The implementation, test-first, review, and PR workflow is shared across all input sources. Tracker-specific operations are optional capabilities, not prerequisites. Do not claim a provider is connected unless its MCP server, CLI, or other available integration can actually read or write it.
Source and task record
Resolve the source in this order:
- URL or provider-qualified ID: identify the provider from the URL/key, then use its available MCP tools first, otherwise its installed CLI/API integration. If the provider is unclear, ask. Never ask the user to paste credentials. If ADO is selected and the MCP path is unavailable, run
check.sh pre ado-implementbefore using theazfallback so its sign-in/tool requirements are checked. - Pasted request: use the supplied text as the initial task; do not search a tracker for a matching item unless the user asks.
- Local file: read the path the user supplied. Do not edit the original task file as part of loading it.
- GitHub Spec Kit feature: if the user supplies a Spec Kit feature directory or asks to implement its active feature, confirm the exact feature path, then read its specification, plan, task list, and relevant project constitution as task context. Do not guess which feature is active or scan unrelated feature directories. Keep these artifacts read-only unless the user explicitly asks to update them.
- No request supplied: ask for a tracker URL/ID, pasted text, or file path. Do not assume Azure DevOps.
If a tracker is named but no usable integration is available, say so and offer pasted or exported text as a fallback. A generic MCP connection counts only when its exposed tools can perform the needed operation. This plugin configures Atlassian's hosted Rovo MCP server, but Jira access still requires the user to complete the client's Atlassian OAuth flow, select/authorize their site if prompted, and have permission to the issue. Do not imply a Jira URL alone grants access.
Normalize every source into the task record described in TASK-RECORD.md: title, description, acceptance criteria, optional repro/context, source metadata, and available source capabilities. For Spec Kit input, derive proposed acceptance criteria from the selected specification and use the plan/task list as implementation context; checkbox state alone is not completion evidence. Preserve the source URL, key, or input file path when available. Do not invent missing acceptance criteria or provider records.
After the user accepts the task draft, offer an optional, durable Markdown task record at work-items/<slug>.md in the target repository. Show the exact path and content and get the user's yes before writing it. Never overwrite an existing file; choose another slug or ask. For tracker-backed tasks, saving a local copy is optional. For pasted/file tasks, offer it as the traceable task artifact. Avoid copying secrets or sensitive personal data into the repository.
External writes
Each write to a shared tracker, git push, or PR create/update needs the user's yes at the moment of the write. A tracker update is offered only if the selected source adapter exposes that operation. A local task-record write is also shown at its gate before writing. Credentials never pass through chat. Write temporary payloads and PR bodies under .git/agentic-dev-kit/tmp/.
Controls
The defaults and repo overrides are the rules for this run (CONTROLS.md). After preflight, fetch origin and read the merged practices, testing, and lint controls with controls.sh <topic> --ref origin/<default branch>; read them again from origin/<base> if step 5 picks another base. List turned-off controls, with reasons, in the first round. At every gate, check the task against the practices controls (PRACTICES.md). A WI-* control governs task quality regardless of whether the task came from a tracker, text, or file. When one is missed, name its ID, explain briefly, and recommend a fix in that round.
Preflight
From the target repo root, run check.sh pre implement (Windows: check.ps1 -Phase pre -Skill implement). Show its table. A WARN is mentioned and the run continues.
A FAIL pauses the run. Ask one round with a question per failing check:
- Fix it: show the fix and rerun. For missing tools, point to install.sh or install.ps1 for the user to run in their terminal; installs and sign-ins may need approval or credentials.
- Skip it: rerun with
--skip <ids>(Windows:-SkipChecks <ids>), where IDs aregit,az,gh,node, ordotnet. Explain the cost: for example, withoutgha GitHub PR cannot be created. Before a skipped tool is needed, check it again and pause if it still fails.
Done when the table has no FAIL.
Rounds
Every gate is an interview round:
- Ask the whole frontier of decisions whose prerequisites are settled, numbered. A dependent question waits for the next round.
- Recommend a clear answer; phrase it so "yes" accepts it.
- Use the question tool when the client provides one; otherwise use the format below. Use the 📘 line in teach mode only, and include Why, Source, and Check on every teach-mode question.
- Grill mode asks for decisions. Teach mode also explains why, cites a relevant source, and asks a recall question. The user can switch modes at any gate.
Teach mode reuses learning materials; it does not create lessons
When this workflow is in Teach mode, first look for a relevant existing track under learning/<topic-slug>/ in the target repository. Use its MISSION.md to understand the learner's goal; consult its RESOURCES.md, GLOSSARY.md, reference/, relevant lessons/, and learning-records/ to tailor explanations and recall questions. Read only material relevant to the current task. The task specification, repository source, and current controls remain authoritative if learning materials conflict with them.
Teach mode here is conversational coaching during implementation. Do not create or modify learning/, lessons, references, learning records, glossary, mission, resources, notes, or assets during this workflow. If no relevant track exists, teach from the task, repository, and trusted sources without scaffolding one. Mention /teach setup <topic> only as an optional separate follow-up; create learning artifacts only when the user explicitly invokes /teach to set up a track or create a lesson.
**Step N/10 · <step name> · Round k**
❓ **Q1 - <title>**: <question and options>
➡️ <recommended answer>
📘 **Why:** <why> · **Source:** <link> · **Check:** <recall question>0. Pick the interview mode
Unless the user's request already names it, ask once whether they want Grill (decisions only) or Teach (decisions plus why, sources, and recall). Do this before resolving the task source. The user can switch modes at any later gate.
1. Choose the source and connection
Identify source mode: tracker, pasted text, or local file. For a tracker, discover available tools and authenticate through the host's normal sign-in. The provider adapter should report its capabilities, for example:
| Capability | Meaning |
| Read | Fetch the issue and related context |
| Update | Write an accepted description, criteria, state, or comment |
| Link PR | Add the resulting PR to the issue |
| Create child | Persist split tasks in the tracker |
Only use capabilities actually exposed by the integration. A provider may be read-only. Do not block implementation because optional update/link capabilities are absent.
Detecting a tracker connection
At run time, inspect the tools exposed to the current chat/session. Use tool names and descriptions to identify provider operations; do not assume a connection from the issue URL, ID shape, or a server name alone. Map only operations that are actually exposed to the capability table above. Before treating a tracker as connected, use its read-only get/fetch operation on the user-supplied issue and confirm it returns that issue. If the client does not expose a relevant tool, or the read fails because the server is disabled, unauthenticated, or lacks permission, treat the tracker as unavailable and offer pasted/exported task text. Never probe with a write.
VS Code can expose MCP servers configured by the user, workspace, or installed plugins to the active chat when their tools are enabled. This plugin bundles the Azure DevOps MCP server and Atlassian's hosted Rovo MCP server in mcp.json. Installing the plugin configures the server but does not sign the user in or grant Jira site permissions. A user's separately configured Jira MCP server can also be used when it exposes the needed tools to the session.
Gate: selected source and connection, or confirmation that the pasted/file text is the source. Tell the user which tracker operations are unavailable and what fallback applies.
2. Select or load the task
For a tracker, use the supplied URL/ID. If the user asks to select a task, list the matching open items and let them choose. For a file, read the supplied file. For pasted text, use it directly.
Gate: the exact task to implement. Several tasks run one at a time, one branch and PR each.
3. Assess and normalize
For tracker issues, fetch relations and relevant fields the provider supports. For text/file input, extract the stated problem, expected result, constraints, and repro steps without adding facts. Score the request against WI-* controls. Draft a normalized task record with numbered, independently testable Given/When/Then acceptance criteria. Mark any recommended defaults as assumptions.
Gate: show the source summary, scorecard, normalized draft, assumptions, and whether to save work-items/<slug>.md. If saving, show the full content and get approval before writing. After that, ask separately whether to write accepted changes back to a tracker, only when Update is available.
4. Settle scope
Turn the accepted criteria into a numbered implementation checklist. Pair every criterion with the check that proves it and the test layer under the testing controls (TESTING.md). Run further rounds for open decisions or contradictions. Estimate diff size; if it breaks PR-01, propose smaller slices.
If tasks are split, create child records only through an available Create child capability with approval. Otherwise offer separate Markdown task records. Do not silently create tracker items.
Gate: the checklist, test evidence per criterion, and any split. Each criterion must have a concrete check.
5. Branch
- Read
AGENTS.md,CONTRIBUTING.md,.github/copilot-instructions.md, branch policies, and recent branch/commit conventions. - Identify the remote default and any long-lived base branches.
- Gate: base branch and new branch name.
- With uncommitted work, ask whether to stash, commit, or stop; preserve it.
- Fetch the base and branch from its latest remote commit.
Done when the new branch is checked out at the fetched base.
6. Implement test-first
Detect the stack and current test tooling. Gate: propose the test plan, with the test layer, seam, and test name for each criterion; list any new framework/package for approval. Then work red → green in small vertical slices. Run tests, build, and lint for the touched files. For .NET and TypeScript/JavaScript, use the lint skill before the commit gate.
Done when every criterion has passing evidence.
7. Commit
Stage only files for this task. Draft an imperative commit subject and a body explaining why. If a source key exists and the host supports a native commit link syntax, include it. Otherwise include the stable task slug or no fabricated tracker key.
Gate: staged files and commit message.
8. Review
Run PR Reviewer, Security Reviewer, and Privacy Reviewer in parallel with the task spec, acceptance checklist/evidence, base ref, full diff, relevant controls, and scanner output. Read scanners only after the user approves their exact commands. Reviewers are read-only.
Merge findings, verify every cited line, fix blockers and should-fixes, rerun tests, and rerun reviewers that found blockers.
Gate: findings, fixes, nits to accept/skip, and any escalate findings. Done when ready or when the user agrees to carry an escalation.
9. Open the pull request
Detect the PR host from the target repo's remote. Draft the PR with the task summary, accepted criteria, test evidence, reviewer findings, and traceability:
- Tracker task: link the issue using the provider/host's supported syntax, if available. If the target repo has a branch policy that requires a specific tracker item (for example, Azure Repos linked-work-item policy), explain that the PR cannot satisfy that policy with a local record alone; offer to create/link the required tracker item only if the adapter supports it.
- Saved task record: link its path in the PR and include the criteria/evidence.
- Pasted request not saved: include a concise accepted task summary and criteria in the PR body. Do not claim it links an external issue.
Gate: title, target, draft status, reviewers, merge strategy, and complete body. On the user's yes, push and create the PR using the host's supported tools. If the host or write integration is unavailable, provide the exact manual steps instead of claiming success.
10. Hand back
Report source type and reference (or "pasted request" / file path), branch, commits, PR URL, each criterion with evidence, and deferred work. If the source has Update or Link PR, offer those writes and perform them only on the user's yes. If a task record was saved, offer to update its status, criterion evidence, and PR link; show the diff and get approval before writing. Report its path. Run check.sh post implement (Windows: check.ps1 -Phase post -Skill implement) and confirm the remote PR state.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

