Agent skill
shep-kit:new-feature-fast
Fast-track feature creation that collapses new-feature, research, and planning into a single autonomous pass. Produces all spec YAMLs (spec, research, plan, tasks, feature) in one go with minimal user interaction. Triggers include "quick feature", "fast feature", "rapid spec", or explicit /shep-kit:new-feature-fast invocation. Part of the Shep autonomous SDLC platform — https://shep.bot
Install this agent skill to your Project
npx add-skill https://github.com/shep-ai/shep/tree/main/.claude/skills/shep-kit-new-feature-fast
Metadata
Additional technical details for this skill
- author
- Shep AI (https://shep.bot)
- version
- 1.0.0
- homepage
- https://shep.bot
- repository
- https://github.com/shep-ai/shep
SKILL.md
Fast-Track Feature Specification
Collapse the full new-feature → research → plan pipeline into a single autonomous pass. Produces all the same YAML artifacts as the full pipeline but with minimal user interaction (0-2 clarifying questions max).
Full workflow guide: docs/development/spec-driven-workflow.md
When to Use
- Feature scope is well-understood from the one-liner description
- You want to skip the multi-step interactive flow
- You want to get to implementation quickly
When NOT to Use
- Highly ambiguous features requiring extensive discovery
- Features with many open questions or unknowns
- When you specifically need deep library evaluation with benchmarks
Input
The user provides a feature description inline:
/shep-kit:new-feature-fast add unit tests to backend services
If no description is provided, ask for a one-liner description. That is the only mandatory question.
Workflow
Phase 1: Scaffold
1.1 Derive Feature Name
Extract a kebab-case feature name from the user's description. Do NOT ask — infer it.
Examples:
- "add unit tests to backend" →
backend-unit-tests - "implement dark mode toggle" →
dark-mode-toggle - "fix memory leak in agent runner" →
agent-runner-memory-fix
1.2 Create Branch & Directory
# Determine next spec number
NEXT_NUM=$(ls -d specs/[0-9][0-9][0-9]-* 2>/dev/null | sort | tail -1 | grep -oP '^\d{3}' | xargs -I{} printf "%03d" $(({} + 1)))
# If no specs exist, use 001
[ -z "$NEXT_NUM" ] && NEXT_NUM="001"
FEATURE_NAME="<derived-kebab-case>"
# Create branch from main
git checkout main && git pull
git checkout -b "feat/${NEXT_NUM}-${FEATURE_NAME}"
# Run scaffolding (creates all template files)
.claude/skills/shep-kit-new-feature/scripts/init-feature.sh "$NEXT_NUM" "$FEATURE_NAME"
This reuses the existing init script — same templates, same directory structure.
Phase 2: Deep Analysis (Silent)
Before writing any YAML, perform thorough codebase analysis. This is the foundation for ALL subsequent YAML files. Do NOT show analysis to user — go straight to writing.
Analyze:
- Architecture: Read
CLAUDE.md,AGENTS.md, key source directories - Existing specs: Read
specs/*/spec.yamlfor dependencies and landscape - Affected code: Identify files, modules, patterns relevant to the feature
- Testing patterns: Check existing test structure, frameworks, conventions
- Domain models: Check TypeSpec definitions if relevant (
tsp/)
Clarifying Questions (0-2 max)
After analysis, if something is genuinely ambiguous and would lead to a fundamentally different spec, ask at most 1-2 quick questions. Use AskUserQuestion with concrete options inferred from the codebase.
Do NOT ask about:
- Things you can infer from codebase analysis
- Style/naming preferences (follow existing conventions)
- Technology choices that are already decided by the stack
Examples of valid questions:
- "Should this cover only unit tests or also integration tests?" (scope ambiguity)
- "Should this target the agent system or the CLI layer?" (area ambiguity)
Phase 3: Write All YAMLs
Write all YAML files in sequence. Each file should be concise but complete — no placeholder values, no {{TEMPLATE}} markers, no TBD entries.
3.1 Write spec.yaml
Fill in ALL fields with real values:
name,number,branch,oneLiner,summary— from user input + analysisphase:RequirementssizeEstimate— inferred from scope (S/M/L/XL)relatedFeatures— from scanning existing specstechnologies— from codebase analysisopenQuestions: []— MUST be empty (resolve everything inline)contentsection with:- Problem Statement — concise, from user description
- Success Criteria — 3-6 measurable criteria
- Affected Areas — table with area, impact level, reasoning
- Dependencies — on other features or external systems
- Size Estimate — with reasoning
3.2 Write research.yaml
Fill in ALL fields:
summary— one-line research summarydecisions[]— each withtitle,chosen,rejected[],rationaletechnologies— libraries/tools involvedopenQuestions: []— MUST be emptycontentsection with:- Technology Decisions — each decision with options considered, chosen, rationale
- Library Analysis — table if new libraries are involved (skip if using existing stack only)
- Security Considerations — or "No security implications identified"
- Performance Implications — or "No performance implications identified"
Keep it focused: If the feature uses only existing stack/patterns, the research section can be brief. Don't fabricate decisions where none exist.
3.3 Write plan.yaml
Fill in ALL fields:
phases[]— each withid,name,parallel,taskIdsfilesToCreate[]— new files with pathsfilesToModify[]— existing files to changeopenQuestions: []— MUST be emptycontentsection with:- Architecture Overview — ASCII diagram or description of how components connect
- Implementation Strategy — high-level walkthrough of phases and their ordering rationale
- Files to Create/Modify — tables
- Testing Strategy (TDD: Tests FIRST) — what tests at each layer
- Risk Mitigation — table of risks and mitigations
MANDATORY TDD: Every implementation phase with executable code MUST define RED-GREEN-REFACTOR cycles.
NO duplication with tasks.yaml: plan.yaml covers architecture and strategy. Task-level detail lives only in tasks.yaml.
3.4 Write tasks.yaml
Fill in ALL fields:
tasks[]— each task with:id—task-1,task-2, etc.title— clear, actionable titledescription— what this task accomplishesstate:Tododependencies[]— task IDs this depends onacceptanceCriteria[]— specific, verifiable criteriatdd— for implementation tasks:red[]— tests to write firstgreen[]— minimal implementationrefactor[]— cleanup steps
tdd: null— for foundational/config tasks without testsestimatedEffort— S/M/L
totalEstimate— overall effortopenQuestions: []contentsection — brief summary + acceptance checklist only
3.5 Update feature.yaml
Update to reflect planning-complete state:
feature:
id: '<FEATURE_ID>'
name: '<FEATURE_NAME>'
number: <NUMBER>
branch: 'feat/<NNN>-<FEATURE_NAME>'
lifecycle: 'implementation'
createdAt: '<TIMESTAMP>'
status:
phase: 'ready-to-implement'
progress:
completed: 0
total: <task_count> # count from tasks.yaml tasks[] array
percentage: 0
currentTask: null
lastUpdated: '<TIMESTAMP>'
lastUpdatedBy: 'shep-kit:new-feature-fast'
validation:
lastRun: null
gatesPassed: []
autoFixesApplied: []
tasks:
current: null
blocked: []
failed: []
checkpoints:
- phase: 'feature-created'
completedAt: '<TIMESTAMP>'
completedBy: 'shep-kit:new-feature-fast'
- phase: 'research-complete'
completedAt: '<TIMESTAMP>'
completedBy: 'shep-kit:new-feature-fast'
- phase: 'plan-complete'
completedAt: '<TIMESTAMP>'
completedBy: 'shep-kit:new-feature-fast'
errors:
current: null
history: []
Phase 4: Commit
# Stage and commit everything
git add specs/<NNN>-<FEATURE_NAME>/
git commit -m "feat(specs): add <NNN>-<FEATURE_NAME> fast-track specification"
Phase 5: Summary & Next Steps
Display a concise summary:
Fast-track spec complete for <NNN>-<FEATURE_NAME>!
Artifacts created:
- spec.yaml — requirements & success criteria
- research.yaml — technical decisions
- plan.yaml — architecture & TDD phases
- tasks.yaml — <N> tasks across <M> phases
- feature.yaml — ready-to-implement
Branch: feat/<NNN>-<FEATURE_NAME>
Then ask the user:
Continue to
/shep-kit:implementto start autonomous implementation?
- If yes: invoke
/shep-kit:implement - If no: stop here, user reviews first
Quality Requirements
Even though this is "fast", the output MUST meet these standards:
- No placeholders — every field has a real, inferred value
- No open questions — all
openQuestionsarrays are empty[] - TDD cycles defined — every implementation task has
red/green/refactor - Acceptance criteria — every task has specific, verifiable criteria
- Dependencies mapped — task dependencies and feature relationships identified
- Files identified —
filesToCreateandfilesToModifyare populated - Consistent — task IDs in
tasks.yamlmatchtaskIdsinplan.yamlphases
What This Skill Does NOT Do
- Skip TDD requirements (still mandatory)
- Produce lower-quality specs (same schema, same required fields)
- Replace the full pipeline for complex/ambiguous features
- Run implementation (that's
/shep-kit:implement)
Key Differences from Full Pipeline
| Aspect | Full Pipeline | Fast |
|---|---|---|
| User interaction | Multi-step Q&A per phase | 0-2 questions total |
| Gate checks between phases | Explicit stop + user resumes | No stops, continuous |
| Commits | One per phase (3-4 commits) | Single commit |
| Open questions | Can leave unresolved between phases | Must resolve inline |
| Depth | Deep library eval, benchmarks | Focused on key decisions |
| Speed | 4 separate skill invocations | 1 skill invocation |
| Artifacts produced | Identical | Identical |
| TDD requirement | Mandatory | Mandatory |
| feature.yaml protocol | Followed | Followed |
Template & Script Reuse
This skill reuses assets from shep-kit:new-feature:
- Init script:
.claude/skills/shep-kit-new-feature/scripts/init-feature.sh - Templates:
.claude/skills/shep-kit-new-feature/templates/No additional templates or scripts needed.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
shadcn-ui
Provides complete shadcn/ui component library patterns including installation, configuration, and implementation of accessible React components. Use when setting up shadcn/ui, installing components, building forms with React Hook Form and Zod, customizing themes with Tailwind CSS, or implementing UI patterns like buttons, dialogs, dropdowns, tables, and complex form layouts.
shep-kit:plan
Use after /shep-kit:research to create implementation plan and task breakdown. Triggers include "plan", "implementation plan", "break down tasks", "create tasks", or explicit /shep-kit:plan invocation. Part of the Shep autonomous SDLC platform — https://shep.bot
shep-kit:status
Quick feature status and "what to do next" guide. Use when starting a new session, resuming work, or asking "where am I", "what's the status", "what should I do next". Gives a zero-to-hero walkthrough of the current feature branch. Part of the Shep autonomous SDLC platform — https://shep.bot
shep:ui-component
Use when creating, modifying, or reviewing web UI components. Triggers include "new component", "add component", "create UI", "build a widget", "update component", working with files in src/presentation/web/components/, or when the user asks to build any React component for the web UI. Part of the Shep autonomous SDLC platform — https://shep.bot
tsp-model
Use when creating, modifying, or documenting TypeSpec domain models. Triggers include adding new entities, value objects, enums, extending base types, or when asked to create a "tsp model", "domain model", "entity", or work with files in the tsp/ directory. Part of the Shep autonomous SDLC platform — https://shep.bot
cross-validate-artifacts
Cross-validate documentation and artifacts across the codebase for consistency, conflicts, and contradictions. Use when users ask to "cross-validate", "validate docs", "check documentation consistency", "audit documentation", or find conflicts/contradictions in docs. Supports automatic fixing with "validate and fix" argument. Runs parallel subagents for efficient validation across categories (domain-models, agent-system, tech-stack, architecture, cli-commands). Part of the Shep autonomous SDLC platform — https://shep.bot
Didn't find tool you were looking for?