implement-feature
Skill8 starsChanged 48 days agoMITView on GitHub
Implements a new feature end-to-end as a senior staff engineer would,
26 other projects use a version of this.
Adopted by
Most recently taken up by
- pankaj-mahaur/Agent-Daemontheir own version, first seen Nov 6, 2026
- tddworks/ClaudeBartheir own version, first seen Nov 3, 2026
- snuffish/dotfilestheir own version, first seen Nov 1, 2026
- mAzurkovic/skillstheir own version, first seen Nov 1, 2026
- olimstv/claude-skillstheir own version, first seen Nov 1, 2026
- jakkarin-promsee/my-harnesstheir own version, first seen Oct 15, 2026
Used with
Projects with it also use prepare-release, playwright-cli and 2 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.
ShopifySkillprepare-release
Prepare the changeset-release/main branch for release by syncing version.ts files and running pnpm install
Also in 3 projects that use this
MicrosoftSkillplaywright-cli
Automate browser interactions, test web pages and work with Playwright tests.
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
SentrySkillskill-creator
Create new agent skills following the Agent Skills specification. Use when asked to "create a skill", "add a new skill", "write a skill", "make a skill", "build a skill", or scaffold a new skill with SKILL.md. Guides through requirements, writing, registration, and verification.
Also in 3 projects that use this
Other versions26 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 26
- Agenta-AI/agenta★ 4.9ksame name
- tddworks/ClaudeBar★ 1.6ksame name
- leonvanzyl/agentic-coding-starter-kit★ 447same name
- tddworks/asc-cli★ 393same name
- nockawa/Typhon★ 253same name
- tddworks/SkillsManager★ 165same name
- DGouron/review-flow★ 42same name
- kiminmonaco/ClaudeBar★ 8same name
- leonvanzyl/claude-code-pro-workflow-demo★ 4same name
- dayvisonassis/sdd-skills★ 3same name
16 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 repository53 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- agent-browserSkill
- anything-to-skillSkill
- ci-generateSkill
- ci-localSkill
- clotho-researchSkill
- codex-imagegenSkill
- create-ruleSkill
- create-skillSkill
- db-migrateSkill
- docker-initSkill
- docs-adrSkill
- docs-checkSkill
- docs-diagramSkill
- docs-initSkill
- docs-rfcSkill
- docs-updateSkill
- env-setupSkill
- find-skillsSkill
- fix-bugSkill
- git-commitSkill
- git-create-prSkill
- gitflowSkill
- git-releaseSkill
- git-syncSkill
- i18n-checkSkill
- improve-skillSkill
- inject-docsSkill
- jira-cliSkill
- motion-studioSkill
- optimize-ai-setupSkill
- orchestrateSkill
- oss-launchSkill
- prd-to-issuesSkill
- product-design-specSkill
- product-design-tokensSkill
- product-prdSkill
- project-illustratorSkill
- project-plannerSkill
- refactorSkill
- renderSkill
- review-codeSkill
- review-depsSkill
- review-designSkill
- review-perfSkill
- review-planSkill
- review-securitySkill
- shipSkill
- stopslopSkill
- test-suiteSkill
- vrt-checkSkill
- wtfSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
22 rules. 0 are common, 11 are distinctive, and 11 are very specific to this project.
0
Common
Most of the 25 edited versions we read keep these.
11
Distinctive
This author's own choices. Worth a look.
11
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 35
Read CLAUDE.md: every project has different conventions.
- Very specific: line 36
Verify tools exist: check for Makefile, justfile, package.json, pyproject.toml.
- Distinctive: line 37
Never guess the test command: find the one this project actually uses.
- Distinctive: line 44
Write the smallest change that fully does the job, and that the next person can change without fear.
- Very specific: line 54
Leave an auditable trail instead of a silent gap: // LEAN-DEBT: <the limitation>.
- Very specific: line 61
Before marking an implementation complete, run the project's real commands (discovered in Phase 0) and require all of them to pass: the …
- Very specific: line 67
Create Task-system entries (TaskCreate/TaskUpdate) only when the feature crosses one of these:
- Very specific: line 77
When the threshold is crossed, see references/task-best-practices.md for the literal 6-task dependency chain (call templates, parallel …
- Very specific: line 87
Running in an eval or sandbox harness?: Never call the real session Task/TaskCreate/TaskUpdate/TaskList tools there: those would mutate the …
- Very specific: line 107
If it fails: end your response with 2-3 concrete clarifying questions about the ambiguous decision points (AskUserQuestion if available, …
- Distinctive: line 113
If it passes, continue to Step 0.1.
- Distinctive: line 133
Before writing code: search the web for current best practices for the feature (security considerations, common pitfalls, performance …
- Very specific: line 168
Model selection: always set model explicitly, never leave it unset:
- Very specific: line 171
Never opus for subagent work: too expensive for this fan-out.
- Very specific: line 173
After each subagent completes: review its diff, mark its task completed (if tracking), and commit its work via the git-commit skill (or a …
- Distinctive: line 184
Run the Phase 0 discovered test, lint, and type-check/build commands.
- Distinctive: line 194
Only proceed once every check passes: review all changes, create a final integration commit if needed (conventional commit format), …
- Very specific: line 202
If the feature has a UI, use the agent-browser skill: start the dev server, open the feature (agent-browser open <url>), take a snapshot …
- Distinctive: line 221
If a subagent hits an issue: log it clearly, attempt a within-scope fix, and if it can't be fixed report back with details.
- Distinctive: line 256
Always run Phase 0 first: never assume which tools are available.
- Distinctive: line 258
Prefer smaller, logical commits over one big commit.
- Distinctive: line 259
Ask when unsure: clarifying is cheaper than guessing wrong.
“Common” is measured: kept by at least 6 in 10 of the 25 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
Feature Implementation
Implement a new feature as a Senior Staff Engineer would (SOLID, DRY, YAGNI) to produce a secure, fast, reliable change.
This skill produces exactly one of two outputs: an implemented feature (Phases 0-6 below), or (when the Ambiguity Gate at the start of Phase 0 fails) 2-3 clarifying questions and nothing else. Never both in the same turn.
Feature to Implement
$ARGUMENTS
Anti-hallucination guidelines
Before implementing anything:
- Discover project commands first: do not assume
bun,npm,make, etc. exist. - Read CLAUDE.md: every project has different conventions.
- Verify tools exist: check for
Makefile,justfile,package.json,pyproject.toml. - Never guess the test command: find the one this project actually uses.
- Any number reported at the end (files changed, tests added, pass count) must come from a command actually run in this session: never state a count or percentage you didn't verify by running something.
Lean Code
Write the smallest change that fully does the job, and that the next person can change without fear. Two goals at once: minimal footprint, easy to change.
Before you add code, search this codebase, the standard library, the framework, and installed dependencies first: reuse beats reimplementation. Build only what a current, concrete requirement needs, skip speculative flags, options, or extension points for a future that may never come. Watch for abstraction that isn't earning its keep: no interface with a single implementation, no factory for one product, no wrapper that only forwards; add indirection once a second caller actually appears.
While you write it, put logic where a future change touches one spot, fixing the shared function once instead of guarding every caller. Favor the change that reuses or deletes code over the one that adds it, fewer files and a shorter diff, as long as it stays complete. Trace the real flow of the code you touch, end to end, before changing it: a tiny diff written without understanding is a liability, not lean.
The line you never cross: lean, never negligent "Only what the task needs" is about scope, not corner-cutting. Validating input at trust boundaries and handling errors or data loss stay in scope no matter how small the change is, and so does keeping it secure and accessible. A version that drops any of that isn't leaner: it's unfinished.
When you deliberately simplify
Leave an auditable trail instead of a silent gap:
// LEAN-DEBT: <the limitation>. Upgrade when <the trigger>.
e.g. // LEAN-DEBT: in-memory rate limit, single instance only. Upgrade to Redis when we run >1 replica.
A marker is for a shortcut chosen on purpose: never a license to skip the never-negligent line above.
Verification Gates
Before marking an implementation complete, run the project's real commands (discovered in Phase 0) and require all of them to pass: the test suite (e.g. make test, npm test, pytest), lint (e.g. make lint, npm run lint, ruff check), and type check / build if the project has one.
Any check fails → keep working, do not mark complete. Command not found → go back to Phase 0 discovery, don't guess one.
Task tracking: opt-in, not default
Create Task-system entries (TaskCreate/TaskUpdate) only when the feature crosses
one of these:
- touches 4+ files, or
- needs 3+ of the phases below tracked as separately-blocked work (e.g. genuine parallel subagent workstreams).
Below that threshold (the common 3-5-file feature), run the phases in order below as plain sequential work with no task-system calls at all. The phase structure is the contract; the task ceremony is bookkeeping for when there's enough concurrent work to need it.
When the threshold is crossed, see references/task-best-practices.md for the literal
6-task dependency chain (call templates, parallel child-task pattern, antipatterns to
avoid): set it up once at the start of Phase 0, then flip status at the start/end of
each phase.
No Task/TaskCreate tools available? Skip task tracking and subagent parallelism
regardless of size: work through every phase below yourself, sequentially, in order.
Nothing about the workflow's correctness depends on the task system; it only depends on
doing Discovery → Research → Plan → Implement → Verify → Commit in that order.
Running in an eval or sandbox harness? Never call the real session
Task/TaskCreate/TaskUpdate/TaskList tools there: those would mutate the
operator's actual task list. If the prompt asks you to record intended calls into a file
instead (e.g. outputs/tasks.json), write the full task chain there and treat that file
as the graded deliverable, rather than skipping ceremony or only narrating it in prose.
Implementation Workflow
Phase 0: Ambiguity Gate & Project Discovery (required)
Step 0.0: Ambiguity gate. Check this before anything else, including task creation.
Can you name the concrete behavior to build (what surface, what data, what constraints) without inventing any load-bearing decision yourself? Missing small details (exact copy, minor styling, file layout) doesn't fail this check; note the assumption and keep going. Fails when the request leaves open multiple structurally different implementations and picking one means guessing at a decision the user would want to make themselves: e.g. "add support for team accounts" with no team size limit, billing model, permission roles, or invitation flow specified.
If it fails: end your response with 2-3 concrete clarifying questions about the
ambiguous decision points (AskUserQuestion if available, else plain prose) and produce
nothing else: no task-system entries, no plan, no file created or modified, no command
run, no commit. Code built on a guessed requirement has to be audited line-by-line
against what the user actually meant, which costs more than asking first.
If it passes, continue to Step 0.1.
Step 0.1: Discover project commands.
Above the size threshold, create the 6-task chain now (see reference doc); mark this
phase in_progress.
Identify the project's real test, lint, type-check, build, and dev-server commands:
read CLAUDE.md, then check for Makefile, justfile, package.json scripts,
pyproject.toml. If a Task tool is available, delegate this to an Explore/haiku
subagent (cheap, token-efficient for a read-only lookup); otherwise read the files
yourself. Store whatever you find: every later phase uses these exact commands, never
assumed ones.
Above threshold: mark Phase 0 completed, run TaskList to confirm Phase 1 unblocked.
Phase 1: Research & Discovery
Above threshold: mark this phase in_progress.
Before writing code: search the web for current best practices for the feature
(security considerations, common pitfalls, performance notes), check Context7 for any
library docs involved, and explore the codebase for similar existing implementations,
conventions, and test fixtures to match. If a Task tool is available, delegate this to
an Explore/haiku subagent; otherwise do it inline.
Above threshold: mark Phase 1 completed, run TaskList.
Phase 2: Planning
- Enter Plan Mode (
EnterPlanMode). - Plan contents: break the feature into discrete pieces, note which can run in parallel, define interfaces between components, note security implications, plan test coverage. Apply Lean Code to every proposed component: state why it needs to exist (which concrete requirement drives it) and what it reuses instead of adding new code. A component that can't answer "why does this need to exist" gets cut from the plan before implementation starts.
- Get user approval: exit plan mode only after the user approves.
Above threshold: mark Phase 2 completed, run TaskList.
Phase 3: Implementation
Above threshold: mark this phase in_progress.
For up to ~3 parallel workstreams (e.g. API + UI + tests), spawn and track subagents
yourself using the call template in references/task-best-practices.md. If the plan
needs more fan-out than that (large multi-service features, many independent
components), delegate to the orchestrate skill instead of re-deriving spawn/track/
merge logic here.
Give each subagent: the specific task, an instruction to read CLAUDE.md first and trace the real flow of code it's about to touch, the Lean Code rules above, the discovered test/lint commands, and an instruction to report back rather than commit.
Model selection: always set model explicitly, never leave it unset:
sonnetfor implementation, test writing, docs, architecture decisions.haikuonly for exploration/research subagents.- Never
opusfor subagent work: too expensive for this fan-out.
After each subagent completes: review its diff, mark its task completed (if
tracking), and commit its work via the git-commit skill (or a manual conventional
commit) before moving to the next.
Above threshold: mark Phase 3 completed once every child task is done, run
TaskList to confirm Phase 4 unblocked.
Phase 4: Integration & Verification
Above threshold: mark this phase in_progress.
Run the Phase 0 discovered test, lint, and type-check/build commands. Fix every failure before proceeding. Repeat until all pass. Never mark this phase complete with a red check.
Above threshold: mark Phase 4 completed, run TaskList.
Phase 5: Final Commit
Above threshold: mark this phase in_progress.
Only proceed once every check passes: review all changes, create a final integration commit if needed (conventional commit format), summarize what was implemented.
Above threshold: mark Phase 5 completed, run TaskList: everything should show
completed.
Phase 6: Manual Testing (optional, UI features only)
If the feature has a UI, use the agent-browser skill: start the dev server, open the
feature (agent-browser open <url>), take a snapshot (agent-browser snapshot -i),
interact via refs (agent-browser click @e1), capture a screenshot, then
agent-browser close.
Skip for backend-only changes, pure refactors, test-only changes, or CLI tools with no UI.
Subagent Quality Checklist
Each subagent's output should satisfy:
- All new code has tests, and all tests pass
- No lint errors, no type errors (if applicable)
- Code follows existing patterns
- Lean Code rules applied (reuse checked first, no unrequested abstractions,
never-negligent floor intact,
LEAN-DEBT:markers for deliberate shortcuts)
Error Handling
If a subagent hits an issue: log it clearly, attempt a within-scope fix, and if it can't be fixed report back with details. Never commit broken code.
Handling Ambiguity After the Gate
The hard stop is Step 0.0 above: this section is for smaller ambiguity that surfaces
once the gate has already passed. Unclear secondary detail at any later phase (a design
choice with more than one valid answer, a missing preference): use AskUserQuestion,
present concrete options with trade-offs, and if there's no answer yet, state the
assumption you're proceeding with rather than blocking. Don't re-litigate the gate here:
if a later discovery reveals the core behavior was never actually pinned down, stop
and go back to asking, the same way Step 0.0 would have.
Output Format
Summarize: features implemented, files created/modified, tests added, manual-testing results (if performed), and any known limitations or follow-up items. Every number in this summary must trace back to a command actually run this session (see Anti-hallucination guidelines).
Usage
# Implement a specific feature
/implement-feature Add user authentication with OAuth2
# Implement with more context
/implement-feature Create a REST API endpoint for managing user preferences with validation
# Implement a refactoring-shaped feature (new behavior, not pure restructuring)
/implement-feature Migrate the payment module to a strategy pattern to support a second providerImportant Notes
- Always run Phase 0 first: never assume which tools are available.
- Each project has its own quality gates; use the ones Phase 0 actually found.
- Prefer smaller, logical commits over one big commit.
- Ask when unsure: clarifying is cheaper than guessing wrong.
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.

