@gobing-ai/spur 0.3.41 → 0.3.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +15 -0
- package/README.md +15 -1
- package/config/templates/AGENTS.md +5 -3
- package/config/workflows/task-pipeline.yaml +113 -12
- package/package.json +15 -12
- package/plugins/README.md +655 -0
- package/plugins/sp/README.md +621 -0
- package/plugins/sp/agents/expert-spur.md +109 -0
- package/plugins/sp/agents/super-coder.md +126 -0
- package/plugins/sp/agents/super-planner.md +283 -0
- package/plugins/sp/agents/super-reviewer.md +154 -0
- package/plugins/sp/commands/dev-arch.md +30 -0
- package/plugins/sp/commands/dev-brainstorm.md +40 -0
- package/plugins/sp/commands/dev-changelog.md +28 -0
- package/plugins/sp/commands/dev-daily.md +29 -0
- package/plugins/sp/commands/dev-debug.md +29 -0
- package/plugins/sp/commands/dev-dogfood.md +33 -0
- package/plugins/sp/commands/dev-featurechange.md +130 -0
- package/plugins/sp/commands/dev-find-conflict.md +51 -0
- package/plugins/sp/commands/dev-find-issue.md +76 -0
- package/plugins/sp/commands/dev-find-next.md +60 -0
- package/plugins/sp/commands/dev-fixall.md +33 -0
- package/plugins/sp/commands/dev-gitmsg.md +28 -0
- package/plugins/sp/commands/dev-gtd.md +97 -0
- package/plugins/sp/commands/dev-handover.md +26 -0
- package/plugins/sp/commands/dev-idea.md +50 -0
- package/plugins/sp/commands/dev-next.md +31 -0
- package/plugins/sp/commands/dev-parallel.md +30 -0
- package/plugins/sp/commands/dev-plan.md +46 -0
- package/plugins/sp/commands/dev-refine.md +48 -0
- package/plugins/sp/commands/dev-refineall.md +65 -0
- package/plugins/sp/commands/dev-refresh.md +32 -0
- package/plugins/sp/commands/dev-reverse.md +32 -0
- package/plugins/sp/commands/dev-review.md +31 -0
- package/plugins/sp/commands/dev-run.md +63 -0
- package/plugins/sp/commands/dev-runall.md +83 -0
- package/plugins/sp/commands/dev-simplify.md +39 -0
- package/plugins/sp/commands/dev-unit.md +29 -0
- package/plugins/sp/commands/dev-verify.md +48 -0
- package/plugins/sp/commands/dev-verifyall.md +72 -0
- package/plugins/sp/commands/dev-wrap.md +48 -0
- package/plugins/sp/commands/dev-wrapall.md +51 -0
- package/plugins/sp/commands/rule-add.md +18 -0
- package/plugins/sp/commands/rule-refine.md +18 -0
- package/plugins/sp/commands/rule-scan.md +18 -0
- package/plugins/sp/commands/spur-init.md +22 -0
- package/plugins/sp/commands/workflow-add.md +18 -0
- package/plugins/sp/commands/workflow-refine.md +18 -0
- package/plugins/sp/hooks/agent-hint.ts +60 -0
- package/plugins/sp/hooks/careful-guard.ts +147 -0
- package/plugins/sp/hooks/context-post-tool.ts +325 -0
- package/plugins/sp/hooks/context-session-start.ts +182 -0
- package/plugins/sp/hooks/context-session-stop.ts +95 -0
- package/plugins/sp/hooks/hooks.json +51 -0
- package/plugins/sp/hooks/pi/guard-extension.ts +341 -0
- package/plugins/sp/hooks/task-write-guard.ts +84 -0
- package/plugins/sp/plugin.json +8 -0
- package/plugins/sp/scripts/batch-preflight.ts +204 -0
- package/plugins/sp/scripts/daily-summary/daily-summary.ts +606 -0
- package/plugins/sp/scripts/daily-summary/logger.ts +28 -0
- package/plugins/sp/scripts/dogfood-testing/detect-pipeline-driving.ts +363 -0
- package/plugins/sp/scripts/dogfood-testing/validate-report.ts +168 -0
- package/plugins/sp/scripts/feature-sync-bounded.ts +451 -0
- package/plugins/sp/scripts/stage-registry-adapter.ts +1341 -0
- package/plugins/sp/scripts/task-size-precheck.ts +202 -0
- package/plugins/sp/scripts/validate-commands.ts +651 -0
- package/plugins/sp/scripts/validate-flag-contracts.ts +875 -0
- package/plugins/sp/skills/brainstorm/SKILL.md +361 -0
- package/plugins/sp/skills/brainstorm/agents/openai.yaml +14 -0
- package/plugins/sp/skills/brainstorm/examples/ideation-example.md +209 -0
- package/plugins/sp/skills/brainstorm/metadata.openclaw +7 -0
- package/plugins/sp/skills/brainstorm/references/grilling-interview.md +68 -0
- package/plugins/sp/skills/brainstorm/references/workflows.md +255 -0
- package/plugins/sp/skills/branch-workflow/SKILL.md +109 -0
- package/plugins/sp/skills/branch-workflow/references/branch-lifecycle.md +69 -0
- package/plugins/sp/skills/branch-workflow/references/worktree-patterns.md +100 -0
- package/plugins/sp/skills/code-implementation/SKILL.md +203 -0
- package/plugins/sp/skills/code-implementation/references/debugging.md +64 -0
- package/plugins/sp/skills/code-implementation/references/implementation-patterns.md +113 -0
- package/plugins/sp/skills/code-improvement/SKILL.md +231 -0
- package/plugins/sp/skills/code-improvement/references/deepening-signals.md +205 -0
- package/plugins/sp/skills/code-review/SKILL.md +112 -0
- package/plugins/sp/skills/code-review/references/receiving-code-review.md +70 -0
- package/plugins/sp/skills/code-review/references/review-lenses.md +117 -0
- package/plugins/sp/skills/code-review/references/self-review-checklist.md +53 -0
- package/plugins/sp/skills/code-review/references/verification-before-completion.md +68 -0
- package/plugins/sp/skills/code-simplification/SKILL.md +225 -0
- package/plugins/sp/skills/code-testing/SKILL.md +108 -0
- package/plugins/sp/skills/code-testing/references/stacks/bun-ts.md +165 -0
- package/plugins/sp/skills/code-testing/references/stacks/go.md +88 -0
- package/plugins/sp/skills/code-testing/references/stacks/python.md +117 -0
- package/plugins/sp/skills/code-testing/references/test-loop-breaker.md +37 -0
- package/plugins/sp/skills/code-testing/references/test-output-discipline.md +52 -0
- package/plugins/sp/skills/code-testing/references/unit-testing.md +212 -0
- package/plugins/sp/skills/code-verification/SKILL.md +535 -0
- package/plugins/sp/skills/code-verification/references/code-improvement.md +39 -0
- package/plugins/sp/skills/code-verification/references/secu-review.md +94 -0
- package/plugins/sp/skills/code-verification/references/verdict-schema.md +141 -0
- package/plugins/sp/skills/conflict-finding/SKILL.md +254 -0
- package/plugins/sp/skills/conflict-finding/references/authority-resolution.md +258 -0
- package/plugins/sp/skills/conflict-finding/references/comparison-protocol.md +277 -0
- package/plugins/sp/skills/conflict-finding/references/finding-contract.md +346 -0
- package/plugins/sp/skills/conflict-finding/references/remediation-routing.md +276 -0
- package/plugins/sp/skills/daily-summary/SKILL.md +171 -0
- package/plugins/sp/skills/daily-summary/agents/openai.yaml +13 -0
- package/plugins/sp/skills/doc-evolve/SKILL.md +175 -0
- package/plugins/sp/skills/doc-evolve/references/operations.md +93 -0
- package/plugins/sp/skills/dogfood-testing/SKILL.md +608 -0
- package/plugins/sp/skills/dogfood-testing/references/monitor-ledger.md +211 -0
- package/plugins/sp/skills/dogfood-testing/references/report-template.md +351 -0
- package/plugins/sp/skills/doubt-driven-development/SKILL.md +136 -0
- package/plugins/sp/skills/functional-review/SKILL.md +364 -0
- package/plugins/sp/skills/functional-review/references/verdict-schema.md +133 -0
- package/plugins/sp/skills/indexed-context/SKILL.md +164 -0
- package/plugins/sp/skills/issue-finding/SKILL.md +442 -0
- package/plugins/sp/skills/issue-finding/agents/openai.yaml +15 -0
- package/plugins/sp/skills/issue-finding/examples/expected-findings.json +27 -0
- package/plugins/sp/skills/issue-finding/examples/session-test-loop.jsonl +23 -0
- package/plugins/sp/skills/issue-finding/references/session-formats.md +151 -0
- package/plugins/sp/skills/next-feature/SKILL.md +125 -0
- package/plugins/sp/skills/next-feature/references/handoff-routing.md +92 -0
- package/plugins/sp/skills/next-feature/references/proposal-contract.md +49 -0
- package/plugins/sp/skills/next-feature/references/ranking-rubric.md +52 -0
- package/plugins/sp/skills/next-feature/references/signal-derivation.md +67 -0
- package/plugins/sp/skills/next-router/SKILL.md +181 -0
- package/plugins/sp/skills/next-router/references/messages.md +90 -0
- package/plugins/sp/skills/next-router/references/routing-table.md +216 -0
- package/plugins/sp/skills/parallel-execution/SKILL.md +148 -0
- package/plugins/sp/skills/parallel-execution/references/dispatch-surface.md +109 -0
- package/plugins/sp/skills/parallel-execution/references/fan-out-patterns.md +101 -0
- package/plugins/sp/skills/parallel-execution/references/result-synthesis.md +94 -0
- package/plugins/sp/skills/reverse-engineering/SKILL.md +375 -0
- package/plugins/sp/skills/reverse-engineering/agents/openai.yaml +18 -0
- package/plugins/sp/skills/source-driven-development/SKILL.md +124 -0
- package/plugins/sp/skills/spec-decomposition/SKILL.md +117 -0
- package/plugins/sp/skills/spec-decomposition/references/decomposition.md +539 -0
- package/plugins/sp/skills/spur-cli/SKILL.md +133 -0
- package/plugins/sp/skills/spur-cli/references/agent.md +179 -0
- package/plugins/sp/skills/spur-cli/references/features/acceptance-criteria.md +82 -0
- package/plugins/sp/skills/spur-cli/references/features/hierarchy-mece.md +177 -0
- package/plugins/sp/skills/spur-cli/references/features/roadmap-priority.md +84 -0
- package/plugins/sp/skills/spur-cli/references/features/verbs.md +122 -0
- package/plugins/sp/skills/spur-cli/references/features.md +234 -0
- package/plugins/sp/skills/spur-cli/references/init.md +119 -0
- package/plugins/sp/skills/spur-cli/references/message.md +98 -0
- package/plugins/sp/skills/spur-cli/references/rules/authoring-rules.md +212 -0
- package/plugins/sp/skills/spur-cli/references/rules/fine-tuning.md +148 -0
- package/plugins/sp/skills/spur-cli/references/rules/operations.md +228 -0
- package/plugins/sp/skills/spur-cli/references/rules/validation-and-extension.md +129 -0
- package/plugins/sp/skills/spur-cli/references/rules.md +209 -0
- package/plugins/sp/skills/spur-cli/references/serve.md +58 -0
- package/plugins/sp/skills/spur-cli/references/tasks/l3-guard-cheatsheet.md +98 -0
- package/plugins/sp/skills/spur-cli/references/tasks/section-editing.md +95 -0
- package/plugins/sp/skills/spur-cli/references/tasks/verbs.md +361 -0
- package/plugins/sp/skills/spur-cli/references/tasks.md +280 -0
- package/plugins/sp/skills/spur-cli/references/team.md +133 -0
- package/plugins/sp/skills/spur-cli/references/workflows/authoring-workflows.md +226 -0
- package/plugins/sp/skills/spur-cli/references/workflows/operations.md +211 -0
- package/plugins/sp/skills/spur-cli/references/workflows/validation-and-extension.md +129 -0
- package/plugins/sp/skills/spur-cli/references/workflows.md +355 -0
- package/plugins/sp/skills/spur-dev/SKILL.md +224 -0
- package/plugins/sp/skills/spur-dev/references/ac-style-guide.md +196 -0
- package/plugins/sp/skills/spur-dev/references/cross-cutting.md +680 -0
- package/plugins/sp/skills/spur-dev/references/decision-brief.md +80 -0
- package/plugins/sp/skills/spur-dev/references/dev-operations.md +546 -0
- package/plugins/sp/skills/spur-dev/references/done-housekeeping.md +164 -0
- package/plugins/sp/skills/spur-dev/references/execution-batch.md +790 -0
- package/plugins/sp/skills/spur-dev/references/execution-workflow.md +352 -0
- package/plugins/sp/skills/spur-dev/references/feature-link-helper.md +191 -0
- package/plugins/sp/skills/spur-dev/references/flag-glossary.md +417 -0
- package/plugins/sp/skills/spur-dev/references/gate-checklists.md +171 -0
- package/plugins/sp/skills/spur-dev/references/glossary.md +95 -0
- package/plugins/sp/skills/spur-dev/references/idea-evaluation.md +80 -0
- package/plugins/sp/skills/spur-dev/references/inline-pipeline-driver.md +120 -0
- package/plugins/sp/skills/spur-dev/references/planning-workflow.md +302 -0
- package/plugins/sp/skills/spur-dev/references/product-planning.md +206 -0
- package/plugins/sp/skills/spur-dev/references/section-batching.md +24 -0
- package/plugins/sp/skills/sys-architecture/SKILL.md +155 -0
- package/plugins/sp/skills/sys-architecture/references/decision-method.md +137 -0
- package/plugins/sp/skills/sys-architecture/references/upkeep-survey.md +75 -0
- package/plugins/sp/skills/sys-debugging/SKILL.md +228 -0
- package/plugins/sp/skills/sys-debugging/references/debugging-protocol.md +62 -0
- package/plugins/sp/skills/test-driven-development/SKILL.md +248 -0
- package/plugins/sp/skills/wayfinder/SKILL.md +292 -0
- package/spur.js +6035 -4963
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: super-reviewer
|
|
3
|
+
description: |
|
|
4
|
+
Use PROACTIVELY for "review this", "check the code", "audit this", "SECUA review", "find refactoring opportunities", "improve architecture", "functional review", plus PR quality checks, review-only execution, and pipeline Phase 7 review work. Code review specialist across three dimensions: functional traceability, SECUA quality, and architectural depth. Reviews and reports only — never edits the code it reviews.
|
|
5
|
+
|
|
6
|
+
<example>
|
|
7
|
+
Context: Standalone code review of a source path
|
|
8
|
+
user: "Review src/auth/ for quality issues"
|
|
9
|
+
assistant: "Delegating to sp:super-reviewer — runs functional + SECUA + architecture dimensions on src/auth/."
|
|
10
|
+
<commentary>Standalone review request.</commentary>
|
|
11
|
+
</example>
|
|
12
|
+
|
|
13
|
+
<example>
|
|
14
|
+
Context: Pipeline Phase 7 review of a completed task
|
|
15
|
+
user: "Run task 0042 through review"
|
|
16
|
+
assistant: "Delegating to sp:super-reviewer — pipeline Phase 7 review of task 0042's diff."
|
|
17
|
+
<commentary>Pipeline review step.</commentary>
|
|
18
|
+
</example>
|
|
19
|
+
tools: [Read, Grep, Glob, Bash, Skill]
|
|
20
|
+
model: inherit
|
|
21
|
+
color: crimson
|
|
22
|
+
skills: [sp:code-verification, sp:functional-review, sp:code-improvement]
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# Super Reviewer
|
|
26
|
+
|
|
27
|
+
The **review specialist** for the sp plugin. Runs the multi-dimensional review defined by
|
|
28
|
+
`/sp:dev-review` — functional traceability, SECUA quality, and architectural depth — either
|
|
29
|
+
standalone (a source path or a task WBS) or as the pipeline's Phase 7 review step.
|
|
30
|
+
|
|
31
|
+
## Role
|
|
32
|
+
|
|
33
|
+
You are a **thin delegator**. You do not own the review logic; the three skills do:
|
|
34
|
+
|
|
35
|
+
| Dimension | Skill | Question |
|
|
36
|
+
| ----------- | ------- | ---------- |
|
|
37
|
+
| Functional traceability | `sp:functional-review` | Did we build what was asked? |
|
|
38
|
+
| SECUA quality | `sp:code-verification` (review mode) | Is the code correct/secure/efficient/usable? |
|
|
39
|
+
| Architectural depth | `sp:code-improvement` | Is the architecture deep / testable? |
|
|
40
|
+
|
|
41
|
+
Your job: establish scope, dispatch each requested dimension to its skill, collect findings, merge
|
|
42
|
+
them into a ranked report, and write the report to the task's `## Review` section (pipeline mode) or
|
|
43
|
+
emit it as advisory output (standalone mode).
|
|
44
|
+
|
|
45
|
+
## When to use
|
|
46
|
+
|
|
47
|
+
- The operator asks to "review this", "check the code", "audit this", or "find refactoring opportunities".
|
|
48
|
+
- `/sp:dev-review` is invoked (standalone or pipeline).
|
|
49
|
+
- The pipeline's Phase 7 review step runs (task-pipeline.yaml `review` → `sp:dev-review`).
|
|
50
|
+
|
|
51
|
+
## Two modes
|
|
52
|
+
|
|
53
|
+
### Direct-Entry (standalone)
|
|
54
|
+
|
|
55
|
+
Invoked by the operator or `/sp:dev-review <wbs|path>`. You run the full multi-dimensional review
|
|
56
|
+
and emit the ranked findings. Advisory by default — the operator decides what to act on. Only
|
|
57
|
+
when invoked under the pipeline (or with `--next`) do blocker/major findings block a gate.
|
|
58
|
+
|
|
59
|
+
### Pipeline Phase 7
|
|
60
|
+
|
|
61
|
+
Invoked by `task-pipeline.yaml`'s `review` step. The pipeline hands you the task WBS and the
|
|
62
|
+
`--focus` dimensions. You run the review, write findings to the task's `## Review` section, and
|
|
63
|
+
return a PASS/PARTIAL/FAIL verdict to the pipeline's `approve(HITL)` gate. `blocker`/`major`
|
|
64
|
+
findings block the gate; `minor`/`advisory` are recorded but do not block.
|
|
65
|
+
|
|
66
|
+
## Skill invocation
|
|
67
|
+
|
|
68
|
+
| Platform | Invocation |
|
|
69
|
+
| ---------- | ----------- |
|
|
70
|
+
| Claude Code | Spawned by `/sp:dev-review` → `Skill(skill="sp:code-verification"/"sp:functional-review"/"sp:code-improvement", args="...")` dispatch |
|
|
71
|
+
| Other platforms | Invoke the three skills' review modes directly; this agent is the dispatcher |
|
|
72
|
+
|
|
73
|
+
## Dispatch surface
|
|
74
|
+
|
|
75
|
+
When you dispatch a review dimension to another agent, choose the execution surface per [dispatch-surface.md](../skills/parallel-execution/references/dispatch-surface.md) - native subagent by default, `spur agent run` only on a named trigger (state which one).
|
|
76
|
+
|
|
77
|
+
## Decision autonomy
|
|
78
|
+
|
|
79
|
+
| You decide | You do NOT decide |
|
|
80
|
+
| --- | --- |
|
|
81
|
+
| Which dimensions to run (per `--focus`) | How each skill assesses (the skill's SSOT) |
|
|
82
|
+
| How to merge findings into the ranked report | Whether to implement a fix (never — that's `sp:code-implementation`) |
|
|
83
|
+
| Severity ranking of merged findings | Whether to auto-approve a HITL gate (only `--auto` does) |
|
|
84
|
+
|
|
85
|
+
You **never** implement fixes. You **never** edit the pipeline YAML. You **never** auto-approve a
|
|
86
|
+
HITL gate unless `--auto` was passed.
|
|
87
|
+
|
|
88
|
+
## Rules
|
|
89
|
+
|
|
90
|
+
### Always
|
|
91
|
+
|
|
92
|
+
- [ ] Establish scope first: WBS mode (task diff) or path mode (source glob). Derive the diff
|
|
93
|
+
scope the same way `sp:code-verification` Step 3 does.
|
|
94
|
+
- [ ] Dispatch each requested dimension to its owning skill — do not inline the review logic.
|
|
95
|
+
- [ ] Merge findings into a single ranked report (severity: blocker > major > minor > advisory).
|
|
96
|
+
- [ ] In pipeline mode, write the merged report to the task's `## Review` section via
|
|
97
|
+
`spur task update <wbs> --section Review --from-file`; in standalone mode, emit as output.
|
|
98
|
+
- [ ] Cite `file:line` evidence for every finding — no vague "implemented correctly."
|
|
99
|
+
- [ ] Apply the honesty gate: no PASS verdict without fresh, pasted verification evidence.
|
|
100
|
+
|
|
101
|
+
### Never
|
|
102
|
+
|
|
103
|
+
- [ ] Never implement a fix — you surface, you do not ship. Fixing is `sp:code-implementation`.
|
|
104
|
+
- [ ] Never edit `task-pipeline.yaml` or reach into a pipeline step.
|
|
105
|
+
- [ ] Never auto-approve a HITL gate unless `--auto` was passed.
|
|
106
|
+
- [ ] Never soften a FAIL to PARTIAL, or PARTIAL to PASS, to avoid surfacing.
|
|
107
|
+
- [ ] Never skip a dimension the operator requested with `--focus`.
|
|
108
|
+
|
|
109
|
+
## Definition of Done Housekeeping
|
|
110
|
+
|
|
111
|
+
This agent honors the shared done-time housekeeping contract - F1 (zero unchecked boxes), F2 (honest
|
|
112
|
+
lifecycle transitions), F4 (raw gate evidence), F5 (`/tmp` staging cleanup), and the terminal-gate
|
|
113
|
+
enforcement checklist. Reference:
|
|
114
|
+
[done-housekeeping.md](../skills/spur-dev/references/done-housekeeping.md).
|
|
115
|
+
|
|
116
|
+
## Output Format
|
|
117
|
+
|
|
118
|
+
```markdown
|
|
119
|
+
## Review Report — <wbs|path>
|
|
120
|
+
|
|
121
|
+
**Scope:** <wbs diff | path glob>
|
|
122
|
+
**Dimensions:** functional, security, efficiency, correctness, usability, architecture
|
|
123
|
+
**Verdict:** PASS | PARTIAL | FAIL
|
|
124
|
+
|
|
125
|
+
### Findings (ranked)
|
|
126
|
+
|
|
127
|
+
| # | Severity | Dimension | Finding | Location |
|
|
128
|
+
|---|----------|-----------|---------|----------|
|
|
129
|
+
| 1 | blocker | security | SQL injection in query builder | `src/api/users.ts:42` |
|
|
130
|
+
| 2 | major | architecture | Shallow pass-through UserService | `src/services/users.ts:15` |
|
|
131
|
+
| 3 | minor | correctness | Missing error branch in createUser | `src/api/users.ts:48` |
|
|
132
|
+
|
|
133
|
+
### Functional Traceability
|
|
134
|
+
|
|
135
|
+
| Req | Status | Evidence |
|
|
136
|
+
|-----|--------|----------|
|
|
137
|
+
| R1 | MET | `src/api/users.ts:42` — `createUser()` |
|
|
138
|
+
| R2 | PARTIAL | basic only; MISSING duplicate-email handling |
|
|
139
|
+
|
|
140
|
+
**Next:** <one-line action>
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
With `--json`, emit the same shape as a JSON object for machine consumption.
|
|
144
|
+
|
|
145
|
+
## Out of scope
|
|
146
|
+
|
|
147
|
+
- Implementing fixes (that's `sp:code-implementation` / `sp:super-coder`).
|
|
148
|
+
- Running tests or measuring coverage (that's `sp:code-testing`).
|
|
149
|
+
- Driving the pipeline (that's `sp:spur-dev` / `sp:super-planner`).
|
|
150
|
+
|
|
151
|
+
## Platform Notes
|
|
152
|
+
|
|
153
|
+
- **Claude Code:** native — `Skill()` delegation to the three review skills; `Bash` for `spur` CLI.
|
|
154
|
+
- **Other platforms:** invoke the three skills' review modes directly; this agent is the dispatcher.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Survey a codebase (or module tree) for shallow modules and deepening opportunities — emit a ranked MARKDOWN candidate report that feeds the planning half; never auto-refactors
|
|
3
|
+
argument-hint: "[<module-path>] [--scope <all|path>] [--agent <inline|auto|name>] [--json]"
|
|
4
|
+
allowed-tools: ["Bash", "Read", "Grep", "Glob", "Skill"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Arch
|
|
8
|
+
|
|
9
|
+
Wraps the **sp:sys-architecture** skill.
|
|
10
|
+
|
|
11
|
+
## Argument Flags
|
|
12
|
+
|
|
13
|
+
| Flag | Description | Default |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| `[<module-path>]` | Module path to scope the architecture survey. | omitted (whole repo) |
|
|
16
|
+
| `--scope` `<all\|path>` | Limit the survey to a path or expand to the whole repo. | all |
|
|
17
|
+
| `--agent` `<inline\|auto\|name>` | Who runs the model-bearing survey work. | inline |
|
|
18
|
+
| `--json` | Emit structured JSON instead of markdown. | off |
|
|
19
|
+
|
|
20
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
21
|
+
|
|
22
|
+
## Usage
|
|
23
|
+
|
|
24
|
+
/sp:dev-arch [<module-path>] [--scope <all|path>] [--agent <inline|auto|name>] [--json]
|
|
25
|
+
|
|
26
|
+
## Implementation
|
|
27
|
+
|
|
28
|
+
- Apply the [inline-default execution-surface contract](../skills/spur-dev/references/cross-cutting.md#inline-default-execution-surface).
|
|
29
|
+
- `Skill(skill="sp:sys-architecture", args="survey $ARGUMENTS")`
|
|
30
|
+
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Interactive solution design — heuristic discovery interview followed by structured ideation with trade-offs and confidence scoring
|
|
3
|
+
argument-hint: "<topic> [--depth <basic|detailed|comprehensive>] [--options <n>] [--agent <inline|auto|name>] [--skip-discovery] [--wayfind] [--task [<feature-id>]] [--feature [<parent-id>]] [--next]"
|
|
4
|
+
allowed-tools: ["Bash", "Read", "Skill", "AskUserQuestion"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Brainstorm
|
|
8
|
+
|
|
9
|
+
Wraps the **sp:brainstorm** and **sp:wayfinder** skills.
|
|
10
|
+
|
|
11
|
+
## Argument Flags
|
|
12
|
+
|
|
13
|
+
| Flag | Description | Default |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| `<topic>` | Topic or problem statement to explore. | required |
|
|
16
|
+
| `--depth` `<basic\|detailed\|comprehensive>` | Breadth vs. depth of the exploration. | detailed |
|
|
17
|
+
| `--options` `<n>` | Number of solution options to generate. | 3 |
|
|
18
|
+
| `--agent` `<inline\|auto\|name>` | Who runs the model-bearing ideation. | inline |
|
|
19
|
+
| `--skip-discovery` | Skip the discovery interview; ideate immediately. | off |
|
|
20
|
+
| `--wayfind` | Spawn a wayfinder feature for multi-session routing. | off |
|
|
21
|
+
| `--task` `[<feature-id>]` | Create a tracking task under a feature. | omitted |
|
|
22
|
+
| `--feature` `[<parent-id>]` | Attach the result to a parent feature. | omitted |
|
|
23
|
+
| `--next` | Hand off to the next-router on success. | off |
|
|
24
|
+
|
|
25
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
26
|
+
|
|
27
|
+
## Usage
|
|
28
|
+
|
|
29
|
+
/sp:dev-brainstorm <topic> [--depth <basic|detailed|comprehensive>] [--options <n>] [--agent <inline|auto|name>] [--skip-discovery] [--wayfind] [--task [<feature-id>]] [--feature [<parent-id>]] [--next]
|
|
30
|
+
|
|
31
|
+
## Implementation
|
|
32
|
+
|
|
33
|
+
- Apply the [inline-default execution-surface contract](../skills/spur-dev/references/cross-cutting.md#inline-default-execution-surface).
|
|
34
|
+
- Default: `Skill(skill="sp:brainstorm", args="dev-brainstorm --context <decision-tree> --options <n>")`
|
|
35
|
+
- `--wayfind`: `Skill(skill="sp:wayfinder", args="chart --destination <destination> --context <decision-tree>")`
|
|
36
|
+
|
|
37
|
+
`--next`: chain-to-completion with
|
|
38
|
+
propagation. Only meaningful with `--feature` (the front-half artifact exit): on a clean
|
|
39
|
+
`feature check`, chain into `/sp:dev-plan --feature <ID>` so the planning half runs end-to-end.
|
|
40
|
+
Ignored without `--feature` (there is no task in a lifecycle to advance). **was: `--next` declared but never defined.**
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate changelog from git commits
|
|
3
|
+
argument-hint: "[--since <tag|commit>] [--until <tag|commit>] [--version <version>]"
|
|
4
|
+
allowed-tools: ["Bash", "Read"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Changelog
|
|
8
|
+
|
|
9
|
+
Implements an inline procedure — see [dev-operations.md](../skills/spur-dev/references/dev-operations.md#8-changelog) for the authoritative reference.
|
|
10
|
+
|
|
11
|
+
## Argument Flags
|
|
12
|
+
|
|
13
|
+
| Flag | Description | Default |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| `--since` `<tag\|commit>` | Start of the commit range. | latest tag |
|
|
16
|
+
| `--until` `<tag\|commit>` | End of the commit range. | HEAD |
|
|
17
|
+
| `--version` `<version>` | Override the detected release version. | detected |
|
|
18
|
+
|
|
19
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
/sp:dev-changelog [--since <tag|commit>] [--until <tag|commit>] [--version <version>]
|
|
24
|
+
|
|
25
|
+
## Implementation
|
|
26
|
+
|
|
27
|
+
Follow the inline procedure in [dev-operations.md](../skills/spur-dev/references/dev-operations.md#8-changelog) (changelog).
|
|
28
|
+
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Generate a daily summary report from agent usage data, git history, and notes"
|
|
3
|
+
argument-hint: "[--date <YYYY-MM-DD>] [--dry-run] [--output <path>] [--no-git] [--no-ccusage]"
|
|
4
|
+
allowed-tools: ["Bash", "Read"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Daily
|
|
8
|
+
|
|
9
|
+
Runs the daily-summary generator — see [daily-summary/SKILL.md](../skills/daily-summary/SKILL.md) for the authoritative procedure. `sp:daily-summary` is `disable-model-invocation`, so it cannot be fired via the Skill tool; this command runs its script directly.
|
|
10
|
+
|
|
11
|
+
## Argument Flags
|
|
12
|
+
|
|
13
|
+
| Flag | Description | Default |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| `--date` `<YYYY-MM-DD>` | Report date. | today |
|
|
16
|
+
| `--dry-run` | Render without writing files. | off |
|
|
17
|
+
| `--output` `<path>` | Output directory for the report. | configured |
|
|
18
|
+
| `--no-git` | Skip git-history aggregation. | off |
|
|
19
|
+
| `--no-ccusage` | Skip ccusage aggregation. | off |
|
|
20
|
+
|
|
21
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
22
|
+
|
|
23
|
+
## Usage
|
|
24
|
+
|
|
25
|
+
/sp:dev-daily [--date <YYYY-MM-DD>] [--dry-run] [--output <path>] [--no-git] [--no-ccusage]
|
|
26
|
+
|
|
27
|
+
## Implementation
|
|
28
|
+
|
|
29
|
+
Run the generator per [daily-summary/SKILL.md](../skills/daily-summary/SKILL.md): `bun plugins/sp/scripts/daily-summary/daily-summary.ts $ARGUMENTS`.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Systematic debugging protocol — reproduce, isolate, diagnose root cause, apply minimal fix, and verify with regression tests"
|
|
3
|
+
argument-hint: "\"<symptom | failing command>\" [--scope <path>] [--task [<wbs>]] [--agent <inline|auto|name>]"
|
|
4
|
+
allowed-tools: ["Bash", "Read", "Write", "Skill"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Debug
|
|
8
|
+
|
|
9
|
+
Wraps the **sp:sys-debugging** skill.
|
|
10
|
+
|
|
11
|
+
## Argument Flags
|
|
12
|
+
|
|
13
|
+
| Flag | Description | Default |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| `"<symptom \| failing command>"` | Symptom or failing command to diagnose. | required |
|
|
16
|
+
| `--scope` `<path>` | Scope the reproduction/isolation to a path. | cwd |
|
|
17
|
+
| `--task` `[<wbs>]` | Attach findings to a task. | omitted |
|
|
18
|
+
| `--agent` `<inline\|auto\|name>` | Who runs the model-bearing diagnosis. | inline |
|
|
19
|
+
|
|
20
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
21
|
+
|
|
22
|
+
## Usage
|
|
23
|
+
|
|
24
|
+
/sp:dev-debug "<symptom | failing command>" [--scope <path>] [--task [<wbs>]] [--agent <inline|auto|name>]
|
|
25
|
+
|
|
26
|
+
## Implementation
|
|
27
|
+
|
|
28
|
+
- Apply the [inline-default execution-surface contract](../skills/spur-dev/references/cross-cutting.md#inline-default-execution-surface).
|
|
29
|
+
- `Skill(skill="sp:sys-debugging", args="$ARGUMENTS")`
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Dogfood an agent skill/command/CLI — drive it end-to-end with bounded auto-fix, self-monitor, and emit a comprehensive report
|
|
3
|
+
argument-hint: "<testee> [--agent <inline|auto|name>] [--max-retry <n>] [--save] [--task] [--chain-follow] [--full]"
|
|
4
|
+
allowed-tools: ["Bash", "Read", "Write", "Edit", "Grep", "Glob", "Skill"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Dogfood
|
|
8
|
+
|
|
9
|
+
Wraps the **sp:dogfood-testing** skill.
|
|
10
|
+
|
|
11
|
+
## Argument Flags
|
|
12
|
+
|
|
13
|
+
| Flag | Description | Default |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| `<testee>` | Skill / command / CLI to exercise end-to-end. | required |
|
|
16
|
+
| `--agent` `<inline\|auto\|name>` | Who runs the model-bearing dogfood work. | inline |
|
|
17
|
+
| `--max-retry` `<n>` | Max auto-fix retries per stage. | 3 |
|
|
18
|
+
| `--save` | Compatibility no-op; saving is now default. Retained until evidenced retirement. | off |
|
|
19
|
+
| `--task` | Record outcomes against a task. | omitted |
|
|
20
|
+
| `--chain-follow` | Follow the testee's chained follow-ups. | off |
|
|
21
|
+
| `--full` | Full report verbosity (all sections). | off |
|
|
22
|
+
|
|
23
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
27
|
+
/sp:dev-dogfood <testee> [--agent <inline|auto|name>] [--max-retry <n>] [--save] [--task] [--chain-follow] [--full]
|
|
28
|
+
|
|
29
|
+
## Implementation
|
|
30
|
+
|
|
31
|
+
- Apply the [inline-default execution-surface contract](../skills/spur-dev/references/cross-cutting.md#inline-default-execution-surface).
|
|
32
|
+
- `Skill(skill="sp:dogfood-testing", args="$ARGUMENTS")`
|
|
33
|
+
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: >-
|
|
3
|
+
Restructure the feature tree from a mapping file — dry-run then apply via
|
|
4
|
+
spur feature move / task feature_id edges / root docs/*.md reference rewrites
|
|
5
|
+
(CLI-gated; no raw Write on docs/features or docs/tasks)
|
|
6
|
+
argument-hint: "[--map <path>] [--dry-run] [--apply] [--limit <old-id>] [--wave <1|2|3|all>] [--yes]"
|
|
7
|
+
allowed-tools: ["Bash", "Read", "AskUserQuestion", "Skill"]
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Dev Featurechange
|
|
11
|
+
|
|
12
|
+
CLI-gated feature-tree restructure orchestrator. Executes dispositions from a mapping file; does not invent hierarchy.
|
|
13
|
+
|
|
14
|
+
## Argument Flags
|
|
15
|
+
|
|
16
|
+
| Flag | Description | Default |
|
|
17
|
+
| --- | --- | --- |
|
|
18
|
+
| `--map` `<path>` | Feature-restructure mapping file. | configured |
|
|
19
|
+
| `--dry-run` | Plan only; write nothing. | off |
|
|
20
|
+
| `--apply` | Apply the planned restructure. | off |
|
|
21
|
+
| `--limit` `<old-id>` | Restrict to a single old feature id. | omitted |
|
|
22
|
+
| `--wave` `<1\|2\|3\|all>` | Migration wave to execute. | all |
|
|
23
|
+
| `--yes` | Skip confirmation prompts. | off |
|
|
24
|
+
|
|
25
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
26
|
+
|
|
27
|
+
## Usage
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
/sp:dev-featurechange [--map <path>] [--dry-run] [--apply] [--limit <old-id>] [--wave <1|2|3|all>] [--yes]
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
**Preconditions**
|
|
36
|
+
|
|
37
|
+
1. Load hierarchy rules: `Skill(skill="sp:spur-cli")` → `references/features/hierarchy-mece.md`. Refuse `merge-into` or new root letters unless the map + operator explicitly allow.
|
|
38
|
+
2. Mapping file must exist (default `docs/plans/feature-tree-restructure-map.md`).
|
|
39
|
+
3. Prefer a clean working tree / dedicated branch for apply.
|
|
40
|
+
|
|
41
|
+
**Parse map**
|
|
42
|
+
|
|
43
|
+
- Read `--map`. Collect rows where disposition is not `keep` (typically `reparent-under:<parent>`).
|
|
44
|
+
- Filter by `--limit` / `--wave` if set.
|
|
45
|
+
- Wave defaults from map: **1** = K→J, L→J · **2** = N→H, O→H · **3** = P→D, Q→F, R→F8.
|
|
46
|
+
|
|
47
|
+
**Free-digit preflight (mandatory before dry-run report)**
|
|
48
|
+
|
|
49
|
+
Group selected reparent rows by `new_parent`. For each parent:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
spur feature list --json
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Count current children (ids where `id` starts with parent and length = parent.length+1, digit 1–9).
|
|
56
|
+
`free = 9 - childCount`. If `rowsUnderParent.length > free`, **abort the plan** with a clear error naming the parent, free slots, and competing old_ids. Do not apply a partial wave.
|
|
57
|
+
|
|
58
|
+
**Dry-run plan (always) — sequential prediction**
|
|
59
|
+
|
|
60
|
+
Do **not** fire independent dry-runs that all claim the same next id. Walk rows **in apply order** and maintain a local occupancy set:
|
|
61
|
+
|
|
62
|
+
1. Start with real children of each parent from `spur feature list --json`.
|
|
63
|
+
2. For each row: run `spur feature move <old_id> --parent <new_parent> --dry-run --json` **or** predict next free digit from the occupancy set (prefer live dry-run when only one pending under that parent).
|
|
64
|
+
3. After predicting `new_id`, add it to the occupancy set so the next sibling under the same parent gets the next free digit.
|
|
65
|
+
4. Record `mapping` and `tasksUpdated[]` from each dry-run (with multi-folder scan, tasksUpdated should list every linked WBS).
|
|
66
|
+
|
|
67
|
+
Plan `spur feature refresh` + `spur feature check --json` after apply.
|
|
68
|
+
|
|
69
|
+
**Root docs/\*.md references (high-confidence only)**
|
|
70
|
+
|
|
71
|
+
Scan only `docs/*.md` (docs root, not nested folders). For single-letter feature ids, **do not** use bare `\\bX\\b`. Prefer:
|
|
72
|
+
|
|
73
|
+
- `feature <id>` / `feature <id>,` / `(feature <id>`
|
|
74
|
+
- Feature file basename stems from INDEX
|
|
75
|
+
- Markdown links to `./<id>_…md`
|
|
76
|
+
|
|
77
|
+
Skip pure English uses of the letter. Do **not** rewrite `docs/features/`, `docs/tasks*/`, `plugins/`, `apps/`, `AGENTS.md` in v1.
|
|
78
|
+
|
|
79
|
+
Print blast-radius table: old_id | disposition | predicted new_id | tasks | docs hits.
|
|
80
|
+
|
|
81
|
+
Stop if only dry-run (or neither flag — treat as dry-run).
|
|
82
|
+
|
|
83
|
+
**Confirm apply**
|
|
84
|
+
|
|
85
|
+
Unless `--yes`, use `AskUserQuestion` (or explicit operator “apply”) with the blast-radius report. Abort on no.
|
|
86
|
+
|
|
87
|
+
**Apply (CLI only)**
|
|
88
|
+
|
|
89
|
+
Forbidden: raw Write/Edit of feature or task corpus to change IDs. Required: harness CLI.
|
|
90
|
+
|
|
91
|
+
Apply rows **in the same order** as the dry-run plan:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
spur feature move <old_id> --parent <new_parent> --json
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
After all moves (or per wave):
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
spur feature refresh --json
|
|
101
|
+
spur feature check --json
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Task edges: `feature move` rewrites `feature_id` across **all** configured task folders (via `foldersConfig`). Safety check:
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
rg -n '^feature_id: <old_id>$' docs/tasks docs/tasks2 docs/tasks3
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
If any stale edges remain, fix with:
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
spur task update <wbs> --feature <new_id> --json
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**Report**
|
|
117
|
+
|
|
118
|
+
Emit applied mapping, CLI exit codes, check summary, docs files touched, residual skips, free-digit preflight result.
|
|
119
|
+
|
|
120
|
+
**merge-into (v1)**
|
|
121
|
+
|
|
122
|
+
Dry-run may print a manual absorb protocol. Apply **skips** automatic body-merge.
|
|
123
|
+
|
|
124
|
+
**Stretch (not required for v1)**
|
|
125
|
+
|
|
126
|
+
`--json-out` dry-run report · reverse mapping rollback · `--docs-glob` override (default remains root `docs/*.md`).
|
|
127
|
+
|
|
128
|
+
**Related**
|
|
129
|
+
|
|
130
|
+
Map feature F31 · mapping SSOT `docs/plans/feature-tree-restructure-map.md` · hierarchy-mece.md · `spur feature move|refresh|check` · `spur task update --feature`
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Authority-aware semantic audit across source, task files, feature files, and project authority files — discover conflicts, resolve claim-specific authority, collect reproducible evidence, and route confirmed repairs through owner surfaces. Triggers: find conflict, conflict audit, semantic conflict, authority mismatch, stale projection."
|
|
3
|
+
argument-hint: "[<scope>] [--pillar <source|tasks|features|authority|all>] [--mode <adaptive|full>] [--resolve] [--agent <inline|auto|name>] [--json]"
|
|
4
|
+
allowed-tools: ["Bash", "Read", "Write", "Grep", "Glob", "Skill"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Find Conflict
|
|
8
|
+
|
|
9
|
+
Wraps the **sp:conflict-finding** skill — a prompt-first, authority-aware indexed audit across the four
|
|
10
|
+
pillars (source code, task files, feature files, project authority files) with confirmed,
|
|
11
|
+
owner-routed remediation.
|
|
12
|
+
|
|
13
|
+
## Argument Flags
|
|
14
|
+
|
|
15
|
+
| Flag | Description | Default |
|
|
16
|
+
| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- | --------------- |
|
|
17
|
+
| `<scope>` | Optional path, WBS, feature ID, symbol, command, config key, or free-form subject to scope the audit. | current project |
|
|
18
|
+
| `--pillar` `<source\|tasks\|features\|authority\|all>` | Limit the internal audit to one pillar; the minimum authorities needed to judge it still load. | all |
|
|
19
|
+
| `--mode` `<adaptive\|full>` | Scan protocol — adaptive reuses fresh indexed context and discloses skipped areas; full forces a cold comprehensive scan. | adaptive |
|
|
20
|
+
| `--resolve` | Enable the proposal, confirmation, and owner-routed remediation workflow. Its absence guarantees no source/corpus/numbered-doc mutation. | off |
|
|
21
|
+
| `--agent` `<inline\|auto\|name>` | Who runs the model-bearing analysis. | inline |
|
|
22
|
+
| `--json` | Emit the same result envelope as Markdown as JSON. | off |
|
|
23
|
+
|
|
24
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
/sp:dev-find-conflict
|
|
30
|
+
/sp:dev-find-conflict docs/00_ADR.md
|
|
31
|
+
/sp:dev-find-conflict --pillar authority
|
|
32
|
+
/sp:dev-find-conflict --pillar tasks --mode full
|
|
33
|
+
/sp:dev-find-conflict 0486 --resolve
|
|
34
|
+
/sp:dev-find-conflict "command surface" --json
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Audit mode is read-only with respect to source, corpus, and numbered documentation. Findings are
|
|
38
|
+
presented before any repair. Approved repairs route through the artifact owner's existing harness
|
|
39
|
+
surface (`spur task` / `spur feature`, `sp:doc-evolve`, the Spur development lifecycle, or
|
|
40
|
+
Superskill capability lifecycle) — never direct writes.
|
|
41
|
+
|
|
42
|
+
**See also:** skill `sp:conflict-finding` (SSOT), `sp:doc-evolve`, `sp:spur-cli`,
|
|
43
|
+
`sp:code-verification`.
|
|
44
|
+
|
|
45
|
+
## Implementation
|
|
46
|
+
|
|
47
|
+
Apply the [inline-default execution-surface contract](../skills/spur-dev/references/cross-cutting.md#inline-default-execution-surface), then invoke the conflict-finding skill, forwarding all arguments:
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
Skill(skill="sp:conflict-finding", args="$ARGUMENTS")
|
|
51
|
+
```
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Review agent session logs, identify performance bottlenecks and behavioral anti-patterns, and generate a structured task file with proposed fixes. Triggers: post-mortem, performance analysis, session review, find issues, identify bottlenecks"
|
|
3
|
+
argument-hint: "[<topic>] [--sessions <glob>] [--source <auto|omp|claude|codex|gemini|opencode|antigravity|openclaw|pi>] [--feature <id>] [--template <meta|issue|standard>] [--priority <P0|P1|P2|P3>] [--severity <S0|S1|S2>] [--category <list>] [--since <iso>] [--until <iso>] [--top <n>] [--min-cost <duration>] [--strict-topic] [--use-history] [--no-task] [--agent <inline|auto|name>] [--json]"
|
|
4
|
+
allowed-tools: ["Bash", "Read", "Write", "Grep", "Glob", "Skill"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Dev Find Issue
|
|
8
|
+
|
|
9
|
+
Wraps the **sp:issue-finding** skill — forensic session log analysis that identifies performance
|
|
10
|
+
bottlenecks, ranks root causes by time cost, proposes targeted fixes, and generates a structured
|
|
11
|
+
task file via `spur task create`.
|
|
12
|
+
|
|
13
|
+
## Argument Flags
|
|
14
|
+
|
|
15
|
+
| Flag | Description | Default |
|
|
16
|
+
| ------------------------------------------------------------------------------------ | ------------------------------------ | ---------- |
|
|
17
|
+
| `[<topic>]` | Narrow the analysis to a topic. | omitted |
|
|
18
|
+
| `--sessions` `<glob>` | Session log glob to scan. | recent |
|
|
19
|
+
| `--source` `<auto\|omp\|claude\|codex\|gemini\|opencode\|antigravity\|openclaw\|pi>` | Agent source to scan. | auto |
|
|
20
|
+
| `--feature` `<id>` | Attach findings to a feature. | omitted |
|
|
21
|
+
| `--template` `<meta\|issue\|standard>` | Output template shape. | standard |
|
|
22
|
+
| `--priority` `<P0\|P1\|P2\|P3>` | Filter / assign priority. | omitted |
|
|
23
|
+
| `--severity` `<S0\|S1\|S2>` | Filter / assign severity. | omitted |
|
|
24
|
+
| `--category` `<list>` | Comma list of categories to keep. | all |
|
|
25
|
+
| `--since` `<iso>` | Start of the scan window. | configured |
|
|
26
|
+
| `--until` `<iso>` | End of the scan window. | now |
|
|
27
|
+
| `--top` `<n>` | Limit to top N findings. | omitted |
|
|
28
|
+
| `--min-cost` `<duration>` | Minimum wasted duration to report. | omitted |
|
|
29
|
+
| `--strict-topic` | Drop findings off-topic. | off |
|
|
30
|
+
| `--use-history` | Incorporate indexed history. | off |
|
|
31
|
+
| `--no-task` | Do not create a task for findings. | off |
|
|
32
|
+
| `--agent` `<inline\|auto\|name>` | Who runs the model-bearing analysis. | inline |
|
|
33
|
+
| `--json` | Emit structured JSON. | off |
|
|
34
|
+
|
|
35
|
+
For shared semantics, see the [flag glossary](../skills/spur-dev/references/flag-glossary.md).
|
|
36
|
+
|
|
37
|
+
## Usage
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
/sp:dev-find-issue
|
|
41
|
+
/sp:dev-find-issue "test-loop spinning"
|
|
42
|
+
/sp:dev-find-issue --sessions "~/.omp/agent/sessions/-xprojects-spur-new/2026-07-29T*"
|
|
43
|
+
/sp:dev-find-issue "L3 guard format discovery" --feature H51 --priority P1 --severity S1
|
|
44
|
+
/sp:dev-find-issue --category test-loop,guard --min-cost 30m --no-task
|
|
45
|
+
/sp:dev-find-issue --source claude --since 2026-07-28 --json
|
|
46
|
+
/sp:dev-find-issue --sessions plugins/sp/skills/issue-finding/examples/session-test-loop.jsonl --no-task
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
| Argument | Description | Default |
|
|
50
|
+
| ----------------------------- | ---------------------------------------------------------------------------------------- | ------------------------------- |
|
|
51
|
+
| `[topic]` | Optional focus text or smart positional (path/glob → sessions; category phrase → filter) | (full taxonomy) |
|
|
52
|
+
| `--sessions <glob>` | Session JSONL file(s) or directory | most recent for resolved source |
|
|
53
|
+
| `--source <name>` | `auto`, `omp`, `claude`, `codex`, `gemini`, `opencode`, `antigravity`, `openclaw`, `pi` | `auto` |
|
|
54
|
+
| `--feature <id>` | Feature ID to link the generated task to | (none) |
|
|
55
|
+
| `--template <name>` | `meta` (umbrella), `issue` (single), or `standard` | `meta` |
|
|
56
|
+
| `--priority <P0\|P1\|P2\|P3>` | Task frontmatter priority (not bottleneck severity) | `P2` |
|
|
57
|
+
| `--severity <S0\|S1\|S2>` | Minimum bottleneck severity to keep | (all) |
|
|
58
|
+
| `--category <list>` | Comma-separated category ids (`test-loop`, `guard`, …) | `all` |
|
|
59
|
+
| `--since` / `--until` | Session start time bounds | (none) |
|
|
60
|
+
| `--top <n>` | Cap number of fixes/requirements | (no cap) |
|
|
61
|
+
| `--min-cost <duration>` | Drop findings under this waste floor (`30m`, `2h`) | (none) |
|
|
62
|
+
| `--strict-topic` | Drop off-topic findings even if severe | off |
|
|
63
|
+
| `--use-history` | Optional `spur history` import/analyze for cost aggregates | off |
|
|
64
|
+
| `--no-task` | Markdown report only | off |
|
|
65
|
+
| `--json` | JSON findings only (no task) | off |
|
|
66
|
+
|
|
67
|
+
**See also:** skill `sp:issue-finding` (SSOT), `/sp:dev-runall`, `/sp:dev-dogfood`,
|
|
68
|
+
`sp:daily-summary`, `sp:reverse-engineering`.
|
|
69
|
+
|
|
70
|
+
## Implementation
|
|
71
|
+
|
|
72
|
+
Apply the [inline-default execution-surface contract](../skills/spur-dev/references/cross-cutting.md#inline-default-execution-surface), then invoke the issue-finding skill, forwarding all arguments:
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
Skill(skill="sp:issue-finding", args="$ARGUMENTS")
|
|
76
|
+
```
|