Pm spec writing

Translate ideas, feature requests, or vague concepts into specific, actionable dev briefs.

Pm spec writing — Creative Direction skill highlight diagram. Navy header card reads 'Impactful Creative Direction' with the subtitle… (from the rampstackco/claude-skills README)

From the rampstackco/claude-skills README — shows the whole collection, not only this skill. · view on GitHub

How to use it

Claude Code
  1. Run the line below. It pulls the whole folder into ~/.claude/skills/pm-spec-writing, including the files SKILL.md points to.
  2. Describe your job in plain words. Claude Code follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit rampstackco/claude-skills/skills/pm-spec-writing#main ~/.claude/skills/pm-spec-writing

For one project only, change the path to .claude/skills/pm-spec-writing. This skill also uses spec-feature-1.md, spec-feature-2.md, brief-task-1.md — copying SKILL.md alone won't be enough. See the folder on GitHub.

Claude (web or desktop app)
  1. On this page open ⋯ → Download .md.
  2. Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
  3. Pick the file and Save. Claude shows the name and description and runs a security scan.
  4. Check the skill is switched on.
  5. Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
  1. ChatGPT: make a Project and paste it into Instructions.
  2. Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Source of Pm spec writing

Show the full text233 lines
namedescriptioncategorycatalog_summarydisplay_order
pm-spec-writingTranslate ideas, feature requests, or vague concepts into specific, actionable dev briefs. Use this skill whenever the user has an idea they want to build, a feature to spec out, a bug to file, a project to scope, or needs to convert a half-formed idea into a clear implementation brief. Triggers on I want to add, we should build, can we make, what is the plan for, how do we implement, dev brief, feature spec, PRD, user story, acceptance criteria, scope this, prioritize. Also triggers when the user has a list of things they want to build and needs help converting them into well-formed tasks.productPRDs, user stories, acceptance criteria, dev briefs1

PM Spec Writing

Take an idea (often vague) and turn it into a specification a developer or AI agent can actually build from. Stack-agnostic. Works for new features, bug fixes, content changes, or infrastructure work.


When to use

  • Translating an idea into a buildable feature spec
  • Writing a PRD or product requirement document
  • Filing a bug report that someone else can act on
  • Scoping a project before kickoff
  • Prioritizing a backlog of feature requests
  • Writing acceptance criteria for an existing feature
  • Breaking a large initiative into shippable increments

When NOT to use

  • Quarterly or annual planning across multiple initiatives (use roadmap-planning)
  • Code review or debugging existing code (use code-review-web)
  • Design decisions for a feature already specced (use design-standards)
  • User research to validate an idea (use ux-research)

Required inputs

  • The idea, request, or problem being addressed
  • The audience or user affected
  • Any existing constraints (stack, deadlines, dependencies)
  • The success metric (how will you know it worked?)

If the idea is vague, the workflow's first step is clarification. Do not write specs around vagueness.


The framework: 4 phases

Every PM workflow follows the same arc. The phases are universal even if the specific outputs vary.

Phase 1: Clarify the idea

Before any spec, answer four questions. If any answer is "I don't know," go back to the user.

  1. What user problem does this solve? Not "what does it do." The problem comes first; the feature is the proposed solution.
  2. Who specifically benefits? Be precise. "Users" is not specific. "First-time visitors who don't convert" is.
  3. What is the success metric? How will you know it worked? Pick one primary metric.
  4. Why now? What changed that makes this the right time to build it? If "nothing changed," it might not be the right time.
Phase 2: Scope by impact and effort

Plot every candidate idea on the impact/effort grid:

HIGH IMPACT / LOW EFFORT       Ship immediately
  Examples: copy fixes, contrast fixes, meta tags,
            broken links, missing alt text, redirects

HIGH IMPACT / HIGH EFFORT      Plan and batch
  Examples: new page type, new feature, schema overhaul,
            major redesign, new integration

LOW IMPACT / LOW EFFORT        Nice-to-have batch
  Examples: tooltip improvements, minor copy polish,
            cosmetic UX touches

LOW IMPACT / HIGH EFFORT       Skip or defer indefinitely
  Examples: rebuilding what already works, exotic
            edge case features, premature optimization

This is not a perfect framework. Some "low impact" things are mandatory (compliance, accessibility, security). Note exceptions.

Phase 3: Write the spec

Three formats based on the type of work.

Format A: Feature spec (for new features)
TITLE: [Specific, action-oriented]

PROBLEM
[1-2 sentences. The user problem and current state.]

USERS
[Who specifically benefits. Be precise about the user segment.]

PROPOSAL
[1 paragraph. The proposed solution. Stay at the conceptual level.]

USER STORIES
- As a [user type], I want to [action], so that [outcome]
- As a [user type], I want to [action], so that [outcome]

ACCEPTANCE CRITERIA
- Given [context], when [action], then [expected outcome]
- Given [context], when [action], then [expected outcome]

OUT OF SCOPE
[What this spec explicitly does NOT cover. Important for scope control.]

DEPENDENCIES
[Other systems, APIs, designs, content needed before this can ship.]

SUCCESS METRIC
[The one primary metric that tells us this worked. With current baseline if known.]

ESTIMATED EFFORT
[Small (hours) / Medium (1-3 days) / Large (1-2 weeks) / XL (sprints)]

PRIORITY
[P0 launch blocker / P1 next sprint / P2 within quarter / P3 backlog]
Format B: Dev brief (for handing to a developer or AI agent)

For tactical, ready-to-build work. Lighter than a full spec.

CONTEXT: [1-2 sentences explaining why this matters]

TASK: [Specific files, exact changes needed]

CONSTRAINTS: [What must NOT change, what to preserve]

VERIFY: [Exact steps to confirm the work is done correctly]

The verify section is the most-skipped and most-important. Without it, "done" means whatever the implementer thinks done means.

Format C: Bug report
URL or context: [Where it happens]

Symptom: [What the user sees or experiences]

Expected: [What should happen instead]

Steps to reproduce:
1. [Specific step]
2. [Specific step]
3. [Specific step]

Hypothesis: [Likely root cause if known]

Files to investigate: [Likely files involved if known]

Priority:
  P0 - blocking critical user flow, ship immediately
  P1 - degrades UX significantly, fix this sprint
  P2 - minor issue, fix when convenient
  P3 - nice-to-have improvement

Browser/device: [If reproducibility might be browser-specific]
Phase 4: Sequence and ship

Specs without sequencing become dust on a shelf.

For a single feature: identify the smallest shippable increment. What is the smallest version that delivers user value? Ship that first. Then iterate.

For a backlog: order by dependencies first, then by priority, then by impact/effort. The order matters more than the priority labels.


Workflow

  1. Clarify. If the idea is vague, ask the four phase-1 questions before proceeding.
  2. Scope. Plot the work on the impact/effort grid.
  3. Pick the right format. Feature spec for new features, dev brief for tactical work, bug report for defects.
  4. Write the spec. Use the template format. Fill in every section. Empty sections are flags.
  5. Define done. Verify steps must be unambiguous. "Test it" is not a verify step.
  6. Get buy-in. Walk through the spec with whoever will build it before they start.
  7. Sequence. Identify the smallest shippable increment.

Failure patterns

  • Specs that describe solutions before problems. Always start with the user problem. The solution is downstream.
  • Specs without a success metric. Without a metric, you cannot tell if the feature worked.
  • Acceptance criteria that are not testable. "User experience is improved" is not testable. "User completes signup in under 60 seconds" is.
  • Specs that include the "how" instead of the "what." Implementation details belong in the dev brief, not the spec. The spec is the desired outcome.
  • No "out of scope" section. Without explicit boundaries, scope creeps.
  • Bug reports without reproduction steps. Cannot be acted on. Always include steps.
  • Verify steps that are vague. "Make sure it works." Useless. Must be specific actions with observable outcomes.
  • Skipping the smallest-shippable-increment exercise. Leads to 6-month projects that should have been 2-week experiments.

Output format

Output is one of three formats based on work type, all in markdown:

  • spec-[feature-name].md for feature specs
  • brief-[task-name].md for dev briefs
  • bug-[summary].md for bug reports

For larger initiatives, group related specs in a folder:

specs/
  initiative-name/
    spec-feature-1.md
    spec-feature-2.md
    brief-task-1.md
    README.md   (overview and sequencing)

If required data is unavailable

This skill's output depends on data, measurements, or tool results it cannot generate on its own. When a required input, tool, or data source is unavailable or unverifiable, the sanctioned output is the deliverable with the gap stated: what was needed, what was actually obtained or verified, and which parts of the output are affected. Fabricating, estimating, or interpolating a required number to complete the deliverable is never sanctioned. A stated gap is a complete answer.


Reference files

1---
2name: pm-spec-writing
3description: "Translate ideas, feature requests, or vague concepts into specific, actionable dev briefs. Use this skill whenever the user has an idea they want to build, a feature to spec out, a bug to file, a project to scope, or needs to convert a half-formed idea into a clear implementation brief. Triggers on I want to add, we should build, can we make, what is the plan for, how do we implement, dev brief, feature spec, PRD, user story, acceptance criteria, scope this, prioritize. Also triggers when the user has a list of things they want to build and needs help converting them into well-formed tasks."
4category: product
5catalog_summary: "PRDs, user stories, acceptance criteria, dev briefs"
6display_order: 1
7---
8 
9# PM Spec Writing
10 
11Take an idea (often vague) and turn it into a specification a developer or AI agent can actually build from. Stack-agnostic. Works for new features, bug fixes, content changes, or infrastructure work.
12 
13---
14 
15## When to use
16 
17- Translating an idea into a buildable feature spec
18- Writing a PRD or product requirement document
19- Filing a bug report that someone else can act on
20- Scoping a project before kickoff
21- Prioritizing a backlog of feature requests
22- Writing acceptance criteria for an existing feature
23- Breaking a large initiative into shippable increments
24 
25## When NOT to use
26 
27- Quarterly or annual planning across multiple initiatives (use `roadmap-planning`)
28- Code review or debugging existing code (use `code-review-web`)
29- Design decisions for a feature already specced (use `design-standards`)
30- User research to validate an idea (use `ux-research`)
31 
32---
33 
34## Required inputs
35 
36- The idea, request, or problem being addressed
37- The audience or user affected
38- Any existing constraints (stack, deadlines, dependencies)
39- The success metric (how will you know it worked?)
40 
41If the idea is vague, the workflow's first step is clarification. Do not write specs around vagueness.
42 
43---
44 
45## The framework: 4 phases
46 
47Every PM workflow follows the same arc. The phases are universal even if the specific outputs vary.
48 
49### Phase 1: Clarify the idea
50 
51Before any spec, answer four questions. If any answer is "I don't know," go back to the user.
52 
531. **What user problem does this solve?** Not "what does it do." The problem comes first; the feature is the proposed solution.
542. **Who specifically benefits?** Be precise. "Users" is not specific. "First-time visitors who don't convert" is.
553. **What is the success metric?** How will you know it worked? Pick one primary metric.
564. **Why now?** What changed that makes this the right time to build it? If "nothing changed," it might not be the right time.
57 
58### Phase 2: Scope by impact and effort
59 
60Plot every candidate idea on the impact/effort grid:
61 
62```
63HIGH IMPACT / LOW EFFORT Ship immediately
64 Examples: copy fixes, contrast fixes, meta tags,
65 broken links, missing alt text, redirects
66 
67HIGH IMPACT / HIGH EFFORT Plan and batch
68 Examples: new page type, new feature, schema overhaul,
69 major redesign, new integration
70 
71LOW IMPACT / LOW EFFORT Nice-to-have batch
72 Examples: tooltip improvements, minor copy polish,
73 cosmetic UX touches
74 
75LOW IMPACT / HIGH EFFORT Skip or defer indefinitely
76 Examples: rebuilding what already works, exotic
77 edge case features, premature optimization
78```
79 
80This is not a perfect framework. Some "low impact" things are mandatory (compliance, accessibility, security). Note exceptions.
81 
82### Phase 3: Write the spec
83 
84Three formats based on the type of work.
85 
86#### Format A: Feature spec (for new features)
87 
88```
89TITLE: [Specific, action-oriented]
90 
91PROBLEM
92[1-2 sentences. The user problem and current state.]
93 
94USERS
95[Who specifically benefits. Be precise about the user segment.]
96 
97PROPOSAL
98[1 paragraph. The proposed solution. Stay at the conceptual level.]
99 
100USER STORIES
101- As a [user type], I want to [action], so that [outcome]
102- As a [user type], I want to [action], so that [outcome]
103 
104ACCEPTANCE CRITERIA
105- Given [context], when [action], then [expected outcome]
106- Given [context], when [action], then [expected outcome]
107 
108OUT OF SCOPE
109[What this spec explicitly does NOT cover. Important for scope control.]
110 
111DEPENDENCIES
112[Other systems, APIs, designs, content needed before this can ship.]
113 
114SUCCESS METRIC
115[The one primary metric that tells us this worked. With current baseline if known.]
116 
117ESTIMATED EFFORT
118[Small (hours) / Medium (1-3 days) / Large (1-2 weeks) / XL (sprints)]
119 
120PRIORITY
121[P0 launch blocker / P1 next sprint / P2 within quarter / P3 backlog]
122```
123 
124#### Format B: Dev brief (for handing to a developer or AI agent)
125 
126For tactical, ready-to-build work. Lighter than a full spec.
127 
128```
129CONTEXT: [1-2 sentences explaining why this matters]
130 
131TASK: [Specific files, exact changes needed]
132 
133CONSTRAINTS: [What must NOT change, what to preserve]
134 
135VERIFY: [Exact steps to confirm the work is done correctly]
136```
137 
138The verify section is the most-skipped and most-important. Without it, "done" means whatever the implementer thinks done means.
139 
140#### Format C: Bug report
141 
142```
143URL or context: [Where it happens]
144 
145Symptom: [What the user sees or experiences]
146 
147Expected: [What should happen instead]
148 
149Steps to reproduce:
1501. [Specific step]
1512. [Specific step]
1523. [Specific step]
153 
154Hypothesis: [Likely root cause if known]
155 
156Files to investigate: [Likely files involved if known]
157 
158Priority:
159 P0 - blocking critical user flow, ship immediately
160 P1 - degrades UX significantly, fix this sprint
161 P2 - minor issue, fix when convenient
162 P3 - nice-to-have improvement
163 
164Browser/device: [If reproducibility might be browser-specific]
165```
166 
167### Phase 4: Sequence and ship
168 
169Specs without sequencing become dust on a shelf.
170 
171For a single feature: identify the smallest shippable increment. What is the smallest version that delivers user value? Ship that first. Then iterate.
172 
173For a backlog: order by dependencies first, then by priority, then by impact/effort. The order matters more than the priority labels.
174 
175---
176 
177## Workflow
178 
1791. **Clarify.** If the idea is vague, ask the four phase-1 questions before proceeding.
1802. **Scope.** Plot the work on the impact/effort grid.
1813. **Pick the right format.** Feature spec for new features, dev brief for tactical work, bug report for defects.
1824. **Write the spec.** Use the template format. Fill in every section. Empty sections are flags.
1835. **Define done.** Verify steps must be unambiguous. "Test it" is not a verify step.
1846. **Get buy-in.** Walk through the spec with whoever will build it before they start.
1857. **Sequence.** Identify the smallest shippable increment.
186 
187---
188 
189## Failure patterns
190 
191- **Specs that describe solutions before problems.** Always start with the user problem. The solution is downstream.
192- **Specs without a success metric.** Without a metric, you cannot tell if the feature worked.
193- **Acceptance criteria that are not testable.** "User experience is improved" is not testable. "User completes signup in under 60 seconds" is.
194- **Specs that include the "how" instead of the "what."** Implementation details belong in the dev brief, not the spec. The spec is the desired outcome.
195- **No "out of scope" section.** Without explicit boundaries, scope creeps.
196- **Bug reports without reproduction steps.** Cannot be acted on. Always include steps.
197- **Verify steps that are vague.** "Make sure it works." Useless. Must be specific actions with observable outcomes.
198- **Skipping the smallest-shippable-increment exercise.** Leads to 6-month projects that should have been 2-week experiments.
199 
200---
201 
202## Output format
203 
204Output is one of three formats based on work type, all in markdown:
205 
206- `spec-[feature-name].md` for feature specs
207- `brief-[task-name].md` for dev briefs
208- `bug-[summary].md` for bug reports
209 
210For larger initiatives, group related specs in a folder:
211```
212specs/
213 initiative-name/
214 spec-feature-1.md
215 spec-feature-2.md
216 brief-task-1.md
217 README.md (overview and sequencing)
218```
219 
220---
221 
222## If required data is unavailable
223 
224This skill's output depends on data, measurements, or tool results it cannot generate on its own. When a required input, tool, or data source is unavailable or unverifiable, the sanctioned output is the deliverable with the gap stated: what was needed, what was actually obtained or verified, and which parts of the output are affected. Fabricating, estimating, or interpolating a required number to complete the deliverable is never sanctioned. A stated gap is a complete answer.
225 
226---
227 
228## Reference files
229 
230- [`references/feature-spec-template.md`](references/feature-spec-template.md) - Full feature spec template.
231- [`references/dev-brief-template.md`](references/dev-brief-template.md) - Compact dev brief template for tactical work.
232- [`references/prioritization-frameworks.md`](references/prioritization-frameworks.md) - Beyond impact/effort: RICE, weighted scoring, MoSCoW.
233 

Discussion

Alternatives

Also in Specs & PRDsSee all 277 in Product →