From forge
Guides users through structured codebase exploration and clarifying questions to refine a feature idea into a design spec.
How this skill is triggered — by the user, by Claude, or both
Slash command
/forge:brainstormThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are helping the user refine a feature idea into a complete design spec through structured exploration and questioning.
You are helping the user refine a feature idea into a complete design spec through structured exploration and questioning.
The user will provide a feature idea as $ARGUMENTS. This may be a description, a pointer to a document, or a rough concept.
Read the user's feature description carefully. If they point to a document, read it.
Focus your exploration on areas relevant to the feature idea. Do not survey the entire codebase.
package.json, requirements.txt, or equivalent for dependencies and scriptsgit log --oneline -20Build a mental model of: tech stack, project structure, existing patterns the feature should follow, and integration points.
Ask questions one at a time. Aim for 5-15 questions total, prioritizing high-impact scope decisions.
Prefer multiple choice, but open-ended is fine when the option space is too large:
The codebase uses DynamoDB for storage. For this feature's data, should we:
A) Add tables to the existing DynamoDB setup
B) Use a different storage approach (e.g., S3 for documents)
C) Both — DynamoDB for metadata, S3 for content
Question priority order:
Rules:
After gathering enough context (you'll know — the remaining questions are minor details the planner can handle), summarize what you've learned and confirm with the user:
I think I have a clear picture. Here's what I understand:
- [Key decision 1]
- [Key decision 2]
- ...
Anything I'm missing, or should we proceed to creating the design spec?
Generate the plan directory name using date + feature slug format:
YYYY-MM-DDuser-auth, search-api, billing-webhooks)docs/plans/YYYY-MM-DD-feature-slug/-2, -3, etc.Create docs/plans/YYYY-MM-DD-feature-slug/brainstorm.md using Write:
# Feature: [Name]
## Overview
[What we're building — 2-3 paragraphs covering the full picture]
## Decisions
[Numbered list of every decision made during Q&A, with brief rationale]
- 1. Auth approach: JWT — aligns with existing middleware in src/auth/
- 2. Storage: DynamoDB — project already uses it, no reason to add complexity
- ...
## Scope: In
[Bulleted list of what IS included]
## Scope: Out
[Bulleted list of what is explicitly EXCLUDED — important for the planner]
## Open Questions
[Anything unresolved that the Planner will need to decide or ask about]
[If none, state "None — all scope decisions resolved"]
## Relevant Codebase Context
[Key files, patterns, and conventions discovered during exploration]
- `src/auth/middleware.ts` — existing auth pattern to follow
- `lib/dynamodb.ts` — shared DynamoDB client and table utilities
- Test pattern: Jest with mocks in `__mocks__/` directories
- ...
## Technical Constraints
[Any limitations, dependencies, or deployment considerations discovered]
Append an entry to .claude/skill-runs.json in the repo root. If the file does not exist, create it with an empty array first.
{
"skill": "brainstorm",
"date": "YYYY-MM-DD",
"plan": "YYYY-MM-DD-feature-slug"
}
After writing the brainstorm document:
Brainstorm complete: docs/plans/YYYY-MM-DD-feature-slug/brainstorm.md
To start the automated build pipeline, run:
/pipeline YYYY-MM-DD-feature-slug
npx claudepluginhub hatmanstack/claude-forge --plugin forgeGuides collaborative exploration of feature requirements and design approaches before implementation planning.
Guides structured brainstorming to clarify user intent, explore approaches, trade-offs, and refine requirements before implementing features or changes. Activates on ambiguous requests.
Guides structured brainstorming to clarify requirements, explore user intent, approaches, trade-offs, and feature scope before implementing components or changes.