opencodekit 0.21.10 → 0.23.0
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/README.md +1 -1
- package/dist/index.js +4 -25
- package/dist/template/.opencode/.template-manifest.json +115 -188
- package/dist/template/.opencode/AGENTS.md +127 -484
- package/dist/template/.opencode/README.md +2 -2
- package/dist/template/.opencode/agent/build.md +158 -356
- package/dist/template/.opencode/agent/explore.md +0 -1
- package/dist/template/.opencode/agent/plan.md +7 -16
- package/dist/template/.opencode/agent/review.md +0 -1
- package/dist/template/.opencode/agent/scout.md +2 -3
- package/dist/template/.opencode/agent/vision.md +0 -1
- package/dist/template/.opencode/artifacts/.active +1 -0
- package/dist/template/.opencode/artifacts/example/plan.md +12 -0
- package/dist/template/.opencode/artifacts/example/progress.md +4 -0
- package/dist/template/.opencode/artifacts/example/research.md +4 -0
- package/dist/template/.opencode/artifacts/example/spec.md +16 -0
- package/dist/template/.opencode/artifacts/todo.md +5 -0
- package/dist/template/.opencode/artifacts/verify.log +4 -0
- package/dist/template/.opencode/command/clarify.md +46 -0
- package/dist/template/.opencode/command/commit.md +53 -0
- package/dist/template/.opencode/command/create.md +29 -71
- package/dist/template/.opencode/command/design.md +1 -2
- package/dist/template/.opencode/command/explore.md +3 -4
- package/dist/template/.opencode/command/fix.md +55 -0
- package/dist/template/.opencode/command/improve-architecture.md +55 -0
- package/dist/template/.opencode/command/init.md +86 -69
- package/dist/template/.opencode/command/plan.md +30 -60
- package/dist/template/.opencode/command/pr.md +10 -28
- package/dist/template/.opencode/command/refactor.md +65 -0
- package/dist/template/.opencode/command/research.md +7 -29
- package/dist/template/.opencode/command/review-codebase.md +6 -13
- package/dist/template/.opencode/command/ship.md +136 -78
- package/dist/template/.opencode/command/test.md +66 -0
- package/dist/template/.opencode/command/ui-review.md +2 -4
- package/dist/template/.opencode/command/verify.md +15 -23
- package/dist/template/.opencode/dcp.jsonc +96 -85
- package/dist/template/.opencode/memory/README.md +4 -6
- package/dist/template/.opencode/memory/_templates/adr.md +45 -0
- package/dist/template/.opencode/memory/_templates/prd.md +1 -1
- package/dist/template/.opencode/memory/_templates/roadmap.md +1 -1
- package/dist/template/.opencode/memory/_templates/state.md +1 -1
- package/dist/template/.opencode/memory/project/gotchas.md +4 -4
- package/dist/template/.opencode/memory/project/project.md +2 -2
- package/dist/template/.opencode/memory/project/roadmap.md +1 -1
- package/dist/template/.opencode/memory/project/state.md +2 -2
- package/dist/template/.opencode/memory/project/tech-stack.md +2 -2
- package/dist/template/.opencode/memory/session-context.md +1 -1
- package/dist/template/.opencode/opencode.json +14 -152
- package/dist/template/.opencode/plugin/README.md +2 -2
- package/dist/template/.opencode/plugin/guard.ts +62 -0
- package/dist/template/.opencode/plugin/{lib/memory-admin-tools.ts → memory/admin.ts} +4 -4
- package/dist/template/.opencode/plugin/{lib → memory}/capture.ts +1 -1
- package/dist/template/.opencode/plugin/{lib → memory}/compile.ts +2 -2
- package/dist/template/.opencode/plugin/{lib → memory}/context.ts +1 -1
- package/dist/template/.opencode/plugin/{lib → memory}/curator.ts +1 -1
- package/dist/template/.opencode/plugin/{lib → memory}/db/observations.ts +102 -3
- package/dist/template/.opencode/plugin/{lib → memory}/db/schema.ts +43 -1
- package/dist/template/.opencode/plugin/{lib → memory}/db/types.ts +22 -0
- package/dist/template/.opencode/plugin/{lib/memory-db.ts → memory/db.ts} +1 -1
- package/dist/template/.opencode/plugin/{lib → memory}/distill.ts +1 -1
- package/dist/template/.opencode/plugin/{lib/memory-helpers.ts → memory/helpers.ts} +5 -1
- package/dist/template/.opencode/plugin/{lib/memory-hooks.ts → memory/hooks.ts} +1 -1
- package/dist/template/.opencode/plugin/{lib → memory}/index-generator.ts +2 -2
- package/dist/template/.opencode/plugin/{lib → memory}/inject.ts +1 -1
- package/dist/template/.opencode/plugin/{lib → memory}/lint.ts +2 -2
- package/dist/template/.opencode/plugin/memory/tools.ts +322 -0
- package/dist/template/.opencode/plugin/{lib → memory}/validate.ts +2 -2
- package/dist/template/.opencode/plugin/memory.ts +7 -17
- package/dist/template/.opencode/plugin/srcwalk.ts +721 -0
- package/dist/template/.opencode/skill/agent-code-quality-gate/SKILL.md +98 -0
- package/dist/template/.opencode/skill/behavioral-kernel/SKILL.md +52 -0
- package/dist/template/.opencode/skill/brainstorming/SKILL.md +1 -1
- package/dist/template/.opencode/skill/browser-testing-with-devtools/SKILL.md +85 -0
- package/dist/template/.opencode/skill/code-cleanup/SKILL.md +114 -0
- package/dist/template/.opencode/skill/code-navigation/SKILL.md +142 -0
- package/dist/template/.opencode/skill/code-review-and-quality/SKILL.md +131 -0
- package/dist/template/.opencode/skill/context-engineering/SKILL.md +1 -1
- package/dist/template/.opencode/skill/debugging-and-error-recovery/SKILL.md +109 -0
- package/dist/template/.opencode/skill/deep-module-design/SKILL.md +207 -0
- package/dist/template/.opencode/skill/development-lifecycle/SKILL.md +26 -45
- package/dist/template/.opencode/skill/gemini-large-context/SKILL.md +4 -4
- package/dist/template/.opencode/skill/git-workflow-and-versioning/SKILL.md +77 -0
- package/dist/template/.opencode/skill/grill-me/SKILL.md +140 -0
- package/dist/template/.opencode/skill/memory-system/SKILL.md +9 -10
- package/dist/template/.opencode/skill/opensrc/references/example-workflow.md +1 -1
- package/dist/template/.opencode/skill/planning-and-task-breakdown/SKILL.md +116 -0
- package/dist/template/.opencode/skill/shipping-and-launch/SKILL.md +95 -0
- package/dist/template/.opencode/skill/source-driven-development/SKILL.md +103 -0
- package/dist/template/.opencode/skill/spec-driven-development/SKILL.md +121 -0
- package/dist/template/.opencode/skill/srcwalk/SKILL.md +161 -0
- package/dist/template/.opencode/skill/subagent-driven-development/SKILL.md +1 -1
- package/dist/template/.opencode/skill/ubiquitous-language/SKILL.md +184 -0
- package/dist/template/.opencode/skill/using-git-worktrees/SKILL.md +6 -6
- package/dist/template/.opencode/skill/verification-before-completion/SKILL.md +6 -6
- package/dist/template/.opencode/skill/verification-before-completion/references/VERIFICATION_PROTOCOL.md +5 -5
- package/package.json +76 -76
- package/dist/template/.opencode/AGENT_ALIGNMENT.md +0 -564
- package/dist/template/.opencode/agent/painter.md +0 -83
- package/dist/template/.opencode/command/compound.md +0 -240
- package/dist/template/.opencode/command/curate.md +0 -299
- package/dist/template/.opencode/command/handoff.md +0 -149
- package/dist/template/.opencode/command/health.md +0 -356
- package/dist/template/.opencode/command/init-context.md +0 -297
- package/dist/template/.opencode/command/init-user.md +0 -125
- package/dist/template/.opencode/command/iterate.md +0 -200
- package/dist/template/.opencode/command/lfg.md +0 -173
- package/dist/template/.opencode/command/resume.md +0 -78
- package/dist/template/.opencode/command/status.md +0 -126
- package/dist/template/.opencode/command/ui-slop-check.md +0 -169
- package/dist/template/.opencode/plans/1768385996691-silent-wizard.md +0 -247
- package/dist/template/.opencode/plans/1770006237537-mighty-otter.md +0 -418
- package/dist/template/.opencode/plans/1770006913647-glowing-forest.md +0 -170
- package/dist/template/.opencode/plans/1770013678126-witty-planet.md +0 -278
- package/dist/template/.opencode/plans/1770112267595-shiny-rocket.md +0 -258
- package/dist/template/.opencode/plans/swarm-protocol.md +0 -123
- package/dist/template/.opencode/plugin/lib/memory-tools.ts +0 -535
- package/dist/template/.opencode/skill/agent-evals/SKILL.md +0 -208
- package/dist/template/.opencode/skill/anti-ai-slop/SKILL.md +0 -76
- package/dist/template/.opencode/skill/augment-context-engine/SKILL.md +0 -122
- package/dist/template/.opencode/skill/augment-context-engine/mcp.json +0 -6
- package/dist/template/.opencode/skill/beads/SKILL.md +0 -182
- package/dist/template/.opencode/skill/beads/references/BEST_PRACTICES.md +0 -27
- package/dist/template/.opencode/skill/beads/references/BOUNDARIES.md +0 -219
- package/dist/template/.opencode/skill/beads/references/DEPENDENCIES.md +0 -124
- package/dist/template/.opencode/skill/beads/references/EXAMPLES.md +0 -45
- package/dist/template/.opencode/skill/beads/references/FILE_CLAIMING.md +0 -101
- package/dist/template/.opencode/skill/beads/references/GIT_SYNC.md +0 -25
- package/dist/template/.opencode/skill/beads/references/HIERARCHY.md +0 -71
- package/dist/template/.opencode/skill/beads/references/MULTI_AGENT.md +0 -40
- package/dist/template/.opencode/skill/beads/references/RESUMABILITY.md +0 -177
- package/dist/template/.opencode/skill/beads/references/SESSION_PROTOCOL.md +0 -61
- package/dist/template/.opencode/skill/beads/references/TASK_CREATION.md +0 -38
- package/dist/template/.opencode/skill/beads/references/TROUBLESHOOTING.md +0 -38
- package/dist/template/.opencode/skill/beads/references/WORKFLOWS.md +0 -226
- package/dist/template/.opencode/skill/brand-asset-protocol/SKILL.md +0 -222
- package/dist/template/.opencode/skill/code-search-patterns/SKILL.md +0 -224
- package/dist/template/.opencode/skill/code-simplification/SKILL.md +0 -211
- package/dist/template/.opencode/skill/context-condensation/SKILL.md +0 -149
- package/dist/template/.opencode/skill/context-initialization/SKILL.md +0 -69
- package/dist/template/.opencode/skill/context-management/SKILL.md +0 -390
- package/dist/template/.opencode/skill/deep-research/SKILL.md +0 -384
- package/dist/template/.opencode/skill/design-direction-advisor/SKILL.md +0 -139
- package/dist/template/.opencode/skill/dispatching-parallel-agents/SKILL.md +0 -191
- package/dist/template/.opencode/skill/executing-plans/SKILL.md +0 -247
- package/dist/template/.opencode/skill/figma-go/SKILL.md +0 -65
- package/dist/template/.opencode/skill/finishing-a-development-branch/SKILL.md +0 -357
- package/dist/template/.opencode/skill/full-output-enforcement/SKILL.md +0 -62
- package/dist/template/.opencode/skill/gh-address-comments/SKILL.md +0 -29
- package/dist/template/.opencode/skill/gh-address-comments/scripts/fetch_comments.py +0 -237
- package/dist/template/.opencode/skill/gh-fix-ci/SKILL.md +0 -38
- package/dist/template/.opencode/skill/gh-fix-ci/scripts/inspect_pr_checks.py +0 -509
- package/dist/template/.opencode/skill/hi-fi-prototype-html/SKILL.md +0 -253
- package/dist/template/.opencode/skill/html-deck-export/SKILL.md +0 -189
- package/dist/template/.opencode/skill/index-knowledge/SKILL.md +0 -413
- package/dist/template/.opencode/skill/memory-grounding/SKILL.md +0 -68
- package/dist/template/.opencode/skill/playwriter/SKILL.md +0 -158
- package/dist/template/.opencode/skill/portless/SKILL.md +0 -109
- package/dist/template/.opencode/skill/prd/SKILL.md +0 -146
- package/dist/template/.opencode/skill/prd-task/SKILL.md +0 -182
- package/dist/template/.opencode/skill/prd-task/references/prd-schema.json +0 -124
- package/dist/template/.opencode/skill/prompt-leverage/SKILL.md +0 -90
- package/dist/template/.opencode/skill/prompt-leverage/references/framework.md +0 -91
- package/dist/template/.opencode/skill/prompt-leverage/scripts/augment_prompt.py +0 -157
- package/dist/template/.opencode/skill/receiving-code-review/SKILL.md +0 -263
- package/dist/template/.opencode/skill/reconcile/SKILL.md +0 -183
- package/dist/template/.opencode/skill/reflection-checkpoints/SKILL.md +0 -183
- package/dist/template/.opencode/skill/requesting-code-review/SKILL.md +0 -443
- package/dist/template/.opencode/skill/requesting-code-review/references/specialist-profiles.md +0 -108
- package/dist/template/.opencode/skill/requesting-code-review/review.md +0 -160
- package/dist/template/.opencode/skill/rtk-command-compression/SKILL.md +0 -134
- package/dist/template/.opencode/skill/screenshot/SKILL.md +0 -48
- package/dist/template/.opencode/skill/screenshot/scripts/ensure_macos_permissions.sh +0 -54
- package/dist/template/.opencode/skill/screenshot/scripts/macos_display_info.swift +0 -22
- package/dist/template/.opencode/skill/screenshot/scripts/macos_permissions.swift +0 -40
- package/dist/template/.opencode/skill/screenshot/scripts/macos_window_info.swift +0 -126
- package/dist/template/.opencode/skill/screenshot/scripts/take_screenshot.ps1 +0 -163
- package/dist/template/.opencode/skill/screenshot/scripts/take_screenshot.py +0 -585
- package/dist/template/.opencode/skill/security-threat-model/SKILL.md +0 -36
- package/dist/template/.opencode/skill/security-threat-model/references/prompt-template.md +0 -255
- package/dist/template/.opencode/skill/security-threat-model/references/security-controls-and-assets.md +0 -32
- package/dist/template/.opencode/skill/sharing-skills/SKILL.md +0 -214
- package/dist/template/.opencode/skill/skill-creator/SKILL.md +0 -181
- package/dist/template/.opencode/skill/skill-installer/SKILL.md +0 -58
- package/dist/template/.opencode/skill/skill-installer/scripts/github_utils.py +0 -21
- package/dist/template/.opencode/skill/skill-installer/scripts/install-skill-from-github.py +0 -313
- package/dist/template/.opencode/skill/skill-installer/scripts/list-skills.py +0 -106
- package/dist/template/.opencode/skill/swarm-coordination/SKILL.md +0 -244
- package/dist/template/.opencode/skill/swarm-coordination/references/architecture.md +0 -39
- package/dist/template/.opencode/skill/swarm-coordination/references/delegation-worker-protocol.md +0 -145
- package/dist/template/.opencode/skill/swarm-coordination/references/dependency-graph.md +0 -50
- package/dist/template/.opencode/skill/swarm-coordination/references/drift-check.md +0 -90
- package/dist/template/.opencode/skill/swarm-coordination/references/integration-beads.md +0 -20
- package/dist/template/.opencode/skill/swarm-coordination/references/launch-flow.md +0 -186
- package/dist/template/.opencode/skill/swarm-coordination/references/reconciler.md +0 -172
- package/dist/template/.opencode/skill/swarm-coordination/references/tier-enforcement.md +0 -78
- package/dist/template/.opencode/skill/swarm-coordination/references/tmux-integration.md +0 -134
- package/dist/template/.opencode/skill/systematic-debugging/SKILL.md +0 -402
- package/dist/template/.opencode/skill/terse-output-mode/SKILL.md +0 -95
- package/dist/template/.opencode/skill/think-in-code/SKILL.md +0 -136
- package/dist/template/.opencode/skill/ux-quality-gates/SKILL.md +0 -137
- package/dist/template/.opencode/skill/v1-run/SKILL.md +0 -175
- package/dist/template/.opencode/skill/v1-run/mcp.json +0 -6
- package/dist/template/.opencode/skill/verification-gates/SKILL.md +0 -63
- package/dist/template/.opencode/skill/visual-analysis/SKILL.md +0 -154
- package/dist/template/.opencode/skill/web-design-guidelines/SKILL.md +0 -46
- package/dist/template/.opencode/skill/workspace-setup/SKILL.md +0 -76
- package/dist/template/.opencode/skill/writing-plans/SKILL.md +0 -320
- /package/dist/template/.opencode/plugin/{lib → memory}/compact.ts +0 -0
- /package/dist/template/.opencode/plugin/{lib → memory}/db/graph.ts +0 -0
- /package/dist/template/.opencode/plugin/{lib → memory}/db/maintenance.ts +0 -0
- /package/dist/template/.opencode/plugin/{lib → memory}/db/pipeline.ts +0 -0
- /package/dist/template/.opencode/plugin/{lib → memory}/notify.ts +0 -0
- /package/dist/template/.opencode/plugin/{lib → memory}/operation-log.ts +0 -0
|
@@ -5,14 +5,12 @@ temperature: 0.2
|
|
|
5
5
|
permission:
|
|
6
6
|
write:
|
|
7
7
|
"*": ask
|
|
8
|
-
".
|
|
8
|
+
".opencode/artifacts/**/*.md": allow
|
|
9
9
|
".opencode/memory/**/*.md": allow
|
|
10
|
-
".opencode/plans/*.md": allow
|
|
11
10
|
edit:
|
|
12
11
|
"*": ask
|
|
13
|
-
".
|
|
12
|
+
".opencode/artifacts/**/*.md": allow
|
|
14
13
|
".opencode/memory/**/*.md": allow
|
|
15
|
-
".opencode/plans/*.md": allow
|
|
16
14
|
bash:
|
|
17
15
|
"*": allow
|
|
18
16
|
"rm*": deny
|
|
@@ -88,11 +86,11 @@ Planning follows a five-phase arc. Each phase has purpose; silence pockets allow
|
|
|
88
86
|
|
|
89
87
|
| Phase | Purpose | Actions | Silence Pocket |
|
|
90
88
|
| ------------- | ------------------------------------------- | ------------------------------------------------------------------------------- | --------------------------------------------------- |
|
|
91
|
-
| **Ground** | Establish in the problem space | Read
|
|
89
|
+
| **Ground** | Establish in the problem space | Read plan artifacts (`spec.md`, existing `plan.md`), check memory for prior work | Pause: "What do I actually know?" |
|
|
92
90
|
| **Calibrate** | Understand constraints and success criteria | Identify non-negotiables, define "done", assess risks | Assess: "Are requirements clear enough to proceed?" |
|
|
93
91
|
| **Transform** | Decompose into executable tasks | Create phases, define dependencies, assign complexity scores | None — active decomposition |
|
|
94
92
|
| **Release** | Write the actionable plan | Exact file paths, specific commands, verification steps | Review: "Can a stranger execute this?" |
|
|
95
|
-
| **Reset** | Handoff and checkpoint | Save to `.opencode/
|
|
93
|
+
| **Reset** | Handoff and checkpoint | Save to `.opencode/artifacts/<slug>/`, update memory, recommend next command | Silent: "What was learned for next time?" |
|
|
96
94
|
|
|
97
95
|
## Goal-Backward Methodology
|
|
98
96
|
|
|
@@ -307,7 +305,6 @@ observation({
|
|
|
307
305
|
narrative: "Phase 1 handles core logic, Phase 2 adds edge cases, Phase 3 polishes...",
|
|
308
306
|
facts: "3 phases, core-first, 2-week timeline",
|
|
309
307
|
concepts: "planning, decomposition, timeline",
|
|
310
|
-
bead_id: "<current-bead-id>",
|
|
311
308
|
});
|
|
312
309
|
```
|
|
313
310
|
|
|
@@ -352,12 +349,6 @@ observation({
|
|
|
352
349
|
|
|
353
350
|
## Skills
|
|
354
351
|
|
|
355
|
-
Always load:
|
|
356
|
-
|
|
357
|
-
```typescript
|
|
358
|
-
skill({ name: "beads" });
|
|
359
|
-
```
|
|
360
|
-
|
|
361
352
|
Load contextually:
|
|
362
353
|
|
|
363
354
|
| Situation | Skill |
|
|
@@ -389,11 +380,11 @@ When planning under constraint:
|
|
|
389
380
|
|
|
390
381
|
## Workflow
|
|
391
382
|
|
|
392
|
-
1. **Ground**: Read
|
|
383
|
+
1. **Ground**: Read plan artifacts (`spec.md`, `plan.md` if present); use `srcwalk map --scope src/` for codebase overview only when needed
|
|
393
384
|
2. **Calibrate**: Understand goal, constraints, and success criteria
|
|
394
385
|
3. **Transform**: Launch parallel research (`task` subagents) when uncertainty remains; use `srcwalk find <symbol> --scope src/` for fast codebase discovery; decompose into phases/tasks with explicit dependencies
|
|
395
386
|
4. **Release**: Write actionable plan with exact file paths, commands, verification, failure behavior, privacy/security notes, and open questions
|
|
396
|
-
5. **Reset**: End with a concrete next command (`/ship
|
|
387
|
+
5. **Reset**: End with a concrete next command (`/ship`, `/plan`, etc.)
|
|
397
388
|
|
|
398
389
|
**Code navigation:** Use srcwalk for AST-aware search and `map` for structural overview — see `code-search-patterns` skill.
|
|
399
390
|
|
|
@@ -462,7 +453,7 @@ How to confirm the entire plan succeeded.
|
|
|
462
453
|
|
|
463
454
|
## Next Command
|
|
464
455
|
|
|
465
|
-
`/ship
|
|
456
|
+
`/ship` or `/plan`
|
|
466
457
|
```
|
|
467
458
|
|
|
468
459
|
> _"The body is architecture. The breath is wiring. The rhythm is survival."_
|
|
@@ -4,17 +4,16 @@ mode: subagent
|
|
|
4
4
|
temperature: 0.2
|
|
5
5
|
steps: 30
|
|
6
6
|
tools:
|
|
7
|
-
memory-update: false
|
|
8
7
|
observation: false
|
|
9
8
|
todowrite: false
|
|
10
9
|
question: false
|
|
11
10
|
permission:
|
|
12
11
|
write:
|
|
13
12
|
"*": deny
|
|
14
|
-
".
|
|
13
|
+
".opencode/artifacts/**/*.md": allow
|
|
15
14
|
edit:
|
|
16
15
|
"*": deny
|
|
17
|
-
".
|
|
16
|
+
".opencode/artifacts/**/*.md": allow
|
|
18
17
|
bash:
|
|
19
18
|
"*": allow
|
|
20
19
|
"rm*": deny
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
example
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Example Feature
|
|
2
|
+
|
|
3
|
+
## Problem
|
|
4
|
+
[What needs to be built/fixed]
|
|
5
|
+
|
|
6
|
+
## Solution
|
|
7
|
+
[How to solve it]
|
|
8
|
+
|
|
9
|
+
## Affected Files
|
|
10
|
+
- `src/path/to/file.ts`
|
|
11
|
+
|
|
12
|
+
## Tasks
|
|
13
|
+
- [ ] [Task] → Verify: `npm run typecheck`
|
|
14
|
+
|
|
15
|
+
## Success Criteria
|
|
16
|
+
- Verify: `npm run typecheck && npm run lint`
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Reduce ambiguity before planning or implementation
|
|
3
|
+
argument-hint: "<request> [--quick|--deep]"
|
|
4
|
+
agent: build
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Clarify: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
Reduce ambiguity before planning or implementation. Use when the request is real but still fuzzy.
|
|
10
|
+
|
|
11
|
+
## Load Skills
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
skill({ name: "brainstorming" });
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Parse Arguments
|
|
18
|
+
|
|
19
|
+
| Argument | Default | Description |
|
|
20
|
+
|---|---|---|
|
|
21
|
+
| `<request>` | required | Freeform request text |
|
|
22
|
+
| `--quick` | false | Minimize to 1-3 high-leverage questions |
|
|
23
|
+
| `--deep` | false | Cover non-goals, risks, interfaces, success criteria |
|
|
24
|
+
|
|
25
|
+
**Mode rules:** Default → make next command obvious. `--quick` → 1-3 questions. `--deep` → exhaustive. `--deep` wins if both appear.
|
|
26
|
+
|
|
27
|
+
## When to Use / Not Use
|
|
28
|
+
|
|
29
|
+
**Use:** Request is fuzzy, scope unclear, multiple interpretations of "done," `/plan` would be premature because main decision is unresolved.
|
|
30
|
+
**Skip:** Request is specific enough to plan directly, task is mechanical, ambiguity is only about codebase facts you can inspect.
|
|
31
|
+
|
|
32
|
+
## Core Rules
|
|
33
|
+
|
|
34
|
+
- **Inspect first, ask second** — never ask for codebase facts you can discover directly
|
|
35
|
+
- **One question at a time** — each must reduce a real ambiguity
|
|
36
|
+
- **Prefer structured choices** (multiple choice, yes/no)
|
|
37
|
+
- **Surface non-goals explicitly** — what should *not* change is as important as what should
|
|
38
|
+
- **Stop once the next command is obvious**
|
|
39
|
+
|
|
40
|
+
## Process
|
|
41
|
+
|
|
42
|
+
1. Read request, identify unknowns blocking execution
|
|
43
|
+
2. Search memory, check existing patterns
|
|
44
|
+
3. Ask questions one at a time, resolve before next
|
|
45
|
+
4. Surface non-goals and constraints
|
|
46
|
+
5. Recommend next command: `/plan`, `/create`, `/ship`, or `/design`
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create a well-structured conventional commit from staged or unstaged changes
|
|
3
|
+
argument-hint: "[--all] [--amend] [message override]"
|
|
4
|
+
agent: build
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Commit: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
Create a well-structured conventional commit from current changes.
|
|
10
|
+
|
|
11
|
+
## Load Skills
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
skill({ name: "verification-before-completion" });
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Process
|
|
18
|
+
|
|
19
|
+
### Phase 1: Inspect Changes
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
git status --short
|
|
23
|
+
git diff --cached --stat # if staged
|
|
24
|
+
git diff --stat # if unstaged
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Phase 2: Review Diffs
|
|
28
|
+
|
|
29
|
+
Read each changed file. Look for:
|
|
30
|
+
- Debug code, console.log, TODOs that should be resolved
|
|
31
|
+
- Accidental changes outside scope
|
|
32
|
+
- Missing error handling or edge cases
|
|
33
|
+
|
|
34
|
+
### Phase 3: Construct Commit
|
|
35
|
+
|
|
36
|
+
Format: `type(scope): description`
|
|
37
|
+
|
|
38
|
+
Types: `feat` (feature), `fix` (bug), `test` (test-only), `refactor` (no behavior change), `chore` (config/tooling), `docs`, `style`, `perf`.
|
|
39
|
+
|
|
40
|
+
### Phase 4: Commit
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
git add <files> # stage specific files — never git add .
|
|
44
|
+
git commit -m "type(scope): description
|
|
45
|
+
|
|
46
|
+
- bullet points of key changes"
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Phase 5: Verify
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
git log --oneline -3
|
|
53
|
+
```
|
|
@@ -1,34 +1,20 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Create a
|
|
3
|
-
argument-hint: "<description>
|
|
2
|
+
description: Create a specification with PRD, tasks, and workspace setup
|
|
3
|
+
argument-hint: "<description>"
|
|
4
4
|
agent: build
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Create: $ARGUMENTS
|
|
8
8
|
|
|
9
|
-
Create a
|
|
9
|
+
Create a specification (PRD), set up workspace, and define executable tasks — ready for `/ship`.
|
|
10
10
|
|
|
11
|
-
> **Workflow:** **`/create`** → `/ship
|
|
12
|
-
>
|
|
13
|
-
> Use `--spec-only` to create the specification without claiming or setting up workspace.
|
|
14
|
-
|
|
15
|
-
## Load Skills
|
|
16
|
-
|
|
17
|
-
```typescript
|
|
18
|
-
skill({ name: "beads" });
|
|
19
|
-
skill({ name: "memory-grounding" });
|
|
20
|
-
skill({ name: "workspace-setup" });
|
|
21
|
-
skill({ name: "prd" }); // PRD template guidance
|
|
22
|
-
skill({ name: "prd-task" }); // PRD → executable tasks (Phase 8)
|
|
23
|
-
```
|
|
11
|
+
> **Workflow:** **`/create`** → `/ship`
|
|
24
12
|
|
|
25
13
|
## Parse Arguments
|
|
26
14
|
|
|
27
15
|
| Argument | Default | Description |
|
|
28
16
|
| --------------- | ------------- | ----------------------------------------- |
|
|
29
17
|
| `<description>` | required | What to build/fix (quoted string) |
|
|
30
|
-
| `--type` | auto-detected | Override: epic, feature, task, bug |
|
|
31
|
-
| `--spec-only` | false | Create spec without claiming or workspace |
|
|
32
18
|
|
|
33
19
|
## Determine Input Type
|
|
34
20
|
|
|
@@ -36,13 +22,12 @@ skill({ name: "prd-task" }); // PRD → executable tasks (Phase 8)
|
|
|
36
22
|
| ----------- | -------------------- | ----------------------------- |
|
|
37
23
|
| Quoted text | `"description here"` | Create PRD from description |
|
|
38
24
|
| Short form | Simple string | Ask for more detail if needed |
|
|
39
|
-
| `--type` | Flag provided | Use provided type |
|
|
40
25
|
|
|
41
26
|
## Before You Create
|
|
42
27
|
|
|
43
|
-
- **Be certain**: Only create
|
|
28
|
+
- **Be certain**: Only create specs you're confident have clear scope
|
|
44
29
|
- **Don't over-spec**: If the description is vague, ask clarifying questions first
|
|
45
|
-
- **Check duplicates**: Always
|
|
30
|
+
- **Check duplicates**: Always check for existing work
|
|
46
31
|
- **No implementation**: This command creates specs and workspace — don't write implementation code
|
|
47
32
|
- **Verify PRD**: Before saving, verify all sections are filled (no placeholders)
|
|
48
33
|
- **Flag uncertainty**: Use `[NEEDS CLARIFICATION]` markers for unknowns — never guess silently
|
|
@@ -53,30 +38,16 @@ skill({ name: "prd-task" }); // PRD → executable tasks (Phase 8)
|
|
|
53
38
|
| --------- | -------------------------------------------- |
|
|
54
39
|
| `explore` | Finding patterns in codebase, affected files |
|
|
55
40
|
| `scout` | External research, best practices |
|
|
56
|
-
| `br` | Creating and managing beads |
|
|
57
41
|
|
|
58
42
|
## Phase 1: Duplicate Check
|
|
59
43
|
|
|
60
44
|
### Memory Search
|
|
61
45
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
### Bead List Check
|
|
65
|
-
|
|
66
|
-
```bash
|
|
67
|
-
br list --status=open --status=in_progress
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
If a matching bead exists, stop and tell the user to use `/ship <id>` instead.
|
|
71
|
-
|
|
72
|
-
## Phase 2: Classify Type
|
|
46
|
+
Search memory for: prior decisions, similar work.
|
|
73
47
|
|
|
74
|
-
|
|
48
|
+
### Existing Work Check
|
|
75
49
|
|
|
76
|
-
|
|
77
|
-
- **feature**: New capability, scoped (add, implement, build, integrate)
|
|
78
|
-
- **bug**: Something broken (fix, error, crash, not working)
|
|
79
|
-
- **task**: Tactical change, clear scope (everything else)
|
|
50
|
+
Check `.opencode/artifacts/.active` for existing work in progress. If active slug exists with a `spec.md`, ask user if they want to continue with `/ship` instead.
|
|
80
51
|
|
|
81
52
|
## Phase 3: Choose Research Depth
|
|
82
53
|
|
|
@@ -136,16 +107,19 @@ Based on research depth choice, spawn agents:
|
|
|
136
107
|
|
|
137
108
|
**While agents run**, ask clarifying questions if the description lacks scope or expected outcome. For bugs, also ask for reproduction steps and expected vs actual behavior.
|
|
138
109
|
|
|
139
|
-
## Phase 5:
|
|
110
|
+
## Phase 5: Initialize Plan
|
|
140
111
|
|
|
141
|
-
Extract
|
|
112
|
+
Extract title and description from `$ARGUMENTS`:
|
|
142
113
|
|
|
143
114
|
- If user provided a single line, use it for both title and description.
|
|
144
115
|
- If user provided multiple lines, use first line as title and full text as description.
|
|
145
116
|
|
|
117
|
+
Derive a kebab-case slug from the title. This slug becomes the feature's namespace:
|
|
118
|
+
|
|
146
119
|
```bash
|
|
147
|
-
|
|
148
|
-
mkdir -p ".
|
|
120
|
+
SLUG=$(echo "$TITLE" | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9 ]//g' | tr ' ' '-' | sed 's/--*/-/g; s/^-//; s/-$//')
|
|
121
|
+
mkdir -p ".opencode/artifacts/$SLUG"
|
|
122
|
+
echo "$SLUG" > ".opencode/artifacts/.active"
|
|
149
123
|
```
|
|
150
124
|
|
|
151
125
|
## Phase 6: Determine PRD Rigor
|
|
@@ -154,13 +128,12 @@ Not every change needs a full spec. Assess complexity to choose the right PRD le
|
|
|
154
128
|
|
|
155
129
|
| Signal | Lite PRD | Full PRD |
|
|
156
130
|
| --- | --- | --- |
|
|
157
|
-
|
|
|
131
|
+
| Scope | Simple, single-concern | Cross-cutting, multi-system |
|
|
158
132
|
| Files affected | 1-3 | 4+ |
|
|
159
|
-
| Scope | Clear, single-concern | Cross-cutting, multi-system |
|
|
160
133
|
| Research depth | Skip or Minimal | Standard or Deep |
|
|
161
134
|
| Description | "Fix X in Y" | "Implement X with Y and Z" |
|
|
162
135
|
|
|
163
|
-
**Auto-detect:** If
|
|
136
|
+
**Auto-detect:** If research was Skip/Minimal AND description is a single sentence → default to Lite.
|
|
164
137
|
|
|
165
138
|
### Lite PRD Format
|
|
166
139
|
|
|
@@ -190,7 +163,7 @@ For simple, well-scoped work (bugs, small tasks):
|
|
|
190
163
|
|
|
191
164
|
For features and complex work, use the full template:
|
|
192
165
|
|
|
193
|
-
Read the PRD template
|
|
166
|
+
Read the PRD template and write it to the active feature's spec (`.opencode/artifacts/$(cat .opencode/artifacts/.active)/spec.md`).
|
|
194
167
|
|
|
195
168
|
## Phase 7: Write PRD
|
|
196
169
|
|
|
@@ -214,7 +187,7 @@ Copy and fill the PRD template (lite or full) using context from Phase 4.
|
|
|
214
187
|
|
|
215
188
|
### Task Format
|
|
216
189
|
|
|
217
|
-
Tasks must follow
|
|
190
|
+
Tasks must follow this format:
|
|
218
191
|
|
|
219
192
|
- Title with `[category]` tag
|
|
220
193
|
- One-sentence **end state** description (not step-by-step)
|
|
@@ -236,32 +209,22 @@ Before saving, verify:
|
|
|
236
209
|
|
|
237
210
|
If any check fails, fix it — don't ask the user.
|
|
238
211
|
|
|
239
|
-
## Phase 9:
|
|
240
|
-
|
|
241
|
-
**If `--spec-only` was passed, skip to Phase 12 (Report).**
|
|
212
|
+
## Phase 9: Prepare Workspace
|
|
242
213
|
|
|
243
214
|
### Workspace Check
|
|
244
215
|
|
|
245
216
|
```bash
|
|
246
217
|
git status --porcelain
|
|
247
218
|
git branch --show-current
|
|
248
|
-
br list --status=in_progress
|
|
249
219
|
```
|
|
250
220
|
|
|
251
221
|
- If uncommitted changes: ask user to stash, commit, or continue
|
|
252
|
-
- If other tasks in progress: warn before claiming another
|
|
253
|
-
|
|
254
|
-
### Claim Bead
|
|
255
|
-
|
|
256
|
-
```bash
|
|
257
|
-
br update $BEAD_ID --status in_progress
|
|
258
|
-
```
|
|
259
222
|
|
|
260
223
|
### Create Branch
|
|
261
224
|
|
|
262
225
|
### Workspace Setup
|
|
263
226
|
|
|
264
|
-
|
|
227
|
+
Set up the workspace: create branch, install deps if needed.
|
|
265
228
|
|
|
266
229
|
Additionally offer a "Create worktree" option:
|
|
267
230
|
|
|
@@ -271,21 +234,16 @@ skill({ name: "using-git-worktrees" });
|
|
|
271
234
|
|
|
272
235
|
## Phase 10: Convert PRD to Tasks
|
|
273
236
|
|
|
274
|
-
|
|
237
|
+
Convert PRD markdown → executable JSON (`prd.json`).
|
|
275
238
|
|
|
276
239
|
## Phase 11: Report
|
|
277
240
|
|
|
278
241
|
Output:
|
|
279
242
|
|
|
280
|
-
1.
|
|
281
|
-
2.
|
|
282
|
-
3.
|
|
283
|
-
4.
|
|
284
|
-
5. Next step: `/ship $BEAD_ID` (or `/plan $BEAD_ID` for complex work)
|
|
285
|
-
|
|
286
|
-
```bash
|
|
287
|
-
br comments add $BEAD_ID "Created prd.md with [N] tasks, [M] success criteria"
|
|
288
|
-
```
|
|
243
|
+
1. Summary: task count, success criteria count, affected files count
|
|
244
|
+
2. Branch name and workspace (if claimed)
|
|
245
|
+
3. Active feature: `.opencode/artifacts/$(cat .opencode/artifacts/.active)/`
|
|
246
|
+
4. Next step: `/ship` (or `/plan` for complex work)
|
|
289
247
|
|
|
290
248
|
---
|
|
291
249
|
|
|
@@ -294,5 +252,5 @@ br comments add $BEAD_ID "Created prd.md with [N] tasks, [M] success criteria"
|
|
|
294
252
|
| Need | Command |
|
|
295
253
|
| ------------------ | ------------ |
|
|
296
254
|
| Research first | `/research` |
|
|
297
|
-
| Plan after spec | `/plan
|
|
298
|
-
| Implement and ship | `/ship
|
|
255
|
+
| Plan after spec | `/plan` |
|
|
256
|
+
| Implement and ship | `/ship` |
|
|
@@ -25,7 +25,6 @@ Design a component, page, or design system with a clear aesthetic point of view.
|
|
|
25
25
|
|
|
26
26
|
```typescript
|
|
27
27
|
skill({ name: "frontend-design" }); // Design system guidance, anti-patterns, references
|
|
28
|
-
skill({ name: "ux-quality-gates" }); // IA, forms, recovery, loading, usability gates
|
|
29
28
|
```
|
|
30
29
|
|
|
31
30
|
---
|
|
@@ -66,7 +65,7 @@ State these decisions explicitly:
|
|
|
66
65
|
5. **State model** — empty, loading, error, success, disabled, and optimistic states required
|
|
67
66
|
6. **Pattern selection** — form, table/list/grid, notification, modal, or navigation pattern if applicable
|
|
68
67
|
|
|
69
|
-
|
|
68
|
+
Keep these decisions concrete and explicit.
|
|
70
69
|
|
|
71
70
|
---
|
|
72
71
|
|
|
@@ -6,7 +6,7 @@ agent: plan
|
|
|
6
6
|
|
|
7
7
|
# Explore: $ARGUMENTS
|
|
8
8
|
|
|
9
|
-
Think through an idea, problem, or approach with structured alternatives and tradeoffs — before committing to a
|
|
9
|
+
Think through an idea, problem, or approach with structured alternatives and tradeoffs — before committing to a plan.
|
|
10
10
|
|
|
11
11
|
> **Workflow:** **`/explore`** → `/create` (if worth pursuing) or discard
|
|
12
12
|
>
|
|
@@ -18,7 +18,6 @@ Think through an idea, problem, or approach with structured alternatives and tra
|
|
|
18
18
|
|
|
19
19
|
```typescript
|
|
20
20
|
skill({ name: "brainstorming" }); // Collaborative refinement
|
|
21
|
-
skill({ name: "memory-grounding" }); // Load past decisions
|
|
22
21
|
```
|
|
23
22
|
|
|
24
23
|
## Phase 1: Ground
|
|
@@ -134,8 +133,8 @@ Write the proposal as a structured document:
|
|
|
134
133
|
`/create "[description based on chosen approach]"`
|
|
135
134
|
```
|
|
136
135
|
|
|
137
|
-
**If a
|
|
138
|
-
**If no
|
|
136
|
+
**If a plan exists:** Save to `.opencode/artifacts/$(cat .opencode/artifacts/.active)/research.md`
|
|
137
|
+
**If no plan:** Display inline, don't create files.
|
|
139
138
|
|
|
140
139
|
## Phase 6: Ask User
|
|
141
140
|
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Debug and fix a bug or failing test
|
|
3
|
+
argument-hint: "<description of bug or error>"
|
|
4
|
+
agent: build
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Fix: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
Systematically debug and fix the reported issue.
|
|
10
|
+
|
|
11
|
+
## Load Skills
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
skill({ name: "root-cause-tracing" });
|
|
15
|
+
skill({ name: "verification-before-completion" });
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Process
|
|
19
|
+
|
|
20
|
+
### Phase 1: Reproduce
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Reproduce the issue with the exact steps or command
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Phase 2: Isolate
|
|
27
|
+
|
|
28
|
+
- Search for the error message or symptom in the codebase
|
|
29
|
+
- Trace the execution path to find the root cause
|
|
30
|
+
- Read the 2-4 most relevant files
|
|
31
|
+
- Distinguish symptom from root cause
|
|
32
|
+
|
|
33
|
+
### Phase 3: Fix
|
|
34
|
+
|
|
35
|
+
- Apply the minimal fix for the root cause
|
|
36
|
+
- Do not add speculative guards, tolerant readers, or defensive copies
|
|
37
|
+
- Prefer making the bad state impossible over handling all bad states
|
|
38
|
+
|
|
39
|
+
### Phase 4: Verify
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
npm run typecheck
|
|
43
|
+
npm run lint
|
|
44
|
+
npm test # or vitest relevant test
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
If verification fails twice on the same approach, escalate with learnings.
|
|
48
|
+
|
|
49
|
+
## Output
|
|
50
|
+
|
|
51
|
+
Report:
|
|
52
|
+
1. Root cause (with file:line)
|
|
53
|
+
2. Fix applied
|
|
54
|
+
3. Verification results
|
|
55
|
+
4. What else was considered and rejected
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Proactive architecture health check — find shallow modules, propose deep-module redesigns
|
|
3
|
+
argument-hint: "[path|module|'all'] [--scope surface|deep]"
|
|
4
|
+
agent: review
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Improve Architecture: $ARGUMENTS
|
|
8
|
+
|
|
9
|
+
Proactive architecture health check. Find shallow modules and propose deep-module redesigns.
|
|
10
|
+
|
|
11
|
+
## Load Skills
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
skill({ name: "deep-module-design" });
|
|
15
|
+
skill({ name: "verification-before-completion" });
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Architecture Check
|
|
19
|
+
|
|
20
|
+
Apply Ousterhout's deep module principles:
|
|
21
|
+
- **Small interface** — does this module expose more than it should?
|
|
22
|
+
- **Information hiding** — are implementation details leaking?
|
|
23
|
+
- **Pull complexity downward** — are callers doing work the module should own?
|
|
24
|
+
|
|
25
|
+
## Process
|
|
26
|
+
|
|
27
|
+
### Phase 1: Scan
|
|
28
|
+
|
|
29
|
+
If path given, focus on that directory. If `all`, scan the full project.
|
|
30
|
+
|
|
31
|
+
For each module, assess:
|
|
32
|
+
- Lines of interface vs lines of implementation
|
|
33
|
+
- Number of callers and how they use it
|
|
34
|
+
- What knowledge is embedded but not encapsulated
|
|
35
|
+
- What would break if the module were redesigned
|
|
36
|
+
|
|
37
|
+
### Phase 2: Propose
|
|
38
|
+
|
|
39
|
+
For each finding:
|
|
40
|
+
|
|
41
|
+
| Module | Issue | Proposed Redesign | Effort | Risk |
|
|
42
|
+
|---|---|---|---|---|
|
|
43
|
+
| path/to/module | Shallow interface exposing internals | Encapsulate behind 3 functions | M | Low |
|
|
44
|
+
|
|
45
|
+
### Phase 3: Prioritize
|
|
46
|
+
|
|
47
|
+
Rank proposals by impact/effort ratio. Recommend top 1-3 changes worth making.
|
|
48
|
+
|
|
49
|
+
## Output
|
|
50
|
+
|
|
51
|
+
Report:
|
|
52
|
+
1. Modules reviewed
|
|
53
|
+
2. Findings (current issue, proposed redesign, effort, risk)
|
|
54
|
+
3. Top recommendations
|
|
55
|
+
4. Quick wins (S-effort changes)
|