opencodekit 0.11.0 → 0.12.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/dist/index.js +1 -1
- package/dist/template/.opencode/AGENTS.md +2 -2
- package/dist/template/.opencode/agent/build.md +20 -20
- package/dist/template/.opencode/agent/explore.md +13 -13
- package/dist/template/.opencode/agent/planner.md +20 -20
- package/dist/template/.opencode/agent/review.md +18 -18
- package/dist/template/.opencode/agent/rush.md +20 -20
- package/dist/template/.opencode/agent/scout.md +16 -16
- package/dist/template/.opencode/agent/vision.md +19 -19
- package/dist/template/.opencode/command/accessibility-check.md +6 -2
- package/dist/template/.opencode/command/analyze-mockup.md +6 -0
- package/dist/template/.opencode/command/analyze-project.md +6 -0
- package/dist/template/.opencode/command/brainstorm.md +6 -0
- package/dist/template/.opencode/command/commit.md +6 -1
- package/dist/template/.opencode/command/create.md +369 -134
- package/dist/template/.opencode/command/design-audit.md +6 -0
- package/dist/template/.opencode/command/design.md +6 -0
- package/dist/template/.opencode/command/finish.md +1 -0
- package/dist/template/.opencode/command/fix-ci.md +1 -0
- package/dist/template/.opencode/command/fix-types.md +6 -0
- package/dist/template/.opencode/command/fix-ui.md +6 -0
- package/dist/template/.opencode/command/fix.md +6 -0
- package/dist/template/.opencode/command/handoff.md +6 -1
- package/dist/template/.opencode/command/implement.md +1 -0
- package/dist/template/.opencode/command/import-plan.md +7 -2
- package/dist/template/.opencode/command/integration-test.md +5 -0
- package/dist/template/.opencode/command/issue.md +11 -2
- package/dist/template/.opencode/command/new-feature.md +8 -0
- package/dist/template/.opencode/command/plan.md +282 -21
- package/dist/template/.opencode/command/pr.md +6 -1
- package/dist/template/.opencode/command/research-and-implement.md +6 -0
- package/dist/template/.opencode/command/research.md +6 -0
- package/dist/template/.opencode/command/resume.md +8 -0
- package/dist/template/.opencode/command/revert-feature.md +7 -2
- package/dist/template/.opencode/command/review-codebase.md +6 -0
- package/dist/template/.opencode/command/status.md +6 -0
- package/dist/template/.opencode/command/triage.md +17 -12
- package/dist/template/.opencode/command/ui-review.md +4 -0
- package/dist/template/.opencode/opencode.json +479 -514
- package/dist/template/.opencode/package.json +1 -1
- package/dist/template/.opencode/plugin/beads.ts +857 -270
- package/dist/template/.opencode/skill/beads/SKILL.md +110 -17
- package/dist/template/.opencode/skill/beads/references/DEPENDENCIES.md +3 -3
- package/dist/template/.opencode/skill/beads/references/WORKFLOWS.md +1 -1
- package/package.json +1 -1
|
@@ -3,8 +3,8 @@ name: beads
|
|
|
3
3
|
description: >
|
|
4
4
|
Multi-agent task coordination using Beads Village plugin tools. Use when work spans multiple
|
|
5
5
|
sessions, has dependencies, needs file locking, or requires agent coordination. Covers
|
|
6
|
-
claim/reserve/done cycle, dependency management, and session protocols.
|
|
7
|
-
version: "1.
|
|
6
|
+
claim/reserve/done cycle, dependency management, hierarchical decomposition, and session protocols.
|
|
7
|
+
version: "1.1.0"
|
|
8
8
|
license: MIT
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -30,6 +30,107 @@ Graph-based task tracker with file locking for multi-agent coordination. Persist
|
|
|
30
30
|
|
|
31
31
|
**Decision Rule**: If resuming in 2 weeks would be hard without beads, use beads.
|
|
32
32
|
|
|
33
|
+
## Hierarchical Structure: Epic → Task → Subtask
|
|
34
|
+
|
|
35
|
+
**Beads supports up to 3 levels of hierarchy using hierarchical IDs:**
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
bd-a3f8 (Epic - parent feature)
|
|
39
|
+
├── bd-a3f8.1 (Task - first child)
|
|
40
|
+
├── bd-a3f8.2 (Task - second child)
|
|
41
|
+
│ ├── bd-a3f8.2.1 (Subtask - child of .2)
|
|
42
|
+
│ └── bd-a3f8.2.2 (Subtask - child of .2)
|
|
43
|
+
└── bd-a3f8.3 (Task - third child)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### When to Decompose
|
|
47
|
+
|
|
48
|
+
| Scenario | Structure |
|
|
49
|
+
| ---------------------------- | ------------------------------------ |
|
|
50
|
+
| Bug fix, config change | Single bead |
|
|
51
|
+
| Small feature (1-2 files) | Single bead |
|
|
52
|
+
| Feature crossing FE/BE | Epic + tasks by domain |
|
|
53
|
+
| New system/service | Epic + tasks by component |
|
|
54
|
+
| Multi-day work | Epic + tasks for parallelization |
|
|
55
|
+
| Work needing multiple agents | Epic + tasks (agents claim children) |
|
|
56
|
+
|
|
57
|
+
### Creating Hierarchical Beads
|
|
58
|
+
|
|
59
|
+
```typescript
|
|
60
|
+
// Step 1: Create Epic (parent)
|
|
61
|
+
const epic = bd_add({
|
|
62
|
+
title: "User Authentication System",
|
|
63
|
+
type: "epic",
|
|
64
|
+
pri: 1,
|
|
65
|
+
desc: "Complete auth with OAuth, sessions, and protected routes",
|
|
66
|
+
tags: ["epic", "auth"],
|
|
67
|
+
});
|
|
68
|
+
// Returns: { id: "bd-a3f8" }
|
|
69
|
+
|
|
70
|
+
// Step 2: Create child tasks with `parent` parameter
|
|
71
|
+
const task1 = bd_add({
|
|
72
|
+
title: "Database schema for auth",
|
|
73
|
+
type: "task",
|
|
74
|
+
pri: 2,
|
|
75
|
+
parent: "bd-a3f8", // Links to epic
|
|
76
|
+
desc: "Create user and session tables",
|
|
77
|
+
tags: ["backend", "database"],
|
|
78
|
+
});
|
|
79
|
+
// Returns: { id: "bd-a3f8.1" } ← Hierarchical ID!
|
|
80
|
+
|
|
81
|
+
// Step 3: Create dependent tasks with `deps` parameter
|
|
82
|
+
const task2 = bd_add({
|
|
83
|
+
title: "OAuth integration",
|
|
84
|
+
type: "task",
|
|
85
|
+
pri: 2,
|
|
86
|
+
parent: "bd-a3f8",
|
|
87
|
+
deps: ["bd-a3f8.1"], // Blocked until .1 completes
|
|
88
|
+
tags: ["backend"],
|
|
89
|
+
});
|
|
90
|
+
// Returns: { id: "bd-a3f8.2" }
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Dependency Types
|
|
94
|
+
|
|
95
|
+
Beads supports four dependency types:
|
|
96
|
+
|
|
97
|
+
| Type | Meaning | Use Case |
|
|
98
|
+
| ----------------- | ------------------------- | ------------------- |
|
|
99
|
+
| `blocks` | Task A blocks Task B | Sequential work |
|
|
100
|
+
| `related` | Tasks are connected | Cross-references |
|
|
101
|
+
| `parent-child` | Hierarchy (via `parent:`) | Epic → Task |
|
|
102
|
+
| `discovered-from` | Found during work | New work discovered |
|
|
103
|
+
|
|
104
|
+
### Parallel Execution with Dependencies
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
bd-a3f8.1 [Database] ──┬──> bd-a3f8.2 [Backend] ──┐
|
|
108
|
+
(READY) │ │
|
|
109
|
+
│ ▼
|
|
110
|
+
└──> bd-a3f8.3 [Frontend] bd-a3f8.5 [Testing]
|
|
111
|
+
│ │ ▲
|
|
112
|
+
└──> bd-a3f8.4 [Docs] ──────────┘
|
|
113
|
+
|
|
114
|
+
Parallel tracks:
|
|
115
|
+
• Agent 1 (backend): .1 → .2
|
|
116
|
+
• Agent 2 (frontend): wait for .1, then .3
|
|
117
|
+
• Agent 3 (qa): wait for .2 and .3, then .5
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
**Key insight**: After bd-a3f8.1 completes, .2, .3, and .4 all become READY simultaneously. Multiple agents can claim them in parallel.
|
|
121
|
+
|
|
122
|
+
### Querying Hierarchy
|
|
123
|
+
|
|
124
|
+
````typescript
|
|
125
|
+
// See all children of an epic
|
|
126
|
+
bd_ls({ status: "all", limit: 20 });
|
|
127
|
+
// Filter by parent prefix in results
|
|
128
|
+
|
|
129
|
+
// See ready work (unblocked tasks)
|
|
130
|
+
bd_ready();
|
|
131
|
+
// Returns tasks where all dependencies are closed
|
|
132
|
+
```
|
|
133
|
+
|
|
33
134
|
## Session Start Protocol
|
|
34
135
|
|
|
35
136
|
**Every session, follow these steps:**
|
|
@@ -38,7 +139,7 @@ Graph-based task tracker with file locking for multi-agent coordination. Persist
|
|
|
38
139
|
|
|
39
140
|
```typescript
|
|
40
141
|
bd_init({ team: "project", role: "fe" });
|
|
41
|
-
|
|
142
|
+
````
|
|
42
143
|
|
|
43
144
|
Joins workspace, enables role-based task filtering. Roles: fe, be, mobile, devops, qa.
|
|
44
145
|
|
|
@@ -249,29 +350,21 @@ bd_status({ include_agents: true });
|
|
|
249
350
|
|
|
250
351
|
Shows ready tasks, in-progress count, active locks, agent info.
|
|
251
352
|
|
|
252
|
-
### Find
|
|
253
|
-
|
|
254
|
-
```typescript
|
|
255
|
-
bd_insights();
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
Returns blocked tasks, high-priority keystones, dependency analysis.
|
|
259
|
-
|
|
260
|
-
### Priority Recommendations
|
|
353
|
+
### Find Blocked Work
|
|
261
354
|
|
|
262
355
|
```typescript
|
|
263
|
-
|
|
356
|
+
bd_blocked();
|
|
264
357
|
```
|
|
265
358
|
|
|
266
|
-
|
|
359
|
+
Returns tasks that have unresolved dependencies.
|
|
267
360
|
|
|
268
|
-
###
|
|
361
|
+
### View Dependencies
|
|
269
362
|
|
|
270
363
|
```typescript
|
|
271
|
-
|
|
364
|
+
bd_dep({ action: "tree", child: "<task-id>", type: "blocks" });
|
|
272
365
|
```
|
|
273
366
|
|
|
274
|
-
|
|
367
|
+
Shows dependency tree for a specific task.
|
|
275
368
|
|
|
276
369
|
## Git Sync
|
|
277
370
|
|
|
@@ -4,7 +4,7 @@ Beads supports task dependencies for ordering work.
|
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
7
|
-
Dependencies affect what work is "ready" - tasks with unmet dependencies won't appear in `bd_claim()`
|
|
7
|
+
Dependencies affect what work is "ready" - tasks with unmet dependencies won't appear in `bd_claim()` results.
|
|
8
8
|
|
|
9
9
|
## Creating Dependencies
|
|
10
10
|
|
|
@@ -125,6 +125,6 @@ bd_add({ title: "API", deps: ["task:tests"] }) // API depends on tests?
|
|
|
125
125
|
bd_show({ id: "task-abc" });
|
|
126
126
|
// Shows what blocks this task and what this task blocks
|
|
127
127
|
|
|
128
|
-
|
|
129
|
-
// Shows
|
|
128
|
+
bd_blocked();
|
|
129
|
+
// Shows all blocked tasks across project
|
|
130
130
|
```
|
|
@@ -138,7 +138,7 @@ Session Start with in_progress:
|
|
|
138
138
|
```
|
|
139
139
|
Unblocking:
|
|
140
140
|
- [ ] bd_ls({ status: "open" }) to see all tasks
|
|
141
|
-
- [ ]
|
|
141
|
+
- [ ] bd_blocked() to find blocked tasks
|
|
142
142
|
- [ ] Identify blocker tasks
|
|
143
143
|
- [ ] Work on blockers first
|
|
144
144
|
- [ ] Closing blocker unblocks dependent work
|