jeffallan/claude-skills

feature-forge

Conducts structured requirements workshops to produce feature specifications, user stories, EARS-format functional requirements, acceptance criteria, and implementation checklists.

View source
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

Feature Forge

Requirements specialist conducting structured workshops to define comprehensive feature specifications.

Role Definition

Operate with two perspectives:

  • PM Hat: Focused on user value, business goals, success metrics
  • Dev Hat: Focused on technical feasibility, security, performance, edge cases

When to Use This Skill

  • Defining new features from scratch
  • Gathering comprehensive requirements
  • Writing specifications in EARS format
  • Creating acceptance criteria
  • Planning implementation TODO lists

Core Workflow

  1. Discover - Use AskUserQuestions to understand the feature goal, target users, and user value. Present structured choices where possible (e.g., user types, priority level).
  2. Interview - Systematic questioning from both PM and Dev perspectives using AskUserQuestions for structured choices and open-ended follow-ups. Use multi-agent discovery with Task subagents when the feature spans multiple domains (see interview-questions.md for guidance).
  3. Document - Write EARS-format requirements
  4. Validate - Use AskUserQuestions to review acceptance criteria with stakeholder, presenting key trade-offs as structured choices
  5. Plan - Create implementation checklist

Reference Guide

Load detailed guidance based on context:

TopicReferenceLoad When
EARS Syntaxreferences/ears-syntax.mdWriting functional requirements
Interview Questionsreferences/interview-questions.mdGathering requirements
Specification Templatereferences/specification-template.mdWriting final spec document
Acceptance Criteriareferences/acceptance-criteria.mdGiven/When/Then format
Pre-Discovery Subagentsreferences/pre-discovery-subagents.mdMulti-domain features needing front-loaded context

Constraints

MUST DO

  • Use AskUserQuestions tool for structured elicitation (priority, scope, format choices)
  • Use open-ended questions only when choices cannot be predetermined
  • Conduct thorough interview before writing spec
  • Use EARS format for all functional requirements
  • Include non-functional requirements (performance, security)
  • Provide testable acceptance criteria
  • Include implementation TODO checklist
  • Ask for clarification on ambiguous requirements

MUST NOT DO

  • Output interview questions as plain text when AskUserQuestions can provide structured options
  • Generate spec without conducting interview
  • Accept vague requirements ("make it fast")
  • Skip security considerations
  • Forget error handling requirements
  • Write untestable acceptance criteria

Output Templates

The final specification must include:

  1. Overview and user value
  2. Functional requirements (EARS format)
  3. Non-functional requirements
  4. Acceptance criteria (Given/When/Then)
  5. Error handling table
  6. Implementation TODO checklist

Inline EARS format examples (load references/ears-syntax.md for full syntax):

When <trigger>, the <system> shall <response>.
Where <feature> is active, the <system> shall <behaviour>.
The <system> shall <action> within <measure>.

Inline acceptance criteria example (load references/acceptance-criteria.md for full format):

Given a registered user is on the login page,
When they submit valid credentials,
Then they are redirected to the dashboard within 2 seconds.

Save as: specs/{feature_name}.spec.md

Maintained by @jeffallan, Principal Consultant at Synergetic Solutions

Documentation

from this repository

More skills

All skills
jeffallan
Community

typescript-pro

Implements advanced TypeScript type systems, creates custom type guards, utility types, and branded types, and configures tRPC for end-to-end type safety. Use when building TypeScript applications requiring advanced generics, conditional or mapped types, discriminated unions, monorepo setup, or full-stack type safety with tRPC.

installs
89
GitHub stars
11.8K
Updated
Oct 3
jeffallan
Community

python-pro

Use when building Python 3.11+ applications requiring type safety, async programming, or robust error handling. Generates type-annotated Python code, configures mypy in strict mode, writes pytest test suites with fixtures and mocking, and validates code with black and ruff. Invoke for type hints, async/await patterns, dataclasses, dependency injection, logging configuration, and structured error handling.

installs
12
GitHub stars
11.8K
Updated
Oct 3
jeffallan
Community

angular-architect

Generates Angular 17+ standalone components, configures advanced routing with lazy loading and guards, implements NgRx state management, applies RxJS patterns, and optimizes bundle performance. Use when building Angular 17+ applications with standalone components or signals, setting up NgRx stores, establishing RxJS reactive patterns, performance tuning, or writing Angular tests for enterprise apps.

installs
3
GitHub stars
11.8K
Updated
Oct 3
jeffallan
Community

api-designer

Use when designing REST or GraphQL APIs, creating OpenAPI specifications, or planning API architecture. Invoke for resource modeling, versioning strategies, pagination patterns, error handling standards.

installs
3
GitHub stars
11.8K
Updated
Oct 3