Skip to content
Back to skills

Product Spec

ASecurity

Turn a vague idea into something buildable — a PRD, feature spec, scoped MVP or ticket breakdown. Use when asked "how should we build X", to write requirements, or when a request is too fuzzy to start coding.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 3, 2026
ai-agentsgo

Security analysis

A100/100

Scanned October 3, 2026

npx -y skills add ivanvp91/TRCode --skill product-spec --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Product Spec?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Product Spec
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ivanvp91-product-spec/badge)](https://www.skillsdirectory.com/skills/ivanvp91-product-spec)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: product-spec
description: Turn a vague idea into something buildable — a PRD, feature spec, scoped MVP or ticket breakdown. Use when asked "how should we build X", to write requirements, or when a request is too fuzzy to start coding.
description_ru: Превратить смутную идею в то, что можно построить — PRD, спецификацию фичи, MVP с границами, разбивку на задачи. Когда спрашивают «как нам сделать X», просят написать требования, или запрос слишком расплывчат, чтобы начинать код.
triggers: спека, спецификация, spec, prd, требования, requirements, техзадание, user story, юзер стори, mvp, скоуп, scope, разбей на задачи, break down, тикеты, tickets, бэклог, backlog
---

# Product spec

## 1. Nail the problem before the solution
Write: who has the problem, how often, what they do today, and what it costs them. If you cannot answer these, the spec is premature — ask. A spec that opens with a solution hides the fact that nobody checked the problem exists.

## 2. Define done
- **Goal**: one sentence.
- **Success metric**: the number that moves, and by how much.
- **Non-goals**: what this explicitly does not do. This section prevents more waste than any other.

## 3. Describe behaviour, not implementation
User stories or plain flows: trigger → steps → outcome. Cover the main path first, then:
- empty / first-run state,
- error and failure paths (offline, permission denied, invalid input),
- limits (rate, size, quantity) and what happens at the limit,
- permissions: who can see and do what,
- what happens to existing data and existing users (migration, backwards compatibility).

Leave the *how* to whoever builds it, unless a technical constraint is part of the requirement.

## 4. Scope honestly
Split into **must / should / later**. The "must" set is the smallest thing that delivers the outcome end to end — a thin slice all the way through, not half of every layer. If everything is a must, the scope is wrong.

## 5. Open questions
List every decision you could not make, with who must decide it and by when. An unmarked assumption is what gets rebuilt later.

## 6. Break it into work
Tickets that are independently shippable, each with a title, one-line goal, and acceptance criteria written as checkable statements ("returns 400 with `invalid_range` when `to` < `from`"). Note dependencies and order.

## What not to do
- No requirements phrased as "fast", "intuitive", "robust" — give the number or the check.
- Do not design the UI in the spec beyond what the behaviour requires.
- Do not silently expand scope; propose additions as separate "later" items.
- Do not skip non-goals and open questions to look decisive.

## Answer format
Problem → Goal & metric → Non-goals → Flows (with edge cases) → Scope (must/should/later) → Open questions → Tickets with acceptance criteria. One page for a feature, two for a product.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…