From forge
Interactively explores relevant codebase parts and refines feature ideas into structured design specs via clarifying questions. Use when starting new features.
npx claudepluginhub hatmanstack/claude-forge --plugin forgeThis skill uses the workspace's default tool permissions.
You are helping the user refine a feature idea into a complete design spec through structured exploration and questioning.
Facilitates collaborative brainstorming of features or ideas via guided questions, assessing project scope, requirements clarity, and codebase patterns before 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.
Share bugs, ideas, or general feedback.
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