The product management counterpart to spec-kit. product-spec brings product management disciplines to spec-driven development, following Amazon's Working Backwards methodology from domain context through current product truth.
While spec-kit handles engineering specifications, product-spec handles the product narrative: domain context, press releases, FAQs, durable narrative, roadmap, and current truth that define what you're building, why it matters, and what is actually true once engineering work is aligned.
npm install -g product-specThen inside any project:
product-spec add claude
product-spec add codex
product-spec add both
product-spec check bothnpx --yes --package product-spec product-spec add claudeUse the same pattern for other commands:
npx --yes --package product-spec product-spec check bothThis is the least recommended path, but it is useful when testing unpublished changes:
npm install -g github:ehud-am/product-specProject integration commands:
product-spec add claude
product-spec add codex
product-spec add both
product-spec remove claude
product-spec remove codex
product-spec remove both
product-spec check both
product-spec doctor both
product-spec version
product-spec help
| Command | Purpose |
|---|---|
product-spec add <target> |
Add product-spec-managed assistant commands and shared templates to the current project |
product-spec remove <target> |
Remove only product-spec-managed files for the selected target |
product-spec check [target] |
Validate that managed integrations are present and healthy |
product-spec doctor [target] |
Show richer diagnostics and recovery guidance |
product-spec version |
Print the installed CLI version |
product-spec help |
Show command help and examples |
After adding an integration, use the installed slash commands inside the assistant:
/product-spec-domain ...
/product-spec-press ...
/product-spec-narrative ...
/product-spec-roadmap ...
/product-spec-faq
/product-spec-align
| Target | Command directory | Slash commands |
|---|---|---|
| Claude Code | .claude/commands/ |
/product-spec-domain, /product-spec-press, /product-spec-faq, /product-spec-narrative, /product-spec-roadmap, /product-spec-align |
| Codex | .Codex/commands/ |
/product-spec-domain, /product-spec-press, /product-spec-faq, /product-spec-narrative, /product-spec-roadmap, /product-spec-align |
product-spec creates a product/ folder in your project that maintains a living view of the product across releases. Primary documents stay focused on the current state of thinking, while companion history documents preserve notable changes over time.
| File | Purpose |
|---|---|
product/domain.md |
Industry context, target users, terminology, competitive landscape |
product/press.md |
Current press release and customer-facing promise |
product/faq.md |
Current external and internal FAQs that challenge the promise |
product/narrative.md |
Durable internal story: customer, tension, future state, and principles |
product/roadmap.md |
Forward-looking sequencing of bets, phases, and dependencies |
product/current-truth.md |
Maintained current-state product specification grounded by alignment |
product/history/*.md |
Companion history files for key product artifacts |
/product-spec-domain --> /product-spec-press --> /product-spec-faq --> /product-spec-narrative --> /product-spec-roadmap --> /speckit.specify --> /product-spec-align
(context) (promise) (challenge) (story) (bets) (engineer) (reconcile)
/product-spec-domainestablishes the domain context: who the users are, what problem matters, and who the alternatives are./product-spec-presswrites a press release as if the next release has already shipped./product-spec-faqchallenges the press release with hard questions from customers and stakeholders./product-spec-narrativeturns the promise and challenge into a durable internal product story./product-spec-roadmapsequences future bets and dependencies without replacing current truth./speckit.specifyhands off the next bet to spec-kit for engineering specifications./product-spec-alignreconciles product docs with the evolving engineering scope and maintainsproduct/current-truth.md.
current-truth.md is the maintained answer to "what is actually true in the product today?" It is updated by alignment work and should stay distinct from the future-facing roadmap.
Primary product docs stay focused on the current state. Companion files under product/history/ preserve important prior decisions, revisions, and reasoning.
The methodology is Amazon's PR/FAQ approach:
- start with the customer experience, not the technical solution
- force hard questions early before committing engineering resources
- treat the press release as a contract for value, clarity, and scope
GitHub Actions now handles:
- CI validation on pushes and pull requests
- packaging tagged releases
- publishing the npm package when a
v*tag is pushed
product-spec is now the canonical package name, CLI name, assistant command prefix, and project-local manifest path.
- Node.js and npm
- Claude Code and/or Codex for assistant integration targets
- spec-kit for the
/speckit.specifyportion of the workflow
Project history lives in CHANGELOG.md.
MIT