implement-task
Skill4 starsChanged 2 months agoMITView on GitHub
Use when the user has approved a bounded change or feature plan and code changes are ready to begin.
16 other projects use a version of this, 1 of them edited.
Adopted by
Most recently taken up by
- allemaar/open-skillstheir own version, first seen Nov 8, 2026
- etr/groundworktheir own version, first seen Nov 8, 2026
- rumotion/ai-agent-project-templatetheir own version, first seen Nov 1, 2026
- allanbian1017/skillstheir own version, first seen Nov 1, 2026
- berkekcay/link-shortener-agent-readytheir own version, first seen Oct 25, 2026
- juanitourquiza/shipframetheir own version, first seen Oct 23, 2026
Used with
Projects with it also use handoff and code-review.
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.
MicrosoftSkillhandoff
Compact the current conversation into a handoff document for another agent to pick up.
Also in 3 projects that use this
GoogleSkillcode-review
Adversarial systems, concurrency, memory-model, and architecture code review protocol. Use this skill whenever asked to review code, PRs, diffs, or branches in Filament.
Also in 3 projects that use this
Other versions16 projects use a version of this.
Word for word · 0
None found.
Edited · 1
- asta-nguyen/kamehadb★ 14100% same
Wrote their own version · 15
- ModelEngine-Group/fit-framework★ 2.1ksame name
- etr/groundwork★ 45same name
- dirumahrafif/my-opencode-skills★ 37same name
- allemaar/open-skills★ 15same name
- phatysddev/skills★ 8same name
- juanitourquiza/shipframe★ 4same name
- allanbian1017/skills★ 2same name
- jersson/jenie-ai-tools★ 2same name
- mmaripanguec/dev-sdd-kit★ 2same name
- erikediner/skills★ 1same name
5 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 repository15 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- writing-skillsSkill
- brainstorm-featureSkill
- context-handoffSkill
- document-wikiSkill
- estimate-featureSkill
- lean-auditSkill
- plan-featureSkill
- read-codebase-contextSkill
- review-and-verifySkill
- setup-codebaseSkill
- setup-openezSkill
- systematic-debuggingSkill
- using-devkitSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
20 rules. 0 are common, 6 are distinctive, and 14 are very specific to this project.
0
Common
Most of the 14 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
14
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 14
Read AGENTS.md and, when it exists, docs/llm/INDEX.md for conventions and affected wiki pages.
- Very specific: line 19
If application source exists, call the available Skill entry whose local name is read-codebase-context to trace the relevant code path.
- Very specific: line 29
Follow the approved plan-feature output when one exists.
- Very specific: line 51
Read ## Decision sources below.
- Very specific: line 53
After tracing the real flow, apply ## Implementation ladder below.
- Very specific: line 54
Follow using-devkit's baseline rule.
- Distinctive: line 68
Only then, write the minimum clear new code that works.
- Distinctive: line 70
Do not use minimalism to remove explicit requirements, trust-boundary validation, security, accessibility, or error handling that prevents …
- Very specific: line 75
Read, when they exist: the change's decisions.md.
- Distinctive: line 99
Run the smallest relevant check after each non-trivial change.
- Very specific: line 100
Do not commit (using-devkit).
- Very specific: line 117
Do not persist a ruling in ## Decision Log.
- Distinctive: line 124
When implementation needs a user answer before it can continue:
- Very specific: line 126
Stop editing and ask one question.
- Distinctive: line 128
Keep an implementation-only choice (no change to observable behavior, requirement, API, schema, security boundary, or scope) in the session.
- Very specific: line 153
If the answer materially changes scope, observable behavior, an interface, a schema, or risk, stop editing code.
- Distinctive: line 164
After code checks pass, assess documentation using approved scope, the diff, and traced callers.
- Very specific: line 170
Call the available Skill entry whose local name is review-and-verify to review the diff, run fresh verification, and confirm no stale …
- Very specific: line 172
If the review result is Status: fail, fix the listed blockers that are inside the approved scope, run the smallest relevant check, and call …
- Very specific: line 183
When this skill stops before review (a question, pending gate, or scope growth), end with the Next: block from using-devkit, naming the …
“Common” is measured: kept by at least 6 in 10 of the 14 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
Implement Task
Before coding
Complete steps 3 (approval and lifecycle) and 4 (decisions) before any source creation or edit, including a new project's bootstrap. Steps 1-2 only gather context.
- Read
AGENTS.mdand, when it exists,docs/llm/INDEX.mdfor conventions and affected wiki pages; a missing wiki must not block work. IfAGENTS.mdcontainsRead CONVENTIONS.md before editing., read the rootCONVENTIONS.mdtoo. Apply only rules whose scopes match the changed files (most specific wins); route same-scope conflicts through user clarification. - If application source exists, call the available Skill entry whose local
name is
read-codebase-contextto trace the relevant code path; understand callers, data flow, and error paths before editing. For a source-less project, read the design, tasks, and delta without creating source, and state that callers and error paths do not exist yet. When the active plan has an## Impact map, followread-codebase-context's## Refresh an impact map(an unusable baseline means tracing from scratch; planned source that does not exist yet uses the source-less map rule). Read current source for every existing file to edit; for a planned new file, follow the approved design and read the source after creating it. The map is navigation, not evidence. Follow the approved
plan-featureoutput when one exists. For a change, read the change files that exist (design.md,tasks.md,delta.md), and readtasks.md's## Approval Gatebefore editing application code when it exists; a Bounded or bug-fix change may have onlydelta.md.- A
tasks.mdproceeds only withStatus: approved, which coversdesign.md,tasks.md, and anydelta.mdtogether. If it is missing orpending, stop;plan-featurestep 9 asks for and records the approval. - A legacy plan or an older
tasks.mdwith aRequiredgate follows the gate rules in../using-devkit/references/legacy.md; read it when you meet one.
Apply
using-devkit's## Change lifecycle: an archived change and a completed legacy plan are historical, so route new work throughbrainstorm-feature; an open change or plan supplies its remaining tasks.Without a plan, require an approved bounded design from
brainstorm-feature, or call it before editing. That approval counts only from the current conversation, adelta.mdApproved:line, or a handoff'sApproval:line; a resumed session with none of these re-presents the design throughbrainstorm-feature. A clear-small-change notice frombrainstorm-featuresatisfies this gate. If implementation uncovers impact outside the user's named scope, stop and return to the approval gate.- A
- Read
## Decision sourcesbelow; conversation memory is not one. Persist a newer user answer through the clarification flow below before using it. - After tracing the real flow, apply
## Implementation ladderbelow. - Follow
using-devkit's baseline rule.
Implementation ladder
Apply in order and stop at the first option that satisfies the approved
behavior; plan-feature, systematic-debugging, and review-and-verify use
this ladder too:
- Does this need to exist at all? Skip speculative work (YAGNI).
- Does it already exist in this codebase? Reuse the module, helper, type, or pattern.
- Does the standard library do it? Use it.
- Does a native platform feature cover it? Use it.
- Does an already-installed dependency solve it? Use it.
- Only then, write the minimum clear new code that works.
Do not use minimalism to remove explicit requirements, trust-boundary validation, security, accessibility, or error handling that prevents data loss.
Decision sources
Read, when they exist: the change's decisions.md; tasks.md's
## Decision Log; for a legacy plan or spec, its ## Decision Log and any
task-linked file under docs/agent-devkit/decisions/ listed in
docs/agent-devkit/INDEX.md (legacy, read-only). Skills that must honor
decisions (review-and-verify, context-handoff) read this same list.
During implementation
- With a plan, work through tasks in order, starting at the first task whose
Progressis notdone(backfill a task with noProgressline first, per../using-devkit/references/legacy.md). After a task'sVerifycheck passes, setProgress: doneandResult: <check> — <outcome>before the next task. A failing task staystodo; fix it within scope and rerun the check, under the stop rule in "After implementation" step 3. Continue until every task isdone, unless a stop condition applies. For a source-less project, bootstrap the first planned entry point as part of its approved task, then read the created source before verifying it. - Reuse local patterns. Keep the diff focused on one logical change.
- Make the smallest change that satisfies the task. Do not refactor unrelated code.
- On a bug or unexpected behavior, call the available Skill entry whose local
name is
systematic-debuggingas a repair handoff; it returns its fix/check evidence here, and implementation owns the final review and archive. Do not guess-and-check. - Run the smallest relevant check after each non-trivial change.
- Do not commit (
using-devkit).
Technical rulings
Resolve a choice without user input only when every viable option preserves the same observable behavior, fits the approved design, plan, decisions, and repository contract, and changes no API, schema, dependency, security boundary, scope, or data-loss risk. It must be non-destructive and reversible within the task: no migration, data rewrite, external contract change, or caller change outside it.
Choose with the implementation ladder and report:
Ruling R<n>: <choice and concise repository-grounded reason>.Do not persist a ruling in ## Decision Log; it changes no approved requirement
and can be re-derived from source. If a condition above fails, an approved
artifact conflicts, or the action is destructive or irreversible, use the
clarification flow below.
Clarification decisions
When implementation needs a user answer before it can continue:
- Stop editing and ask one question. After the answer, restate it as
Decision D<n>: <one unambiguous sentence>before taking another action. - Keep an implementation-only choice (no change to observable behavior, requirement, API, schema, security boundary, or scope) in the session; create no artifact for it.
Persist every answer that changes observable behavior or an approved requirement. For a change, append it to the change's
decisions.md; when the folder does not exist yet (a Bounded or clear-small change with no delta), create it and index it perusing-devkit's## Change lifecycle. For a legacy plan or spec, append to its## Decision Log; create no new file underdocs/agent-devkit/decisions/.Optionally
memory_writeonly the decision's title and file path; memory is never the only copy.memory_recall(1–3 keywords,maxTokenswhen supported) may locate decision or handoff files; read them before relying.Use this shape:
### D<n> — <short title> Question: <what was unresolved> Decision: <the user's answer> Impact: <requirements, tasks, interfaces, or tests affected> Confirmed by user: YYYY-MM-DD- If the answer materially changes scope, observable behavior, an interface,
a schema, or risk, stop editing code. For an open
tasks.mdor legacy plan, callplan-featureas a route handoff to revise it;plan-featurerecords the decision log entry, resets the gate to pending, presents the revision, and resumes this skill after re-approval. For a change todesign.mdordelta.md, or when a bounded task expands beyond its approved design, callbrainstorm-featureinstead of silently widening scope. A non-material answer only needs the decision record from step 3.
After implementation
- After code checks pass, assess documentation using approved scope, the diff,
and traced callers. When
docs/llm/exists and task behavior is new, changed, missing, or stale, calldocument-wiki's## Task updates(it merges any delta first and verifies the affected wiki). A missing wiki means skip, not setup; unrelated gaps stay optional findings. Resolve in-scope documentation blockers before final review, under the stop rules below. - Call the available Skill entry whose local name is
review-and-verifyto review the diff, run fresh verification, and confirm no stale documentation. - If the review result is
Status: fail, fix the listed blockers that are inside the approved scope, run the smallest relevant check, and call the available Skill entry whose local name isreview-and-verifyagain. Each blocker gets at most three fix attempts. Stop and report the remaining blockers, without claiming completion, when any of these holds:- the same blocker remains after a fix attempt with no new information;
- three fix attempts for one blocker have failed (the architecture signal in
systematic-debugging); end withNext: brainstorm-featureto revisit the design; - the fix needs a change outside the approved scope; or
- the fix needs a user decision.
- When this skill stops before review (a question, pending gate, or scope
growth), end with the
Next:block fromusing-devkit, naming the current task.
Red flags
| Thought | Reality |
| "The user said implement earlier" | An instruction before the approved files existed is not approval; check the gate. |
| "Approval is in the chat history" | Only this conversation, an Approved: line, a handoff's Approval: line, or tasks.md's Status: approved counts. |
| "One more fix attempt" | Three failed attempts on one blocker end the loop; route to brainstorm-feature. |
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.

