一键导入
feature
Feature planning orchestrator (discovery -> idea -> ux -> design -> workstream tree)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Feature planning orchestrator (discovery -> idea -> ux -> design -> workstream tree)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Execute ONE executable leaf workstream with TDD, guard enforcement, and ws-verdict output
Multi-agent quality review (QA + Security + DevOps + SRE + TechLead + Documentation + PromptOps)
Execute ONE executable leaf workstream with TDD, guard enforcement, and ws-verdict output
Multi-agent quality review (QA + Security + DevOps + SRE + TechLead + Documentation + PromptOps)
Software architect for system boundaries, design patterns, and integration tradeoffs.
Beads task tracker integration for SDP workflows.
| name | feature |
| description | Feature planning orchestrator (discovery -> idea -> ux -> design -> workstream tree) |
| version | 9.0.0 |
| depends_on | @discovery v1 |
| changes | [{"v9":"Added --design-only (alias for --quick, explicit naming)"},{"v8":"Full product discovery flow with @discovery, @ux, impact analysis"},"Added --quick (skip @discovery), --infra (skip @ux)",{"Step 3.5":"Impact analysis after @design"}] |
| examples | ["@feature 'Add user authentication' --default # Full interactive pipeline","@feature 'Add user authentication' --quick # Skip to @design only, 0 questions","@feature 'Add user authentication' --design-only # Same as --quick, explicit name","@feature 'Add payment processing' --auto # Non-interactive, from roadmap/plan docs"] |
Orchestrate product discovery, requirements, UX research, and workstream design.
Phase 0: This skill targets Go projects (e.g. go build/go test in acceptance criteria). Language-agnostic expansion is planned.
Key Principle: User must explicitly choose the mode. No hidden context detection. Same input + same mode = identical output.
| Mode | When to use | Steps | Questions |
|---|---|---|---|
--default (or no flag) | New/exploratory feature. Full interactive discovery. | 0, 1, 2, 2.5, 3, 3.5, 4 | Interactive (3-5 questions) |
--quick / --design-only | User knows what they want, just needs workstreams. | 3 only | 0 questions - goes directly to @design |
--auto | Feature already described in roadmap/plan. Non-interactive. | 0, 3, 4 only | 0 questions - reads from docs/ROADMAP.md |
Deterministic: Each mode produces identical behavior given identical input. No context sniffing, no heuristics, no "smart defaults."
--default: Always asks the same questions in the same order--quick / --design-only: Always skips to @design with zero questions--auto: Always reads from roadmap/plan docs, never asks questionsFor features already defined in docs/ROADMAP.md:
rg "F0\d\d" docs/ROADMAP.md -A 10No questions asked. Read from docs only.
For each deliverable, create workstream files using this format:
---
ws_id: 00-FFF-SS
feature_id: FFFF
status: open
priority: P1
size: M
depends_on: []
ws_kind: leaf|aggregate
parent_ws_id: null|00-FFF-SS
dispatch_lifecycle: active
---
# 00-FFF-SS: Feature Name — Step Description
## Goal
One paragraph: what this workstream does and why.
## Scope Files
- path/to/file/or/dir (exact files or directory prefixes)
- ...
## Beads
- primary: sdplab-XXXX # leaf only
- finding: sdplab-YYYY # optional
## Acceptance Criteria
- [ ] Specific, testable criterion 1
- [ ] Specific, testable criterion 2
- [ ] go build ./... passes
- [ ] go test ./... passes
Rules:
aggregate = container, no primary issueleaf = executable, may have one primary issueparent_ws_id links leaf to aggregate (max 1 nesting layer)For each leaf workstream:
bd create --title="WS FFF-SS: Short title" --type=task
Update .beads-sdp-mapping.jsonl:
{"sdp_id":"00-FFF-SS","beads_id":"sdp_dev-XXXX","updated_at":"2026-..."}
Output: feature ID, workstream count, file names, Beads IDs, ready-to-run command (@build 00-FFF-01 or @oneshot F0FF).
For users who know what they want and just need workstreams. Zero questions, deterministic.
Steps: Run @design directly, produce workstream files, skip roadmap/UX/impact analysis.
When to use: Clear feature description, no product research needed, immediate workstreams required.
Standard mode for new/exploratory features. Full discovery with interactive questions.
Use @discovery "feature description" or manually: extract keywords, rg docs for overlap, present Overlap Report (HIGH/MEDIUM), gate on user resolution.
Problem, Users, Success. Gate: if vague (<200 words), ask clarification. Use @discovery output if available.
@idea "..." --spec docs/drafts/discovery-{slug}.md (use @discovery output if Step 0 ran)
Auto-trigger when @idea output has user-facing keywords (ui, user, interface, dashboard, form) and lacks infra (K8s, CRD, CLI-only).
@design {task_id} — workstream files in docs/workstreams/backlog/ using Workstream file format above.
Read scope files, grep/rg for conflicts. Categorize: FILE CONFLICT, DATA BOUNDARY, DEPENDENCY CHAIN, PRIORITY SHIFT. Present report, user acknowledges.
Check discovery brief, idea spec, ux output, workstreams exist, direct execution targets are leaf workstreams.
User sees: feature description → workstreams created → ready to build. Workstream files, scope declarations, beads IDs are plumbing.
Before creating workstream files and docs, emit a write plan:
--dry-run — Emit write plan only. Do NOT create, modify, or delete any file.--yes — Skip confirmation prompt. Execute immediately. Intended for CI/non-interactive.--yes)..sdp/log/events.jsonl (sanitize file paths before logging: strip newlines, ensure valid JSON escaping):
{"spec_version":"v1.0","event_id":"<uuid>","timestamp":"<ISO-8601>","source":{"system":"sdp-lab","component":"feature"},"event_type":"decision.made","payload":{"decision_type":"write_plan","plan":[{"path":"...","action":"CREATE|MODIFY|DELETE","reason":"..."}]},"context":{"feature_id":"<F-id if known>","workstream_id":"<ws-id if applicable>"}}
Include context fields only when the ID is known at plan time. Omit unavailable fields rather than inventing placeholders.
Note: Phase 1 uses prompt-level write boundaries (CLI out of scope). Aligns with
schema/contracts/orchestration-event.schema.jsonviaevent_type: "decision.made". Phase 2 CLI will emit natively.
Output format:
WRITE PLAN for @feature <feature-id>:
CREATE: path/to/new/file — <reason>
MODIFY: path/to/existing/file — <reason>
DELETE: path/to/removed/file — <reason>
Proceed? [y/n]
Write-plan flags:
--dry-run: Show plan → STOP--yes: Show plan → Execute immediately (no prompt)Note:
--dry-runand--yesare orthogonal to skill mode flags (--default,--quick,--auto). They can be combined with any mode (e.g.@feature "X" --quick --dry-run).
When all workstreams are created and verified, output:
@feature complete. Feature {ID}: {count} workstreams created.
Aggregate: 00-{FFF}-00
Leaves: 00-{FFF}-01 .. 00-{FFF}-{NN}
Next: @build 00-{FFF}-01 or @oneshot F{XX}
| Symptom | Fix |
|---|---|
| Skill produces no output | Run @init first to scaffold project structure; then re-run @feature |
| "checkpoint not found" | Run sdp-orchestrate --feature <ID> to create initial checkpoint |
| "workstream files missing" | Run sdp-orchestrate --index to verify, then @feature to regenerate |
| Skill hangs / no progress | Check .sdp/log/events.jsonl for last event; use sdp reset --feature <ID> if stuck |
| Review loop exceeds 3 rounds | Use @review --override "reason", @review --partial, or @review --escalate |
| --design-only produces no workstreams | Run @init to scaffold project structure, then re-run with --design-only |
@discovery — Product discovery gate | @idea — Requirements | @ux — UX research | @design — Workstream planning | @build — Execute leaf workstream | @oneshot — Execute all ready leaf workstreams