Agent skill

shep-kit:research

Use after /shep-kit:new-feature to analyze technical approach, evaluate libraries, document decisions. Triggers include "research", "technical analysis", "evaluate options", "which library", or explicit /shep-kit:research invocation. Part of the Shep autonomous SDLC platform — https://shep.bot

Stars 126
Forks 13

Install this agent skill to your Project

npx add-skill https://github.com/shep-ai/shep/tree/main/.claude/skills/shep-kit-research

Metadata

Additional technical details for this skill

author
Shep AI (https://shep.bot)
version
1.0.0

SKILL.md

Research Technical Approach

Document technical decisions, library evaluations, and architectural choices for a feature.

Full workflow guide: docs/development/spec-driven-workflow.md

Prerequisites

  • Feature spec exists at specs/NNN-feature-name/spec.yaml (YAML source of truth)
  • On the feature branch feat/NNN-feature-name

GATE CHECK (Mandatory)

Before starting research, verify:

  1. Read spec.yaml and check the openQuestions array
  2. If any unresolved items exist in openQuestions: STOP and inform user:

    Cannot proceed with research. Open questions in spec.yaml must be resolved first. Please answer these questions or ensure openQuestions is empty (openQuestions: [])

  3. Only proceed when the openQuestions array is empty or all items are marked resolved

Workflow

1. Identify Current Feature

Determine which feature we're researching:

  • Check current branch name
  • Or ask user which spec to research
  • Read specs/NNN-feature-name/spec.yaml for context

2. Identify Technical Decisions

From the spec, identify decisions that need research:

  • Technology/library choices
  • Architecture patterns
  • Integration approaches
  • Performance strategies

3. Research Each Decision

For each technical decision:

Analyze options:

  • List 2-4 viable approaches
  • Research each using web search, documentation
  • Consider project constraints (from CLAUDE.md, existing patterns)

Evaluate trade-offs:

  • Pros and cons of each option
  • Compatibility with existing stack
  • Learning curve, maintenance burden
  • Performance implications

Make recommendation:

  • Choose best option with clear rationale
  • Document why alternatives were rejected

4. Document Security & Performance

Identify and document:

  • Security considerations specific to this feature
  • Performance implications and optimizations

5. Write research.yaml and Generate Markdown

Write research output to specs/NNN-feature-name/research.yaml (the source of truth):

  • Technology decisions with rationale (structured decisions array)
  • Library analysis table
  • Security considerations
  • Performance implications
  • Resolved questions (ensure all open questions from spec.yaml are addressed)

6. Update Status Fields & feature.yaml

CRITICAL: Update status in YAML source files and feature.yaml:

yaml
# In spec.yaml, update the phase field:
phase: research # (was requirements)

# In research.yaml, keep:
phase: research
updatedAt: '<today's date>'

Update feature.yaml:

yaml
# specs/NNN-feature-name/feature.yaml
feature:
  lifecycle: 'planning' # Update from "research"

status:
  phase: 'planning' # Update from "research"
  lastUpdated: '<timestamp>'
  lastUpdatedBy: 'shep-kit:research'

checkpoints:
  # Add new checkpoint:
  - phase: 'research-complete'
    completedAt: '<timestamp>'
    completedBy: 'shep-kit:research'

Reference: docs/development/feature-yaml-protocol.md

7. Commit

bash
git add specs/NNN-feature-name/
git commit -m "feat(specs): add NNN-feature-name research"

8. Next Steps

Inform the user:

Research complete for NNN-feature-name! Next: /shep-kit:plan to create implementation plan.

Key Principles

  • Gate enforcement: Never skip the open questions check
  • Evidence-based: Use web search, docs, benchmarks - not assumptions
  • Project-aware: Consider existing patterns and constraints
  • Trade-off focused: Every decision has pros/cons - document both
  • Actionable: Decisions should enable immediate planning
  • Status tracking: Always update Phase fields AND feature.yaml before committing
  • feature.yaml sync: Update lifecycle → "planning" and add checkpoint

Template Location

YAML template (source of truth): .claude/skills/shep-kit-new-feature/templates/research.yaml

Example

See: .claude/skills/shep-kit-research/examples/sample-research.md

Expand your agent's capabilities with these related and highly-rated skills.

shep-ai/shep

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.

126 13
Explore
shep-ai/shep

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

126 13
Explore
shep-ai/shep

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

126 13
Explore
shep-ai/shep

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

126 13
Explore
shep-ai/shep

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

126 13
Explore
shep-ai/shep

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

126 13
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results