feature-forge
jeffallan/claude-skills
Structured requirements workshops that produce feature specs, user stories, and acceptance criteria.
What is feature-forge?
Feature Forge conducts systematic requirements discovery and documentation for new features. Use it when defining features from scratch, gathering comprehensive requirements, or writing specifications in EARS format with acceptance criteria and implementation checklists.
- Conducts structured discovery interviews from PM and Dev perspectives
- Generates EARS-format functional requirements with non-functional requirements
- Produces Given/When/Then acceptance criteria and error handling tables
- Creates implementation TODO checklists
- Validates requirements through stakeholder review with trade-off analysis
- Handles multi-domain features using subagent discovery
How to install feature-forge
npx skills add https://github.com/jeffallan/claude-skills --skill feature-forgeHow to use feature-forge
- 1.Invoke the skill with your feature goal or problem statement
- 2.Answer structured discovery questions about user value, target users, and business goals
- 3.Participate in systematic interviews covering both product and technical perspectives
- 4.Review the generated EARS-format requirements and acceptance criteria
- 5.Validate trade-offs and priorities with the specialist
- 6.Use the final specification document and implementation checklist to guide development
Use cases
- Defining a new feature from initial concept through detailed specification
- Gathering requirements for a complex feature spanning multiple technical domains
- Writing acceptance criteria and test cases for feature validation
- Creating a product requirements document (PRD) with implementation guidance
- Documenting edge cases, error handling, and security considerations for a feature
- Product managers writing specifications
- Engineers planning feature implementation
- Teams conducting requirements workshops
- Technical leads defining acceptance criteria
- Anyone formalizing feature requirements before development
feature-forge FAQ
EARS (Easy Approach to Requirements Syntax) is a structured format for writing functional requirements. Examples include: 'When <trigger>, the <system> shall <response>' and 'The <system> shall <action> within <measure>'. Load references/ears-syntax.md for complete syntax guidance.
Use Feature Forge when you need comprehensive, validated requirements that cover edge cases, security, performance, and error handling. It's especially valuable for complex features, multi-domain systems, or when requirements need stakeholder validation.
Yes. Feature Forge uses multi-agent discovery with Task subagents for features spanning multiple domains. See references/pre-discovery-subagents.md for guidance on front-loading context for complex features.
Feature Forge produces: overview and user value, EARS-format functional requirements, non-functional requirements (performance, security), Given/When/Then acceptance criteria, error handling tables, and implementation TODO checklists saved as specs/{feature_name}.spec.md.
Yes. Feature Forge explicitly includes non-functional requirements covering security considerations, performance targets, and error handling as part of the complete specification.
Full instructions (SKILL.md)
Source of truth, from jeffallan/claude-skills.
name: feature-forge description: Conducts structured requirements workshops to produce feature specifications, user stories, EARS-format functional requirements, acceptance criteria, and implementation checklists. Use when defining new features, gathering requirements, or writing specifications. Invoke for feature definition, requirements gathering, user stories, EARS format specs, PRDs, acceptance criteria, or requirement matrices. license: MIT metadata: author: https://github.com/Jeffallan version: "1.1.0" domain: workflow triggers: requirements, specification, feature definition, user stories, EARS, planning role: specialist scope: design output-format: document related-skills: fullstack-guardian, spec-miner, test-master
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
- Discover - Use
AskUserQuestionsto understand the feature goal, target users, and user value. Present structured choices where possible (e.g., user types, priority level). - Interview - Systematic questioning from both PM and Dev perspectives using
AskUserQuestionsfor 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). - Document - Write EARS-format requirements
- Validate - Use
AskUserQuestionsto review acceptance criteria with stakeholder, presenting key trade-offs as structured choices - Plan - Create implementation checklist
Reference Guide
Load detailed guidance based on context:
| Topic | Reference | Load When |
|---|---|---|
| EARS Syntax | references/ears-syntax.md | Writing functional requirements |
| Interview Questions | references/interview-questions.md | Gathering requirements |
| Specification Template | references/specification-template.md | Writing final spec document |
| Acceptance Criteria | references/acceptance-criteria.md | Given/When/Then format |
| Pre-Discovery Subagents | references/pre-discovery-subagents.md | Multi-domain features needing front-loaded context |
Constraints
MUST DO
- Use
AskUserQuestionstool 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
AskUserQuestionscan 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:
- Overview and user value
- Functional requirements (EARS format)
- Non-functional requirements
- Acceptance criteria (Given/When/Then)
- Error handling table
- 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
Related skills
More from jeffallan/claude-skills and the wider catalog.

fine-tuning-expert
Expert guidance for fine-tuning LLMs with LoRA, QLoRA, and parameter-efficient methods.

flutter-expert
Senior Flutter engineer for cross-platform apps with Riverpod, Bloc, GoRouter, and performance optimization.

fullstack-guardian
Security-focused full-stack web development—frontend, backend, and database with integrated auth, validation, and output encoding.

game-developer
Build optimized game systems with ECS architecture, physics, networking, and performance targeting 60+ FPS.

golang-pro
Senior Go developer for concurrent systems, microservices, and production-grade performance optimization.

graphql-architect
Design scalable GraphQL schemas with Apollo Federation, resolvers, and real-time subscriptions.