opencode-beads 0.1.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.
@@ -0,0 +1,28 @@
1
+ ---
2
+ description: Restore full history of compacted issue from git
3
+ argument-hint: <issue-id>
4
+ ---
5
+
6
+ Restore full history of a compacted issue from git version control.
7
+
8
+ When an issue is compacted, the git commit hash is saved. This command:
9
+
10
+ 1. Reads the compacted_at_commit from the database
11
+ 2. Checks out that commit temporarily
12
+ 3. Reads the full issue from JSONL at that point in history
13
+ 4. Displays the full issue history (description, events, etc.)
14
+ 5. Returns to the current git state
15
+
16
+ ## Usage
17
+
18
+ `bd restore bd-42`
19
+
20
+ This is **read-only** - it does not modify the database or git state.
21
+
22
+ Useful for:
23
+ - Reviewing old issues after compaction
24
+ - Recovering forgotten context
25
+ - Audit trails
26
+ - Historical research
27
+
28
+ Requires git repository with issue history.
@@ -0,0 +1,103 @@
1
+ ---
2
+ description: Search issues by text query
3
+ argument-hint: <query> [--status] [--label] [--assignee]
4
+ ---
5
+
6
+ Search issues across title, description, and ID with a simple text query.
7
+
8
+ **Note:** The `search` command is optimized for quick text searches and uses less context than `list` when accessed via MCP. For advanced filtering options, use `bd list`.
9
+
10
+ ## Basic Usage
11
+
12
+ ```bash
13
+ bd search "authentication bug"
14
+ bd search login --status open
15
+ bd search database --label backend
16
+ bd search "bd-5q" # Search by partial issue ID
17
+ ```
18
+
19
+ ## How It Works
20
+
21
+ The search command finds issues where your query appears in **any** of:
22
+ - Issue title
23
+ - Issue description
24
+ - Issue ID (supports partial matching)
25
+
26
+ Unlike `bd list`, which requires you to specify which field to search, `bd search` automatically searches all text fields, making it faster and more intuitive for exploratory searches.
27
+
28
+ ## Filters
29
+
30
+ - **--status, -s**: Filter by status (open, in_progress, blocked, closed)
31
+ - **--assignee, -a**: Filter by assignee
32
+ - **--type, -t**: Filter by type (bug, feature, task, epic, chore)
33
+ - **--label, -l**: Filter by labels (must have ALL specified labels)
34
+ - **--label-any**: Filter by labels (must have AT LEAST ONE)
35
+ - **--limit, -n**: Limit number of results (default: 50)
36
+ - **--sort**: Sort by field: priority, created, updated, closed, status, id, title, type, assignee
37
+ - **--reverse, -r**: Reverse sort order
38
+ - **--long**: Show detailed multi-line output for each issue
39
+ - **--json**: Output results in JSON format
40
+
41
+ ## Examples
42
+
43
+ ### Basic Search
44
+ ```bash
45
+ # Find all issues mentioning "auth" or "authentication"
46
+ bd search auth
47
+
48
+ # Search for performance issues
49
+ bd search performance --status open
50
+
51
+ # Find database-related bugs
52
+ bd search database --type bug
53
+ ```
54
+
55
+ ### Filtered Search
56
+ ```bash
57
+ # Find open backend issues about login
58
+ bd search login --status open --label backend
59
+
60
+ # Search Alice's tasks for "refactor"
61
+ bd search refactor --assignee alice --type task
62
+
63
+ # Find recent bugs (limited to 10 results)
64
+ bd search bug --status open --limit 10
65
+ ```
66
+
67
+ ### Sorted Output
68
+ ```bash
69
+ # Search bugs sorted by priority (P0 first)
70
+ bd search bug --sort priority
71
+
72
+ # Search features sorted by most recently updated
73
+ bd search feature --sort updated
74
+
75
+ # Search issues sorted by priority, lowest first
76
+ bd search refactor --sort priority --reverse
77
+ ```
78
+
79
+ ### JSON Output
80
+ ```bash
81
+ # Get JSON results for programmatic use
82
+ bd search "api error" --json
83
+
84
+ # Use with jq for advanced filtering
85
+ bd search memory --json | jq '.[] | select(.priority <= 1)'
86
+ ```
87
+
88
+ ## Comparison with bd list
89
+
90
+ | Command | Best For | Default Limit | Context Usage |
91
+ |---------|----------|---------------|---------------|
92
+ | `bd search` | Quick text searches, exploratory queries | 50 | Low (efficient for LLMs) |
93
+ | `bd list` | Advanced filtering, precise queries | None | High (all results) |
94
+
95
+ **When to use `bd search`:**
96
+ - You want to find issues quickly by keyword
97
+ - You're exploring the issue database
98
+ - You're using an LLM/MCP and want to minimize context usage
99
+
100
+ **When to use `bd list`:**
101
+ - You need advanced filters (date ranges, priority ranges, etc.)
102
+ - You want all results without a limit
103
+ - You need special output formats (digraph, dot)
@@ -0,0 +1,17 @@
1
+ ---
2
+ description: Show detailed information about an issue
3
+ argument-hint: [issue-id]
4
+ ---
5
+
6
+ Display detailed information about a beads issue.
7
+
8
+ If an issue ID is provided as $1, use it. Otherwise, ask the user for the issue ID.
9
+
10
+ Use the beads MCP `show` tool to retrieve issue details and present them clearly, including:
11
+ - Issue ID, title, and description
12
+ - Status, priority, and type
13
+ - Creation and update timestamps
14
+ - Dependencies (what this issue blocks or is blocked by)
15
+ - Related issues
16
+
17
+ If the issue has dependencies, offer to show the full dependency tree.
@@ -0,0 +1,17 @@
1
+ ---
2
+ description: Show project statistics and progress
3
+ ---
4
+
5
+ Display statistics about the current beads project.
6
+
7
+ Use the beads MCP `stats` tool to retrieve project metrics and present them clearly:
8
+ - Total issues by status (open, in_progress, blocked, closed)
9
+ - Issues by priority level
10
+ - Issues by type (bug, feature, task, epic, chore)
11
+ - Completion rate
12
+ - Recently updated issues
13
+
14
+ Optionally suggest actions based on the stats:
15
+ - High number of blocked issues? Run `/bd-blocked` to investigate
16
+ - No in-progress work? Run `/bd-ready` to find tasks
17
+ - Many open issues? Consider prioritizing with `/bd-update`
@@ -0,0 +1,54 @@
1
+ ---
2
+ description: Synchronize issues with git remote
3
+ argument-hint: [--dry-run] [--message] [--status] [--merge]
4
+ ---
5
+
6
+ Synchronize issues with git remote in a single operation.
7
+
8
+ ## Sync Steps
9
+
10
+ 1. Export pending changes to JSONL
11
+ 2. Commit changes to git
12
+ 3. Pull from remote (with conflict resolution)
13
+ 4. Import updated JSONL
14
+ 5. Push local commits to remote
15
+
16
+ Wraps the entire git-based sync workflow for multi-device use.
17
+
18
+ ## Usage
19
+
20
+ - **Basic sync**: `bd sync`
21
+ - **Preview**: `bd sync --dry-run`
22
+ - **Custom message**: `bd sync --message "Closed sprint issues"`
23
+ - **Pull only**: `bd sync --no-push`
24
+ - **Push only**: `bd sync --no-pull`
25
+ - **Flush only**: `bd sync --flush-only` (export to JSONL without git operations)
26
+ - **Import only**: `bd sync --import-only` (import from JSONL without git operations)
27
+
28
+ ## Separate Branch Workflow
29
+
30
+ When using a separate sync branch (configured via `sync.branch`), additional commands are available:
31
+
32
+ - **Check status**: `bd sync --status` - Show diff between sync branch and main
33
+ - **Merge to main**: `bd sync --merge` - Merge sync branch back to main branch
34
+ - **Preview merge**: `bd sync --merge --dry-run` - Preview what would be merged
35
+
36
+ ### Merge Workflow
37
+
38
+ When working with a protected main branch and separate sync branch:
39
+
40
+ 1. Beads commits go to the sync branch (e.g., `beads-metadata`)
41
+ 2. Use `bd sync --status` to review pending changes
42
+ 3. When ready, use `bd sync --merge` to merge back to main
43
+ 4. After merge, run `bd import` to update the database
44
+ 5. Run `bd sync` to push changes to remote
45
+
46
+ The merge command includes safety checks:
47
+ - Verifies you're not on the sync branch
48
+ - Checks for uncommitted changes in working tree
49
+ - Detects and reports merge conflicts with resolution steps
50
+ - Uses `--no-ff` to create a merge commit for clear history
51
+
52
+ ## Note
53
+
54
+ Most users should rely on the daemon's automatic sync (`bd daemon --auto-commit --auto-push`) instead of running manual sync. This command is useful for one-off syncs or when not using the daemon.
@@ -0,0 +1,337 @@
1
+ # bd template
2
+
3
+ Manage issue templates for streamlined issue creation.
4
+
5
+ ## Synopsis
6
+
7
+ Templates provide pre-filled structures for common issue types, making it faster to create well-formed issues with consistent formatting.
8
+
9
+ ```bash
10
+ bd template list
11
+ bd template show <template-name>
12
+ bd template create <template-name>
13
+ ```
14
+
15
+ ## Description
16
+
17
+ Templates can be:
18
+ - **Built-in**: Provided by bd (epic, bug, feature)
19
+ - **Custom**: Stored in `.beads/templates/` directory
20
+
21
+ Each template defines default values for:
22
+ - Description structure with placeholders
23
+ - Issue type (bug, feature, task, epic, chore)
24
+ - Priority (0-4)
25
+ - Labels
26
+ - Design notes structure
27
+ - Acceptance criteria structure
28
+
29
+ ## Commands
30
+
31
+ ### list
32
+
33
+ List all available templates (built-in and custom).
34
+
35
+ ```bash
36
+ bd template list
37
+ bd template list --json
38
+ ```
39
+
40
+ **Examples:**
41
+
42
+ ```bash
43
+ $ bd template list
44
+ Built-in Templates:
45
+ epic
46
+ Type: epic, Priority: P1
47
+ Labels: epic
48
+ bug
49
+ Type: bug, Priority: P1
50
+ Labels: bug
51
+ feature
52
+ Type: feature, Priority: P2
53
+ Labels: feature
54
+ ```
55
+
56
+ ### show
57
+
58
+ Show detailed structure of a specific template.
59
+
60
+ ```bash
61
+ bd template show <template-name>
62
+ bd template show <template-name> --json
63
+ ```
64
+
65
+ **Examples:**
66
+
67
+ ```bash
68
+ $ bd template show bug
69
+ Template: bug
70
+ Type: bug
71
+ Priority: P1
72
+ Labels: bug
73
+
74
+ Description:
75
+ ## Summary
76
+
77
+ [Brief description of the bug]
78
+
79
+ ## Steps to Reproduce
80
+ ...
81
+ ```
82
+
83
+ ### create
84
+
85
+ Create a custom template in `.beads/templates/` directory.
86
+
87
+ ```bash
88
+ bd template create <template-name>
89
+ ```
90
+
91
+ This creates a YAML file with default structure that you can edit to customize.
92
+
93
+ **Examples:**
94
+
95
+ ```bash
96
+ $ bd template create performance
97
+ ✓ Created template: .beads/templates/performance.yaml
98
+ Edit the file to customize your template.
99
+
100
+ $ cat .beads/templates/performance.yaml
101
+ name: performance
102
+ description: |-
103
+ [Describe the issue]
104
+
105
+ ## Additional Context
106
+
107
+ [Add relevant details]
108
+ type: task
109
+ priority: 2
110
+ labels: []
111
+ design: '[Design notes]'
112
+ acceptance_criteria: |-
113
+ - [ ] Acceptance criterion 1
114
+ - [ ] Acceptance criterion 2
115
+
116
+ # Edit the template to customize it
117
+ $ vim .beads/templates/performance.yaml
118
+ ```
119
+
120
+ ## Using Templates with `bd create`
121
+
122
+ Use the `--from-template` flag to create issues from templates:
123
+
124
+ ```bash
125
+ bd create --from-template <template-name> "Issue title"
126
+ ```
127
+
128
+ Template values can be overridden with explicit flags:
129
+
130
+ ```bash
131
+ # Use bug template but override priority
132
+ bd create --from-template bug "Login crashes on special chars" -p 0
133
+
134
+ # Use epic template but add extra labels
135
+ bd create --from-template epic "Q4 Infrastructure" -l infrastructure,ops
136
+ ```
137
+
138
+ **Examples:**
139
+
140
+ ```bash
141
+ # Create epic from template
142
+ $ bd create --from-template epic "Phase 3 Features"
143
+ ✓ Created issue: bd-a3f8e9
144
+ Title: Phase 3 Features
145
+ Priority: P1
146
+ Status: open
147
+
148
+ # Create bug report from template
149
+ $ bd create --from-template bug "Auth token validation fails"
150
+ ✓ Created issue: bd-42bc7a
151
+ Title: Auth token validation fails
152
+ Priority: P1
153
+ Status: open
154
+
155
+ # Use custom template
156
+ $ bd template create security-audit
157
+ $ bd create --from-template security-audit "Review authentication flow"
158
+ ```
159
+
160
+ ## Template File Format
161
+
162
+ Templates are YAML files with the following structure:
163
+
164
+ ```yaml
165
+ name: template-name
166
+ description: |
167
+ Multi-line description with placeholders
168
+
169
+ ## Section heading
170
+
171
+ [Placeholder text]
172
+
173
+ type: bug|feature|task|epic|chore
174
+ priority: 0-4
175
+ labels:
176
+ - label1
177
+ - label2
178
+
179
+ design: |
180
+ Design notes structure
181
+
182
+ acceptance_criteria: |
183
+ - [ ] Acceptance criterion 1
184
+ - [ ] Acceptance criterion 2
185
+ ```
186
+
187
+ ## Built-in Templates
188
+
189
+ ### epic
190
+
191
+ For large features composed of multiple issues.
192
+
193
+ **Structure:**
194
+ - Overview and scope
195
+ - Success criteria checklist
196
+ - Background and motivation
197
+ - In-scope / out-of-scope sections
198
+ - Architecture design notes
199
+ - Component breakdown
200
+
201
+ **Defaults:**
202
+ - Type: epic
203
+ - Priority: P1
204
+ - Labels: epic
205
+
206
+ ### bug
207
+
208
+ For bug reports with consistent structure.
209
+
210
+ **Structure:**
211
+ - Summary
212
+ - Steps to reproduce
213
+ - Expected vs actual behavior
214
+ - Environment details
215
+ - Root cause analysis (design)
216
+ - Proposed fix
217
+ - Impact assessment
218
+
219
+ **Defaults:**
220
+ - Type: bug
221
+ - Priority: P1
222
+ - Labels: bug
223
+
224
+ ### feature
225
+
226
+ For feature requests and enhancements.
227
+
228
+ **Structure:**
229
+ - Feature description
230
+ - Motivation and use cases
231
+ - Proposed solution
232
+ - Alternatives considered
233
+ - Technical design
234
+ - API changes
235
+ - Testing strategy
236
+
237
+ **Defaults:**
238
+ - Type: feature
239
+ - Priority: P2
240
+ - Labels: feature
241
+
242
+ ## Custom Templates
243
+
244
+ Custom templates override built-in templates with the same name. This allows you to customize built-in templates for your project.
245
+
246
+ **Priority:**
247
+ 1. Custom templates in `.beads/templates/`
248
+ 2. Built-in templates
249
+
250
+ **Example - Override bug template:**
251
+
252
+ ```bash
253
+ # Create custom bug template
254
+ $ bd template create bug
255
+
256
+ # Edit to add project-specific fields
257
+ $ cat > .beads/templates/bug.yaml << 'EOF'
258
+ name: bug
259
+ description: |
260
+ ## Bug Report
261
+
262
+ **Severity:** [critical|high|medium|low]
263
+ **Component:** [auth|api|frontend|backend]
264
+
265
+ ## Description
266
+ [Describe the bug]
267
+
268
+ ## Reproduction
269
+ 1. Step 1
270
+ 2. Step 2
271
+
272
+ ## Impact
273
+ [Who is affected? How many users?]
274
+
275
+ type: bug
276
+ priority: 0
277
+ labels:
278
+ - bug
279
+ - needs-triage
280
+
281
+ design: |
282
+ ## Investigation Notes
283
+ [Technical details]
284
+
285
+ acceptance_criteria: |
286
+ - [ ] Bug fixed and verified
287
+ - [ ] Tests added
288
+ - [ ] Monitoring added
289
+ EOF
290
+
291
+ # Now 'bd create --from-template bug' uses your custom template
292
+ ```
293
+
294
+ ## JSON Output
295
+
296
+ All template commands support `--json` flag for programmatic use:
297
+
298
+ ```bash
299
+ $ bd template list --json
300
+ [
301
+ {
302
+ "name": "epic",
303
+ "description": "## Overview...",
304
+ "type": "epic",
305
+ "priority": 1,
306
+ "labels": ["epic"],
307
+ "design": "## Architecture...",
308
+ "acceptance_criteria": "- [ ] All child issues..."
309
+ }
310
+ ]
311
+
312
+ $ bd template show bug --json
313
+ {
314
+ "name": "bug",
315
+ "description": "## Summary...",
316
+ "type": "bug",
317
+ "priority": 1,
318
+ "labels": ["bug"],
319
+ "design": "## Root Cause...",
320
+ "acceptance_criteria": "- [ ] Bug no longer..."
321
+ }
322
+ ```
323
+
324
+ ## Best Practices
325
+
326
+ 1. **Use templates for consistency**: Establish team conventions for common issue types
327
+ 2. **Customize built-ins**: Override built-in templates to match your workflow
328
+ 3. **Version control templates**: Commit `.beads/templates/` to share across team
329
+ 4. **Keep templates focused**: Create specific templates (e.g., `performance`, `security-audit`) rather than generic ones
330
+ 5. **Use placeholders**: Mark sections requiring input with `[brackets]` or `TODO`
331
+ 6. **Include checklists**: Use `- [ ]` for actionable items in description and acceptance criteria
332
+
333
+ ## See Also
334
+
335
+ - [bd create](create.md) - Create issues
336
+ - [bd list](list.md) - List issues
337
+ - [README](../README.md) - Main documentation
@@ -0,0 +1,22 @@
1
+ ---
2
+ description: Update an issue's status, priority, or other fields
3
+ argument-hint: [issue-id] [status]
4
+ ---
5
+
6
+ Update a beads issue.
7
+
8
+ If arguments are provided:
9
+ - $1: Issue ID
10
+ - $2: New status (open, in_progress, blocked, closed)
11
+
12
+ If arguments are missing, ask the user for:
13
+ 1. Issue ID
14
+ 2. What to update (status, priority, assignee, title, description)
15
+ 3. New value
16
+
17
+ Use the beads MCP `update` tool to apply the changes. Show the updated issue to confirm the change.
18
+
19
+ Common workflows:
20
+ - Start work: Update status to `in_progress`
21
+ - Mark blocked: Update status to `blocked`
22
+ - Reprioritize: Update priority (0-4)
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: Check beads and plugin versions
3
+ ---
4
+
5
+ Check the installed versions of beads components and verify compatibility.
6
+
7
+ **Note:** The MCP server automatically checks bd CLI version >= 0.9.0 on startup. This command provides detailed version info and update instructions.
8
+
9
+ Use the beads MCP tools to:
10
+ 1. Run `bd version` via bash to get the CLI version
11
+ 2. Check the plugin version (0.9.2)
12
+ 3. Compare versions and report any mismatches
13
+
14
+ Display:
15
+ - bd CLI version (from `bd version`)
16
+ - Plugin version (0.9.2)
17
+ - MCP server version (0.9.2)
18
+ - MCP server status (from `stats` tool or connection test)
19
+ - Compatibility status (✓ compatible or ⚠️ update needed)
20
+
21
+ If versions are mismatched, provide instructions:
22
+ - Update bd CLI: `curl -fsSL https://raw.githubusercontent.com/steveyegge/beads/main/install.sh | bash`
23
+ - Update plugin: `/plugin update beads`
24
+ - Restart Claude Code after updating
25
+
26
+ Suggest checking for updates if the user is on an older version.
@@ -0,0 +1,59 @@
1
+ ---
2
+ description: Show the AI-supervised issue workflow guide
3
+ ---
4
+
5
+ Display the beads workflow for AI agents and developers.
6
+
7
+ # Beads Workflow
8
+
9
+ Beads is an issue tracker designed for AI-supervised coding workflows. Here's how to use it effectively:
10
+
11
+ ## 1. Find Ready Work
12
+ Use `/bd-ready` or the `ready` MCP tool to see tasks with no blockers.
13
+
14
+ ## 2. Claim Your Task
15
+ Update the issue status to `in_progress`:
16
+ - Via command: `/bd-update <id> in_progress`
17
+ - Via MCP tool: `update` with `status: "in_progress"`
18
+
19
+ ## 3. Work on It
20
+ Implement, test, and document the feature or fix.
21
+
22
+ ## 4. Discover New Work
23
+ As you work, you'll often find bugs, TODOs, or related work:
24
+ - Create issues: `/bd-create` or `create` MCP tool
25
+ - Link them: Use `dep` MCP tool with `type: "discovered-from"`
26
+ - This maintains context and work history
27
+
28
+ ## 5. Complete the Task
29
+ Close the issue when done:
30
+ - Via command: `/bd-close <id> "Completed: <summary>"`
31
+ - Via MCP tool: `close` with reason
32
+
33
+ ## 6. Check What's Unblocked
34
+ After closing, check if other work became ready:
35
+ - Use `/bd-ready` to see newly unblocked tasks
36
+ - Start the cycle again
37
+
38
+ ## Tips
39
+ - **Priority levels**: 0=critical, 1=high, 2=medium, 3=low, 4=backlog
40
+ - **Issue types**: bug, feature, task, epic, chore
41
+ - **Dependencies**: Use `blocks` for hard dependencies, `related` for soft links
42
+ - **Auto-sync**: Changes automatically export to `.beads/issues.jsonl` (5-second debounce)
43
+ - **Git workflow**: After `git pull`, JSONL auto-imports if newer than DB
44
+
45
+ ## Available Commands
46
+ - `/bd-ready` - Find unblocked work
47
+ - `/bd-create` - Create new issue
48
+ - `/bd-show` - Show issue details
49
+ - `/bd-update` - Update issue
50
+ - `/bd-close` - Close issue
51
+ - `/bd-workflow` - Show this guide (you are here!)
52
+
53
+ ## MCP Tools Available
54
+ Use these via the beads MCP server:
55
+ - `ready`, `list`, `show`, `create`, `update`, `close`
56
+ - `dep` (manage dependencies), `blocked`, `stats`
57
+ - `init` (initialize bd in a project)
58
+
59
+ For more details, see the beads README at: https://github.com/steveyegge/beads