clikit-plugin 0.2.45 → 0.2.46
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/AGENTS.md +69 -3
- package/README.md +128 -92
- package/command/commit.md +1 -1
- package/command/create.md +65 -8
- package/command/debug.md +1 -1
- package/command/design.md +183 -43
- package/command/handoff.md +1 -1
- package/command/import-plan.md +2 -2
- package/command/init.md +1 -1
- package/command/issue.md +3 -4
- package/command/pr.md +1 -1
- package/command/research.md +5 -7
- package/command/resume.md +1 -1
- package/command/ship.md +29 -32
- package/command/start.md +38 -27
- package/command/{status-beads.md → status.md} +2 -3
- package/command/verify.md +132 -48
- package/dist/.tsbuildinfo +1 -1
- package/dist/agents/index.d.ts +0 -0
- package/dist/agents/index.d.ts.map +0 -0
- package/dist/beads-context.test.d.ts +2 -0
- package/dist/beads-context.test.d.ts.map +1 -0
- package/dist/cli.d.ts +0 -0
- package/dist/cli.d.ts.map +0 -0
- package/dist/cli.js +5 -0
- package/dist/cli.test.d.ts +0 -0
- package/dist/cli.test.d.ts.map +0 -0
- package/dist/clikit.schema.json +32 -11
- package/dist/clilog.test.d.ts +0 -0
- package/dist/clilog.test.d.ts.map +0 -0
- package/dist/commands/index.d.ts +0 -0
- package/dist/commands/index.d.ts.map +0 -0
- package/dist/config.d.ts +15 -7
- package/dist/config.d.ts.map +1 -1
- package/dist/config.test.d.ts +0 -0
- package/dist/config.test.d.ts.map +0 -0
- package/dist/hooks/beads-context.d.ts +2 -0
- package/dist/hooks/beads-context.d.ts.map +1 -1
- package/dist/hooks/empty-message-sanitizer.d.ts +0 -0
- package/dist/hooks/empty-message-sanitizer.d.ts.map +0 -0
- package/dist/hooks/error-logger.d.ts +0 -0
- package/dist/hooks/error-logger.d.ts.map +0 -0
- package/dist/hooks/git-guard.d.ts +0 -0
- package/dist/hooks/git-guard.d.ts.map +0 -0
- package/dist/hooks/index.d.ts +0 -2
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/memory-digest.d.ts +1 -0
- package/dist/hooks/memory-digest.d.ts.map +1 -1
- package/dist/hooks/security-check.d.ts +0 -0
- package/dist/hooks/security-check.d.ts.map +0 -0
- package/dist/hooks/subagent-question-blocker.d.ts +0 -0
- package/dist/hooks/subagent-question-blocker.d.ts.map +0 -0
- package/dist/hooks/todo-beads-sync.d.ts +1 -0
- package/dist/hooks/todo-beads-sync.d.ts.map +1 -1
- package/dist/hooks/todo-enforcer.d.ts +1 -1
- package/dist/hooks/todo-enforcer.d.ts.map +1 -1
- package/dist/hooks/truncator.d.ts +0 -0
- package/dist/hooks/truncator.d.ts.map +0 -0
- package/dist/index.d.ts +0 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +250 -576
- package/dist/skills/index.d.ts +0 -0
- package/dist/skills/index.d.ts.map +0 -0
- package/dist/tools/cass-memory.d.ts +0 -0
- package/dist/tools/cass-memory.d.ts.map +0 -0
- package/dist/tools/context-summary.d.ts +0 -0
- package/dist/tools/context-summary.d.ts.map +0 -0
- package/dist/tools/index.d.ts +0 -3
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/memory-db.d.ts +0 -0
- package/dist/tools/memory-db.d.ts.map +0 -0
- package/dist/tools/memory.d.ts +0 -0
- package/dist/tools/memory.d.ts.map +0 -0
- package/dist/tools/observation.d.ts +0 -0
- package/dist/tools/observation.d.ts.map +0 -0
- package/dist/types.d.ts +0 -0
- package/dist/types.d.ts.map +0 -0
- package/memory/_digest.md +1 -1
- package/memory/_templates/handoff.md +0 -0
- package/memory/_templates/plan.md +35 -0
- package/memory/_templates/prd.md +0 -0
- package/memory/_templates/research.md +0 -0
- package/memory/_templates/review.md +0 -0
- package/memory/_templates/spec.md +12 -0
- package/memory/beads/.gitkeep +0 -0
- package/memory/handoffs/.gitkeep +0 -0
- package/memory/memory.db +0 -0
- package/memory/plans/.gitkeep +0 -0
- package/memory/prds/.gitkeep +0 -0
- package/memory/research/.gitkeep +0 -0
- package/memory/reviews/.gitkeep +0 -0
- package/memory/specs/.gitkeep +0 -0
- package/package.json +4 -4
- package/skill/beads/SKILL.md +42 -43
- package/skill/beads/mcp.json +26 -0
- package/skill/beads/references/api-reference.md +64 -0
- package/skill/chrome-devtools/SKILL.md +22 -23
- package/skill/chrome-devtools/mcp.json +17 -0
- package/skill/chrome-devtools/references/tool-reference.md +63 -0
- package/skill/condition-based-waiting/SKILL.md +28 -66
- package/skill/deep-research/SKILL.md +34 -103
- package/skill/deep-research/mcp.json +21 -0
- package/skill/deep-research/references/lsp-ops.md +44 -0
- package/skill/defense-in-depth/SKILL.md +29 -69
- package/skill/executing-plans/SKILL.md +25 -34
- package/skill/finishing-a-development-branch/SKILL.md +28 -89
- package/skill/playwright/SKILL.md +27 -22
- package/skill/playwright/mcp.json +20 -0
- package/skill/playwright/references/tool-reference.md +64 -0
- package/skill/receiving-code-review/SKILL.md +16 -27
- package/skill/requesting-code-review/SKILL.md +22 -26
- package/skill/ritual-workflow/SKILL.md +22 -82
- package/skill/root-cause-tracing/SKILL.md +30 -54
- package/skill/session-management/SKILL.md +21 -40
- package/skill/source-code-research/SKILL.md +33 -102
- package/skill/source-code-research/mcp.json +13 -0
- package/skill/source-code-research/references/quick-ref.md +65 -0
- package/skill/systematic-debugging/SKILL.md +28 -41
- package/skill/systematic-debugging/references/patterns.md +71 -0
- package/skill/test-driven-development/SKILL.md +16 -40
- package/skill/testing-anti-patterns/SKILL.md +36 -64
- package/skill/testing-anti-patterns/references/decision-matrix.md +55 -0
- package/skill/using-git-worktrees/SKILL.md +27 -103
- package/skill/vercel-react-best-practices/SKILL.md +50 -139
- package/skill/vercel-react-best-practices/references/patterns.md +70 -0
- package/skill/verification-before-completion/SKILL.md +19 -37
- package/skill/writing-plans/SKILL.md +20 -32
- package/skill/writing-skills/SKILL.md +52 -41
- package/skill/writing-skills/references/skill-anatomy.md +210 -0
- package/src/agents/AGENTS.md +48 -18
- package/src/agents/build.md +342 -93
- package/src/agents/explore.md +77 -60
- package/src/agents/index.ts +0 -0
- package/src/agents/oracle.md +153 -63
- package/src/agents/plan.md +275 -110
- package/src/agents/research.md +71 -53
- package/src/agents/review.md +182 -61
- package/src/agents/vision.md +7 -5
- package/command/plan.md +0 -152
- package/command/review-codebase.md +0 -228
- package/command/review.md +0 -135
- package/command/vision.md +0 -210
- package/dist/hooks/swarm-enforcer.d.ts +0 -31
- package/dist/hooks/swarm-enforcer.d.ts.map +0 -1
- package/dist/tools/beads-memory-sync.d.ts +0 -17
- package/dist/tools/beads-memory-sync.d.ts.map +0 -1
- package/dist/tools/quick-research.d.ts +0 -16
- package/dist/tools/quick-research.d.ts.map +0 -1
- package/dist/tools/swarm.d.ts +0 -57
- package/dist/tools/swarm.d.ts.map +0 -1
- package/skill/accessibility-audit/SKILL.md +0 -115
- package/skill/beads-bridge/SKILL.md +0 -45
- package/skill/brainstorming/SKILL.md +0 -41
- package/skill/cass-village/SKILL.md +0 -217
- package/skill/cloudflare/SKILL.md +0 -96
- package/skill/design-system-audit/SKILL.md +0 -136
- package/skill/development-lifecycle/SKILL.md +0 -58
- package/skill/dispatching-parallel-agents/SKILL.md +0 -94
- package/skill/figma/SKILL.md +0 -34
- package/skill/frontend-aesthetics/SKILL.md +0 -63
- package/skill/gemini-large-context/SKILL.md +0 -80
- package/skill/mockup-to-code/SKILL.md +0 -98
- package/skill/mqdh/SKILL.md +0 -54
- package/skill/notebooklm/SKILL.md +0 -71
- package/skill/playwriter/SKILL.md +0 -56
- package/skill/polar/SKILL.md +0 -39
- package/skill/resend/SKILL.md +0 -85
- package/skill/sharing-skills/SKILL.md +0 -50
- package/skill/subagent-driven-development/SKILL.md +0 -69
- package/skill/supabase/SKILL.md +0 -80
- package/skill/supabase-postgres-best-practices/SKILL.md +0 -168
- package/skill/swarm-coordination/SKILL.md +0 -54
- package/skill/testing-skills-with-subagents/SKILL.md +0 -102
- package/skill/ui-ux-research/SKILL.md +0 -93
- package/skill/v0/SKILL.md +0 -67
- package/skill/v1-run/SKILL.md +0 -85
- package/skill/visual-analysis/SKILL.md +0 -113
package/AGENTS.md
CHANGED
|
@@ -8,18 +8,27 @@ The plugin (`src/index.ts`) loads agents from `src/agents/*.md`, commands from `
|
|
|
8
8
|
|
|
9
9
|
## Workflow
|
|
10
10
|
|
|
11
|
+
**Quick mode** (simple features):
|
|
11
12
|
```
|
|
12
|
-
/create → /
|
|
13
|
+
/create → /start → /ship → /verify
|
|
13
14
|
```
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
**Deep mode** (complex features, research, UI):
|
|
17
|
+
```
|
|
18
|
+
/create → /research → /design → /start → /ship → /verify
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
- `/create` produces both spec and plan — `/start` works directly from this output
|
|
22
|
+
- `/verify` is the pre-ship gate — run before `/ship` finalizes
|
|
23
|
+
- `/research` = external docs, API comparison, library research
|
|
24
|
+
- `/design` = UI/UX design and implementation (uses Vision agent)
|
|
16
25
|
|
|
17
26
|
## Where to Find Things
|
|
18
27
|
|
|
19
28
|
- **Agent behavior**: Read the specific agent's `.md` file in `src/agents/` — each has full instructions in its prompt.
|
|
20
29
|
- **Commands**: `command/*.md` — each slash command's template and instructions.
|
|
21
30
|
- **Skills**: `skill/*/SKILL.md` — load relevant skills before tasks. List available skills with `ls skill/`.
|
|
22
|
-
- **Schemas**: `@.opencode/schemas.md` — canonical schemas for tasks, beads, delegation, artifacts.
|
|
31
|
+
- **Schemas**: `@.opencode/schemas.md` — canonical schemas for tasks, beads, delegation, artifacts, and Task Packets.
|
|
23
32
|
- **Templates**: `memory/_templates/*.md` — templates for specs, plans, research, reviews, handoffs, PRDs.
|
|
24
33
|
- **Memory**: `memory/_digest.md` (auto-generated from SQLite observations on session start), plus `memory/specs/`, `memory/plans/`, `memory/research/`, `memory/handoffs/`.
|
|
25
34
|
- **Config**: `clikit.config.json` — enable/disable agents, hooks, override models.
|
|
@@ -42,3 +51,60 @@ bun run dev # watch mode
|
|
|
42
51
|
- Hooks export from `src/hooks/index.ts`, wired in `src/index.ts` event handlers
|
|
43
52
|
- Memory tools in `src/tools/` are library code used by hooks, not registered as agent tools
|
|
44
53
|
- Never force push without `--force-with-lease`
|
|
54
|
+
|
|
55
|
+
## Issue Tracking with bd (beads)
|
|
56
|
+
|
|
57
|
+
**IMPORTANT**: This project uses **bd (beads)** for ALL issue tracking. Do NOT use markdown TODOs, task lists, or other tracking methods.
|
|
58
|
+
|
|
59
|
+
### Two Interfaces
|
|
60
|
+
|
|
61
|
+
| Interface | Who Uses It | How |
|
|
62
|
+
|-----------|-------------|-----|
|
|
63
|
+
| **`bd` CLI** | User in terminal | `bd create`, `bd ready`, `bd close` |
|
|
64
|
+
| **`beads-village_*` MCP** | AI agents in OpenCode | `beads-village_add`, `beads-village_claim` |
|
|
65
|
+
|
|
66
|
+
**AI agents must use `beads-village_*` MCP tools — never shell `bd` commands.**
|
|
67
|
+
|
|
68
|
+
### Agent Core Cycle
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
beads-village_init → beads-village_add → beads-village_claim → reserve → work → done
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
In compressed workflow, the execution unit is a **Task Packet**:
|
|
75
|
+
- one concern
|
|
76
|
+
- one verify bundle
|
|
77
|
+
- 1–3 files
|
|
78
|
+
- strict file scope
|
|
79
|
+
|
|
80
|
+
### Key Tool Reference (v1.3 API)
|
|
81
|
+
|
|
82
|
+
| Tool | Purpose |
|
|
83
|
+
|------|---------|
|
|
84
|
+
| `beads-village_init` | Join workspace — call FIRST every session |
|
|
85
|
+
| `beads-village_add(title, typ, pri, tags, deps)` | Create issue |
|
|
86
|
+
| `beads-village_claim` | Claim next ready task (filtered by role) |
|
|
87
|
+
| `beads-village_reserve(paths, reason)` | Lock files before editing |
|
|
88
|
+
| `beads-village_done(id, msg)` | Complete task, auto-release locks |
|
|
89
|
+
| `beads-village_ls(status="ready")` | List claimable tasks |
|
|
90
|
+
| `beads-village_show(id)` | Get task details |
|
|
91
|
+
| `beads-village_status(include_agents=true)` | Workspace overview + agent discovery |
|
|
92
|
+
| `beads-village_msg(subj, global=true, to="all")` | Broadcast to team |
|
|
93
|
+
| `beads-village_inbox(unread=true)` | Read messages |
|
|
94
|
+
| `beads-village_sync` | Push/pull git changes |
|
|
95
|
+
|
|
96
|
+
### v1.3 API Changes (avoid old names)
|
|
97
|
+
|
|
98
|
+
| ❌ Old (broken) | ✅ Correct |
|
|
99
|
+
|---|---|
|
|
100
|
+
| `beads-village_ready` | `beads-village_ls(status="ready")` |
|
|
101
|
+
| `beads-village_broadcast` | `beads-village_msg(global=true, to="all")` |
|
|
102
|
+
| `beads-village_discover` | `beads-village_status(include_agents=true)` |
|
|
103
|
+
|
|
104
|
+
### Policy
|
|
105
|
+
|
|
106
|
+
- Trivial (< 2 min, 1-line fix): skip Beads, just do it
|
|
107
|
+
- Non-trivial: create issue first → claim → work → done
|
|
108
|
+
- `todowrite` = in-session UI display only — Beads is the persistent and authoritative execution state
|
|
109
|
+
- Always `reserve` files before editing in multi-agent contexts
|
|
110
|
+
- Always `done` before ending session (releases file locks)
|
package/README.md
CHANGED
|
@@ -5,16 +5,58 @@ Curated agents, commands, skills, and memory system for OpenCode.
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
7
7
|
- **7 Specialized Agents**: build, plan, explore, review, vision, oracle, research
|
|
8
|
-
- **
|
|
9
|
-
- **
|
|
10
|
-
- **7 Internal Utilities**: memory (read/search/get/timeline/update/admin), observation,
|
|
11
|
-
- **10 Runtime Hooks**: todo enforcer, empty output sanitizer, git guard, security check, subagent blocker, truncator,
|
|
8
|
+
- **15 Slash Commands**: /create, /start, /ship, /verify, /debug, /design, /research, /commit, /pr, and more
|
|
9
|
+
- **22 Workflow Skills**: TDD, debugging, research, integrations, ritual-workflow, and more
|
|
10
|
+
- **7 Internal Utilities**: memory (read/search/get/timeline/update/admin), observation, context-summary, cass-memory (used by hooks, not directly registered as agent tools)
|
|
11
|
+
- **10 Runtime Hooks**: todo enforcer, empty output sanitizer, git guard, security check, subagent blocker, truncator, memory digest, todo→beads sync, beads-context, and cass-memory
|
|
12
12
|
- **Memory System**: Templates, specs, plans, research artifacts with FTS5 search
|
|
13
13
|
- **Extended Permissions**: doom_loop, external_directory controls
|
|
14
14
|
- **Configurable**: Enable/disable agents, override models, customize behavior
|
|
15
15
|
|
|
16
16
|
## Installation
|
|
17
17
|
|
|
18
|
+
### Step 1 — Install Beads (required)
|
|
19
|
+
|
|
20
|
+
CliKit uses [Beads](https://github.com/steveyegge/beads) (`bd`) for persistent task tracking. Install it system-wide first.
|
|
21
|
+
|
|
22
|
+
**Windows (PowerShell):**
|
|
23
|
+
```pwsh
|
|
24
|
+
irm https://raw.githubusercontent.com/steveyegge/beads/main/install.ps1 | iex
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**macOS / Linux — Homebrew (recommended):**
|
|
28
|
+
```bash
|
|
29
|
+
brew install beads
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
**npm / bun:**
|
|
33
|
+
```bash
|
|
34
|
+
npm install -g @beads/bd
|
|
35
|
+
# or
|
|
36
|
+
bun install -g --trust @beads/bd
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
**go install (Go 1.24+ required):**
|
|
40
|
+
```bash
|
|
41
|
+
go install github.com/steveyegge/beads/cmd/bd@latest
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Verify:
|
|
45
|
+
```bash
|
|
46
|
+
bd version
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Step 2 — Initialize Beads in your project
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
cd your-project
|
|
53
|
+
bd init --quiet
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
This creates the `.beads/` database directory. Do this once per project.
|
|
57
|
+
|
|
58
|
+
### Step 3 — Install CliKit
|
|
59
|
+
|
|
18
60
|
```bash
|
|
19
61
|
# Install CliKit globally for OpenCode
|
|
20
62
|
bun x clikit-plugin install
|
|
@@ -22,11 +64,11 @@ bun x clikit-plugin install
|
|
|
22
64
|
# Restart OpenCode
|
|
23
65
|
```
|
|
24
66
|
|
|
25
|
-
|
|
67
|
+
The plugin is registered in `~/.config/opencode/opencode.json`.
|
|
26
68
|
|
|
27
69
|
CliKit injects default MCP server entries at runtime when missing:
|
|
28
70
|
|
|
29
|
-
- `beads-village` (`npx beads-village`)
|
|
71
|
+
- `beads-village` (`npx beads-village`) — requires `bd init` to have been run in the project
|
|
30
72
|
- `context7` (`https://mcp.context7.com/mcp`)
|
|
31
73
|
- `grep` (`https://mcp.grep.app`)
|
|
32
74
|
- `human-mcp` (`npx @goonnguyen/human-mcp`)
|
|
@@ -40,10 +82,27 @@ Recommended environment variables:
|
|
|
40
82
|
|
|
41
83
|
After installation, use these commands:
|
|
42
84
|
|
|
85
|
+
**Quick mode** (simple features):
|
|
43
86
|
```
|
|
44
|
-
/create → /
|
|
87
|
+
/create → /start → /ship → /verify
|
|
45
88
|
```
|
|
46
89
|
|
|
90
|
+
**Deep mode** (complex features, research, UI):
|
|
91
|
+
```
|
|
92
|
+
/create → /research → /design → /start → /ship → /verify
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
Workflow notes:
|
|
96
|
+
- All 15 commands work **standalone** — the pipeline is recommended, not required
|
|
97
|
+
- `/create` explores codebase first, then produces both spec and plan
|
|
98
|
+
- `/start` executes the plan, one Task Packet at a time — creates a minimal inline plan if none exists
|
|
99
|
+
- `/verify` runs all 4 gates (typecheck, tests, lint, build) + deep review — use anytime, not just pre-ship
|
|
100
|
+
- `/ship` finalized work and creates PR — runs self-review standalone, recommended to run `/verify` first
|
|
101
|
+
- `/research` conducts external research — use standalone before any complex implementation
|
|
102
|
+
- `/design` implements UI/UX with variant exploration and a11y — uses Vision agent
|
|
103
|
+
- Beads is the live execution source of truth
|
|
104
|
+
- Plans decompose work into **Task Packets** (1 concern, 1–3 files, one verify bundle)
|
|
105
|
+
|
|
47
106
|
## Configuration
|
|
48
107
|
|
|
49
108
|
Create `clikit.jsonc` (preferred) or `clikit.json` in one of these locations:
|
|
@@ -85,16 +144,24 @@ Project config overrides user config.
|
|
|
85
144
|
"hooks": {
|
|
86
145
|
"session_logging": false,
|
|
87
146
|
"tool_logging": false,
|
|
88
|
-
"todo_enforcer": { "enabled": true },
|
|
147
|
+
"todo_enforcer": { "enabled": true, "beads_authoritative": true, "warn_on_incomplete": false },
|
|
89
148
|
"empty_message_sanitizer": { "enabled": true },
|
|
90
149
|
"git_guard": { "enabled": true },
|
|
91
150
|
"security_check": { "enabled": true },
|
|
92
151
|
"subagent_question_blocker": { "enabled": true },
|
|
93
|
-
"truncator": { "enabled": true },
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
"
|
|
97
|
-
"
|
|
152
|
+
"truncator": { "enabled": true, "packet_friendly": true },
|
|
153
|
+
"memory_digest": { "enabled": true, "compact_mode": true },
|
|
154
|
+
"todo_beads_sync": { "enabled": false, "mode": "disabled" },
|
|
155
|
+
"cass_memory": { "enabled": true },
|
|
156
|
+
"beads_context": { "enabled": true, "active_only": true, "ready_limit": 3 }
|
|
157
|
+
},
|
|
158
|
+
"workflow": {
|
|
159
|
+
"mode": "compressed",
|
|
160
|
+
"active_roles": ["build", "plan", "review", "coordinator"],
|
|
161
|
+
"use_packets": true,
|
|
162
|
+
"embed_verify_in_start": true,
|
|
163
|
+
"verify_is_audit": true,
|
|
164
|
+
"subagent_call_budget": 2
|
|
98
165
|
}
|
|
99
166
|
}
|
|
100
167
|
```
|
|
@@ -111,20 +178,21 @@ Project config overrides user config.
|
|
|
111
178
|
| `skills` | `object \| string[]` | `{}` | Skill enable/disable and per-skill overrides |
|
|
112
179
|
| `hooks.session_logging` | `boolean` | `false` | Session lifecycle logging |
|
|
113
180
|
| `hooks.tool_logging` | `boolean` | `false` | Tool execution logging |
|
|
181
|
+
| `workflow.mode` | `classic \| compressed` | `compressed` | Select compressed packet workflow |
|
|
114
182
|
|
|
115
183
|
### Hooks
|
|
116
184
|
|
|
117
185
|
| Hook | Default | Description |
|
|
118
186
|
|------|---------|-------------|
|
|
119
|
-
| `todo_enforcer` | on |
|
|
187
|
+
| `todo_enforcer` | on | Optional UI warning; Beads can remain authoritative |
|
|
120
188
|
| `empty_message_sanitizer` | on | Replaces empty tool outputs with placeholder |
|
|
121
189
|
| `git_guard` | on | Blocks dangerous git commands (force push, hard reset, rm -rf) |
|
|
122
190
|
| `security_check` | on | Scans for secrets/credentials before git commits |
|
|
123
191
|
| `subagent_question_blocker` | on | Prevents subagents from asking clarifying questions |
|
|
124
192
|
| `truncator` | on | Truncates large outputs to prevent context overflow |
|
|
125
|
-
| `swarm_enforcer` | on | Enforces task isolation in multi-agent swarms |
|
|
126
193
|
| `memory_digest` | on | Generates `memory/_digest.md` index + topic files (`decision.md`, `learning.md`, etc.) from SQLite observations |
|
|
127
|
-
| `todo_beads_sync` |
|
|
194
|
+
| `todo_beads_sync` | off | Legacy todo→Beads mirror; disabled in compressed workflow |
|
|
195
|
+
| `beads_context` | on | Injects active Beads task state into prompts |
|
|
128
196
|
| `cass_memory` | on | Loads embedded memory context on session start and runs idle reflection (`cassMemoryContext`, `cassMemoryReflect`) |
|
|
129
197
|
|
|
130
198
|
## Agents
|
|
@@ -139,111 +207,79 @@ Project config overrides user config.
|
|
|
139
207
|
| `review` | subagent | Code review & quality gate |
|
|
140
208
|
| `vision` | subagent | Design direction + visual implementation |
|
|
141
209
|
|
|
210
|
+
Default active roles in compressed workflow: `build`, `plan`, `review`, plus coordinator logic in runtime. `explore`, `research`, `oracle`, and `vision` are on-demand specialists.
|
|
211
|
+
|
|
142
212
|
## Commands
|
|
143
213
|
|
|
144
|
-
Run with `/command-name` in OpenCode
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
214
|
+
Run with `/command-name` in OpenCode. **All 15 commands work standalone** — the pipeline is a recommended flow, not a requirement.
|
|
215
|
+
|
|
216
|
+
### Workflow pipeline
|
|
217
|
+
| Command | Standalone? | One-liner |
|
|
218
|
+
|---------|-------------|-----------|
|
|
219
|
+
| `/create` | ✅ | Explore codebase → interview requirements → produce spec + plan |
|
|
220
|
+
| `/research` | ✅ | Deep-dive any library, API, or pattern with saved report |
|
|
221
|
+
| `/design` | ✅ | UI/UX design + implementation — variant exploration, a11y, responsive (Vision agent) |
|
|
222
|
+
| `/start` | ✅ | Execute plan packets — creates minimal inline plan if none exists |
|
|
223
|
+
| `/ship` | ✅ | Commit + create PR — self-review built in, `/verify` recommended |
|
|
224
|
+
| `/verify` | ✅ | Full 4-gate check (typecheck, tests, lint, build) + deep code review |
|
|
225
|
+
|
|
226
|
+
### Utilities (all standalone)
|
|
227
|
+
| Command | One-liner |
|
|
228
|
+
|---------|-----------|
|
|
229
|
+
| `/debug` | Reproduce → 5-Whys root cause → fix → regression test |
|
|
230
|
+
| `/issue` | Instantly capture a task, bug, or idea as a Beads issue |
|
|
231
|
+
| `/status` | Workspace snapshot — Beads tasks, git state, active artifacts |
|
|
232
|
+
| `/init` | Bootstrap CliKit — scaffold dirs + write tailored AGENTS.md |
|
|
233
|
+
| `/handoff` | Auto-capture session state for graceful pause |
|
|
234
|
+
| `/resume` | Pick up cold from latest handoff, no warm-up questions |
|
|
235
|
+
| `/commit` | Auto-detect type/scope → perfect Conventional Commit message |
|
|
236
|
+
| `/pr` | Full PR description from git diff, linked to spec/plan/bead |
|
|
237
|
+
| `/import-plan` | Import Jira/Notion/Linear tasks → Beads issues + plan |
|
|
165
238
|
|
|
166
239
|
## Skills
|
|
167
240
|
|
|
168
|
-
|
|
241
|
+
22 workflow skills organized into 5 categories:
|
|
169
242
|
|
|
170
|
-
###
|
|
243
|
+
### Planning & Workflow (4)
|
|
171
244
|
| Skill | Use When |
|
|
172
245
|
|-------|----------|
|
|
173
|
-
| `brainstorming` | Starting without clear requirements |
|
|
174
246
|
| `writing-plans` | Requirements clear, need implementation plan |
|
|
175
247
|
| `executing-plans` | Plan exists, need to execute tasks |
|
|
176
|
-
| `
|
|
248
|
+
| `ritual-workflow` | Starting any task — DISCOVER→PLAN→IMPLEMENT→VERIFY |
|
|
249
|
+
| `session-management` | Managing context growth or switching tasks |
|
|
177
250
|
|
|
178
|
-
###
|
|
179
|
-
| Skill | Use When |
|
|
180
|
-
|-------|----------|
|
|
181
|
-
| `frontend-aesthetics` | Building UI, avoid "AI slop" |
|
|
182
|
-
| `gemini-large-context` | Analyzing 100KB+ files |
|
|
183
|
-
| `ui-ux-research` | Multimodal UI/UX analysis |
|
|
184
|
-
| `mockup-to-code` | Converting mockups to code |
|
|
185
|
-
| `visual-analysis` | Analyzing images/screenshots |
|
|
186
|
-
| `accessibility-audit` | WCAG compliance check |
|
|
187
|
-
| `design-system-audit` | Design system consistency |
|
|
188
|
-
|
|
189
|
-
### Development (8)
|
|
251
|
+
### Development (4)
|
|
190
252
|
| Skill | Use When |
|
|
191
253
|
|-------|----------|
|
|
192
|
-
| `
|
|
193
|
-
| `
|
|
194
|
-
| `deep-research` | LSP exploration with confidence scores |
|
|
195
|
-
| `source-code-research` | Library internals research |
|
|
254
|
+
| `deep-research` | Exploring unfamiliar code or complex features |
|
|
255
|
+
| `source-code-research` | API docs insufficient, need library internals |
|
|
196
256
|
| `using-git-worktrees` | Isolated workspace on new branch |
|
|
197
|
-
| `finishing-a-development-branch` |
|
|
198
|
-
| `vercel-react-best-practices` | React/Next.js optimization |
|
|
199
|
-
| `supabase-postgres-best-practices` | Postgres optimization |
|
|
257
|
+
| `finishing-a-development-branch` | Completing work on a branch |
|
|
200
258
|
|
|
201
|
-
### Testing (
|
|
259
|
+
### Testing & Quality (5)
|
|
202
260
|
| Skill | Use When |
|
|
203
261
|
|-------|----------|
|
|
204
262
|
| `test-driven-development` | Implementing any feature |
|
|
205
263
|
| `condition-based-waiting` | Flaky tests from race conditions |
|
|
206
264
|
| `testing-anti-patterns` | Avoiding testing mistakes |
|
|
207
|
-
| `
|
|
265
|
+
| `verification-before-completion` | Marking any task complete |
|
|
266
|
+
| `vercel-react-best-practices` | React/Next.js code review or refactor |
|
|
208
267
|
|
|
209
|
-
### Debugging (
|
|
268
|
+
### Debugging (3)
|
|
210
269
|
| Skill | Use When |
|
|
211
270
|
|-------|----------|
|
|
212
271
|
| `systematic-debugging` | Encountering a bug |
|
|
213
272
|
| `root-cause-tracing` | Finding original trigger |
|
|
214
273
|
| `defense-in-depth` | Multi-layer validation |
|
|
215
|
-
| `verification-before-completion` | Marking task complete |
|
|
216
274
|
|
|
217
|
-
### Integration (
|
|
218
|
-
| Skill | Use When |
|
|
219
|
-
|-------|----------|
|
|
220
|
-
| `figma` | Access Figma design data |
|
|
221
|
-
| `playwright` | Browser automation |
|
|
222
|
-
| `chrome-devtools` | Browser debugging |
|
|
223
|
-
| `polar` | Payment integration |
|
|
224
|
-
| `beads` | Multi-agent task coordination |
|
|
225
|
-
| `beads-bridge` | Bridge Beads with todo system |
|
|
226
|
-
| `swarm-coordination` | Parallel task execution |
|
|
227
|
-
| `session-management` | Context growth management |
|
|
228
|
-
| `playwriter` | Chrome extension browser automation |
|
|
229
|
-
| `mqdh` | Meta Quest VR/AR development |
|
|
230
|
-
| `v0` | AI-powered UI generation |
|
|
231
|
-
| `resend` | Transactional emails |
|
|
232
|
-
| `notebooklm` | Query NotebookLM |
|
|
233
|
-
| `supabase` | Supabase platform |
|
|
234
|
-
| `cloudflare` | Cloudflare Workers/Pages |
|
|
235
|
-
| `v1-run` | npm package intelligence |
|
|
236
|
-
|
|
237
|
-
### Collaboration (3)
|
|
275
|
+
### Integration & Collaboration (6)
|
|
238
276
|
| Skill | Use When |
|
|
239
277
|
|-------|----------|
|
|
278
|
+
| `beads` | Multi-agent task coordination via beads-village |
|
|
279
|
+
| `playwright` | Browser automation and E2E testing |
|
|
280
|
+
| `chrome-devtools` | Web debugging and performance analysis |
|
|
240
281
|
| `requesting-code-review` | After completing a task |
|
|
241
282
|
| `receiving-code-review` | Handling review feedback |
|
|
242
|
-
| `sharing-skills` | Contributing skills via PR |
|
|
243
|
-
|
|
244
|
-
### Meta (1)
|
|
245
|
-
| Skill | Use When |
|
|
246
|
-
|-------|----------|
|
|
247
283
|
| `writing-skills` | Creating new skills |
|
|
248
284
|
|
|
249
285
|
## Development
|
|
@@ -278,8 +314,8 @@ bun run dev
|
|
|
278
314
|
│ ├── types.ts # Type definitions
|
|
279
315
|
│ ├── agents/ # Agent loaders
|
|
280
316
|
│ ├── skills/ # Skill loaders
|
|
281
|
-
│ ├── tools/ # Internal utilities (memory,
|
|
282
|
-
│ └── hooks/ # Runtime hooks (
|
|
317
|
+
│ ├── tools/ # Internal utilities (memory, context-summary, cass-memory)
|
|
318
|
+
│ └── hooks/ # Runtime hooks (9 modules)
|
|
283
319
|
├── skill/ # Skill definitions (*.md)
|
|
284
320
|
├── command/ # Command definitions (*.md)
|
|
285
321
|
├── memory/ # Memory system
|
package/command/commit.md
CHANGED
package/command/create.md
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Kick off any feature — explore codebase, interview requirements, produce spec + implementation plan. Use standalone or as the first step of the workflow.
|
|
3
3
|
agent: plan
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
You are the **Plan Agent**. Execute the `/create` command.
|
|
7
7
|
|
|
8
|
-
##
|
|
8
|
+
## Templates
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
- Spec: `@.opencode/memory/_templates/spec.md`
|
|
11
|
+
- Plan: `@.opencode/memory/_templates/plan.md`
|
|
11
12
|
|
|
12
13
|
## Execution Rules
|
|
13
14
|
|
|
14
15
|
- **DO NOT** start with generic questions — explore the codebase FIRST
|
|
15
16
|
- **DO NOT** end turns passively — always end with a specific question or action
|
|
16
|
-
- Auto-transition to spec generation when self-clearance passes
|
|
17
|
+
- Auto-transition to spec + plan generation when self-clearance passes
|
|
17
18
|
|
|
18
19
|
## Process
|
|
19
20
|
|
|
@@ -37,7 +38,7 @@ Max 3 questions per turn. Update draft after each exchange.
|
|
|
37
38
|
|
|
38
39
|
### 3. Self-Clearance Check
|
|
39
40
|
|
|
40
|
-
When ALL of these are true, auto-transition to spec generation:
|
|
41
|
+
When ALL of these are true, auto-transition to spec + plan generation:
|
|
41
42
|
- Core problem understood and confirmed
|
|
42
43
|
- Scope boundaries defined
|
|
43
44
|
- Enough info for acceptance criteria
|
|
@@ -46,13 +47,59 @@ When ALL of these are true, auto-transition to spec generation:
|
|
|
46
47
|
|
|
47
48
|
### 4. Generate Spec
|
|
48
49
|
|
|
49
|
-
Write to `.opencode/memory/specs/YYYY-MM-DD-<descriptor>.md` using
|
|
50
|
+
Write to `.opencode/memory/specs/YYYY-MM-DD-<descriptor>.md` using the spec template.
|
|
50
51
|
|
|
51
52
|
**Acceptance criteria MUST be agent-executable** — commands with expected outputs, not "user manually verifies."
|
|
52
53
|
|
|
53
|
-
### 5.
|
|
54
|
+
### 5. Memory & History Mining (parallel with plan generation)
|
|
54
55
|
|
|
55
|
-
|
|
56
|
+
**Memory mining** (Plan reads directly — has file read access):
|
|
57
|
+
```
|
|
58
|
+
Read: ".opencode/memory/_digest.md" — Compact index of memory topics and highlights
|
|
59
|
+
Read: ".opencode/memory/decision.md" — Architectural decisions
|
|
60
|
+
Read: ".opencode/memory/learning.md" — Learnings and gotchas
|
|
61
|
+
Read: ".opencode/memory/blocker.md" — Past blockers and mitigations
|
|
62
|
+
Read: ".opencode/memory/handoffs/" — Recent handoffs for prior session context
|
|
63
|
+
Read: ".opencode/memory/research/" — Any related research
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Git history mining** (delegate to Explore):
|
|
67
|
+
```
|
|
68
|
+
Explore: "Mine git log for conventions. Return:
|
|
69
|
+
1. Commit message format (git log --oneline -n 20)
|
|
70
|
+
2. Branch naming (git branch -a | head -20)
|
|
71
|
+
3. Recent commits on related files
|
|
72
|
+
4. Gotcha markers (git log --grep='HACK\|TODO\|FIXME\|workaround' --oneline -n 10)"
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### 6. Generate Plan
|
|
76
|
+
|
|
77
|
+
Write to `.opencode/memory/plans/YYYY-MM-DD-<feature>.md` using the plan template.
|
|
78
|
+
|
|
79
|
+
**Task decomposition rules:**
|
|
80
|
+
- Each task must contain a **Task Packet**
|
|
81
|
+
- 1 packet = 1 concern = 1-3 files
|
|
82
|
+
- Group tasks into parallel waves where possible
|
|
83
|
+
- Every packet must define `files_in_scope`, `verification_commands`, and `escalate_if`
|
|
84
|
+
|
|
85
|
+
**File Impact = BUILD BOUNDARY:**
|
|
86
|
+
Build Agent may ONLY touch files listed here. Missing a file = Build can't modify it.
|
|
87
|
+
|
|
88
|
+
### 7. Quality Self-Review
|
|
89
|
+
|
|
90
|
+
Before presenting spec + plan, verify:
|
|
91
|
+
- [ ] Every task has task_id, acceptance criteria, effort, priority
|
|
92
|
+
- [ ] File Impact covers ALL files across ALL tasks
|
|
93
|
+
- [ ] No dependency cycles
|
|
94
|
+
- [ ] No task touches > 3 files
|
|
95
|
+
- [ ] All acceptance criteria are agent-executable
|
|
96
|
+
- [ ] Top 2+ risks assessed
|
|
97
|
+
|
|
98
|
+
### 8. Create Bead & Guide
|
|
99
|
+
|
|
100
|
+
1. Call `mcp__beads_village__add()` with title, description, and priority
|
|
101
|
+
2. Present spec + plan to user
|
|
102
|
+
3. After approval: "Spec and plan ready. Use `/start` to begin execution."
|
|
56
103
|
|
|
57
104
|
## Rules
|
|
58
105
|
|
|
@@ -60,6 +107,16 @@ Call `mcp__beads_village__add()` with title, description, and priority.
|
|
|
60
107
|
- ✅ Write agent-executable acceptance criteria
|
|
61
108
|
- ✅ Tag assumptions as Confirmed/Unconfirmed
|
|
62
109
|
- ✅ Auto-transition when clearance check passes
|
|
110
|
+
- ✅ Always produce BOTH spec and plan before guiding to `/start`
|
|
111
|
+
- ✅ Mine memory for past decisions, learnings, blockers
|
|
112
|
+
- ✅ Delegate git history mining to Explore (Plan has bash: false)
|
|
113
|
+
- ✅ Include Conventions & Past Decisions section in plan
|
|
114
|
+
- ✅ Every task must include a Task Packet
|
|
115
|
+
- ✅ File Impact is the build contract
|
|
63
116
|
- ❌ NEVER ask generic questions without codebase context
|
|
64
117
|
- ❌ NEVER skip acceptance criteria
|
|
65
118
|
- ❌ NEVER end passively — always question or action
|
|
119
|
+
- ❌ NEVER create tasks touching > 3 files
|
|
120
|
+
- ❌ NEVER write "user manually tests..." criteria
|
|
121
|
+
- ❌ NEVER omit File Impact section
|
|
122
|
+
- ❌ NEVER skip gap analysis
|
package/command/debug.md
CHANGED