# spec-writer

Transforms a vague feature request into a structured specification, technical plan, and task breakdown. Every assumption is marked inline so you can correct it before handing off to an agent.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 29
- Author: dannwaneri
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/dannwaneri/spec-writer/tree/HEAD/SKILL.md
- Updated: 2026-03-18
- HTML: https://affpapa.org/en/nevibecode/skills/spec-writer

## What it does

spec-writer takes a rough request—"add password reset"—and produces three sections: a spec with user stories and Given/When/Then acceptance criteria, a technical plan covering architecture and data model changes, and a list of ordered, independently testable tasks. Each assumption gets flagged with `[ASSUMPTION: ...]` in the output itself, so decisions that would be invisible in a chat become explicit and editable.

Output is compatible with GitHub Spec Kit and OpenSpec frameworks, so you can save it to `.specify/` or `openspec/changes/` and continue from there. Specs stay technology-neutral—no framework names, only functional requirements and the business logic that matters.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add dannwaneri/spec-writer --skill spec-writer -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/spec-writer/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/spec-writer/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add dannwaneri/spec-writer --skill spec-writer -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/spec-writer/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add dannwaneri/spec-writer --skill spec-writer -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/spec-writer/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install dannwaneri/spec-writer spec-writer
```

2. **Manually: put the files in place**
- File: `.github/skills/spec-writer/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add dannwaneri/spec-writer --skill spec-writer -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/dannwaneri/spec-writer
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/spec-writer/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add dannwaneri/spec-writer --skill spec-writer -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/dannwaneri/spec-writer/tree/HEAD/SKILL.md

## When to use it
- turn a brief feature description into a full specification
- break a vague request into concrete tasks for a coding agent
- surface assumptions before development starts
- generate a technical plan with data models and API contracts
- export a spec compatible with Spec Kit or OpenSpec

## Example prompts
- /spec-writer Add a way for users to reset their password
- /spec-writer Build an admin dashboard that shows daily signups by region
- /spec-writer Let users export their project data as CSV

## Similar
- [improve-codebase-architecture](https://affpapa.org/en/nevibecode/skills/improve-codebase-architecture.md) — skill · 1163035 installs
- [tdd](https://affpapa.org/en/nevibecode/skills/tdd.md) — skill · 1141062 installs
- [triage](https://affpapa.org/en/nevibecode/skills/triage.md) — skill · 990453 installs
- [codebase-design](https://affpapa.org/en/nevibecode/skills/codebase-design.md) — skill · 850344 installs
- [code-review](https://affpapa.org/en/nevibecode/skills/code-review.md) — skill · 789521 installs
- [implement](https://affpapa.org/en/nevibecode/skills/implement.md) — skill · 774700 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
