scope-work
PLANNING SPINE STEP 1 of 3 — Scope the work: define what is in and out of scope and save as specs/product/SCOPE_LATEST.yaml. Use before slice-tasks or plan-release on any new initiative. Not a substitute for slice-tasks (step 2) or plan-work (step 3).
- License 许可
- MIT
- 最近更新
- 2026-11-10
- Stars
- ★ 292
- Forks
- 23
01 前言 Front Matter
- name
- scope-work
- model
- sonnet
- description
- PLANNING SPINE STEP 1 of 3 — Scope the work: define what is in and out of scope and save as specs/product/SCOPE_LATEST.yaml. Use before slice-tasks or plan-release on any new initiative. Not a substitute for slice-tasks (step 2) or plan-work (step 3).
- disable-model-invocation
- true
03 SKILL.md 正文
<!-- story: e03s01 --> <!-- story: e24s02 -->
Scope Work
Spine position: Step 1 — scope-work → slice-tasks → plan-work.
Turn the current conversation into a bounded PRD at specs/product/SCOPE_LATEST.yaml. Without a scope boundary, implementation drifts — stories expand, estimates blow up, and "done" becomes undefined.
Pre-flight
- [ ] Do you have a clear user need or problem statement? If not, run
elaborate-specfirst. - [ ] Does
specs/product/VISION_LATEST.yamlexist? If yes, read it for north-star alignment. - [ ] Is there an existing
SCOPE_LATEST.yaml? If yes, you're refining, not creating from scratch.
Process
-
Read planning-context.yaml — If
specs/planning-context.yamlexists, read it before doing anything else:test -f specs/planning-context.yaml && echo "Context found" || echo "No context — starting fresh"Pre-populate
feature_name,constraints, andout_of_scopefrom the file. Skip re-asking questions already answered by elaborate-spec. If the file is absent, proceed normally. -
Gather context — Read existing
specs/artifacts (release-plan.yaml,plans/TECH_STACK_LATEST.md,requirements/VISION_LATEST.yamlif any). Understand what the project is building and why. -
Interview (if needed) — Clarify: What is the goal? Who are the users? What is definitely in scope? What is explicitly out of scope? What constraints exist (time, budget, tech)? How will success be measured?
-
Write
specs/product/SCOPE_LATEST.yamlwith these fields:core_value— one-sentence value propositionsummary— 2-3 paragraph scope overviewin_scope[]— list of what this initiative covers (each maps to an epic/story)out_of_scope[]— explicit exclusions (prevents scope creep)constraints— tech, time, resource boundariessuccess_criteria— observable outcomes that prove the scope is deliveredreferences— links to related specs, ADRs, or documents
-
Lightweight trade-off analysis — For each
out_of_scopeitem, note why it's excluded (deferred, not valuable, too risky, depends on external factor). This protects against "what about X?" questions later. -
Run
research-firstif external dependencies are proposed — verify the dependency exists, is maintained, and fits the scope before committing to it.
HARD GATE — Every
in_scopeitem must map to a future epic/story ID or explicit deferred note inout_of_scope. If an item can't be mapped, the scope is too vague — refine before proceeding.
HARD GATE — Do NOT include implementation details in SCOPE_LATEST.yaml. Scope is what and why, not how. Implementation detail belongs in epic capsules and slice-tasks.
Common Anti-Patterns
- "Everything is in scope" — If nothing is out of scope, you haven't defined a scope. You've described a universe. Cut aggressively.
- "We'll figure it out later" — Ambiguity in scope propagates to every downstream decision. Resolve now or explicitly defer in writing.
- Scope as architecture — Saying "we need a PostgreSQL database" is architecture, not scope. Scope says "we need to store user profiles and transaction history."
Output
specs/product/SCOPE_LATEST.yaml — the bounded PRD. Subsequent skills (slice-tasks, plan-work) reference this as the source of truth for what to build.
Verify
→ verify: test -f specs/product/SCOPE_LATEST.yaml && grep -q out_of_scope specs/product/SCOPE_LATEST.yaml
04 同仓库更多 Skills
skill-verify-fail-open-fixture
Negative-path fixture for run-skill-verify.sh — must never PASS.
negative-path
暂无简介
write-document
Write, organize, and sync high-integrity technical documents using the BMAD methodology. Ensures every document is Bold, Minimal, Actionable, and Durable. Use when creating architectural docs, technical guides, or organizing the specs/ directory.
wire-observability
Add structured JSON logging, observability commands, and idempotent setup scripts to a project. Use when a project needs production-readiness instrumentation, when user wants structured logging, or as a production-readiness gate at any phase of development.
wire-ci
CI pipeline setup with bundled, forge-neutral templates and local validation. Detects the forge from the git remote, generates workflows for supported forges, and skips honestly for the rest. The CI equivalent of wire-observability.
visual-dashboard
Start a browser-based dashboard that visualizes architecture, implementation plans, and project status. Persists artifacts in .bigpowers/dashboard/. Reads specs/state.yaml, release-plan.yaml, epics, and planning-status via HTTP API or opencode panel.