
spec-writing
by Linaqruf
Claude Code plugins
SKILL.md
name: spec-writing description: Use when the user wants to create project specs, design systems, or feature plans. Triggers on "create spec", "plan project", "design system", "plan feature", or "write specification". version: 3.0.0
Spec Writing v3.0
Generate comprehensive project specifications with SPEC.md as the core file and optional supplements for reference material.
Core Principle
SPEC.md is always the complete spec. SPEC/ files are optional lookup supplements.
SPEC.md # Always created, always self-sufficient
CLAUDE.md # Generated with spec references
SPEC/ # Optional, created when user agrees
├── api-reference.md # Lookup: endpoint schemas, request/response
├── sdk-patterns.md # Lookup: external SDK usage patterns
└── data-models.md # Lookup: complex entity schemas
Key distinction:
- SPEC.md = Things you READ (narrative, decisions, requirements)
- SPEC/*.md = Things you LOOK UP (schemas, SDK patterns, external API details)
Single Adaptive Flow
One interview flow replaces previous Quick/SPEC/DEEP modes:
Interview starts
↓
Build SPEC.md progressively
↓
Hit reference-heavy topic? ──→ Ask: "Create SPEC/[topic].md for lookup?"
↓ ↓
Continue interview User decides (yes/no)
↓
Generate SPEC.md + CLAUDE.md
↓
If user said yes → Generate SPEC/[topic].md files
Interview Workflow
Phase 1: Vision & Problem
- Problem statement
- Target users
- Success criteria
Phase 2: Requirements
- MVP features (must-have)
- Out of scope (explicit)
- User flows
Phase 3: Architecture
- System type detection
- Architecture pattern (present 2-3 alternatives with tradeoffs)
- Tech stack with recommendations
Phase 4: Tech Stack Details
- Frontend (if applicable)
- Backend (if applicable)
- Database (if applicable)
- Use multiple choice with recommendations
Phase 5: Design & Security
- Visual design (if frontend)
- Authentication approach
- Constraints & compliance
Supplement Prompts (Mid-Interview)
When hitting reference-heavy topics, ask:
"Your API has 15 endpoints with detailed schemas. Should I:
- A) Keep it inline in SPEC.md (shorter reference section)
- B) Create SPEC/api-reference.md as a separate lookup file"
Create supplements only for:
- Reference material - Stuff you look up, not read through
- External dependencies - SDK docs, library patterns, third-party APIs
Opinionated Recommendations
Lead with recommended options, allow override:
Which package manager?
- A) bun (Recommended) - Fastest, built-in test runner, drop-in npm replacement
- B) pnpm - Fast, strict dependency resolution, good for monorepos
- C) npm - Universal compatibility, no setup needed
- D) yarn - If team already uses it
Principles:
- Lead with recommended option + brief rationale
- Context-aware (desktop app? acknowledge Tauri vs Electron tradeoffs)
- Acknowledge "it depends" cases (team familiarity, existing codebase)
- Stay current with ecosystem changes
SPEC.md Structure
# [Project Name]
## Overview
Problem, solution, target users, success criteria.
## Product Requirements
Core features (MVP), future scope, out of scope, user flows.
## Technical Architecture
Tech stack (with rationale), system design diagram, data models, API endpoints.
## System Maps
- Architecture diagram (ASCII)
- Data model relations
- User flow diagrams
- Wireframes (key screens)
## Design System
(If frontend) Colors, typography, components, accessibility.
## File Structure
Project directory layout.
## Development Phases
Phased implementation plan with checkboxes.
## Open Questions
Decisions to make during development.
---
## References
(If supplements exist) Trigger-based links to SPEC/ files.
Connecting SPEC.md to Supplements
When supplements exist, reference them with triggers:
Inline (in relevant sections):
## API Design
**Endpoints overview:**
- `POST /auth/login` - User authentication
- `GET /projects` - List user projects
→ When implementing endpoints, reference `SPEC/api-reference.md` for full request/response schemas.
References section (bottom):
---
## References
→ When implementing API endpoints: `SPEC/api-reference.md`
→ When using Anthropic SDK: `SPEC/sdk-patterns.md`
CLAUDE.md Generation
Agent-optimized pointer file:
# [Project Name]
[One-line description]
## Spec Reference
Primary spec: `SPEC.md`
→ When implementing API endpoints: `SPEC/api-reference.md`
→ When using [SDK/Library]: `SPEC/sdk-patterns.md`
## Key Constraints
- [Critical constraint 1 - surfaced from spec]
- [Critical constraint 2]
- [Out of scope reminder]
## Commands
- `[package-manager] run dev` - Start development
- `[package-manager] run test` - Run tests
- `[package-manager] run build` - Production build
## Current Status
→ Check `SPEC.md` → Development Phases section
Principles:
- Surface critical constraints directly (prevent missed context)
- Trigger-based supplement references
- Short - pointer, not duplication
- Status points to SPEC.md (single source)
Context7 Integration
After tech choices, fetch relevant documentation:
1. resolve-library-id for each technology
2. query-docs for setup guides and patterns
3. Include insights in relevant spec files
Best Practices
Interview Conduct
- Multiple choice: Use AskUserQuestion options, not open-ended text
- 2-3 alternatives: For key decisions, show options with tradeoffs
- YAGNI: Ruthlessly simplify - "Do we really need this for MVP?"
- Supplements on demand: Only offer when content is truly reference-heavy
Output Quality
- Be specific and actionable
- Include code examples for data models
- Reference Context7 documentation
- Keep scope realistic for MVP
- Include system maps (architecture, data relations, user flows)
Reference Files
Templates
references/output-template.md- SPEC.md structuretemplates/index.template.mdtemplates/overview.template.mdtemplates/architecture.template.mdtemplates/frontend.template.mdtemplates/backend.template.mdtemplates/design-system.template.mdtemplates/api-reference.template.mdtemplates/cli-reference.template.mdtemplates/data-models.template.mdtemplates/security.template.md
References
references/interview-questions.md- Question bank with recommendationsreferences/spec-folder-template.md- Supplement structure guide
Examples
examples/web-app-spec.mdexamples/cli-spec.mdexamples/api-spec.mdexamples/library-spec.md
Related Commands
/spec- Generate project specification/feature- Generate feature specification/design- Generate design system specification/sync- Sync spec with codebase changes (git-aware)
Integration with Other Skills
feature-dev
After creating specs, use feature-dev agents:
code-explorer- Analyze existing patternscode-architect- Design implementationcode-reviewer- Review implementation
frontend-design
Use design specs to implement components following the specification.
スコア
総合スコア
リポジトリの品質指標に基づく評価
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
レビュー
レビュー機能は近日公開予定です
