feature-dev
Feature Development
Rigorous, staged feature development: interrogate requirements → understand the codebase → design architecture → implement → review quality.
Quick start
Invoke with a feature request: /feature-dev add a notifications panel
Claude will ask your questioning mode (Quick / Normal / Grill Me) and whether to enable Log Mode, then proceed stage by stage — stopping for approval before implementation.
Core Principles
- Understand before acting — read existing patterns before designing anything
- Design-quality frontend — any UI work gets full aesthetic intention; see FRONTEND.md
- Simple and elegant — readable, maintainable, architecturally sound. Minimum code that solves the problem; nothing speculative. No features beyond what was asked, no abstractions for single-use code, no error handling for impossible scenarios. If you wrote 200 lines and it could be 50, rewrite.
- Surgical changes — touch only what the task requires. Don't "improve" adjacent code, comments, or formatting. Match existing style even if you'd do it differently. Remove imports/variables your changes orphan; don't delete pre-existing dead code unless asked. Every changed line should trace directly to the request.
- Surface assumptions, don't hide them — if multiple plausible interpretations exist with materially different implementations, present them; don't pick silently. If something is unclear, name what's confusing and ask. Hidden confusion turns into rework.
- Goal-driven execution — transform tasks into verifiable goals before coding. "Add validation" → "tests for invalid inputs, then make them pass". "Fix the bug" → "test that reproduces it, then make it pass". Strong success criteria let you loop independently; weak ones ("make it work") force constant clarification.
- Track everything — use TodoWrite to track all stages and progress
- Log decisions — when Log Mode is on, record decisions to
plans/per LOG.md
Stage 0: Setup
- Read the request:
$ARGUMENTS - If
$ARGUMENTSis empty — scanplans/for an existing implementation plan (e.g.car-fleet-plan.md). If one is found:- Read the plan and identify all pending stages (not marked ✅ Done).
- Ask the user via AskUserQuestion: work on the next pending stage (Recommended) or pick a specific stage from the list.
- Once a stage is selected, use that as the feature scope and proceed. Skip to the relevant stage in the workflow.
- If no plan is found, ask the user what they want to build.
- Create a todo list covering all stages.
- Check memory for prior work on this feature area.
- Check for existing decision logs:
plans/technical-decisions.mdandplans/design-decisions.md. If either exists, read it and note decisions already resolved for this feature — these do not need to be re-asked in Stage 1. - Ask the user two questions via AskUserQuestion (one call, two questions):
- Questioning mode: Quick / Normal / Grill Me (see modes below)
- Log Mode: On or Off (if either decisions file exists with entries for this feature, suggest On as recommended)
Questioning Modes
Quick Mode — make obvious decisions autonomously. Only ask when a choice is genuinely ambiguous and different answers lead to meaningfully different implementations. Summarize all autonomous decisions and ask for a single go/no-go confirmation before proceeding.
Normal Mode — ask focused questions for each major decision area (user flows, data model, edge cases, permissions, integrations). Use AskUserQuestion one at a time. Skip obvious choices but ask about preferences that affect the design. Always include a recommended option, clearly labelled (e.g. "Yes, keep it simple (Recommended)").
Grill Me Mode — interrogate every branch of the decision tree relentlessly. Never make assumptions. One AskUserQuestion at a time. Always lead with your recommended answer and reasoning before asking for confirmation.
In all modes: if a question can be answered by reading the codebase, answer it yourself.
Stage 1: Discovery & Requirements
- If a prior log was found in Stage 0, briefly present the already-resolved decisions and confirm they still stand before continuing. Skip re-asking any question that is already answered in the log.
- Interrogate remaining open requirements using the chosen mode.
- Summarize all confirmed decisions. Get explicit sign-off before proceeding.
- If Log Mode is on, write or update the log file per LOG.md.
Stage 2: Codebase Exploration & Clarification
Codemap first. Before using Glob/Grep/Read, check if .codemap/MAP.md exists in the target repo. If yes, read it and use .codemap/graph.json for targeted symbol/edge lookups. Fall back to Glob/Grep/Read only for details the map doesn't cover. If the map is missing or stale, suggest the right builder: /ken-swe:ts-codemap for TS/JS repos, /ken-swe:codemap for Java/Go/Python/Rust.
- Launch 2–3 general-purpose agents in parallel using Explorer prompts from AGENTS.md.
- Read all key files the agents identify.
- Present findings: patterns discovered, abstractions to reuse, conventions to follow.
- Ask any follow-up questions the codebase revealed, using the active questioning mode.
- If Log Mode is on, update the log with any new technical decisions.
Stage 3: Architecture Design
- Launch 2–3 general-purpose agents in parallel using Architect prompts from AGENTS.md.
- Review all approaches and form your own recommendation.
- Present: brief summary of each approach, trade-off comparison, your recommendation with reasoning.
- Ask the user which approach they prefer (AskUserQuestion).
- If Log Mode is on, record the architecture decision to the log.
Stage 4: Implementation
DO NOT START WITHOUT EXPLICIT USER APPROVAL.
- Wait for approval on the chosen architecture.
- Read all relevant files identified in previous stages.
- Break the work into sub-tasks, each phrased as a verifiable goal (failing test, type check, observable behavior). Loop on each: write the verification, make it pass, move on. Don't ask for check-ins between green sub-tasks.
- Implement following the chosen architecture and codebase conventions. Keep changes surgical — every edited line traces to the task. Update todos as you go.
- Frontend work: If the feature includes meaningful UI — pages, components, layouts, forms, visual changes — follow FRONTEND.md. Ask the user whether to use
frontend-designor proceed inline. If Log Mode is on, record design decisions to the log.
Stage 5: Code Quality
- Ask the user if they want automated quality passes (AskUserQuestion).
- If yes: run a simplification pass (redundancy, DRY, complexity) then a review pass (bugs, security, conventions). Report by severity. Ask what to fix now vs defer.
- Launch 3 general-purpose agents in parallel using Reviewer prompts from AGENTS.md.
- Surface highest-severity issues. Address based on user decision.
Stage 6: Summary
- Mark all todos complete.
- Summarize: what was built, key decisions, files modified/created, frontend choices, suggested next steps.
- If Log Mode is on, finalize the log file with a summary section.
More from kenlck/skills
bug-fix
Structured bug fixing with reproduction, root cause analysis, fix design, regression risk analysis, and quality review. Only invoke this skill when the user explicitly asks to use it by name (e.g. "use bug-fix", "run bug-fix") or clearly requests a structured/systematic bug fixing process. Do not invoke for general bug reports, error messages, or broken behavior — handle those directly without this skill.
18simplify
Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality. Focuses on recently modified code unless instructed otherwise.
17code-review
Review changed code for bugs, simplicity, security, and convention adherence using parallel reviewer agents. Use when the user asks to review code, review a PR, check quality, or wants a second pair of eyes before merging.
17grill-me
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
16review-skill
Review an existing skill against the write-a-skill guidelines, checking structure, description quality, file size, and review checklist. Use when user wants to audit, improve, or validate a skill they've written or installed.
14frontend-design
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
14