opencodekit 0.21.9 → 0.22.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 +116 -499
- package/dist/template/.opencode/README.md +1 -1
- package/dist/template/.opencode/agent/build.md +56 -396
- package/dist/template/.opencode/agent/explore.md +15 -16
- package/dist/template/.opencode/agent/general.md +2 -2
- package/dist/template/.opencode/agent/plan.md +3 -3
- package/dist/template/.opencode/agent/review.md +2 -3
- package/dist/template/.opencode/agent/scout.md +34 -16
- package/dist/template/.opencode/agent/vision.md +0 -1
- package/dist/template/.opencode/command/clarify.md +48 -0
- package/dist/template/.opencode/command/commit.md +53 -0
- package/dist/template/.opencode/command/design.md +4 -4
- package/dist/template/.opencode/command/fix.md +56 -0
- package/dist/template/.opencode/command/improve-architecture.md +55 -0
- package/dist/template/.opencode/command/init.md +88 -68
- package/dist/template/.opencode/command/refactor.md +66 -0
- package/dist/template/.opencode/command/review-codebase.md +1 -1
- package/dist/template/.opencode/command/ship.md +1 -1
- package/dist/template/.opencode/command/test.md +66 -0
- package/dist/template/.opencode/dcp.jsonc +29 -46
- package/dist/template/.opencode/memory/README.md +3 -5
- package/dist/template/.opencode/memory/_templates/adr.md +45 -0
- package/dist/template/.opencode/memory/project/gotchas.md +1 -1
- package/dist/template/.opencode/memory/project/user.md +1 -2
- package/dist/template/.opencode/memory/session-context.md +1 -1
- package/dist/template/.opencode/opencode.json +10 -332
- package/dist/template/.opencode/plugin/README.md +1 -1
- 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/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/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/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/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/ubiquitous-language/SKILL.md +184 -0
- package/dist/template/.opencode/tool/context7.ts +1 -1
- package/dist/template/.opencode/tool/grepsearch.ts +1 -1
- package/package.json +1 -1
- 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/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/brand-asset-protocol/SKILL.md +0 -222
- package/dist/template/.opencode/skill/code-search-patterns/SKILL.md +0 -253
- 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
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Create user profile for personalized AI interactions
|
|
3
|
-
argument-hint: "[--skip-questions]"
|
|
4
|
-
agent: build
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Init-User: $ARGUMENTS
|
|
8
|
-
|
|
9
|
-
Create personalized user profile. Optional but recommended for better AI responses.
|
|
10
|
-
|
|
11
|
-
> **Prerequisite:** Run `/init` first for core setup
|
|
12
|
-
> **Related:** `/init-context` for project planning setup
|
|
13
|
-
|
|
14
|
-
## Load Skills
|
|
15
|
-
|
|
16
|
-
```typescript
|
|
17
|
-
skill({ name: "memory-system" });
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
## Options
|
|
21
|
-
|
|
22
|
-
| Argument | Default | Description |
|
|
23
|
-
| ------------------ | ------- | ----------------------------------- |
|
|
24
|
-
| `--skip-questions` | false | Infer from git config, skip prompts |
|
|
25
|
-
|
|
26
|
-
## Phase 1: Gather Preferences
|
|
27
|
-
|
|
28
|
-
Unless `--skip-questions`, ask in one message:
|
|
29
|
-
|
|
30
|
-
1. **Identity**: "Which git contributor are you?" (show top 5 from `git shortlog -sn --all`)
|
|
31
|
-
2. **Communication**: "Terse or detailed responses?"
|
|
32
|
-
3. **Workflow**: "Auto-commit or ask-first?"
|
|
33
|
-
4. **Rules**: "Any rules I should always follow?"
|
|
34
|
-
5. **Technical**: "Preferred languages/frameworks?"
|
|
35
|
-
|
|
36
|
-
If skipped, infer from `git config user.name` and `git config user.email`.
|
|
37
|
-
|
|
38
|
-
## Phase 2: Create user.md
|
|
39
|
-
|
|
40
|
-
From template `.opencode/memory/_templates/user.md`:
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
cp .opencode/memory/_templates/user.md .opencode/memory/project/user.md
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Fill in gathered answers:
|
|
47
|
-
|
|
48
|
-
```markdown
|
|
49
|
-
---
|
|
50
|
-
purpose: User identity, preferences, communication style
|
|
51
|
-
updated: [today]
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
# User Profile
|
|
55
|
-
|
|
56
|
-
## Identity
|
|
57
|
-
|
|
58
|
-
- Name: [from answers]
|
|
59
|
-
- Git email: [user.email]
|
|
60
|
-
|
|
61
|
-
## Communication Preferences
|
|
62
|
-
|
|
63
|
-
- Style: [Terse/Detailed]
|
|
64
|
-
- Tone: [Professional/Casual]
|
|
65
|
-
|
|
66
|
-
## Workflow Preferences
|
|
67
|
-
|
|
68
|
-
- Git commits: [Auto/Ask-first]
|
|
69
|
-
- Beads updates: [Auto/Ask-first]
|
|
70
|
-
|
|
71
|
-
## Technical Preferences
|
|
72
|
-
|
|
73
|
-
- Languages/frameworks: [Preferred languages/frameworks]
|
|
74
|
-
|
|
75
|
-
## Things to Remember
|
|
76
|
-
|
|
77
|
-
- [Rule 1]
|
|
78
|
-
- [Rule 2]
|
|
79
|
-
- [Rule 3]
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
### Persist to Memory System
|
|
83
|
-
|
|
84
|
-
After writing the file, also store key preferences as a memory observation for cross-session retrieval:
|
|
85
|
-
|
|
86
|
-
```typescript
|
|
87
|
-
observation({
|
|
88
|
-
type: "decision",
|
|
89
|
-
title: "User profile: [name]",
|
|
90
|
-
narrative: "User preferences captured: [style], [workflow prefs], [technical prefs]. Source: /init-user command.",
|
|
91
|
-
concepts: "user-profile, preferences",
|
|
92
|
-
confidence: "high",
|
|
93
|
-
files_modified: ".opencode/memory/project/user.md",
|
|
94
|
-
});
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
## Phase 3: Update opencode.json
|
|
98
|
-
|
|
99
|
-
Ensure `user.md` is loaded in `instructions` (bare paths, no `file://` prefix).
|
|
100
|
-
|
|
101
|
-
The default `instructions[]` includes 4 auto-injected files:
|
|
102
|
-
|
|
103
|
-
```json
|
|
104
|
-
{
|
|
105
|
-
"instructions": [
|
|
106
|
-
".opencode/memory/project/user.md",
|
|
107
|
-
".opencode/memory/project/tech-stack.md",
|
|
108
|
-
".opencode/memory/project/project.md",
|
|
109
|
-
".opencode/context/git-context.md"
|
|
110
|
-
]
|
|
111
|
-
}
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
> **Warning:** Do not add more files to `instructions[]` unless they are essential for every prompt. Per-prompt injection of too many files causes session OOM crashes. Use `memory-read()` for on-demand access instead.
|
|
115
|
-
|
|
116
|
-
## Phase 4: Report
|
|
117
|
-
|
|
118
|
-
Output:
|
|
119
|
-
|
|
120
|
-
1. user.md created at `.opencode/memory/project/user.md`
|
|
121
|
-
2. Preferences captured
|
|
122
|
-
3. 4 files are auto-injected by default: user.md, tech-stack.md, project.md, git-context.md
|
|
123
|
-
4. Additional planning files (roadmap.md, state.md) are on-demand via `/init-context`
|
|
124
|
-
5. Custom context available at `.opencode/context/` (preserved during init --force and upgrade)
|
|
125
|
-
6. Next step: `/init-context` if the user wants fuller project-planning memory files
|
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Refine PRD mid-implementation when scope changes, discoveries emerge, or requirements pivot
|
|
3
|
-
argument-hint: "<bead-id> [--scope expand|reduce|pivot] [--reason <text>]"
|
|
4
|
-
agent: build
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Iterate: $ARGUMENTS
|
|
8
|
-
|
|
9
|
-
Refine a bead's PRD during active implementation. Two-phase process: define what changed, then update spec artifacts and re-derive affected tasks.
|
|
10
|
-
|
|
11
|
-
> **When to use:** Mid-`/ship` when you discover scope changed, requirements shifted, or a technical discovery invalidates the original plan.
|
|
12
|
-
>
|
|
13
|
-
> **NOT for:** Pre-implementation changes (use `/create` to rewrite the PRD) or post-implementation retrospectives (use `/compound`).
|
|
14
|
-
|
|
15
|
-
## Load Skills
|
|
16
|
-
|
|
17
|
-
```typescript
|
|
18
|
-
skill({ name: "beads" });
|
|
19
|
-
skill({ name: "memory-grounding" });
|
|
20
|
-
skill({ name: "prd" });
|
|
21
|
-
skill({ name: "prd-task" });
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## Parse Arguments
|
|
25
|
-
|
|
26
|
-
| Argument | Default | Description |
|
|
27
|
-
| ----------- | ------------- | ---------------------------------- |
|
|
28
|
-
| `<bead-id>` | required | The bead being iterated |
|
|
29
|
-
| `--scope` | auto-detected | Change type: expand, reduce, pivot |
|
|
30
|
-
| `--reason` | prompted | Why the change is needed |
|
|
31
|
-
|
|
32
|
-
## Before You Iterate
|
|
33
|
-
|
|
34
|
-
- **Be certain**: Only iterate if continuing with the current spec would produce wrong output
|
|
35
|
-
- **Don't over-iterate**: Minor adjustments don't need a full iterate cycle — just fix inline during `/ship`
|
|
36
|
-
- **Preserve progress**: Completed tasks stay completed unless explicitly invalidated
|
|
37
|
-
- **Document the delta**: Every change must be traceable to a reason
|
|
38
|
-
|
|
39
|
-
## Phase 1: Guards
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
br show $ARGUMENTS
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
Read `.beads/artifacts/$ARGUMENTS/` to check what artifacts exist.
|
|
46
|
-
|
|
47
|
-
Verify:
|
|
48
|
-
|
|
49
|
-
- Bead is `in_progress`
|
|
50
|
-
- `prd.md` exists
|
|
51
|
-
- Implementation is partially complete (at least 1 task done or in-progress)
|
|
52
|
-
|
|
53
|
-
If no tasks are started yet, redirect: "Use `/create --spec-only` to rewrite the PRD instead."
|
|
54
|
-
|
|
55
|
-
## Phase 2: Assess Change Type
|
|
56
|
-
|
|
57
|
-
If `--scope` was not provided, determine the change type:
|
|
58
|
-
|
|
59
|
-
| Type | Signal | Example |
|
|
60
|
-
| ---------- | ------------------------------------------------------- | ----------------------------------------- |
|
|
61
|
-
| **expand** | New requirement discovered, additional files needed | "We also need to handle edge case X" |
|
|
62
|
-
| **reduce** | Feature is over-scoped, some tasks are unnecessary | "We don't need the admin panel after all" |
|
|
63
|
-
| **pivot** | Fundamental approach changed, different solution needed | "REST won't work, switching to WebSocket" |
|
|
64
|
-
|
|
65
|
-
Ask user to confirm:
|
|
66
|
-
|
|
67
|
-
```typescript
|
|
68
|
-
question({
|
|
69
|
-
questions: [
|
|
70
|
-
{
|
|
71
|
-
header: "Change Type",
|
|
72
|
-
question: "What kind of spec change is this?",
|
|
73
|
-
options: [
|
|
74
|
-
{ label: "Expand", description: "Adding scope — new requirements or files" },
|
|
75
|
-
{ label: "Reduce", description: "Removing scope — dropping unnecessary work" },
|
|
76
|
-
{ label: "Pivot", description: "Changing approach — different solution path" },
|
|
77
|
-
],
|
|
78
|
-
},
|
|
79
|
-
],
|
|
80
|
-
});
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
## Phase 3: Define the Delta
|
|
84
|
-
|
|
85
|
-
### Step 1: Capture the change reason
|
|
86
|
-
|
|
87
|
-
If `--reason` was not provided, ask:
|
|
88
|
-
|
|
89
|
-
```typescript
|
|
90
|
-
question({
|
|
91
|
-
questions: [
|
|
92
|
-
{
|
|
93
|
-
header: "Reason",
|
|
94
|
-
question: "What triggered this change? (Be specific — this goes into the PRD changelog)",
|
|
95
|
-
options: [],
|
|
96
|
-
},
|
|
97
|
-
],
|
|
98
|
-
});
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
### Step 2: Identify affected artifacts
|
|
102
|
-
|
|
103
|
-
Read the current PRD and list:
|
|
104
|
-
|
|
105
|
-
- **Tasks completed:** (preserve these unless pivot invalidates them)
|
|
106
|
-
- **Tasks in-progress:** (may need modification)
|
|
107
|
-
- **Tasks not started:** (may need modification, removal, or replacement)
|
|
108
|
-
- **New tasks needed:** (for expand/pivot)
|
|
109
|
-
|
|
110
|
-
### Step 3: Document the delta
|
|
111
|
-
|
|
112
|
-
Write a change record to `.beads/artifacts/$ARGUMENTS/iterations.md`:
|
|
113
|
-
|
|
114
|
-
```markdown
|
|
115
|
-
## Iteration [N] — [date]
|
|
116
|
-
|
|
117
|
-
**Type:** [expand | reduce | pivot]
|
|
118
|
-
**Reason:** [user-provided reason]
|
|
119
|
-
**Triggered by:** [discovery | user request | technical constraint | external dependency]
|
|
120
|
-
|
|
121
|
-
### Impact Assessment
|
|
122
|
-
|
|
123
|
-
| Area | Before | After | Action |
|
|
124
|
-
| ----- | ----------------------- | ------------------------- | ------------------------------ |
|
|
125
|
-
| Scope | [original scope] | [new scope] | [expanded/reduced/pivoted] |
|
|
126
|
-
| Tasks | [N] total, [M] complete | [N'] total, [M] preserved | [added/removed/modified count] |
|
|
127
|
-
| Files | [original file list] | [updated file list] | [new/removed files] |
|
|
128
|
-
|
|
129
|
-
### Task Changes
|
|
130
|
-
|
|
131
|
-
- **Preserved:** [list of completed task titles — unchanged]
|
|
132
|
-
- **Modified:** [list of tasks with what changed]
|
|
133
|
-
- **Removed:** [list of tasks marked obsolete, with reason]
|
|
134
|
-
- **Added:** [list of new tasks]
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
## Phase 4: Apply Changes
|
|
138
|
-
|
|
139
|
-
### For Expand:
|
|
140
|
-
|
|
141
|
-
1. Add new sections/requirements to `prd.md`
|
|
142
|
-
2. Add new tasks at the end of the Tasks section
|
|
143
|
-
3. Mark new tasks with `depends_on` referencing completed tasks if needed
|
|
144
|
-
4. Re-run `prd-task` skill to regenerate `prd.json` with merged task state
|
|
145
|
-
|
|
146
|
-
### For Reduce:
|
|
147
|
-
|
|
148
|
-
1. Move removed scope items to "Out-of-Scope" in `prd.md` with note: `[Removed in Iteration N: reason]`
|
|
149
|
-
2. Mark affected tasks by changing their heading from `### Task Title [category]` to `### ~~Task Title~~ [OBSOLETE — Iteration N]` in `prd.md` (don't delete — preserve history). The `prd-task` skill skips headings containing `OBSOLETE` or `INVALIDATED` markers.
|
|
150
|
-
3. Re-run `prd-task` to regenerate `prd.json` (obsolete tasks excluded)
|
|
151
|
-
|
|
152
|
-
### For Pivot:
|
|
153
|
-
|
|
154
|
-
1. Archive current PRD section as `## Original Approach (Superseded)` at bottom of file
|
|
155
|
-
2. Rewrite affected sections (Proposed Solution, Requirements, Tasks)
|
|
156
|
-
3. Preserve completed tasks that are still valid
|
|
157
|
-
4. Mark invalidated completed tasks by changing their heading to `### ~~Task Title~~ [INVALIDATED — Iteration N: reason]`
|
|
158
|
-
5. Re-run `prd-task` to regenerate `prd.json`
|
|
159
|
-
|
|
160
|
-
### Update plan.md (if exists):
|
|
161
|
-
|
|
162
|
-
If `.beads/artifacts/$ARGUMENTS/plan.md` exists:
|
|
163
|
-
|
|
164
|
-
1. Add an "## Iteration [N] Changes" section to the plan
|
|
165
|
-
2. Update dependency graph if tasks changed
|
|
166
|
-
3. Re-compute waves for remaining tasks
|
|
167
|
-
|
|
168
|
-
## Phase 5: Validate
|
|
169
|
-
|
|
170
|
-
After applying changes:
|
|
171
|
-
|
|
172
|
-
- [ ] PRD has no `[NEEDS CLARIFICATION]` markers (resolve or add to Open Questions)
|
|
173
|
-
- [ ] All preserved completed tasks are still valid
|
|
174
|
-
- [ ] New/modified tasks have verification steps
|
|
175
|
-
- [ ] `iterations.md` documents the full delta
|
|
176
|
-
- [ ] `prd.json` reflects the updated task state
|
|
177
|
-
|
|
178
|
-
## Phase 6: Report
|
|
179
|
-
|
|
180
|
-
```bash
|
|
181
|
-
br comments add $ARGUMENTS "Iteration [N]: [type] — [reason summary]. Tasks: [added/removed/modified] count"
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
Output:
|
|
185
|
-
|
|
186
|
-
1. **Change type:** [expand | reduce | pivot]
|
|
187
|
-
2. **Reason:** [brief summary]
|
|
188
|
-
3. **Task changes:** [N] preserved, [M] modified, [K] removed, [J] added
|
|
189
|
-
4. **Files affected:** [updated list]
|
|
190
|
-
5. **Iteration log:** `.beads/artifacts/$ARGUMENTS/iterations.md`
|
|
191
|
-
6. **Next step:** Continue `/ship $ARGUMENTS` with updated spec
|
|
192
|
-
|
|
193
|
-
## Related Commands
|
|
194
|
-
|
|
195
|
-
| Need | Command |
|
|
196
|
-
| -------------------------- | ------------------ |
|
|
197
|
-
| Create initial spec | `/create` |
|
|
198
|
-
| Continue shipping | `/ship <id>` |
|
|
199
|
-
| Review after changes | `/review-codebase` |
|
|
200
|
-
| Post-implementation review | `/compound <id>` |
|
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Full autonomous chain - Plan → Ship → Review → Compound in one command
|
|
3
|
-
argument-hint: "<bead-id> [--skip-plan]"
|
|
4
|
-
agent: build
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# LFG (Let's Fucking Go): $ARGUMENTS
|
|
8
|
-
|
|
9
|
-
Full compound engineering cycle. One command, all four steps.
|
|
10
|
-
|
|
11
|
-
> **When to use:** You have a bead in `in_progress` state with a PRD. You want maximum autonomous execution with minimum hand-holding.
|
|
12
|
-
>
|
|
13
|
-
> **Checkpoints happen** at decision points. Everything automatable is automated.
|
|
14
|
-
|
|
15
|
-
## Parse Arguments
|
|
16
|
-
|
|
17
|
-
| Argument | Default | Description |
|
|
18
|
-
| ------------- | -------- | --------------------------------------- |
|
|
19
|
-
| `<bead-id>` | required | The bead to execute |
|
|
20
|
-
| `--skip-plan` | false | Skip planning if plan.md already exists |
|
|
21
|
-
|
|
22
|
-
## Phase 0: Preflight
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
br show $BEAD_ID
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
Read `.beads/artifacts/$BEAD_ID/` to check what artifacts exist.
|
|
29
|
-
|
|
30
|
-
Verify:
|
|
31
|
-
|
|
32
|
-
- Bead exists and is `in_progress`
|
|
33
|
-
- `prd.md` exists
|
|
34
|
-
- If `plan.md` exists and `--skip-plan` not set: ask user whether to replan or use existing
|
|
35
|
-
|
|
36
|
-
Report:
|
|
37
|
-
|
|
38
|
-
```
|
|
39
|
-
## LFG: <bead-id> — <title>
|
|
40
|
-
|
|
41
|
-
Cycle: Plan → Ship → Review → Compound
|
|
42
|
-
Review mode: [Standard 3-agent / Deep 5-agent]
|
|
43
|
-
Plan: [create new / use existing]
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
## Step 1: PLAN
|
|
47
|
-
|
|
48
|
-
Load and execute the `/plan` command for this bead:
|
|
49
|
-
|
|
50
|
-
```typescript
|
|
51
|
-
skill({ name: "writing-plans" });
|
|
52
|
-
// Run full /plan flow including Phase 0 institutional research
|
|
53
|
-
// Output: .beads/artifacts/$BEAD_ID/plan.md
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
Checkpoint if plan has major unknowns or architecture questions. Otherwise proceed automatically.
|
|
57
|
-
|
|
58
|
-
## Step 2: WORK
|
|
59
|
-
|
|
60
|
-
Execute the plan:
|
|
61
|
-
|
|
62
|
-
```typescript
|
|
63
|
-
skill({ name: "executing-plans" });
|
|
64
|
-
skill({ name: "reflection-checkpoints" }); // Phase transition + mid-point checks
|
|
65
|
-
// Load plan.md, execute wave-by-wave
|
|
66
|
-
// Per-task commits after each task passes verification
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
Follow the [Verification Protocol](../skill/verification-before-completion/references/VERIFICATION_PROTOCOL.md):
|
|
70
|
-
|
|
71
|
-
- Use **full mode** for final verification
|
|
72
|
-
- Use **incremental mode** between implementation waves
|
|
73
|
-
|
|
74
|
-
Checkpoint only at `checkpoint:human-verify` or `checkpoint:decision` tasks.
|
|
75
|
-
|
|
76
|
-
## Step 3: REVIEW
|
|
77
|
-
|
|
78
|
-
```bash
|
|
79
|
-
BASE_SHA=$(git rev-parse origin/main 2>/dev/null || git merge-base HEAD origin/main)
|
|
80
|
-
HEAD_SHA=$(git rev-parse HEAD)
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
Load and run the review skill:
|
|
84
|
-
|
|
85
|
-
```typescript
|
|
86
|
-
skill({ name: "requesting-code-review" });
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
Dispatch 5 specialized agents in parallel.
|
|
90
|
-
|
|
91
|
-
Wait for all agents to return. Synthesize findings.
|
|
92
|
-
|
|
93
|
-
**Auto-fix rule:**
|
|
94
|
-
|
|
95
|
-
- Critical issues → fix inline, re-verify, continue
|
|
96
|
-
- Important issues → fix inline, continue
|
|
97
|
-
- Minor issues → add to bead comments, continue
|
|
98
|
-
|
|
99
|
-
If Critical issues cannot be auto-fixed:
|
|
100
|
-
|
|
101
|
-
```
|
|
102
|
-
## CHECKPOINT: Review Blocker
|
|
103
|
-
|
|
104
|
-
Critical issue found that requires architectural decision:
|
|
105
|
-
[description]
|
|
106
|
-
|
|
107
|
-
Options:
|
|
108
|
-
1. [option A]
|
|
109
|
-
2. [option B]
|
|
110
|
-
|
|
111
|
-
Awaiting your decision before continuing.
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
## Step 4: COMPOUND
|
|
115
|
-
|
|
116
|
-
Load and run the compound command:
|
|
117
|
-
|
|
118
|
-
```typescript
|
|
119
|
-
// Run /compound $BEAD_ID
|
|
120
|
-
// Extract learnings from the full cycle
|
|
121
|
-
// Store observations to memory
|
|
122
|
-
// Suggest AGENTS.md updates if conventions changed
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
## Step 5: Report & Next
|
|
126
|
-
|
|
127
|
-
```
|
|
128
|
-
## LFG Complete: <bead-id>
|
|
129
|
-
|
|
130
|
-
### Cycle Summary
|
|
131
|
-
|
|
132
|
-
| Step | Status | Notes |
|
|
133
|
-
|----------|--------|------------------------------|
|
|
134
|
-
| Plan | ✓ | [N] waves, [M] tasks |
|
|
135
|
-
| Work | ✓ | [N] commits, [M] files |
|
|
136
|
-
| Review | ✓ | [N] agents, [M] fixes |
|
|
137
|
-
| Compound | ✓ | [N] observations stored |
|
|
138
|
-
|
|
139
|
-
### Learnings Captured
|
|
140
|
-
[list of observation titles]
|
|
141
|
-
|
|
142
|
-
### Verification
|
|
143
|
-
- typecheck: pass
|
|
144
|
-
- lint: pass
|
|
145
|
-
- tests: pass ([N] passing)
|
|
146
|
-
|
|
147
|
-
### Next Steps
|
|
148
|
-
- Review the changes: `git diff origin/main`
|
|
149
|
-
- Create PR: `/pr`
|
|
150
|
-
- Or continue with next bead: `/lfg <next-bead-id>`
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
## Swarm Mode (sLFG)
|
|
154
|
-
|
|
155
|
-
For large plans with 6+ independent tasks, run Work step in swarm mode:
|
|
156
|
-
|
|
157
|
-
```typescript
|
|
158
|
-
skill({ name: "swarm-coordination" });
|
|
159
|
-
// Dispatch parallel worker agents per wave
|
|
160
|
-
// Leader monitors and synthesizes
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
Use when: plan has 2+ independent waves with no shared file mutations.
|
|
164
|
-
|
|
165
|
-
## Related Commands
|
|
166
|
-
|
|
167
|
-
| Need | Command |
|
|
168
|
-
| --------------- | ---------------- |
|
|
169
|
-
| Plan only | `/plan <id>` |
|
|
170
|
-
| Ship only | `/ship <id>` |
|
|
171
|
-
| Review only | `/review` |
|
|
172
|
-
| Compound only | `/compound <id>` |
|
|
173
|
-
| Create PR after | `/pr` |
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Resume work on a bead from previous session
|
|
3
|
-
argument-hint: "<bead-id>"
|
|
4
|
-
agent: build
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Resume: $ARGUMENTS
|
|
8
|
-
|
|
9
|
-
Pick up where a previous session left off. Recover context, verify state, continue.
|
|
10
|
-
|
|
11
|
-
## Load Skills
|
|
12
|
-
|
|
13
|
-
```typescript
|
|
14
|
-
skill({ name: "beads" });
|
|
15
|
-
skill({ name: "memory-grounding" });
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Phase 1: Verify Task
|
|
19
|
-
|
|
20
|
-
```bash
|
|
21
|
-
br show $ARGUMENTS
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
If not found, check `br list --status=all` — it may have been closed or the ID is wrong.
|
|
25
|
-
|
|
26
|
-
## Phase 2: Git State
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
git branch --show-current
|
|
30
|
-
git status --porcelain
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
If not on the right branch, check out the feature branch. If uncommitted changes exist, ask user what to do.
|
|
34
|
-
|
|
35
|
-
## Phase 3: Find Handoff
|
|
36
|
-
|
|
37
|
-
Follow the [memory-grounding](../skill/memory-grounding/SKILL.md) skill protocol. Focus on: handoff file by bead ID, session history.
|
|
38
|
-
|
|
39
|
-
If a handoff exists, it tells you:
|
|
40
|
-
|
|
41
|
-
- What was completed
|
|
42
|
-
- Where work stopped
|
|
43
|
-
- What to do next
|
|
44
|
-
- Any blockers
|
|
45
|
-
|
|
46
|
-
## Phase 4: Load Artifacts
|
|
47
|
-
|
|
48
|
-
Read all available context:
|
|
49
|
-
|
|
50
|
-
- `.beads/artifacts/$ARGUMENTS/prd.md`
|
|
51
|
-
- `.beads/artifacts/$ARGUMENTS/plan.md` (if exists)
|
|
52
|
-
- `.beads/artifacts/$ARGUMENTS/progress.txt` (if exists)
|
|
53
|
-
- `.beads/artifacts/$ARGUMENTS/research.md` (if exists)
|
|
54
|
-
|
|
55
|
-
## Phase 5: Check Staleness
|
|
56
|
-
|
|
57
|
-
If handoff is more than 3 days old:
|
|
58
|
-
|
|
59
|
-
```bash
|
|
60
|
-
git log --oneline -10
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Check if significant changes happened on main. If so, consider rebasing. Don't blindly follow an outdated plan — verify it still makes sense.
|
|
64
|
-
|
|
65
|
-
## Phase 6: Continue
|
|
66
|
-
|
|
67
|
-
```bash
|
|
68
|
-
br update $ARGUMENTS --status in_progress
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
Report:
|
|
72
|
-
|
|
73
|
-
1. Branch and commit
|
|
74
|
-
2. Handoff age
|
|
75
|
-
3. Progress (completed/remaining tasks)
|
|
76
|
-
4. Next action (from handoff or PRD)
|
|
77
|
-
|
|
78
|
-
Then continue with `/ship $ARGUMENTS` or `/plan $ARGUMENTS` as appropriate.
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Show project status - tasks, git state, recent sessions
|
|
3
|
-
argument-hint: "[--git] [--sessions]"
|
|
4
|
-
agent: build
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Status: $ARGUMENTS
|
|
8
|
-
|
|
9
|
-
Quick project status dashboard. Runs read-only commands and reports state.
|
|
10
|
-
|
|
11
|
-
> **No arguments required.** Flags are optional filters.
|
|
12
|
-
|
|
13
|
-
## Parse Arguments
|
|
14
|
-
|
|
15
|
-
| Argument | Default | Description |
|
|
16
|
-
| ------------ | ------- | ----------------------- |
|
|
17
|
-
| `--git` | false | Focus on git state only |
|
|
18
|
-
| `--sessions` | false | Focus on sessions only |
|
|
19
|
-
|
|
20
|
-
## Load Skills
|
|
21
|
-
|
|
22
|
-
```typescript
|
|
23
|
-
skill({ name: "beads" });
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## Determine Input Type
|
|
27
|
-
|
|
28
|
-
| Input Type | Detection | Action |
|
|
29
|
-
| ------------ | ------------- | ------------------- |
|
|
30
|
-
| No arguments | Default | Show full dashboard |
|
|
31
|
-
| `--git` | Flag provided | Git state only |
|
|
32
|
-
| `--sessions` | Flag provided | Sessions only |
|
|
33
|
-
|
|
34
|
-
## Before You Status
|
|
35
|
-
|
|
36
|
-
- **Be certain**: This is a read-only command, no changes are made
|
|
37
|
-
- **Use actual data**: Don't invent data, use real command output
|
|
38
|
-
- **No modifications**: Don't create beads or modify state from status
|
|
39
|
-
- **Single recommendation**: Only suggest ONE next action
|
|
40
|
-
|
|
41
|
-
## Available Tools
|
|
42
|
-
|
|
43
|
-
| Tool | Use When |
|
|
44
|
-
| --------------- | ----------------------------------------------- |
|
|
45
|
-
| `br` | Task status and stats |
|
|
46
|
-
| `git` | Git state and history |
|
|
47
|
-
| `find_sessions` | Recent sessions |
|
|
48
|
-
| `portless` | Optional read-only local URL state if installed |
|
|
49
|
-
|
|
50
|
-
## Phase 1: Gather State (Parallel)
|
|
51
|
-
|
|
52
|
-
Run all checks simultaneously:
|
|
53
|
-
|
|
54
|
-
```bash
|
|
55
|
-
br stats
|
|
56
|
-
br list --status in_progress
|
|
57
|
-
br ready
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
git status --porcelain
|
|
62
|
-
git branch --show-current
|
|
63
|
-
git log --oneline -5
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
Optionally include Portless local URL state only if the binary is already installed:
|
|
67
|
-
|
|
68
|
-
```bash
|
|
69
|
-
if command -v portless >/dev/null 2>&1; then portless list; fi
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
Do not install Portless, start/stop proxies, trust CAs, sync hosts, prune/clean state, or expose LAN services from `/status`.
|
|
73
|
-
|
|
74
|
-
```typescript
|
|
75
|
-
find_sessions({ query: "<project-name or recent-bead-keywords>", limit: 5 });
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
## Phase 2: Format Report
|
|
81
|
-
|
|
82
|
-
Present results in simple sections. Use the actual output from Phase 1 — don't invent data.
|
|
83
|
-
|
|
84
|
-
```
|
|
85
|
-
Status
|
|
86
|
-
━━━━━━
|
|
87
|
-
|
|
88
|
-
TASKS
|
|
89
|
-
In Progress: [list from br list --status in_progress]
|
|
90
|
-
Ready: [list from br ready]
|
|
91
|
-
Stats: [summary from br stats]
|
|
92
|
-
|
|
93
|
-
GIT
|
|
94
|
-
Branch: [from git branch]
|
|
95
|
-
Changes: [from git status, or "clean"]
|
|
96
|
-
Recent: [from git log]
|
|
97
|
-
|
|
98
|
-
SESSIONS TODAY
|
|
99
|
-
[from find_sessions]
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## Phase 3: Suggest Next Action
|
|
105
|
-
|
|
106
|
-
Based on gathered state, recommend ONE next step:
|
|
107
|
-
|
|
108
|
-
| State | Suggestion |
|
|
109
|
-
| ---------------------------- | ----------------------------- |
|
|
110
|
-
| Has in_progress tasks | `/ship <id>` (continue work) |
|
|
111
|
-
| Has ready tasks, none active | `/ship <id>` (pick up work) |
|
|
112
|
-
| Uncommitted changes | Review and commit |
|
|
113
|
-
| Nothing active or ready | `/create "<desc>"` (new work) |
|
|
114
|
-
|
|
115
|
-
---
|
|
116
|
-
|
|
117
|
-
## Output
|
|
118
|
-
|
|
119
|
-
```
|
|
120
|
-
Status
|
|
121
|
-
━━━━━━
|
|
122
|
-
|
|
123
|
-
[Sections from Phase 2]
|
|
124
|
-
|
|
125
|
-
Next: [single recommendation from Phase 3]
|
|
126
|
-
```
|