New to Claude Skills? Learn how to install them →

Fjeffallan on GitHub

Feature Forge

Free

Streamline feature specification and requirements gathering.

Get this skill

Free · Opens the source repo

What Feature Forge does

Feature Forge is designed to facilitate structured workshops aimed at defining comprehensive feature specifications. It operates by leveraging a dual perspective: the Product Manager (PM) angle, which emphasizes user value and business objectives, and the Developer (Dev) angle, which prioritizes technical feasibility and performance. This dual approach ensures that all aspects of feature development are thoroughly considered, making it an essential tool for teams looking to create well-rounded specifications.

The skill's core workflow begins with discovery, where it employs the AskUserQuestions tool to identify the feature's goals, target users, and overall value. This is followed by systematic interviews that gather requirements from both PM and Dev perspectives, ensuring a well-rounded understanding of the feature's needs. The documentation phase utilizes EARS format to articulate functional requirements, while the validation step engages stakeholders to confirm acceptance criteria, presenting key trade-offs as structured choices.

Feature Forge is particularly useful in scenarios where new features are being defined from scratch, comprehensive requirements are being gathered, or specifications need to be documented in a standardized format. Its structured approach not only enhances clarity but also ensures that all requirements are testable and actionable. The inclusion of an implementation checklist further aids teams in planning their development efforts effectively.

This skill is ideal for product managers, business analysts, and developers who are involved in the feature development lifecycle. By providing a clear framework for gathering and documenting requirements, Feature Forge helps teams reduce ambiguity and improve collaboration, ultimately leading to better product outcomes.

When to use it

Use this skill when defining new features, gathering detailed requirements, or creating structured specifications in EARS format.

When not to use it

This skill may not be suitable for projects with very simple requirements or where rapid prototyping is prioritized over detailed documentation.

What you can build with it

Defining a New Feature

When starting a new project, use Feature Forge to gather requirements and define specifications from the ground up.

Creating Acceptance Criteria

Utilize the skill to systematically develop acceptance criteria that are clear and testable, ensuring stakeholder alignment.

Planning Implementation Tasks

After documenting requirements, leverage the implementation checklist to plan development tasks effectively.

How to install Feature Forge

View source

1. Install with the skills CLI

npx skills add jeffallan/claude-skills/feature-forge --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by jeffallan

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

Documentation

Frequently asked questions about Feature Forge

Similar skills