write-spec

GitHub

将模糊想法或需求转化为结构化PRD。通过对话收集背景、目标和约束,集成工具上下文,生成包含问题陈述、目标、用户故事及成功指标的规范文档,并支持迭代修订。

product-management/skills/write-spec/SKILL.md anthropics/knowledge-work-plugins

Trigger Scenarios

将模糊想法转化为规范文档 定义功能范围与成功指标 将大需求拆解为分阶段规范

Install

npx skills add anthropics/knowledge-work-plugins --skill write-spec -g -y
More Options

Non-standard path

npx skills add https://github.com/anthropics/knowledge-work-plugins/tree/main/product-management/skills/write-spec -g -y

Use without installing

npx skills use anthropics/knowledge-work-plugins@write-spec

指定 Agent (Claude Code)

npx skills add anthropics/knowledge-work-plugins --skill write-spec -a claude-code -g -y

安装 repo 全部 skill

npx skills add anthropics/knowledge-work-plugins --all -g -y

预览 repo 内 skill

npx skills add anthropics/knowledge-work-plugins --list

SKILL.md

Frontmatter
{
    "name": "write-spec",
    "description": "Write a feature spec or PRD from a problem statement or feature idea. Use when turning a vague idea or user request into a structured document, scoping a feature with goals and non-goals, defining success metrics and acceptance criteria, or breaking a big ask into a phased spec.",
    "argument-hint": "<feature or problem statement>"
}

Write Spec

If you see unfamiliar placeholders or need to check which tools are connected, see CONNECTORS.md.

Write a feature specification or product requirements document (PRD).

Usage

/write-spec $ARGUMENTS

Workflow

1. Understand the Feature

Ask the user what they want to spec. Accept any of:

  • A feature name ("SSO support")
  • A problem statement ("Enterprise customers keep asking for centralized auth")
  • A user request ("Users want to export their data as CSV")
  • A vague idea ("We should do something about onboarding drop-off")

2. Gather Context

Ask the user for the following. Be conversational — do not dump all questions at once. Ask the most important ones first and fill in gaps as you go:

  • User problem: What problem does this solve? Who experiences it?
  • Target users: Which user segment(s) does this serve?
  • Success metrics: How will we know this worked?
  • Constraints: Technical constraints, timeline, regulatory requirements, dependencies
  • Prior art: Has this been attempted before? Are there existing solutions?

3. Pull Context from Connected Tools

If ~~project tracker is connected:

  • Search for related tickets, epics, or features
  • Pull in any existing requirements or acceptance criteria
  • Identify dependencies on other work items

If ~~knowledge base is connected:

  • Search for related research documents, prior specs, or design docs
  • Pull in relevant user research findings
  • Find related meeting notes or decision records

If ~~design is connected:

  • Pull related mockups, wireframes, or design explorations
  • Search for design system components relevant to the feature

If these tools are not connected, work entirely from what the user provides. Do not ask the user to connect tools — just proceed with available information.

4. Generate the PRD

Produce a structured PRD with these sections. See PRD Structure below for detailed guidance on what each section should contain.

  • Problem Statement: The user problem, who is affected, and impact of not solving it (2-3 sentences)
  • Goals: 3-5 specific, measurable outcomes tied to user or business metrics
  • Non-Goals: 3-5 things explicitly out of scope, with brief rationale for each
  • User Stories: Standard format ("As a [user type], I want [capability] so that [benefit]"), grouped by persona
  • Requirements: Categorized as Must-Have (P0), Nice-to-Have (P1), and Future Considerations (P2), each with acceptance criteria
  • Success Metrics: Leading indicators (change quickly) and lagging indicators (change over time), with specific targets
  • Open Questions: Unresolved questions tagged with who needs to answer (engineering, design, legal, data)
  • Timeline Considerations: Hard deadlines, dependencies, and phasing

5. Review and Iterate

After generating the PRD:

  • Ask the user if any sections need adjustment
  • Offer to expand on specific sections
  • Offer to create follow-up artifacts (design brief, engineering ticket breakdown, stakeholder pitch)

PRD Structure

Problem Statement

  • Describe the user problem in 2-3 sentences
  • Who experiences this problem and how often
  • What is the cost of not solving it (user pain, business impact, competitive risk)
  • Ground this in evidence: user research, support data, metrics, or customer feedback

Goals

  • 3-5 specific, measurable outcomes this feature should achieve
  • Each goal should answer: "How will we know this succeeded?"
  • Distinguish between user goals (what users get) and business goals (what the company gets)
  • Goals should be outcomes, not outputs ("reduce time to first value by 50%" not "build onboarding wizard")

Non-Goals

  • 3-5 things this feature explicitly will NOT do
  • Adjacent capabilities that are out of scope for this version
  • For each non-goal, briefly explain why it is out of scope (not enough impact, too complex, separate initiative, premature)
  • Non-goals prevent scope creep during implementation and set expectations with stakeholders

User Stories

Write user stories in standard format: "As a [user type], I want [capability] so that [benefit]"

Guidelines:

  • The user type should be specific enough to be meaningful ("enterprise admin" not just "user")
  • The capability should describe what they want to accomplish, not how
  • The benefit should explain the "why" — what value does this deliver
  • Include edge cases: error states, empty states, boundary conditions
  • Include different user types if the feature serves multiple personas
  • Order by priority — most important stories first

Example:

  • "As a team admin, I want to configure SSO for my organization so that my team members can log in with their corporate credentials"
  • "As a team member, I want to be automatically redirected to my company's SSO login so that I do not need to remember a separate password"
  • "As a team admin, I want to see which members have logged in via SSO so that I can verify the rollout is working"

Requirements

Must-Have (P0): The feature cannot ship without these. These represent the minimum viable version of the feature. Ask: "If we cut this, does the feature still solve the core problem?" If no, it is P0.

Nice-to-Have (P1): Significantly improves the experience but the core use case works without them. These often become fast follow-ups after launch.

Future Considerations (P2): Explicitly out of scope for v1 but we want to design in a way that supports them later. Documenting these prevents accidental architectural decisions that make them hard later.

For each requirement:

  • Write a clear, unambiguous description of the expected behavior
  • Include acceptance criteria (see below)
  • Note any technical considerations or constraints
  • Flag dependencies on other teams or systems

Open Questions

  • Questions that need answers before or during implementation
  • Tag each with who should answer (engineering, design, legal, data, stakeholder)
  • Distinguish between blocking questions (must answer before starting) and non-blocking (can resolve during implementation)

Timeline Considerations

  • Hard deadlines (contractual commitments, events, compliance dates)
  • Dependencies on other teams' work or releases
  • Suggested phasing if the feature is too large for one release

User Story Writing

Good user stories are:

  • Independent: Can be developed and delivered on their own
  • Negotiable: Details can be discussed, the story is not a contract
  • Valuable: Delivers value to the user (not just the team)
  • Estimable: The team can roughly estimate the effort
  • Small: Can be completed in one sprint/iteration
  • Testable: There is a clear way to verify it works

Common Mistakes in User Stories

  • Too vague: "As a user, I want the product to be faster" — what specifically should be faster?
  • Solution-prescriptive: "As a user, I want a dropdown menu" — describe the need, not the UI widget
  • No benefit: "As a user, I want to click a button" — why? What does it accomplish?
  • Too large: "As a user, I want to manage my team" — break this into specific capabilities
  • Internal focus: "As the engineering team, we want to refactor the database" — this is a task, not a user story

Requirements Categorization

MoSCoW Framework

  • Must have: Without these, the feature is not viable. Non-negotiable.
  • Should have: Important but not critical for launch. High-priority fast follows.
  • Could have: Desirable if time permits. Will not delay delivery if cut.
  • Won't have (this time): Explicitly out of scope. May revisit in future versions.

Tips for Categorization

  • Be ruthless about P0s. The tighter the must-have list, the faster you ship and learn.
  • If everything is P0, nothing is P0. Challenge every must-have: "Would we really not ship without this?"
  • P1s should be things you are confident you will build soon, not a wish list.
  • P2s are architectural insurance — they guide design decisions even though you are not building them now.

Success Metrics Definition

Leading Indicators

Metrics that change quickly after launch (days to weeks):

  • Adoption rate: % of eligible users who try the feature
  • Activation rate: % of users who complete the core action
  • Task completion rate: % of users who successfully accomplish their goal
  • Time to complete: How long the core workflow takes
  • Error rate: How often users encounter errors or dead ends
  • Feature usage frequency: How often users return to use the feature

Lagging Indicators

Metrics that take time to develop (weeks to months):

  • Retention impact: Does this feature improve user retention?
  • Revenue impact: Does this drive upgrades, expansion, or new revenue?
  • NPS / satisfaction change: Does this improve how users feel about the product?
  • Support ticket reduction: Does this reduce support load?
  • Competitive win rate: Does this help win more deals?

Setting Targets

  • Targets should be specific: "50% adoption within 30 days" not "high adoption"
  • Base targets on comparable features, industry benchmarks, or explicit hypotheses
  • Set a "success" threshold and a "stretch" target
  • Define the measurement method: what tool, what query, what time window
  • Specify when you will evaluate: 1 week, 1 month, 1 quarter post-launch

Acceptance Criteria

Write acceptance criteria in Given/When/Then format or as a checklist:

Given/When/Then:

  • Given [precondition or context]
  • When [action the user takes]
  • Then [expected outcome]

Example:

  • Given the admin has configured SSO for their organization
  • When a team member visits the login page
  • Then they are automatically redirected to the organization's SSO provider

Checklist format:

  • Admin can enter SSO provider URL in organization settings
  • Team members see "Log in with SSO" button on login page
  • SSO login creates a new account if one does not exist
  • SSO login links to existing account if email matches
  • Failed SSO attempts show a clear error message

Tips for Acceptance Criteria

  • Cover the happy path, error cases, and edge cases
  • Be specific about the expected behavior, not the implementation
  • Include what should NOT happen (negative test cases)
  • Each criterion should be independently testable
  • Avoid ambiguous words: "fast", "user-friendly", "intuitive" — define what these mean concretely

Scope Management

Recognizing Scope Creep

Scope creep happens when:

  • Requirements keep getting added after the spec is approved
  • "Small" additions accumulate into a significantly larger project
  • The team is building features no user asked for ("while we're at it...")
  • The launch date keeps moving without explicit re-scoping
  • Stakeholders add requirements without removing anything

Preventing Scope Creep

  • Write explicit non-goals in every spec
  • Require that any scope addition comes with a scope removal or timeline extension
  • Separate "v1" from "v2" clearly in the spec
  • Review the spec against the original problem statement — does everything serve it?
  • Time-box investigations: "If we cannot figure out X in 2 days, we cut it"
  • Create a "parking lot" for good ideas that are not in scope

Output Format

Use markdown with clear headers. Keep the document scannable — busy stakeholders should be able to read just the headers and bold text to get the gist.

Tips

  • Be opinionated about scope. It is better to have a tight, well-defined spec than an expansive vague one.
  • If the user's idea is too big for one spec, suggest breaking it into phases and spec the first phase.
  • Success metrics should be specific and measurable, not vague ("improve user experience").
  • Non-goals are as important as goals. They prevent scope creep during implementation.
  • Open questions should be genuinely open — do not include questions you can answer from context.

Version History

  • 6f13415 Current 2026-07-05 18:34

Same Skill Collection

bio-research/skills/nextflow-development/SKILL.md
bio-research/skills/single-cell-rna-qc/SKILL.md
bio-research/skills/start/SKILL.md
cowork-plugin-management/skills/cowork-plugin-customizer/SKILL.md
cowork-plugin-management/skills/create-cowork-plugin/SKILL.md
customer-support/skills/customer-escalation/SKILL.md
customer-support/skills/customer-research/SKILL.md
customer-support/skills/draft-response/SKILL.md
customer-support/skills/kb-article/SKILL.md
customer-support/skills/ticket-triage/SKILL.md
data/skills/analyze/SKILL.md
data/skills/build-dashboard/SKILL.md
data/skills/create-viz/SKILL.md
data/skills/data-visualization/SKILL.md
data/skills/explore-data/SKILL.md
data/skills/sql-queries/SKILL.md
data/skills/statistical-analysis/SKILL.md
data/skills/validate-data/SKILL.md
data/skills/write-query/SKILL.md
design/skills/accessibility-review/SKILL.md
design/skills/design-critique/SKILL.md
design/skills/design-handoff/SKILL.md
design/skills/design-system/SKILL.md
design/skills/research-synthesis/SKILL.md
design/skills/user-research/SKILL.md
design/skills/ux-copy/SKILL.md
engineering/skills/architecture/SKILL.md
engineering/skills/code-review/SKILL.md
engineering/skills/debug/SKILL.md
engineering/skills/deploy-checklist/SKILL.md
engineering/skills/documentation/SKILL.md
engineering/skills/incident-response/SKILL.md
engineering/skills/standup/SKILL.md
engineering/skills/system-design/SKILL.md
engineering/skills/tech-debt/SKILL.md
engineering/skills/testing-strategy/SKILL.md
enterprise-search/skills/digest/SKILL.md
enterprise-search/skills/knowledge-synthesis/SKILL.md
enterprise-search/skills/search-strategy/SKILL.md
enterprise-search/skills/search/SKILL.md
enterprise-search/skills/source-management/SKILL.md
finance/skills/audit-support/SKILL.md
finance/skills/close-management/SKILL.md
finance/skills/financial-statements/SKILL.md
finance/skills/journal-entry-prep/SKILL.md
finance/skills/journal-entry/SKILL.md
finance/skills/reconciliation/SKILL.md
finance/skills/sox-testing/SKILL.md
finance/skills/variance-analysis/SKILL.md
human-resources/skills/comp-analysis/SKILL.md
human-resources/skills/draft-offer/SKILL.md
human-resources/skills/interview-prep/SKILL.md
human-resources/skills/onboarding/SKILL.md
human-resources/skills/org-planning/SKILL.md
human-resources/skills/people-report/SKILL.md
human-resources/skills/performance-review/SKILL.md
human-resources/skills/policy-lookup/SKILL.md
human-resources/skills/recruiting-pipeline/SKILL.md
legal/skills/brief/SKILL.md
legal/skills/compliance-check/SKILL.md
legal/skills/legal-response/SKILL.md
legal/skills/legal-risk-assessment/SKILL.md
legal/skills/meeting-briefing/SKILL.md
legal/skills/review-contract/SKILL.md
legal/skills/signature-request/SKILL.md
legal/skills/triage-nda/SKILL.md
legal/skills/vendor-check/SKILL.md
marketing/skills/brand-review/SKILL.md
marketing/skills/campaign-plan/SKILL.md
marketing/skills/competitive-brief/SKILL.md
marketing/skills/content-creation/SKILL.md
marketing/skills/draft-content/SKILL.md
marketing/skills/email-sequence/SKILL.md
marketing/skills/performance-report/SKILL.md
marketing/skills/seo-audit/SKILL.md
operations/skills/capacity-plan/SKILL.md
operations/skills/change-request/SKILL.md
operations/skills/compliance-tracking/SKILL.md
operations/skills/process-doc/SKILL.md
operations/skills/process-optimization/SKILL.md
operations/skills/risk-assessment/SKILL.md
operations/skills/runbook/SKILL.md
operations/skills/status-report/SKILL.md
operations/skills/vendor-review/SKILL.md
partner-built/apollo/skills/enrich-lead/SKILL.md
partner-built/apollo/skills/prospect/SKILL.md
partner-built/apollo/skills/sequence-load/SKILL.md
partner-built/common-room/skills/account-research/SKILL.md
partner-built/common-room/skills/call-prep/SKILL.md
partner-built/common-room/skills/compose-outreach/SKILL.md
partner-built/common-room/skills/contact-research/SKILL.md
partner-built/common-room/skills/prospect/SKILL.md
partner-built/common-room/skills/weekly-prep-brief/SKILL.md
partner-built/slack/skills/slack-messaging/SKILL.md
partner-built/slack/skills/slack-search/SKILL.md
partner-built/zoom-plugin/skills/build-zoom-bot/SKILL.md
partner-built/zoom-plugin/skills/build-zoom-meeting-app/SKILL.md
partner-built/zoom-plugin/skills/choose-zoom-approach/SKILL.md
partner-built/zoom-plugin/skills/cobrowse-sdk/SKILL.md
partner-built/zoom-plugin/skills/contact-center/android/SKILL.md
partner-built/zoom-plugin/skills/contact-center/ios/SKILL.md
partner-built/zoom-plugin/skills/contact-center/SKILL.md
partner-built/zoom-plugin/skills/contact-center/web/SKILL.md
partner-built/zoom-plugin/skills/debug-zoom-integration/SKILL.md
partner-built/zoom-plugin/skills/debug-zoom/SKILL.md
partner-built/zoom-plugin/skills/design-mcp-workflow/SKILL.md
partner-built/zoom-plugin/skills/general/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/android/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/electron/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/ios/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/linux/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/macos/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/react-native/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/unreal/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/web/SKILL.md
partner-built/zoom-plugin/skills/meeting-sdk/windows/SKILL.md
partner-built/zoom-plugin/skills/oauth/SKILL.md
partner-built/zoom-plugin/skills/phone/SKILL.md
partner-built/zoom-plugin/skills/plan-zoom-integration/SKILL.md
partner-built/zoom-plugin/skills/plan-zoom-product/SKILL.md
partner-built/zoom-plugin/skills/probe-sdk/SKILL.md
partner-built/zoom-plugin/skills/rest-api/SKILL.md
partner-built/zoom-plugin/skills/rivet-sdk/SKILL.md
partner-built/zoom-plugin/skills/rtms/SKILL.md
partner-built/zoom-plugin/skills/scribe/SKILL.md
partner-built/zoom-plugin/skills/setup-zoom-mcp/SKILL.md
partner-built/zoom-plugin/skills/setup-zoom-oauth/SKILL.md
partner-built/zoom-plugin/skills/start/SKILL.md
partner-built/zoom-plugin/skills/team-chat/SKILL.md
partner-built/zoom-plugin/skills/ui-toolkit/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/android/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/flutter/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/ios/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/linux/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/macos/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/react-native/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/unity/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/web/SKILL.md
partner-built/zoom-plugin/skills/video-sdk/windows/SKILL.md
partner-built/zoom-plugin/skills/virtual-agent/android/SKILL.md
partner-built/zoom-plugin/skills/virtual-agent/ios/SKILL.md
partner-built/zoom-plugin/skills/virtual-agent/SKILL.md
partner-built/zoom-plugin/skills/virtual-agent/web/SKILL.md
partner-built/zoom-plugin/skills/webhooks/SKILL.md
partner-built/zoom-plugin/skills/websockets/SKILL.md
partner-built/zoom-plugin/skills/zoom-apps-sdk/SKILL.md
partner-built/zoom-plugin/skills/zoom-mcp/whiteboard/SKILL.md
pdf-viewer/skills/view-pdf/SKILL.md
product-management/skills/competitive-brief/SKILL.md
product-management/skills/metrics-review/SKILL.md
product-management/skills/product-brainstorming/SKILL.md
product-management/skills/roadmap-update/SKILL.md
product-management/skills/sprint-planning/SKILL.md
product-management/skills/stakeholder-update/SKILL.md
product-management/skills/synthesize-research/SKILL.md
productivity/skills/memory-management/SKILL.md
productivity/skills/start/SKILL.md
productivity/skills/task-management/SKILL.md
productivity/skills/update/SKILL.md
sales/skills/account-research/SKILL.md
sales/skills/call-prep/SKILL.md
sales/skills/call-summary/SKILL.md
sales/skills/competitive-intelligence/SKILL.md
sales/skills/create-an-asset/SKILL.md
sales/skills/daily-briefing/SKILL.md
sales/skills/draft-outreach/SKILL.md
sales/skills/forecast/SKILL.md
sales/skills/pipeline-review/SKILL.md
small-business/skills/call-list/SKILL.md
small-business/skills/cash-flow-snapshot/SKILL.md
small-business/skills/close-month/SKILL.md
small-business/skills/content-strategy/SKILL.md
small-business/skills/contract-review/SKILL.md
small-business/skills/crm-cleanup/SKILL.md
small-business/skills/crm-maintenance/SKILL.md
small-business/skills/customer-pulse-check/SKILL.md
small-business/skills/customer-pulse/SKILL.md
small-business/skills/friday-brief/SKILL.md
small-business/skills/handle-complaint/SKILL.md
small-business/skills/invoice-chase/SKILL.md
small-business/skills/lead-triage/SKILL.md
small-business/skills/monday-brief/SKILL.md
small-business/skills/month-end-prep/SKILL.md
small-business/skills/month-heads-up/SKILL.md
small-business/skills/plan-payroll/SKILL.md
small-business/skills/price-check/SKILL.md
small-business/skills/quarterly-review/SKILL.md
small-business/skills/review-contract/SKILL.md
small-business/skills/run-campaign/SKILL.md
small-business/skills/sales-brief/SKILL.md
small-business/skills/tax-prep/SKILL.md
small-business/skills/ticket-deflector/SKILL.md
bio-research/skills/instrument-data-to-allotrope/SKILL.md
bio-research/skills/scientific-problem-selection/SKILL.md
bio-research/skills/scvi-tools/SKILL.md
data/skills/data-context-extractor/SKILL.md
partner-built/brand-voice/skills/brand-voice-enforcement/SKILL.md
partner-built/brand-voice/skills/discover-brand/SKILL.md
partner-built/brand-voice/skills/guideline-generation/SKILL.md
small-business/skills/business-pulse/SKILL.md
small-business/skills/canva-creator/SKILL.md
small-business/skills/job-post-builder/SKILL.md
small-business/skills/margin-analyzer/SKILL.md
small-business/skills/smb-onboard/SKILL.md
small-business/skills/smb-router/SKILL.md
small-business/skills/tax-season-organizer/SKILL.md

Metadata

Files
0
Version
6f13415
Hash
ca667091
Indexed
2026-07-05 18:34

Главная - Вики-сайт
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-08 23:24
浙ICP备14020137号-1 $Гость$