opencodekit 0.12.4 → 0.12.6

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.
Files changed (62) hide show
  1. package/dist/index.js +17 -5
  2. package/dist/template/.opencode/agent/build.md +25 -11
  3. package/dist/template/.opencode/agent/rush.md +6 -4
  4. package/dist/template/.opencode/command/accessibility-check.md +7 -10
  5. package/dist/template/.opencode/command/analyze-mockup.md +3 -16
  6. package/dist/template/.opencode/command/analyze-project.md +57 -69
  7. package/dist/template/.opencode/command/brainstorm.md +3 -11
  8. package/dist/template/.opencode/command/commit.md +10 -18
  9. package/dist/template/.opencode/command/create.md +4 -8
  10. package/dist/template/.opencode/command/design-audit.md +24 -51
  11. package/dist/template/.opencode/command/design.md +10 -17
  12. package/dist/template/.opencode/command/finish.md +9 -9
  13. package/dist/template/.opencode/command/fix-ci.md +7 -28
  14. package/dist/template/.opencode/command/fix-types.md +3 -7
  15. package/dist/template/.opencode/command/fix-ui.md +5 -11
  16. package/dist/template/.opencode/command/fix.md +4 -10
  17. package/dist/template/.opencode/command/handoff.md +8 -14
  18. package/dist/template/.opencode/command/implement.md +13 -16
  19. package/dist/template/.opencode/command/import-plan.md +20 -38
  20. package/dist/template/.opencode/command/init.md +9 -13
  21. package/dist/template/.opencode/command/integration-test.md +11 -13
  22. package/dist/template/.opencode/command/issue.md +4 -8
  23. package/dist/template/.opencode/command/new-feature.md +20 -40
  24. package/dist/template/.opencode/command/plan.md +8 -12
  25. package/dist/template/.opencode/command/pr.md +29 -38
  26. package/dist/template/.opencode/command/quick-build.md +3 -7
  27. package/dist/template/.opencode/command/research-and-implement.md +4 -6
  28. package/dist/template/.opencode/command/research.md +10 -7
  29. package/dist/template/.opencode/command/resume.md +12 -24
  30. package/dist/template/.opencode/command/revert-feature.md +21 -56
  31. package/dist/template/.opencode/command/review-codebase.md +21 -23
  32. package/dist/template/.opencode/command/skill-create.md +1 -5
  33. package/dist/template/.opencode/command/skill-optimize.md +3 -10
  34. package/dist/template/.opencode/command/status.md +28 -25
  35. package/dist/template/.opencode/command/triage.md +19 -31
  36. package/dist/template/.opencode/command/ui-review.md +6 -13
  37. package/dist/template/.opencode/command.backup/analyze-project.md +465 -0
  38. package/dist/template/.opencode/command.backup/finish.md +167 -0
  39. package/dist/template/.opencode/command.backup/implement.md +143 -0
  40. package/dist/template/.opencode/command.backup/pr.md +252 -0
  41. package/dist/template/.opencode/command.backup/status.md +376 -0
  42. package/dist/template/.opencode/memory/project/SHELL_OUTPUT_MIGRATION_PLAN.md +551 -0
  43. package/dist/template/.opencode/memory/project/gotchas.md +33 -28
  44. package/dist/template/.opencode/opencode.json +24 -84
  45. package/dist/template/.opencode/package.json +1 -3
  46. package/dist/template/.opencode/plugin/compaction.ts +51 -129
  47. package/dist/template/.opencode/plugin/handoff.ts +18 -163
  48. package/dist/template/.opencode/plugin/notification.ts +1 -1
  49. package/dist/template/.opencode/plugin/package.json +7 -0
  50. package/dist/template/.opencode/plugin/sessions.ts +185 -651
  51. package/dist/template/.opencode/plugin/skill-mcp.ts +2 -1
  52. package/dist/template/.opencode/plugin/truncator.ts +19 -41
  53. package/dist/template/.opencode/plugin/tsconfig.json +14 -13
  54. package/dist/template/.opencode/tool/bd-inbox.ts +109 -0
  55. package/dist/template/.opencode/tool/bd-msg.ts +62 -0
  56. package/dist/template/.opencode/tool/bd-release.ts +71 -0
  57. package/dist/template/.opencode/tool/bd-reserve.ts +120 -0
  58. package/package.json +17 -5
  59. package/dist/template/.opencode/plugin/beads.ts +0 -1419
  60. package/dist/template/.opencode/plugin/compactor.ts +0 -107
  61. package/dist/template/.opencode/plugin/enforcer.ts +0 -190
  62. package/dist/template/.opencode/plugin/injector.ts +0 -150
@@ -31,19 +31,16 @@ This skill provides Epic → Task → Subtask hierarchy for complex features.
31
31
 
32
32
  ## Phase 1: Context Gathering
33
33
 
34
- Before creating anything, understand the landscape:
34
+ Before creating anything, understand of landscape:
35
35
 
36
- ```bash
37
- # Check for related existing work
38
- bd_ls({ status: "all", limit: 20, offset: 0 })
36
+ !`bd list --status all --limit 20`
39
37
 
40
38
  # Analyze codebase structure
41
- glob pattern="src/**/*.{ts,tsx,py}"
39
+
40
+ glob pattern="src/\*_/_.{ts,tsx,py}"
42
41
  lsp_lsp_workspace_symbols({ query: "[relevant-terms]" })
43
42
 
44
- # Check recent changes in related areas
45
- git log --oneline -10 -- src/[relevant-path]/
46
- ```
43
+ !`git log --oneline -10 -- src/[relevant-path]/`
47
44
 
48
45
  **Report:**
49
46
 
@@ -113,14 +110,8 @@ Proceed with spec? (yes/modify/explore-more)
113
110
 
114
111
  ## Phase 3: Create Epic Bead
115
112
 
116
- ```typescript
117
- bd_add({
118
- title: "[Feature Name]",
119
- type: "epic",
120
- pri: [priority],
121
- desc: "[Brief description from brainstorming]",
122
- tags: ["feature", ...inferred_tags],
123
- });
113
+ ```bash
114
+ bd create "[Feature Name]" -t epic -p [priority]
124
115
  ```
125
116
 
126
117
  Capture the bead ID for artifact creation.
@@ -363,28 +354,17 @@ If issues detected:
363
354
 
364
355
  Break phases into individual trackable beads:
365
356
 
366
- ```typescript
367
- // Phase 1 tasks
368
- bd_add({
369
- title: "Set up database schema for [feature]",
370
- type: "task",
371
- pri: 2,
372
- parent: "<epic-id>",
373
- desc: "Phase 1 of [feature]. Create tables and migrations.",
374
- tags: ["backend", "database"],
375
- });
376
-
377
- // Phase 2 tasks (with dependency)
378
- bd_add({
379
- title: "Implement [core feature]",
380
- type: "task",
381
- pri: 2,
382
- parent: "<epic-id>",
383
- deps: ["<phase-1-bead-id>"],
384
- tags: ["backend"],
385
- });
386
-
387
- // Continue for all phases...
357
+ ```bash
358
+ # Phase 1 tasks
359
+ bd create "Set up database schema for [feature]" -t task -p 2
360
+ bd dep add <task-id> <epic-id>
361
+
362
+ # Phase 2 tasks (with dependency)
363
+ bd create "Implement [core feature]" -t task -p 2
364
+ bd dep add <task-id> <epic-id>
365
+ bd dep add <task-id> <phase-1-bead-id>
366
+
367
+ # Continue for all phases...
388
368
  ```
389
369
 
390
370
  ---
@@ -424,9 +404,9 @@ Sub-tasks created:
424
404
  Branch: feature/[feature-name] (if --branch)
425
405
 
426
406
  Next Steps:
427
- ├── View feature: bd_show({ id: "[bead-id]" })
407
+ ├── View feature: bd show [bead-id]
428
408
  ├── Start first task: /implement [task-id-1]
429
- └── View ready work: bd_ls({ status: "ready" })
409
+ └── View ready work: bd list --status ready
430
410
  ```
431
411
 
432
412
  ---
@@ -10,11 +10,9 @@ You're creating an implementation plan. Design first, then execute.
10
10
 
11
11
  ## Load Context
12
12
 
13
- ```bash
14
- bd show $ARGUMENTS
15
- cat .beads/artifacts/$ARGUMENTS/spec.md
16
- cat .beads/artifacts/$ARGUMENTS/research.md 2>/dev/null
17
- ```
13
+ !`bd show $ARGUMENTS`
14
+ !`cat .beads/artifacts/$ARGUMENTS/spec.md`
15
+ !`cat .beads/artifacts/$ARGUMENTS/research.md 2>/dev/null`
18
16
 
19
17
  If spec.md missing: "Run `/create $ARGUMENTS` first."
20
18
  If complexity > M and no research: "Consider `/research $ARGUMENTS` first."
@@ -118,7 +116,7 @@ Verify: `npm test -- bar.test.ts`
118
116
 
119
117
  With `--create-beads` flag or user approval:
120
118
 
121
- ```bash
119
+ ````bash
122
120
  # Task 1 (no blockers)
123
121
  bd create "[task 1 title]" -t task -p 2
124
122
 
@@ -126,17 +124,15 @@ bd create "[task 1 title]" -t task -p 2
126
124
  bd create "[task 2 title]" -t task -p 2
127
125
  bd dep add bd-[task2] bd-[task1] --type blocks
128
126
 
129
- # Visualize
130
- bd dep tree $ARGUMENTS
131
- ```
127
+ !`bd dep tree $ARGUMENTS`
132
128
 
133
129
  Update plan.md with bead IDs.
134
130
 
135
131
  ## Sync
136
132
 
137
- ```typescript
138
- bd_sync({ reason: "Sync plan" });
139
- ```
133
+ ```bash
134
+ bd sync
135
+ ````
140
136
 
141
137
  ## Output
142
138
 
@@ -22,18 +22,18 @@ skill({ name: "verification-before-completion" });
22
22
 
23
23
  Before creating PR, run verification gates:
24
24
 
25
- ```bash
26
- git status --porcelain # Check for uncommitted changes
25
+ ```
26
+ !`git status --porcelain` # Check for uncommitted changes
27
27
  ```
28
28
 
29
29
  If uncommitted changes exist, ask: "Commit these changes first?"
30
30
 
31
31
  Run project gates:
32
32
 
33
- ```bash
34
- npm run build 2>&1 | tail -5
35
- npm test 2>&1 | tail -10
36
- npm run lint 2>&1 | tail -5
33
+ ```
34
+ !`npm run build 2>&1 | tail -5`
35
+ !`npm test 2>&1 | tail -10`
36
+ !`npm run lint 2>&1 | tail -5`
37
37
  ```
38
38
 
39
39
  ```
@@ -55,16 +55,16 @@ Fix errors first, then run /pr again.
55
55
 
56
56
  ## Phase 2: Check for Conflicts
57
57
 
58
- ```bash
59
- git fetch origin main
60
- git merge-base --is-ancestor origin/main HEAD || git diff origin/main...HEAD --name-only
58
+ ```
59
+ !`git fetch origin main`
60
+ !`git merge-base --is-ancestor origin/main HEAD || git diff origin/main...HEAD --name-only`
61
61
  ```
62
62
 
63
63
  Check for merge conflicts:
64
64
 
65
- ```bash
66
- git merge --no-commit --no-ff origin/main 2>&1 || true
67
- git merge --abort 2>/dev/null || true
65
+ ```
66
+ !`git merge --no-commit --no-ff origin/main 2>&1 || true`
67
+ !`git merge --abort 2>/dev/null || true`
68
68
  ```
69
69
 
70
70
  If conflicts detected:
@@ -84,24 +84,24 @@ Resolve conflicts before creating PR:
84
84
 
85
85
  **Current state:**
86
86
 
87
- ```bash
88
- git branch --show-current
89
- git diff main...HEAD --stat
90
- git log main...HEAD --oneline
87
+ ```
88
+ !`git branch --show-current`
89
+ !`git diff main...HEAD --stat`
90
+ !`git log main...HEAD --oneline`
91
91
  ```
92
92
 
93
93
  **Load bead context (if provided):**
94
94
 
95
- ```typescript
96
- bd_show({ id: "$ARGUMENTS" });
95
+ ```
96
+ !`bd show $ARGUMENTS`
97
97
  ```
98
98
 
99
99
  **Load artifacts:**
100
100
 
101
- ```bash
102
- ls .beads/artifacts/<bead-id>/ 2>/dev/null
103
- cat .beads/artifacts/<bead-id>/spec.md 2>/dev/null | head -30
104
- cat .beads/artifacts/<bead-id>/review.md 2>/dev/null | head -30
101
+ ```
102
+ !`ls .beads/artifacts/<bead-id>/ 2>/dev/null`
103
+ !`cat .beads/artifacts/<bead-id>/spec.md 2>/dev/null | head -30`
104
+ !`cat .beads/artifacts/<bead-id>/review.md 2>/dev/null | head -30`
105
105
  ```
106
106
 
107
107
  Extract from artifacts:
@@ -122,7 +122,7 @@ git push -u origin $(git branch --show-current)
122
122
  Generate PR content from context:
123
123
 
124
124
  ```bash
125
- gh pr create --title "<title>" --body "$(cat <<'EOF'
125
+ gh pr create --title "<title>" --body "$(cat <<'EOF' # Keep as instructional (multi-line)
126
126
  ## Summary
127
127
 
128
128
  [1-2 sentence description of what this PR does and why]
@@ -179,13 +179,13 @@ EOF
179
179
  **For draft PRs (--draft):**
180
180
 
181
181
  ```bash
182
- gh pr create --draft --title "<title>" --body "..."
182
+ gh pr create --draft --title "<title>" --body "..." # Keep as-is (instructional)
183
183
  ```
184
184
 
185
185
  ## Phase 6: Wait for CI (if --wait)
186
186
 
187
- ```bash
188
- gh pr checks --watch
187
+ ```
188
+ !`gh pr checks --watch`
189
189
  ```
190
190
 
191
191
  Report CI status:
@@ -204,18 +204,9 @@ CI Status:
204
204
 
205
205
  ## Phase 7: Update Bead & Sync
206
206
 
207
- ```typescript
208
- bd_msg({
209
- subj: "PR created",
210
- body: "PR: <pr-url>\nStatus: [ready/draft]\nCI: [passing/pending]",
211
- to: "all",
212
- importance: "normal",
213
- global: true,
214
- });
215
- ```
216
-
217
- ```typescript
218
- bd_sync({ reason: "Sync PR creation" });
207
+ ```bash
208
+ bd-msg --subj "PR created" --body "PR: <pr-url>\nStatus: [ready/draft]\nCI: [passing/pending]" --to "all" --importance normal
209
+ bd sync
219
210
  ```
220
211
 
221
212
  ## Output
@@ -56,10 +56,7 @@ Fast path for trivial tasks. Skip ceremony, keep safety.
56
56
 
57
57
  ### Step 1: Verify Scope (30 seconds)
58
58
 
59
- ```bash
60
- # Check what files might be involved
61
- grep -r "[search-term]" src/ --include="*.{ts,tsx}" -l | head -5
62
- ```
59
+ !`grep -r "[search-term]" src/ --include="*.{ts,tsx}" -l | head -5`
63
60
 
64
61
  If more than 1 file: **STOP** → Use `/create $ARGUMENTS` instead.
65
62
 
@@ -68,11 +65,10 @@ If more than 1 file: **STOP** → Use `/create $ARGUMENTS` instead.
68
65
  ```bash
69
66
  # Stash any existing changes
70
67
  git stash push -m "pre-quickbuild-$(date +%s)" 2>/dev/null || true
71
-
72
- # Note current commit
73
- git rev-parse HEAD
74
68
  ```
75
69
 
70
+ !`git rev-parse HEAD`
71
+
76
72
  ### Step 3: Make the Change
77
73
 
78
74
  ```bash
@@ -12,10 +12,8 @@ Use this for features with unknowns. For simple changes, use `/fix` or `/impleme
12
12
 
13
13
  ## Phase 1: Context
14
14
 
15
- ```bash
16
- bd show $ARGUMENTS
17
- cat .beads/artifacts/$ARGUMENTS/spec.md
18
- ```
15
+ !`bd show $ARGUMENTS`
16
+ !`cat .beads/artifacts/$ARGUMENTS/spec.md`
19
17
 
20
18
  If no spec exists: "Run `/create $ARGUMENTS` first."
21
19
 
@@ -123,8 +121,8 @@ git add -A
123
121
  git commit -m "$ARGUMENTS: [summary]"
124
122
  ```
125
123
 
126
- ```typescript
127
- bd_sync({ reason: "Sync research and implementation" });
124
+ ```bash
125
+ bd sync
128
126
  ```
129
127
 
130
128
  ```
@@ -16,10 +16,15 @@ You're gathering information before implementation. Find answers, document findi
16
16
 
17
17
  ## Load Context
18
18
 
19
- ```bash
20
- bd show $ARGUMENTS
21
- cat .beads/artifacts/$ARGUMENTS/spec.md
22
- ```
19
+ !`bd show $ARGUMENTS`
20
+ !`cat .beads/artifacts/$ARGUMENTS/spec.md`
21
+
22
+ Extract questions that need answering from spec.
23
+
24
+ ## Check For Previous Research
25
+
26
+ !`search_session({ query: "[topic keywords]" })`
27
+ !`list_sessions({ project: "current", since: "this week", limit: 5 })`
23
28
 
24
29
  Extract the questions that need answering from the spec.
25
30
 
@@ -138,9 +143,7 @@ Write `.beads/artifacts/$ARGUMENTS/research.md`:
138
143
 
139
144
  ## Sync
140
145
 
141
- ```typescript
142
- bd_sync({ reason: "Sync research findings" });
143
- ```
146
+ !`bd sync`
144
147
 
145
148
  ## Output
146
149
 
@@ -16,19 +16,15 @@ skill({ name: "beads" });
16
16
 
17
17
  ## Verify The Task Exists
18
18
 
19
- ```bash
20
- bd show $ARGUMENTS
21
- ```
19
+ !`bd show $ARGUMENTS`
22
20
 
23
21
  If not found, check `bd list --status=all`. Maybe it was closed, or you have the wrong ID.
24
22
 
25
23
  ## Check Git State
26
24
 
27
- ```bash
28
- git branch --show-current
29
- git rev-parse --short HEAD
30
- git status --porcelain
31
- ```
25
+ !`git branch --show-current`
26
+ !`git rev-parse --short HEAD`
27
+ !`git status --porcelain`
32
28
 
33
29
  If you're not on the right branch:
34
30
 
@@ -40,15 +36,11 @@ If there are uncommitted changes, decide: stash, commit, or discard.
40
36
 
41
37
  ## Find The Handoff
42
38
 
43
- ```bash
44
- ls -t .beads/artifacts/$ARGUMENTS/handoffs/ 2>/dev/null | head -1
45
- ```
39
+ !`ls -t .beads/artifacts/$ARGUMENTS/handoffs/ 2>/dev/null | head -1`
46
40
 
47
41
  If a handoff exists, read it:
48
42
 
49
- ```bash
50
- cat .beads/artifacts/$ARGUMENTS/handoffs/[latest].md
51
- ```
43
+ !`cat .beads/artifacts/$ARGUMENTS/handoffs/[latest].md`
52
44
 
53
45
  The handoff tells you:
54
46
 
@@ -83,20 +75,16 @@ Extract from session:
83
75
 
84
76
  Read all available context:
85
77
 
86
- ```bash
87
- cat .beads/artifacts/$ARGUMENTS/spec.md 2>/dev/null
88
- cat .beads/artifacts/$ARGUMENTS/plan.md 2>/dev/null
89
- cat .beads/artifacts/$ARGUMENTS/research.md 2>/dev/null
90
- ```
78
+ !`cat .beads/artifacts/$ARGUMENTS/spec.md 2>/dev/null`
79
+ !`cat .beads/artifacts/$ARGUMENTS/plan.md 2>/dev/null`
80
+ !`cat .beads/artifacts/$ARGUMENTS/research.md 2>/dev/null`
91
81
 
92
82
  ## Check For Stale Context
93
83
 
94
- If the handoff is more than 3 days old, things may have changed:
84
+ If handoff is more than 3 days old, things may have changed:
95
85
 
96
- ```bash
97
- git log --oneline -10 # What happened since?
98
- git diff [handoff-commit]..HEAD --stat # What files changed?
99
- ```
86
+ !`git log --oneline -10` # What happened since?
87
+ !`git diff [handoff-commit]..HEAD --stat` # What files changed?
100
88
 
101
89
  If significant changes occurred on main, consider rebasing:
102
90
 
@@ -34,16 +34,9 @@ Intelligently revert changes for a bead with comprehensive safety checks.
34
34
 
35
35
  Before any action, verify:
36
36
 
37
- ```bash
38
- # Check for uncommitted changes
39
- git status --short
40
-
41
- # Check CI status
42
- gh run list --limit 1
43
-
44
- # Check if on correct branch
45
- git branch --show-current
46
- ```
37
+ !`git status --short`
38
+ !`gh run list --limit 1`
39
+ !`git branch --show-current`
47
40
 
48
41
  ### Safety Gates
49
42
 
@@ -52,26 +45,17 @@ git branch --show-current
52
45
  | Clean working tree | No uncommitted changes | Stash or commit first |
53
46
  | CI passing | Latest run succeeded | Warn, confirm continue |
54
47
  | Not on main/master | On feature branch | Require `--force` for main |
55
- | Bead exists | `bd_show` returns data | Abort with error |
48
+ | Bead exists | `bd show` returns data | Abort with error |
56
49
 
57
50
  ---
58
51
 
59
52
  ## Phase 2: Analyze Bead History
60
53
 
61
- ```typescript
62
- bd_show({ id: "[bead-id]" });
63
- ```
64
-
65
- ```bash
66
- # Find all commits for this bead
67
- git log --oneline --all --grep="[bead-id]"
68
-
69
- # Show affected files
70
- git log --name-only --grep="[bead-id]" --pretty=format:""
54
+ !`bd show [bead-id]`
71
55
 
72
- # Count changes
73
- git log --shortstat --grep="[bead-id]"
74
- ```
56
+ !`git log --oneline --all --grep="[bead-id]"`
57
+ !`git log --name-only --grep="[bead-id]" --pretty=format:""`
58
+ !`git log --shortstat --grep="[bead-id]"`
75
59
 
76
60
  ### Impact Report
77
61
 
@@ -106,19 +90,12 @@ Lines: +456 / -23
106
90
 
107
91
  Before reverting, check what depends on this:
108
92
 
109
- ```typescript
110
- // Check for dependent beads
111
- bd_ls({ status: "all", limit: 50, offset: 0 });
112
- // Filter for beads that depend on this one
113
- ```
93
+ !`bd list --status all --limit 50`
114
94
 
115
- ```bash
116
- # Check for imports of new files
117
- grep -r "from './auth/" src/ --include="*.ts"
95
+ # Filter for beads that depend on this one
118
96
 
119
- # Check for references in other features
120
- git log --oneline --all -- src/auth/ | grep -v "[bead-id]"
121
- ```
97
+ !`grep -r "from './auth/" src/ --include="*.ts"`
98
+ !`git log --oneline --all -- src/auth/ | grep -v "[bead-id]"`
122
99
 
123
100
  ### Downstream Report
124
101
 
@@ -204,10 +181,7 @@ To undo this revert later:
204
181
 
205
182
  If `--include-migrations` or migrations detected:
206
183
 
207
- ```bash
208
- # Check for migration files in commits
209
- git log --name-only --grep="[bead-id]" -- "**/migrations/**"
210
- ```
184
+ !`git log --name-only --grep="[bead-id]" -- "**/migrations/**"`
211
185
 
212
186
  ### Migration Revert Strategy
213
187
 
@@ -338,17 +312,8 @@ git checkout --ours [file] # Use reverted
338
312
 
339
313
  ## Phase 10: Update Bead Status
340
314
 
341
- ```typescript
342
- bd_msg({
343
- subj: "Reverted: [bead-id]",
344
- body: "Feature reverted at [timestamp]\nReason: [reason]\nBackup: backup/[bead-id]-pre-revert",
345
- to: "all",
346
- importance: "normal",
347
- global: false,
348
- });
349
-
350
- // Optionally close or re-open bead
351
- bd_reopen({ id: "[bead-id]" });
315
+ ```bash
316
+ bd-msg --subj "Reverted: [bead-id]" --body "Feature reverted at [timestamp]\nReason: [reason]\nBackup: backup/[bead-id]-pre-revert" --to "all" --importance normal
352
317
  ```
353
318
 
354
319
  ---
@@ -401,9 +366,9 @@ git commit -m "restore: [bead-id] from backup"
401
366
 
402
367
  ## Related Commands
403
368
 
404
- | Need | Command |
405
- | -------------------- | ------------------------------ |
406
- | View bead history | `bd_show({ id: "[bead-id]" })` |
407
- | Re-implement feature | `/implement [bead-id]` |
408
- | Check status | `/status [bead-id]` |
409
- | Create new feature | `/new-feature` |
369
+ | Need | Command |
370
+ | -------------------- | ---------------------- |
371
+ | View bead history | `bd show [bead-id]` |
372
+ | Re-implement feature | `/implement [bead-id]` |
373
+ | Check status | `/status [bead-id]` |
374
+ | Create new feature | `/new-feature` |
@@ -19,7 +19,7 @@ Parse `$ARGUMENTS` to determine what to review:
19
19
  | Input | Scope | How to Get Code |
20
20
  | ------------------------ | ---------------------- | ------------------------------------------- |
21
21
  | File/directory path | That path only | `read` or `glob` + `read` |
22
- | Bead ID (e.g., `bd-123`) | Implementation vs spec | `bd_show()` then `git diff` from spec |
22
+ | Bead ID (e.g., `bd-123`) | Implementation vs spec | `bd show` then `git diff` from spec |
23
23
  | PR number (e.g., `#45`) | PR changes | `gh pr diff 45` |
24
24
  | `all` or empty | Recent changes | `git diff main...HEAD` or `git diff HEAD~5` |
25
25
 
@@ -29,27 +29,31 @@ If bead exists, load spec from `.beads/artifacts/$ID/spec.md` and review against
29
29
 
30
30
  Run these checks first (batch for speed):
31
31
 
32
+ ```typescript
33
+ // Type/lint errors
34
+ lsp_lsp_diagnostics(); // for each changed file
32
35
  ```
33
- # Type/lint errors
34
- lsp_lsp_diagnostics() for each changed file
35
- npm run type-check || tsc --noEmit
36
- npm run lint || true
37
-
38
- # Anti-pattern detection with ast-grep
39
- ast-grep pattern="console.log($$$)" # Debug statements
40
- ast-grep pattern="any" # TypeScript any
41
- ast-grep pattern="// TODO" OR grep "TODO|FIXME|HACK|XXX"
42
- ast-grep pattern="password = \"$$$\"" # Hardcoded secrets
43
-
44
- # Test status
45
- npm test || pytest || cargo test
36
+
37
+ !`npm run type-check || tsc --noEmit`
38
+ !`npm run lint || true`
39
+
40
+ ```typescript
41
+ // Anti-pattern detection with ast-grep
42
+ ast - grep({ pattern: "console.log($$$)" }); // Debug statements
43
+ ast - grep({ pattern: "any" }); // TypeScript any
44
+ grep({ pattern: "TODO|FIXME|HACK|XXX" });
45
+ ast - grep({ pattern: 'password = "$$$"' }); // Hardcoded secrets
46
46
  ```
47
47
 
48
+ !`npm test || pytest || cargo test`
49
+
48
50
  Collect all automated findings before manual review.
49
51
 
50
52
  ## Phase 3: Manual Review Categories
51
53
 
52
- skill({ name: "requesting-code-review" })
54
+ ```typescript
55
+ skill({ name: "requesting-code-review" });
56
+ ```
53
57
 
54
58
  Review each category with specific focus:
55
59
 
@@ -102,14 +106,8 @@ Review each category with specific focus:
102
106
 
103
107
  For each Critical or Important finding:
104
108
 
105
- ```
106
- bd_add({
107
- title: "[Review] <brief issue description>",
108
- desc: "File: <path>:<line>\nIssue: <what's wrong>\nFix: <how to fix>",
109
- type: "bug",
110
- pri: 1, # Critical=0, Important=1, Minor=2
111
- tags: ["review", "security|perf|maintainability"]
112
- })
109
+ ```bash
110
+ bd create "[Review] <brief issue description>" -t bug -p 1
113
111
  ```
114
112
 
115
113
  Skip creating beads for Minor issues (just report them).
@@ -405,9 +405,7 @@ Run test scenarios again until skill guides behavior correctly.
405
405
 
406
406
  ### File Structure Check
407
407
 
408
- ```bash
409
- ls -la .opencode/skill/$ARGUMENTS/
410
- ```
408
+ !`ls -la .opencode/skill/$ARGUMENTS/`
411
409
 
412
410
  Expected:
413
411
 
@@ -474,8 +472,6 @@ If creating from an existing observation:
474
472
  /skill-create my-skill --from-observation
475
473
  ```
476
474
 
477
- This will:
478
-
479
475
  1. Search observations for patterns
480
476
  2. Extract relevant learnings
481
477
  3. Pre-populate skill with discovered knowledge
@@ -20,16 +20,9 @@ skill({ name: "writing-skills" });
20
20
 
21
21
  ### Find Skill Location
22
22
 
23
- ```bash
24
- # Check local skills first
25
- ls -la .opencode/skill/$ARGUMENTS/ 2>/dev/null
26
-
27
- # Check superpowers (shared skills)
28
- ls -la .opencode/superpowers/skills/$ARGUMENTS/ 2>/dev/null
29
-
30
- # Check installed skills
31
- ls -la ~/.opencode/skills/$ARGUMENTS/ 2>/dev/null
32
- ```
23
+ !`ls -la .opencode/skill/$ARGUMENTS/ 2>/dev/null`
24
+ !`ls -la .opencode/superpowers/skills/$ARGUMENTS/ 2>/dev/null`
25
+ !`ls -la ~/.opencode/skills/$ARGUMENTS/ 2>/dev/null`
33
26
 
34
27
  ### Load Current Content
35
28