@mytechtoday/augment-extensions 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.
- package/AGENTS.md +152 -0
- package/LICENSE +22 -0
- package/MODULES.md +124 -0
- package/README.md +195 -0
- package/cli/dist/cli.d.ts +3 -0
- package/cli/dist/cli.d.ts.map +1 -0
- package/cli/dist/cli.js +100 -0
- package/cli/dist/cli.js.map +1 -0
- package/cli/dist/commands/init.d.ts +6 -0
- package/cli/dist/commands/init.d.ts.map +1 -0
- package/cli/dist/commands/init.js +137 -0
- package/cli/dist/commands/init.js.map +1 -0
- package/cli/dist/commands/link.d.ts +6 -0
- package/cli/dist/commands/link.d.ts.map +1 -0
- package/cli/dist/commands/link.js +85 -0
- package/cli/dist/commands/link.js.map +1 -0
- package/cli/dist/commands/list.d.ts +7 -0
- package/cli/dist/commands/list.d.ts.map +1 -0
- package/cli/dist/commands/list.js +122 -0
- package/cli/dist/commands/list.js.map +1 -0
- package/cli/dist/commands/search.d.ts +6 -0
- package/cli/dist/commands/search.d.ts.map +1 -0
- package/cli/dist/commands/search.js +16 -0
- package/cli/dist/commands/search.js.map +1 -0
- package/cli/dist/commands/show.d.ts +6 -0
- package/cli/dist/commands/show.d.ts.map +1 -0
- package/cli/dist/commands/show.js +106 -0
- package/cli/dist/commands/show.js.map +1 -0
- package/cli/dist/commands/update.d.ts +6 -0
- package/cli/dist/commands/update.d.ts.map +1 -0
- package/cli/dist/commands/update.js +19 -0
- package/cli/dist/commands/update.js.map +1 -0
- package/modules/coding-standards/typescript/README.md +45 -0
- package/modules/coding-standards/typescript/module.json +27 -0
- package/modules/coding-standards/typescript/rules/naming-conventions.md +225 -0
- package/modules/workflows/beads/README.md +135 -0
- package/modules/workflows/beads/examples/complete-workflow-example.md +278 -0
- package/modules/workflows/beads/module.json +54 -0
- package/modules/workflows/beads/rules/best-practices.md +398 -0
- package/modules/workflows/beads/rules/file-format.md +283 -0
- package/modules/workflows/beads/rules/manual-setup.md +315 -0
- package/modules/workflows/beads/rules/workflow.md +285 -0
- package/modules/workflows/openspec/README.md +96 -0
- package/modules/workflows/openspec/examples/complete-change-example.md +230 -0
- package/modules/workflows/openspec/module.json +53 -0
- package/modules/workflows/openspec/rules/best-practices.md +272 -0
- package/modules/workflows/openspec/rules/manual-setup.md +231 -0
- package/modules/workflows/openspec/rules/spec-format.md +193 -0
- package/modules/workflows/openspec/rules/workflow.md +189 -0
- package/package.json +72 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "beads-workflow",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"displayName": "Beads Workflow",
|
|
5
|
+
"description": "Distributed, git-backed graph issue tracker for AI agents. Provides persistent, structured memory for coding agents with dependency tracking.",
|
|
6
|
+
"type": "workflow",
|
|
7
|
+
"author": "Augment Extensions",
|
|
8
|
+
"license": "MIT",
|
|
9
|
+
"keywords": [
|
|
10
|
+
"beads",
|
|
11
|
+
"task-tracking",
|
|
12
|
+
"issue-tracker",
|
|
13
|
+
"workflow",
|
|
14
|
+
"memory",
|
|
15
|
+
"dependencies",
|
|
16
|
+
"git-backed"
|
|
17
|
+
],
|
|
18
|
+
"augment": {
|
|
19
|
+
"characterCount": 36820,
|
|
20
|
+
"priority": "high",
|
|
21
|
+
"category": "workflow",
|
|
22
|
+
"compatibleWith": [
|
|
23
|
+
"Claude Code",
|
|
24
|
+
"CodeBuddy",
|
|
25
|
+
"Cursor",
|
|
26
|
+
"GitHub Copilot",
|
|
27
|
+
"Continue",
|
|
28
|
+
"Windsurf",
|
|
29
|
+
"All AGENTS.md compatible tools"
|
|
30
|
+
]
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {},
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "https://github.com/steveyegge/beads"
|
|
36
|
+
},
|
|
37
|
+
"documentation": {
|
|
38
|
+
"homepage": "https://github.com/steveyegge/beads",
|
|
39
|
+
"installation": "https://github.com/steveyegge/beads#-installation",
|
|
40
|
+
"workflow": "https://github.com/steveyegge/beads/blob/main/AGENT_INSTRUCTIONS.md"
|
|
41
|
+
},
|
|
42
|
+
"installation": {
|
|
43
|
+
"required": false,
|
|
44
|
+
"optional": true,
|
|
45
|
+
"methods": {
|
|
46
|
+
"npm": "npm install -g @beads/bd",
|
|
47
|
+
"homebrew": "brew install steveyegge/beads/bd",
|
|
48
|
+
"go": "go install github.com/steveyegge/beads/cmd/bd@latest",
|
|
49
|
+
"manual": "Follow manual setup instructions in rules/manual-setup.md"
|
|
50
|
+
},
|
|
51
|
+
"notes": "CLI installation is optional. AI agents can work with .beads/ files directly without the CLI, but the CLI provides SQLite caching, auto-sync daemon, and validation."
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
@@ -0,0 +1,398 @@
|
|
|
1
|
+
# Beads Best Practices
|
|
2
|
+
|
|
3
|
+
## Task Creation
|
|
4
|
+
|
|
5
|
+
### Use Descriptive Titles
|
|
6
|
+
|
|
7
|
+
✅ **Good**: Clear, actionable titles
|
|
8
|
+
- "Implement JWT authentication"
|
|
9
|
+
- "Fix login timeout bug"
|
|
10
|
+
- "Refactor database connection pool"
|
|
11
|
+
|
|
12
|
+
❌ **Bad**: Vague or cryptic titles
|
|
13
|
+
- "Fix bug"
|
|
14
|
+
- "Update code"
|
|
15
|
+
- "Task 123"
|
|
16
|
+
|
|
17
|
+
### Set Appropriate Priorities
|
|
18
|
+
|
|
19
|
+
- **P0** - Critical, blocking production
|
|
20
|
+
- **P1** - High priority, needed soon
|
|
21
|
+
- **P2** - Medium priority (default)
|
|
22
|
+
- **P3** - Nice to have, low priority
|
|
23
|
+
|
|
24
|
+
### Add Descriptions
|
|
25
|
+
|
|
26
|
+
Include context in the description field:
|
|
27
|
+
|
|
28
|
+
```json
|
|
29
|
+
{
|
|
30
|
+
"id": "bd-a1b2",
|
|
31
|
+
"title": "Implement JWT authentication",
|
|
32
|
+
"description": "Add JWT-based authentication with email/password login. Use bcrypt for password hashing. Tokens expire after 24 hours.",
|
|
33
|
+
"priority": 0
|
|
34
|
+
}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Dependency Management
|
|
38
|
+
|
|
39
|
+
### Model Real Dependencies
|
|
40
|
+
|
|
41
|
+
Only use `blocks`/`blocked_by` for actual dependencies:
|
|
42
|
+
|
|
43
|
+
✅ **Good**: Real blocking relationships
|
|
44
|
+
```
|
|
45
|
+
bd-a1b2: "Add database schema"
|
|
46
|
+
blocks: ["bd-b2c3", "bd-c3d4"]
|
|
47
|
+
|
|
48
|
+
bd-b2c3: "Add API endpoint"
|
|
49
|
+
blocked_by: ["bd-a1b2"]
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
❌ **Bad**: Artificial dependencies
|
|
53
|
+
```
|
|
54
|
+
bd-a1b2: "Write documentation"
|
|
55
|
+
blocks: ["bd-b2c3"] # Doesn't actually block implementation
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Use Related for Loose Coupling
|
|
59
|
+
|
|
60
|
+
Use `related` for tasks that should be aware of each other but don't block:
|
|
61
|
+
|
|
62
|
+
```json
|
|
63
|
+
{
|
|
64
|
+
"id": "bd-c3d4",
|
|
65
|
+
"title": "Add frontend login form",
|
|
66
|
+
"related": ["bd-b2c3"] # Related to backend endpoint
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Break Circular Dependencies
|
|
71
|
+
|
|
72
|
+
Avoid circular dependencies:
|
|
73
|
+
|
|
74
|
+
❌ **Bad**:
|
|
75
|
+
```
|
|
76
|
+
bd-a1b2 blocks bd-b2c3
|
|
77
|
+
bd-b2c3 blocks bd-a1b2 # Circular!
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
✅ **Good**: Break into smaller tasks
|
|
81
|
+
```
|
|
82
|
+
bd-a1b2: "Add database schema"
|
|
83
|
+
bd-b2c3: "Add API endpoint" (blocked_by: bd-a1b2)
|
|
84
|
+
bd-c3d4: "Add validation" (blocked_by: bd-b2c3)
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Hierarchical Tasks
|
|
88
|
+
|
|
89
|
+
### Use for Epics
|
|
90
|
+
|
|
91
|
+
Create hierarchical IDs for large features:
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
bd-a3f8: "User Management System" (Epic)
|
|
95
|
+
├─ bd-a3f8.1: "Add authentication"
|
|
96
|
+
│ ├─ bd-a3f8.1.1: "Hash passwords"
|
|
97
|
+
│ └─ bd-a3f8.1.2: "Generate JWT tokens"
|
|
98
|
+
└─ bd-a3f8.2: "Add user profiles"
|
|
99
|
+
├─ bd-a3f8.2.1: "Create profile model"
|
|
100
|
+
└─ bd-a3f8.2.2: "Add profile API"
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Keep Hierarchy Shallow
|
|
104
|
+
|
|
105
|
+
Limit to 3 levels:
|
|
106
|
+
- Level 1: Epic
|
|
107
|
+
- Level 2: Task
|
|
108
|
+
- Level 3: Subtask
|
|
109
|
+
|
|
110
|
+
Deeper hierarchies become hard to manage.
|
|
111
|
+
|
|
112
|
+
## Status Management
|
|
113
|
+
|
|
114
|
+
### Update Status Promptly
|
|
115
|
+
|
|
116
|
+
Keep status current:
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
open → in-progress → closed
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Use Blocked Status
|
|
123
|
+
|
|
124
|
+
Mark tasks as blocked when waiting:
|
|
125
|
+
|
|
126
|
+
```json
|
|
127
|
+
{
|
|
128
|
+
"id": "bd-b2c3",
|
|
129
|
+
"status": "blocked",
|
|
130
|
+
"blocked_by": ["bd-a1b2"]
|
|
131
|
+
}
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Close Completed Tasks
|
|
135
|
+
|
|
136
|
+
Always close tasks when done:
|
|
137
|
+
|
|
138
|
+
```json
|
|
139
|
+
{
|
|
140
|
+
"id": "bd-a1b2",
|
|
141
|
+
"status": "closed",
|
|
142
|
+
"closed": "2024-01-20T12:00:00Z"
|
|
143
|
+
}
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## Comments and Documentation
|
|
147
|
+
|
|
148
|
+
### Add Progress Comments
|
|
149
|
+
|
|
150
|
+
Document progress and decisions:
|
|
151
|
+
|
|
152
|
+
```json
|
|
153
|
+
{
|
|
154
|
+
"id": "bd-a1b2",
|
|
155
|
+
"comments": [
|
|
156
|
+
{
|
|
157
|
+
"text": "Started implementation, using bcrypt for hashing",
|
|
158
|
+
"timestamp": "2024-01-20T11:00:00Z"
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
"text": "Completed password hashing, moving to JWT generation",
|
|
162
|
+
"timestamp": "2024-01-20T12:00:00Z"
|
|
163
|
+
}
|
|
164
|
+
]
|
|
165
|
+
}
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### Document Blockers
|
|
169
|
+
|
|
170
|
+
Explain why tasks are blocked:
|
|
171
|
+
|
|
172
|
+
```json
|
|
173
|
+
{
|
|
174
|
+
"id": "bd-b2c3",
|
|
175
|
+
"status": "blocked",
|
|
176
|
+
"blocked_by": ["bd-a1b2"],
|
|
177
|
+
"comments": [
|
|
178
|
+
{
|
|
179
|
+
"text": "Waiting for database schema to be finalized",
|
|
180
|
+
"timestamp": "2024-01-20T10:00:00Z"
|
|
181
|
+
}
|
|
182
|
+
]
|
|
183
|
+
}
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## Labels and Organization
|
|
187
|
+
|
|
188
|
+
### Use Consistent Labels
|
|
189
|
+
|
|
190
|
+
Establish label conventions:
|
|
191
|
+
|
|
192
|
+
- **Component**: `backend`, `frontend`, `database`, `api`
|
|
193
|
+
- **Type**: `bug`, `feature`, `refactor`, `docs`
|
|
194
|
+
- **Area**: `auth`, `users`, `payments`, `search`
|
|
195
|
+
|
|
196
|
+
```json
|
|
197
|
+
{
|
|
198
|
+
"id": "bd-a1b2",
|
|
199
|
+
"title": "Implement JWT authentication",
|
|
200
|
+
"labels": ["backend", "feature", "auth"]
|
|
201
|
+
}
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### Filter by Labels
|
|
205
|
+
|
|
206
|
+
Use labels to find related tasks:
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
# With CLI
|
|
210
|
+
bd list --labels auth
|
|
211
|
+
|
|
212
|
+
# Without CLI - parse and filter
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
## Multi-Agent Workflows
|
|
216
|
+
|
|
217
|
+
### Use Assignees
|
|
218
|
+
|
|
219
|
+
Track who is working on what:
|
|
220
|
+
|
|
221
|
+
```json
|
|
222
|
+
{
|
|
223
|
+
"id": "bd-a1b2",
|
|
224
|
+
"title": "Add authentication",
|
|
225
|
+
"assignee": "agent-1",
|
|
226
|
+
"status": "in-progress"
|
|
227
|
+
}
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
### Avoid Conflicts
|
|
231
|
+
|
|
232
|
+
Use hash-based IDs to prevent merge conflicts:
|
|
233
|
+
|
|
234
|
+
✅ **Good**: Hash-based IDs
|
|
235
|
+
```
|
|
236
|
+
bd-a1b2
|
|
237
|
+
bd-b2c3
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
❌ **Bad**: Sequential IDs
|
|
241
|
+
```
|
|
242
|
+
task-1
|
|
243
|
+
task-2 # Conflicts in parallel branches
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Sync Regularly
|
|
247
|
+
|
|
248
|
+
With CLI, the daemon auto-syncs. Without CLI, commit and pull regularly:
|
|
249
|
+
|
|
250
|
+
```bash
|
|
251
|
+
git add .beads/issues.jsonl
|
|
252
|
+
git commit -m "Update tasks"
|
|
253
|
+
git pull --rebase
|
|
254
|
+
git push
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## Performance
|
|
258
|
+
|
|
259
|
+
### Use CLI for Large Projects
|
|
260
|
+
|
|
261
|
+
For projects with >100 tasks, use the CLI:
|
|
262
|
+
- SQLite cache provides fast queries
|
|
263
|
+
- Auto-sync daemon keeps data current
|
|
264
|
+
- Compaction reduces context window usage
|
|
265
|
+
|
|
266
|
+
### Compact Regularly
|
|
267
|
+
|
|
268
|
+
Run compaction to summarize old tasks:
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
bd compact
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
This creates semantic summaries of closed tasks, reducing file size.
|
|
275
|
+
|
|
276
|
+
### Archive Old Tasks
|
|
277
|
+
|
|
278
|
+
Move very old closed tasks to archive:
|
|
279
|
+
|
|
280
|
+
```bash
|
|
281
|
+
# With CLI
|
|
282
|
+
bd archive --older-than 90d
|
|
283
|
+
|
|
284
|
+
# Without CLI - manually move to separate file
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
## Git Integration
|
|
288
|
+
|
|
289
|
+
### Commit Task Updates
|
|
290
|
+
|
|
291
|
+
Commit `.beads/issues.jsonl` with related code:
|
|
292
|
+
|
|
293
|
+
```bash
|
|
294
|
+
git add .beads/issues.jsonl src/auth.py
|
|
295
|
+
git commit -m "Implement JWT authentication (bd-a1b2)"
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
### Reference in Commits
|
|
299
|
+
|
|
300
|
+
Reference task IDs in commit messages:
|
|
301
|
+
|
|
302
|
+
```
|
|
303
|
+
Implement JWT authentication (bd-a1b2)
|
|
304
|
+
|
|
305
|
+
- Add JWT generation
|
|
306
|
+
- Add password hashing with bcrypt
|
|
307
|
+
- Add login endpoint
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
### Branch Naming
|
|
311
|
+
|
|
312
|
+
Include task ID in branch names:
|
|
313
|
+
|
|
314
|
+
```bash
|
|
315
|
+
git checkout -b bd-a1b2-add-authentication
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
## Stealth Mode
|
|
319
|
+
|
|
320
|
+
### Personal Use on Shared Projects
|
|
321
|
+
|
|
322
|
+
Use stealth mode for personal task tracking:
|
|
323
|
+
|
|
324
|
+
```bash
|
|
325
|
+
bd init --stealth
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
This creates `.beads/` in a separate branch that doesn't merge to main.
|
|
329
|
+
|
|
330
|
+
### Team Adoption
|
|
331
|
+
|
|
332
|
+
When team is ready, disable stealth:
|
|
333
|
+
|
|
334
|
+
```bash
|
|
335
|
+
bd config set stealth false
|
|
336
|
+
git add .beads/
|
|
337
|
+
git commit -m "Enable Beads for team"
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
## Common Pitfalls
|
|
341
|
+
|
|
342
|
+
### ❌ Forgetting to Update Status
|
|
343
|
+
|
|
344
|
+
Don't leave tasks in "open" when you're working on them.
|
|
345
|
+
|
|
346
|
+
### ❌ Creating Too Many Dependencies
|
|
347
|
+
|
|
348
|
+
Only model real blocking relationships.
|
|
349
|
+
|
|
350
|
+
### ❌ Vague Titles
|
|
351
|
+
|
|
352
|
+
Be specific about what needs to be done.
|
|
353
|
+
|
|
354
|
+
### ❌ Not Closing Tasks
|
|
355
|
+
|
|
356
|
+
Always close completed tasks to keep the list clean.
|
|
357
|
+
|
|
358
|
+
### ❌ Ignoring Ready Tasks
|
|
359
|
+
|
|
360
|
+
Use `bd ready` to find tasks you can work on now.
|
|
361
|
+
|
|
362
|
+
## AI Agent Collaboration
|
|
363
|
+
|
|
364
|
+
### Provide Context
|
|
365
|
+
|
|
366
|
+
When asking AI to create tasks:
|
|
367
|
+
|
|
368
|
+
```
|
|
369
|
+
Create a Beads task for implementing user authentication.
|
|
370
|
+
Priority: 0
|
|
371
|
+
Description: Add JWT-based auth with email/password login
|
|
372
|
+
Labels: backend, feature, auth
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### Check Ready Tasks
|
|
376
|
+
|
|
377
|
+
Ask AI to check what's ready:
|
|
378
|
+
|
|
379
|
+
```
|
|
380
|
+
What Beads tasks are ready to work on right now?
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
### Update Progress
|
|
384
|
+
|
|
385
|
+
Ask AI to document progress:
|
|
386
|
+
|
|
387
|
+
```
|
|
388
|
+
Add a comment to bd-a1b2: "Completed password hashing, starting JWT generation"
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
### Close When Done
|
|
392
|
+
|
|
393
|
+
Ask AI to close completed tasks:
|
|
394
|
+
|
|
395
|
+
```
|
|
396
|
+
Close Beads task bd-a1b2, we've finished the implementation
|
|
397
|
+
```
|
|
398
|
+
|