Skip to content
Development
Skill

/shep-kit-new-feature

Use when starting any new feature, functionality, or enhancement. Triggers include "new feature", "start developing", "add functionality", "implement X", or explicit /shep-kit:new-feature invocation. Creates spec branch and scaffolds specification directory. Part of the Shep

From plugin
shep
28119 skills10 agents

Claude Code

$ npx -y skills add shep-ai/shep --skill shep-kit-new-feature --agent claude-code

SKILL.md

shep-kit-new-feature.SKILL.md
name: shep-kit:new-feature
description: Use when starting any new feature, functionality, or enhancement. Triggers include "new feature", "start developing", "add functionality", "implement X", or explicit /shep-kit:new-feature invocation. Creates spec branch and scaffolds specification directory. Part of the Shep autonomous SDLC platform — https://shep.bot
metadata:
  version: '1.0.0'
  author: Shep AI (https://shep.bot)
  homepage: https://shep.bot
  repository: https://github.com/shep-ai/shep

Create New Feature Specification

Start spec-driven development by creating a feature branch and specification directory.

**Full workflow guide:** [docs/development/spec-driven-workflow.md](../../../docs/development/spec-driven-workflow.md)

Phase Lifecycle

Requirements → Research → Planning → Implementation → Complete
    ↓             ↓           ↓            ↓            ↓
 spec.yaml   research.yaml plan.yaml   tasks.yaml   all files
    ↓             ↓           ↓            ↓            ↓
 spec.md     research.md   plan.md     tasks.md     (auto-generated)

**CRITICAL:** Each phase MUST update the `Phase` status field before proceeding.

**IMPORTANT:** Edit YAML files, not Markdown.

Workflow

1. Gather Minimal Input

Ask the user for:

  • **Feature name** (kebab-case, e.g., `user-authentication`)
  • **One-liner description** (brief summary)

2. Create Branch

# Determine next number
NEXT_NUM=$(ls -d specs/[0-9][0-9][0-9]-* 2>/dev/null | wc -l | xargs printf "%03d" $(($ + 1)))
# If no specs exist, use 001
[ -z "$NEXT_NUM" ] && NEXT_NUM="001"

# Create branch from main
git checkout main && git pull
git checkout -b "feat/${NEXT_NUM}-${FEATURE_NAME}"

3. Run Init Script

Execute the scaffolding script:

.claude/skills/shep-kit-new-feature/scripts/init-feature.sh <NNN> <feature-name>

This creates `specs/NNN-feature-name/` with all template files using a **YAML-first** approach:

  • **YAML source files**: `spec.yaml`, `research.yaml`, `plan.yaml`, `tasks.yaml` (source of truth)
  • **Markdown files**: `spec.md`, `research.md`, `plan.md`, `tasks.md` (auto-generated from YAML)
  • **Status tracking**: `feature.yaml` (implementation status, unchanged)

4. Analyze Context

Before filling the spec, analyze:

  • **Existing specs**: Read `specs/*/spec.yaml` (or `specs/*/spec.md`) to understand feature landscape and discover dependencies
  • **Codebase**: Identify affected areas, patterns, existing implementations
  • **Cross-reference**: Infer dependencies, impact areas, size estimate

5. Propose Spec Content

Fill the template placeholders with inferred values:

  • Problem statement (from user description + context)
  • Success criteria (inferred from scope)
  • Affected areas with impact levels (from codebase analysis)
  • Dependencies on other features (from existing specs)
  • Size estimate with reasoning (S/M/L/XL)
  • Open questions (gaps identified during analysis)

Present the proposed spec to the user for review.

6. User Confirms/Adjusts

Allow the user to:

  • Approve the proposed spec
  • Modify any inferred values
  • Add missing context or requirements

7. Write Spec & Update feature.yaml

# Write confirmed content to spec.yaml (the source of truth)

# feature.yaml already created by init script with initial state:
#   - lifecycle: "research"
#   - phase: "research"
#   - checkpoint: "feature-created"
# See: docs/development/feature-yaml-protocol.md for details

# Stage and commit (both YAML source and generated Markdown)
git add specs/NNN-feature-name/
git commit -m "feat(specs): add NNN-feature-name specification"

**IMPORTANT:** Always edit `spec.yaml`. Never hand-edit Markdown spec files.

**feature.yaml Status**: Already initialized by init script. No manual updates needed at this stage.

8. Next Steps

Inform the user:

> Spec created on `feat/NNN-feature-name`! > Next: `/shep-kit:research` to analyze technical approach.

Open Questions Policy

**CRITICAL:** Open questions in `spec.yaml` (the `openQuestions` array) MUST be resolved before `/shep-kit:research`.

  • If questions are identified, add them to the `openQuestions` array in `spec.yaml`
  • User must confirm answers or mark the array empty (`openQuestions: []`)
  • Research phase will REFUSE to proceed if unresolved open questions exist in `spec.yaml`

Key Principles

  • **Branch first**: All spec work happens on the feature branch
  • **Infer, don't interrogate**: Analyze codebase to propose smart defaults
  • **Dependencies from specs**: Scan existing `specs/*/spec.yaml` for relationships
  • **User confirms**: Always get approval before writing files
  • **Open questions block progress**: Never proceed with unresolved questions

Template Location

Templates are in: `.claude/skills/shep-kit-new-feature/templates/`

YAML Templates (Source of Truth)

  • `spec.yaml` - Feature specification
  • `research.yaml` - Technical decisions
  • `plan.yaml` - Implementation strategy
  • `tasks.yaml` - Task breakdown

Other Templates

  • `data-model.md` - Domain models
  • `feature.yaml` - Status tracking

feature.yaml Protocol

All shep-kit skills update `feature.yaml` as work progresses.

**Reference:** [docs/development/feature-yaml-protocol.md](../../../docs/development/feature-yaml-protocol.md)

**This skill's responsibility:**

  • Create initial `feature.yaml` with:
  • `lifecycle: "research"`
  • `phase: "research"`
  • Checkpoint: "feature-created"

Example

See: `.claude/skills/shep-kit-new-feature/examples/001-sample-feature/`

Read more
@shep-ai
Ships withshep

Ship features 10x faster. Built In Auto: Memory, K8S Agent & Security (SDD+SDLC) . 😇

28119 skills10 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
281
Star history of shep-ai/shep on GitHub, a chart by star-history.com

Other skills on shep.

architecture-reviewer

architecture-reviewer

Use when making architectural decisions, planning features, designing new components, reviewing PRs, or validating that proposed…

@shep-ai@shep-aiInstall Skill
cross-validate-artifacts

cross-validate-artifac…

Cross-validate documentation and artifacts across the codebase for consistency, conflicts, and contradictions. Use when users ask…

@shep-ai@shep-aiInstall Skill
mermaid-diagrams

mermaid-diagrams

Comprehensive guide for creating software diagrams using Mermaid syntax. Use when users need to create, visualize, or document…

@shep-ai@shep-aiInstall Skill
react-flow

react-flow

React Flow (@xyflow/react) for workflow visualization with custom nodes and edges. Use when building graph visualizations,…

@shep-ai@shep-aiInstall Skill
shadcn-ui

shadcn-ui

Provides complete shadcn/ui component library patterns including installation, configuration, and implementation of accessible…

@shep-ai@shep-aiInstall Skill
shep-kit-commit-pr

shep-kit-commit-pr

Use when ready to commit, push, and create a PR with CI verification. Triggers include "commit and pr", "push pr", "create pr",…

@shep-ai@shep-aiInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills12d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react3d252k
@facebook@facebookInstall Skill

Questions about shep-kit-new-feature.

Which coding agents can use shep-kit-new-feature?
shep-kit-new-feature installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.