Best for
- Use when the user wants to implement, build, add, or ship new functionality (a feature, endpoint, component, module, or integration).
mgiovani/cc-arsenal/skills/implement-feature/SKILL.md
Implements a new feature end-to-end as a senior staff engineer would, discovers project conventions, researches current best practices, drafts a plan for approval, then builds it (with parallel subagents where available) reusing existing code, skipping speculative abstractions, and verifying with tests before completion. Use when the user wants to implement, build, add, or ship new functionality (a feature, endpoint, component, module, or integration). Not for fixing an existing bug (use fix-bug
Decision brief
Implement a new feature as a Senior Staff Engineer would (SOLID, DRY, YAGNI) to produce a secure, fast, reliable change.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/mgiovani/cc-arsenal --skill "skills/implement-feature"Inspect the Agent Skill "implement-feature" from https://github.com/mgiovani/cc-arsenal/blob/dff7df8b3ce770613d5aaa7bc603acfcab90e4e8/skills/implement-feature/SKILL.md at commit dff7df8b3ce770613d5aaa7bc603acfcab90e4e8. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Before marking an implementation complete, run the project's real commands (discovered in Phase 0) and require all of them to pass: 1. Test suite: e.g. make test, npm test, pytest. 2. Lint: e.g. make lint, npm run lint, ruff check. 3. Type check / build: if the project has one.
Step 0.0: Ambiguity gate. Check this before anything else, including task creation.
Step 0.0: Ambiguity gate. Check this before anything else, including task creation.
Above threshold: mark this phase inprogress.
1. Enter Plan Mode (EnterPlanMode). 2. 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…
Permission review
The documentation includes network, browsing, or remote request actions.
Before writing code: search the web for current best practices for the featureEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 94/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 6 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
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.
$ARGUMENTS
Before implementing anything:
bun, npm, make, etc. exist.Makefile, justfile, package.json, pyproject.toml.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
While you write it
The line you never cross: lean, never negligent "Only what the task needs" is about scope, not corner-cutting. Input/trust-boundary validation, error and data-loss handling, security, and accessibility are always in scope, however small the change. A version that drops one of these 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.
Before marking an implementation complete, run the project's real commands (discovered in Phase 0) and require all of them to pass:
make test, npm test, pytest.make lint, npm run lint, ruff check.Any check fails → keep working, do not mark complete. Command not found → go back to Phase 0 discovery, don't guess one.
Create Task-system entries (TaskCreate/TaskUpdate) only when the feature crosses
one of these:
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.
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.
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.
EnterPlanMode).Above threshold: mark Phase 2 completed, run TaskList.
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 team-implement 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:
sonnet for implementation, test writing, docs, architecture decisions.haiku only for exploration/research subagents.opus for 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.
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.
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.
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.
Each subagent's output should satisfy:
LEAN-DEBT: markers for deliberate shortcuts)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.
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.
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).
# 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 provider
Frequently asked questions
Implement a new feature as a Senior Staff Engineer would (SOLID, DRY, YAGNI) to produce a secure, fast, reliable change.
The source record exposes this install command: npx skills add https://github.com/mgiovani/cc-arsenal --skill "skills/implement-feature". Inspect the command and pinned source before running it.
Static rules flagged network in the source; the page lists the matching lines and excerpts.
Alternatives
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program
narrative-io/narrative-skills-marketplace
Translate a fuzzy analytical question into a rigorous investigation plan. Interrogates the ask, grounds the plan in the available data dictionary, applies analytical best practices, and produces a structured brief of query specifications for a downstream query-writing skill. Plans, does not write SQL. Use when: "why did X drop", "is there a relationship between A and B", "who are our highest-value customers", "what's driving the change in Y", "investigate this trend", "design an analysis for", "
vasilyu1983/AI-Agents-public
Guides iOS testing with XCTest, XCUITest, Swift Testing, simctl, and xcresult. Use when choosing destinations, controlling flakes, or parsing test artifacts for native apps.
vasilyu1983/AI-Agents-public
Consumer-neuroscience primitives for attention, arousal, bonding, narrative, memory, and reward. Use when shaping ethical UX, neuro study design, or DMCC/AI Act gates.