@lumenflow/cli 3.10.0 → 3.11.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/README.md +78 -74
- package/dist/docs-sync.js +24 -29
- package/dist/docs-sync.js.map +1 -1
- package/dist/init-lane-validation.js +102 -17
- package/dist/init-lane-validation.js.map +1 -1
- package/dist/init-scaffolding.js +2 -9
- package/dist/init-scaffolding.js.map +1 -1
- package/dist/init.js +7 -18
- package/dist/init.js.map +1 -1
- package/dist/lane-lifecycle-process.js +16 -1
- package/dist/lane-lifecycle-process.js.map +1 -1
- package/dist/lane-suggest.js +5 -1
- package/dist/lane-suggest.js.map +1 -1
- package/dist/onboarding-template-paths.js +19 -0
- package/dist/onboarding-template-paths.js.map +1 -0
- package/dist/public-manifest.js +2 -2
- package/dist/public-manifest.js.map +1 -1
- package/dist/sync-templates.js +12 -1
- package/dist/sync-templates.js.map +1 -1
- package/dist/template-directory-resolver.js +71 -0
- package/dist/template-directory-resolver.js.map +1 -0
- package/dist/wu-done-check.js +33 -13
- package/dist/wu-done-check.js.map +1 -1
- package/dist/wu-done.js +6 -5
- package/dist/wu-done.js.map +1 -1
- package/dist/wu-spawn-prompt-builders.js +96 -23
- package/dist/wu-spawn-prompt-builders.js.map +1 -1
- package/package.json +8 -8
- package/packs/sidekick/.turbo/turbo-build.log +1 -1
- package/packs/sidekick/package.json +1 -1
- package/packs/software-delivery/.turbo/turbo-build.log +1 -1
- package/packs/software-delivery/package.json +1 -1
- package/templates/core/.lumenflow/constraints.md.template +3 -3
- package/templates/core/LUMENFLOW.md.template +17 -17
- package/templates/core/UPGRADING.md.template +30 -11
- package/templates/core/ai/onboarding/agent-safety-card.md.template +15 -16
- package/templates/core/ai/onboarding/first-15-mins.md.template +80 -0
- package/templates/core/ai/onboarding/first-wu-mistakes.md.template +3 -3
- package/templates/core/ai/onboarding/initiative-orchestration.md.template +1 -1
- package/templates/core/ai/onboarding/lane-inference.md.template +64 -0
- package/templates/core/ai/onboarding/local-only.md.template +56 -0
- package/templates/core/ai/onboarding/quick-ref-commands.md.template +122 -92
- package/templates/core/ai/onboarding/starting-prompt.md.template +91 -46
- package/templates/core/ai/onboarding/vendor-support.md.template +14 -20
- package/templates/core/ai/onboarding/wu-create-checklist.md.template +31 -82
- package/templates/core/ai/onboarding/wu-sizing-guide.md.template +48 -0
- package/templates/vendors/claude/.claude/skills/bug-classification/SKILL.md.template +2 -2
- package/templates/vendors/claude/.claude/skills/code-quality/SKILL.md.template +2 -2
- package/templates/vendors/claude/.claude/skills/context-management/SKILL.md.template +3 -3
- package/templates/vendors/claude/.claude/skills/execution-memory/SKILL.md.template +1 -1
- package/templates/vendors/claude/.claude/skills/initiative-management/SKILL.md.template +2 -2
- package/templates/vendors/claude/.claude/skills/library-first/SKILL.md.template +2 -2
- package/templates/vendors/claude/.claude/skills/lumenflow-gates/SKILL.md.template +3 -3
- package/templates/vendors/claude/.claude/skills/multi-agent-coordination/SKILL.md.template +2 -2
- package/templates/vendors/claude/.claude/skills/tdd-workflow/SKILL.md.template +3 -3
- package/templates/vendors/claude/.claude/skills/worktree-discipline/SKILL.md.template +10 -10
- package/templates/vendors/claude/.claude/skills/wu-lifecycle/SKILL.md.template +3 -3
|
@@ -13,10 +13,12 @@ This is the complete onboarding document for AI agents working with LumenFlow. R
|
|
|
13
13
|
Before concluding a command doesn't exist, **always check what's available**:
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
pnpm lumenflow:commands # List
|
|
16
|
+
pnpm lumenflow:commands # List public CLI commands, aliases, and legacy surfaces
|
|
17
17
|
```
|
|
18
18
|
|
|
19
19
|
LumenFlow has commands for WU lifecycle, maintenance, memory, initiatives, orchestration, metrics, packs, and more. Never guess or assume — run `pnpm lumenflow:commands` first.
|
|
20
|
+
Repo-only scripts such as `pnpm docs:validate` and `pnpm pre-release:check` are monorepo scripts,
|
|
21
|
+
not part of that public command list.
|
|
20
22
|
|
|
21
23
|
### Help-First Rule
|
|
22
24
|
|
|
@@ -102,7 +104,9 @@ If work spans multiple WUs or multiple days, create an initiative first.
|
|
|
102
104
|
When creating WUs or scoping initiatives, always evaluate whether the assigned lane fits the actual work:
|
|
103
105
|
|
|
104
106
|
- **Check code_paths alignment**: Compare the WU's `code_paths` against lane definitions in `workspace.yaml`. If the majority of paths belong to a different lane, propose a lane change.
|
|
105
|
-
- **Use lane
|
|
107
|
+
- **Use lane inference tooling correctly**:
|
|
108
|
+
- For a WU lane recommendation, run `pnpm wu:infer-lane --id WU-XXXX`.
|
|
109
|
+
- To regenerate derived lane taxonomy metadata, run `pnpm lane:suggest --output .lumenflow.lane-inference.yaml`.
|
|
106
110
|
- **Propose changes proactively**: If scope expansion during implementation pushes a WU beyond its lane's boundaries, flag the mismatch to the user and suggest either a lane change or a WU split.
|
|
107
111
|
- **Initiative-level review**: When planning an initiative with multiple WUs, ensure each WU is assigned to the lane whose `code_paths` best cover the work. Systematic mismatches signal that lane taxonomy may need updating.
|
|
108
112
|
|
|
@@ -112,7 +116,7 @@ When creating WUs or scoping initiatives, always evaluate whether the assigned l
|
|
|
112
116
|
|
|
113
117
|
```bash
|
|
114
118
|
# 1. Check your assigned WU
|
|
115
|
-
cat
|
|
119
|
+
cat {{DOCS_TASKS_PATH}}/wu/WU-XXXX.yaml
|
|
116
120
|
|
|
117
121
|
# 2. Claim the WU (creates isolated worktree)
|
|
118
122
|
pnpm wu:claim --id WU-XXXX --lane "Lane Name"
|
|
@@ -125,13 +129,12 @@ pnpm bootstrap
|
|
|
125
129
|
|
|
126
130
|
# 4. Do your work here (not in main!)
|
|
127
131
|
|
|
128
|
-
# 5.
|
|
129
|
-
pnpm
|
|
130
|
-
|
|
132
|
+
# 5. Prep from the worktree (runs the correct gates)
|
|
133
|
+
pnpm wu:prep --id WU-XXXX
|
|
134
|
+
# This prints the copy-paste completion command
|
|
131
135
|
|
|
132
136
|
# 6. Return to main and complete
|
|
133
|
-
cd /path/to/main/checkout
|
|
134
|
-
pnpm wu:done --id WU-XXXX
|
|
137
|
+
cd /path/to/main/checkout && pnpm wu:done --id WU-XXXX
|
|
135
138
|
```
|
|
136
139
|
|
|
137
140
|
## Quick Start -- Cloud / Branch-PR (Copy This)
|
|
@@ -140,7 +143,7 @@ For cloud agents (Codex, Claude web, CI bots) that cannot create local worktrees
|
|
|
140
143
|
|
|
141
144
|
```bash
|
|
142
145
|
# 1. Check your assigned WU
|
|
143
|
-
cat
|
|
146
|
+
cat {{DOCS_TASKS_PATH}}/wu/WU-XXXX.yaml
|
|
144
147
|
|
|
145
148
|
# 2. Claim in cloud mode (no worktree, sets claimed_mode: branch-pr)
|
|
146
149
|
pnpm wu:claim --id WU-XXXX --lane "Lane Name" --cloud
|
|
@@ -158,28 +161,28 @@ pnpm wu:done --id WU-XXXX
|
|
|
158
161
|
pnpm wu:cleanup --id WU-XXXX
|
|
159
162
|
```
|
|
160
163
|
|
|
161
|
-
**
|
|
164
|
+
**Activation is explicit-only:**
|
|
162
165
|
|
|
163
166
|
1. `--cloud` flag on `wu:claim` (explicit, always wins)
|
|
164
167
|
2. `LUMENFLOW_CLOUD=1` environment variable (explicit, always wins)
|
|
165
|
-
3. Config-driven auto-detection when `cloud.auto_detect: true` in `workspace.yaml`
|
|
166
168
|
|
|
167
|
-
|
|
169
|
+
Runtime identity env vars such as `CLAUDECODE`, `CODEX`, or `CI` do not activate cloud mode.
|
|
170
|
+
The `cloud.auto_detect` and `env_signals` config keys remain schema-supported metadata,
|
|
171
|
+
but they do not change runtime activation behavior.
|
|
168
172
|
|
|
169
173
|
```yaml
|
|
170
174
|
# workspace.yaml
|
|
171
175
|
cloud:
|
|
172
|
-
auto_detect:
|
|
173
|
-
env_signals:
|
|
174
|
-
- name: CI # presence check (any non-empty value)
|
|
175
|
-
- name: CODEX
|
|
176
|
-
- name: GITHUB_ACTIONS
|
|
177
|
-
equals: 'true' # exact match required
|
|
176
|
+
auto_detect: false
|
|
177
|
+
env_signals: []
|
|
178
178
|
```
|
|
179
179
|
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
180
|
+
Use explicit activation instead:
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
pnpm wu:claim --id WU-XXXX --lane "Lane Name" --cloud
|
|
184
|
+
LUMENFLOW_CLOUD=1 pnpm wu:claim --id WU-XXXX --lane "Lane Name"
|
|
185
|
+
```
|
|
183
186
|
|
|
184
187
|
---
|
|
185
188
|
|
|
@@ -237,21 +240,26 @@ pnpm wu:claim --id WU-123 --lane "Framework: CLI" --cloud
|
|
|
237
240
|
|
|
238
241
|
**Why:** Worktrees isolate your changes. Main checkout is protected by git hooks. Branch-PR mode is the valid exception for cloud agents that cannot create local worktrees.
|
|
239
242
|
|
|
240
|
-
### Rule 2:
|
|
243
|
+
### Rule 2: Use wu:prep Then wu:done
|
|
241
244
|
|
|
242
|
-
|
|
245
|
+
Completion is a two-step flow:
|
|
246
|
+
|
|
247
|
+
1. From the worktree, run `pnpm wu:prep --id WU-XXXX`
|
|
248
|
+
2. From main, copy-paste the printed `pnpm wu:done --id WU-XXXX` command
|
|
249
|
+
|
|
250
|
+
Do not just write "to complete: run wu:done" and stop.
|
|
243
251
|
|
|
244
252
|
```bash
|
|
245
253
|
# WRONG
|
|
246
254
|
"Work complete. Next step: run pnpm wu:done --id WU-123"
|
|
247
255
|
|
|
248
256
|
# RIGHT
|
|
249
|
-
|
|
250
|
-
pnpm wu:done --id WU-123
|
|
257
|
+
pnpm wu:prep --id WU-123
|
|
258
|
+
cd /path/to/main && pnpm wu:done --id WU-123
|
|
251
259
|
# Then report: "WU-123 completed. Changes merged to main."
|
|
252
260
|
```
|
|
253
261
|
|
|
254
|
-
**Why:** wu:done merges
|
|
262
|
+
**Why:** `wu:prep` runs the correct gates in the claimed workspace. `wu:done` then merges or opens the PR, writes the completion metadata, and releases the lane lock.
|
|
255
263
|
|
|
256
264
|
### Rule 3: Use Relative Paths Only
|
|
257
265
|
|
|
@@ -333,6 +341,16 @@ pnpm config:set --key gates.minCoverage --value 85
|
|
|
333
341
|
pnpm config:set --key agents.methodology.principles --value Library-First,KISS
|
|
334
342
|
```
|
|
335
343
|
|
|
344
|
+
For lanes:
|
|
345
|
+
|
|
346
|
+
- `workspace.yaml` (`software_delivery.lanes.definitions`) is the source of truth for lane validation and claim-time lane checks.
|
|
347
|
+
- `.lumenflow.lane-inference.yaml` is derived metadata for suggestion/classification workflows.
|
|
348
|
+
- After lane definition changes, regenerate taxonomy metadata with:
|
|
349
|
+
|
|
350
|
+
```bash
|
|
351
|
+
pnpm lane:suggest --output .lumenflow.lane-inference.yaml
|
|
352
|
+
```
|
|
353
|
+
|
|
336
354
|
### Modifying WU YAML Specs
|
|
337
355
|
|
|
338
356
|
```bash
|
|
@@ -384,7 +402,7 @@ git add . && git commit -m "your message"
|
|
|
384
402
|
**Fix:** Regenerate the backlog or manually add the missing WU:
|
|
385
403
|
|
|
386
404
|
```bash
|
|
387
|
-
# In worktree, edit
|
|
405
|
+
# In worktree, edit {{DOCS_TASKS_PATH}}/backlog.md
|
|
388
406
|
# Add the missing WU reference in the appropriate section
|
|
389
407
|
```
|
|
390
408
|
|
|
@@ -490,6 +508,33 @@ pnpm wu:delegate --id WU-XXXX --parent-wu WU-YYYY --client <client-type>
|
|
|
490
508
|
|
|
491
509
|
**IMPORTANT:** The `--client` flag identifies your IDE/tool environment, NOT the underlying AI model. Use `--client windsurf` even if Windsurf is running a Claude agent.
|
|
492
510
|
|
|
511
|
+
### Guidance Profiles (WU-2309 / WU-2329)
|
|
512
|
+
|
|
513
|
+
`wu:brief` verification guidance is profile-aware and ships with sensible built-in defaults.
|
|
514
|
+
Project-local `.lumenflow/templates` is optional and only needed when you want different wording,
|
|
515
|
+
extra project commands, or client-specific overrides.
|
|
516
|
+
|
|
517
|
+
- New installs get the current defaults automatically.
|
|
518
|
+
- Existing installs get the runtime defaults after `pnpm lumenflow:upgrade --latest`.
|
|
519
|
+
- Run `pnpm docs:sync --force` when you also want refreshed scaffolded onboarding docs and
|
|
520
|
+
supported vendor assets.
|
|
521
|
+
|
|
522
|
+
Default profiles:
|
|
523
|
+
|
|
524
|
+
- Behavior/logic changes: follow project policy (`methodology.testing`: `tdd`, `test-after`, or `none`).
|
|
525
|
+
- Structured-content-only changes (`.yaml/.yml/.json/.md/.mdx`): use parse/schema/lint/eval evidence; TDD checkpoint is omitted.
|
|
526
|
+
- UI presentation hints: prefer smoke/manual/integration/E2E verification and use unit tests for pure logic or explicitly required checks.
|
|
527
|
+
|
|
528
|
+
Common override points include `visual-directive`, `structured-content-directive`,
|
|
529
|
+
`verification-requirements`, and `design-context-ui`.
|
|
530
|
+
|
|
531
|
+
Domain-specific commands must come from local configuration, not core framework code:
|
|
532
|
+
|
|
533
|
+
- Template manifest: `.lumenflow/templates/manifest.yaml`
|
|
534
|
+
- Base templates: `.lumenflow/templates/spawn-prompt/*.md`
|
|
535
|
+
- Client overrides: `.lumenflow/templates.{client}/spawn-prompt/*.md`
|
|
536
|
+
- Client config: `workspace.yaml` under `software_delivery.agents.clients.*`
|
|
537
|
+
|
|
493
538
|
### Sub-Agent Coordination
|
|
494
539
|
|
|
495
540
|
- Sub-agents work in isolated micro-worktrees
|
|
@@ -501,23 +546,22 @@ pnpm wu:delegate --id WU-XXXX --parent-wu WU-YYYY --client <client-type>
|
|
|
501
546
|
|
|
502
547
|
## WU Lifecycle Commands
|
|
503
548
|
|
|
504
|
-
| Command | Description
|
|
505
|
-
| ---------------------------------------------- |
|
|
506
|
-
| `pnpm wu:status --id WU-XXX` | Show WU state and valid commands
|
|
507
|
-
| `pnpm wu:claim --id WU-XXX --lane "Lane"` | Claim WU and create worktree (default)
|
|
508
|
-
| `pnpm wu:claim --id WU-XXX --lane "L" --cloud` | Claim WU in branch-pr mode (no worktree)
|
|
509
|
-
| `pnpm wu:edit --id WU-XXX --field value` | Edit WU spec fields
|
|
510
|
-
| `pnpm wu:brief --id WU-XXX --client X` | Generate handoff prompt + evidence
|
|
511
|
-
| `pnpm wu:brief --id WU-XXX --evidence-only` | Record evidence only (no prompt output)
|
|
512
|
-
| `pnpm wu:delegate --id WU-XXX --parent-wu P` | Generate prompt + record delegation
|
|
513
|
-
| `pnpm
|
|
514
|
-
| `pnpm
|
|
515
|
-
| `pnpm wu:
|
|
516
|
-
| `pnpm wu:
|
|
517
|
-
| `pnpm wu:escalate --id WU-XXX`
|
|
518
|
-
| `pnpm wu:
|
|
519
|
-
| `pnpm wu:
|
|
520
|
-
| `pnpm wu:recover --id WU-XXX` | Fix inconsistent WU state | When state is broken |
|
|
549
|
+
| Command | Description | When to Use |
|
|
550
|
+
| ---------------------------------------------- | ----------------------------------------------- | --------------------------- |
|
|
551
|
+
| `pnpm wu:status --id WU-XXX` | Show WU state and valid commands | Check current state |
|
|
552
|
+
| `pnpm wu:claim --id WU-XXX --lane "Lane"` | Claim WU and create worktree (default) | Start working (local) |
|
|
553
|
+
| `pnpm wu:claim --id WU-XXX --lane "L" --cloud` | Claim WU in branch-pr mode (no worktree) | Start working (cloud) |
|
|
554
|
+
| `pnpm wu:edit --id WU-XXX --field value` | Edit WU spec fields | Update notes/desc |
|
|
555
|
+
| `pnpm wu:brief --id WU-XXX --client X` | Generate handoff prompt + evidence | Complex WUs |
|
|
556
|
+
| `pnpm wu:brief --id WU-XXX --evidence-only` | Record evidence only (no prompt output) | Self-implementation path |
|
|
557
|
+
| `pnpm wu:delegate --id WU-XXX --parent-wu P` | Generate prompt + record delegation | Auditable delegation flows |
|
|
558
|
+
| `pnpm wu:prep --id WU-XXX` | Run gates in claimed workspace, prep completion | Before wu:done |
|
|
559
|
+
| `pnpm wu:done --id WU-XXX` | Complete WU (merge or PR, cleanup) | After gates pass |
|
|
560
|
+
| `pnpm wu:cleanup --id WU-XXX` | Post-merge cleanup (branch-pr) | After PR merge (cloud only) |
|
|
561
|
+
| `pnpm wu:escalate --id WU-XXX` | Show or resolve escalation status | Escalation-triggered WUs |
|
|
562
|
+
| `pnpm wu:escalate --resolve --id WU-XXX` | Resolve human escalation | Before wu:done (escalation) |
|
|
563
|
+
| `pnpm wu:delete --id WU-XXX` | Delete WU spec and cleanup | Cancel stale/throwaway WUs |
|
|
564
|
+
| `pnpm wu:recover --id WU-XXX` | Fix inconsistent WU state | When state is broken |
|
|
521
565
|
|
|
522
566
|
---
|
|
523
567
|
|
|
@@ -525,7 +569,7 @@ pnpm wu:delegate --id WU-XXXX --parent-wu WU-YYYY --client <client-type>
|
|
|
525
569
|
|
|
526
570
|
```
|
|
527
571
|
/path/to/repo/
|
|
528
|
-
├──
|
|
572
|
+
├── {{DOCS_TASKS_PATH}}/
|
|
529
573
|
│ ├── backlog.md # All WUs listed here (auto-generated, don't edit)
|
|
530
574
|
│ └── wu/WU-XXXX.yaml # Individual WU specs
|
|
531
575
|
├── worktrees/
|
|
@@ -544,7 +588,7 @@ pnpm wu:delegate --id WU-XXXX --parent-wu WU-YYYY --client <client-type>
|
|
|
544
588
|
Before reporting a WU complete, verify:
|
|
545
589
|
|
|
546
590
|
- [ ] All acceptance criteria in WU YAML are satisfied
|
|
547
|
-
- [ ]
|
|
591
|
+
- [ ] `pnpm wu:prep --id WU-XXX` ran successfully in the claimed workspace
|
|
548
592
|
- [ ] `pnpm wu:done --id WU-XXX` ran successfully
|
|
549
593
|
- [ ] Output shows "Marked done, pushed, and cleaned up"
|
|
550
594
|
- [ ] Worktree was removed (check `ls worktrees/`)
|
|
@@ -685,4 +729,5 @@ rm -rf /tmp/nextjs-scaffold
|
|
|
685
729
|
- [troubleshooting-wu-done.md](troubleshooting-wu-done.md) - Why agents forget wu:done
|
|
686
730
|
- [first-wu-mistakes.md](first-wu-mistakes.md) - Common mistakes to avoid
|
|
687
731
|
- [quick-ref-commands.md](quick-ref-commands.md) - Command reference
|
|
732
|
+
- [wu-sizing-guide.md](wu-sizing-guide.md) - Context safety and WU sizing
|
|
688
733
|
- [initiative-orchestration.md](initiative-orchestration.md) - Initiative orchestration, delegation, recovery
|
|
@@ -187,31 +187,25 @@ pnpm wu:claim --id WU-XXX --lane "<Lane>" --cloud
|
|
|
187
187
|
LUMENFLOW_CLOUD=1 pnpm wu:claim --id WU-XXX --lane "<Lane>"
|
|
188
188
|
```
|
|
189
189
|
|
|
190
|
-
|
|
191
|
-
|
|
190
|
+
Cloud activation is explicit-only. `--cloud` and `LUMENFLOW_CLOUD=1` are the only
|
|
191
|
+
runtime activation paths.
|
|
192
192
|
|
|
193
|
-
### Config
|
|
193
|
+
### Cloud Config Compatibility Fields
|
|
194
194
|
|
|
195
|
-
|
|
196
|
-
|
|
195
|
+
The workspace schema still carries `cloud.auto_detect` and `env_signals`, but they do
|
|
196
|
+
not activate cloud mode at runtime:
|
|
197
197
|
|
|
198
198
|
```yaml
|
|
199
199
|
cloud:
|
|
200
|
-
auto_detect:
|
|
201
|
-
env_signals:
|
|
202
|
-
- name: CI # presence check (any non-empty value)
|
|
203
|
-
- name: CODEX
|
|
204
|
-
- name: GITHUB_ACTIONS
|
|
205
|
-
equals: 'true' # exact match required
|
|
200
|
+
auto_detect: false
|
|
201
|
+
env_signals: []
|
|
206
202
|
```
|
|
207
203
|
|
|
208
204
|
**Key design decisions:**
|
|
209
205
|
|
|
210
|
-
-
|
|
211
|
-
-
|
|
212
|
-
-
|
|
213
|
-
matches (`name` + `equals`)
|
|
214
|
-
- Explicit activation always wins over auto-detection
|
|
206
|
+
- Runtime identity signals are intentionally ignored for activation
|
|
207
|
+
- Explicit activation always wins because it is the only activation path
|
|
208
|
+
- Config fields remain for compatibility, migration, and future policy metadata
|
|
215
209
|
|
|
216
210
|
### Cloud Lifecycle
|
|
217
211
|
|
|
@@ -225,10 +219,10 @@ cloud:
|
|
|
225
219
|
|
|
226
220
|
### Vendor-Specific Notes
|
|
227
221
|
|
|
228
|
-
- **Codex**: Set `LUMENFLOW_CLOUD=1`
|
|
229
|
-
- **Claude web**: Use `--cloud`
|
|
230
|
-
- **GitHub Actions**:
|
|
231
|
-
- **Antigravity**:
|
|
222
|
+
- **Codex**: Set `LUMENFLOW_CLOUD=1` or pass `--cloud`
|
|
223
|
+
- **Claude web**: Use `--cloud` explicitly
|
|
224
|
+
- **GitHub Actions**: Set `LUMENFLOW_CLOUD=1` in the job environment
|
|
225
|
+
- **Antigravity**: Use explicit `--cloud` activation
|
|
232
226
|
|
|
233
227
|
---
|
|
234
228
|
|
|
@@ -2,116 +2,65 @@
|
|
|
2
2
|
|
|
3
3
|
**Last updated:** {{DATE}}
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Use this checklist before running `pnpm wu:create`.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
## Step 1:
|
|
9
|
+
## Step 1: Confirm the Lane
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
|
-
|
|
12
|
+
pnpm lane:status
|
|
13
|
+
pnpm wu:infer-lane --paths "packages/@lumenflow/cli/src/init.ts" --desc "Fix init docs drift"
|
|
13
14
|
```
|
|
14
15
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
Examples:
|
|
18
|
-
|
|
19
|
-
- `"Framework: CLI"`
|
|
20
|
-
- `"Framework: Core"`
|
|
21
|
-
- `"Operations: CI/CD"`
|
|
22
|
-
- `"Content: Documentation"`
|
|
16
|
+
The lane should match the real implementation scope, not just the first file you noticed.
|
|
23
17
|
|
|
24
18
|
---
|
|
25
19
|
|
|
26
|
-
## Step 2: Required Fields
|
|
20
|
+
## Step 2: Gather the Required Fields
|
|
27
21
|
|
|
28
|
-
| Field
|
|
29
|
-
|
|
|
30
|
-
| `--
|
|
31
|
-
| `--
|
|
32
|
-
| `--
|
|
33
|
-
| `--
|
|
34
|
-
| `--
|
|
35
|
-
| `--
|
|
36
|
-
| `--
|
|
37
|
-
| `--test-paths-unit
|
|
38
|
-
| `--spec-refs`
|
|
39
|
-
|
|
40
|
-
---
|
|
22
|
+
| Field | Required For | Example |
|
|
23
|
+
| --------------------- | --------------------- | ------------------------------------------------------ |
|
|
24
|
+
| `--lane` | All WUs | `"Framework: CLI"` |
|
|
25
|
+
| `--title` | All WUs | `"Eliminate onboarding docs drift"` |
|
|
26
|
+
| `--description` | All WUs | `"Context: ... Problem: ... Solution: ..."` |
|
|
27
|
+
| `--acceptance` | All WUs | `--acceptance "Docs and templates stay aligned"` |
|
|
28
|
+
| `--exposure` | All WUs | `documentation` |
|
|
29
|
+
| `--code-paths` | Non-documentation WUs | `"packages/@lumenflow/cli/src/init.ts"` |
|
|
30
|
+
| `--test-paths-manual` | Non-documentation WUs | `"Run focused init/docs-sync tests"` |
|
|
31
|
+
| `--test-paths-unit` | Code WUs | `"packages/@lumenflow/cli/src/__tests__/init.test.ts"` |
|
|
32
|
+
| `--spec-refs` | Feature WUs | `"lumenflow://plans/WU-XXXX-plan.md"` |
|
|
41
33
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
Plans go in `$LUMENFLOW_HOME/plans/` (NOT in project):
|
|
45
|
-
|
|
46
|
-
```bash
|
|
47
|
-
mkdir -p $LUMENFLOW_HOME/plans
|
|
48
|
-
# or if LUMENFLOW_HOME is not set:
|
|
49
|
-
mkdir -p ~/.lumenflow/plans
|
|
50
|
-
|
|
51
|
-
# Create your plan
|
|
52
|
-
vim ~/.lumenflow/plans/WU-XXX-plan.md
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
Reference in wu:create:
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
--spec-refs "lumenflow://plans/WU-XXX-plan.md"
|
|
59
|
-
```
|
|
34
|
+
`--id` is optional. If omitted, `wu:create` allocates the next WU ID automatically.
|
|
60
35
|
|
|
61
36
|
---
|
|
62
37
|
|
|
63
|
-
## Step
|
|
38
|
+
## Step 3: Decide Plan Storage
|
|
39
|
+
|
|
40
|
+
If the work needs a plan, prefer repo-native or `lumenflow://plans/` references:
|
|
64
41
|
|
|
65
42
|
```bash
|
|
66
|
-
pnpm
|
|
43
|
+
pnpm plan:create --id INIT-XXX --title "Plan title"
|
|
44
|
+
pnpm wu:create --lane "Framework: CLI" --title "..." --plan
|
|
67
45
|
```
|
|
68
46
|
|
|
69
|
-
|
|
47
|
+
Avoid pointing `--spec-refs` at random local filesystem notes that other agents cannot resolve.
|
|
70
48
|
|
|
71
49
|
---
|
|
72
50
|
|
|
73
|
-
##
|
|
51
|
+
## Step 4: Validate Before Creating
|
|
74
52
|
|
|
75
53
|
```bash
|
|
76
|
-
pnpm wu:create \
|
|
77
|
-
--
|
|
78
|
-
--lane "Framework: CLI" \
|
|
79
|
-
--title "Add feature X" \
|
|
80
|
-
--description "Context: Users need X. Problem: X doesn't exist. Solution: Add X." \
|
|
81
|
-
--acceptance "Feature X works as specified" \
|
|
82
|
-
--acceptance "Unit tests pass with >90% coverage" \
|
|
83
|
-
--code-paths "packages/@lumenflow/cli/src/x.ts" \
|
|
84
|
-
--test-paths-unit "packages/@lumenflow/cli/__tests__/x.test.ts" \
|
|
85
|
-
--exposure backend-only \
|
|
86
|
-
--spec-refs "lumenflow://plans/WU-1234-plan.md"
|
|
54
|
+
pnpm wu:create --lane "Framework: CLI" --title "..." --description "..." \
|
|
55
|
+
--acceptance "..." --exposure documentation --validate
|
|
87
56
|
```
|
|
88
57
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
## Common Errors
|
|
92
|
-
|
|
93
|
-
### "Lane format invalid"
|
|
94
|
-
|
|
95
|
-
**Cause:** Missing colon or space in lane format.
|
|
96
|
-
|
|
97
|
-
**Fix:** Use `"Parent: Sublane"` format (colon + space).
|
|
98
|
-
|
|
99
|
-
### "Missing required field"
|
|
100
|
-
|
|
101
|
-
**Cause:** Required field not provided.
|
|
102
|
-
|
|
103
|
-
**Fix:** Add the missing `--field` argument.
|
|
104
|
-
|
|
105
|
-
### "WU already exists"
|
|
106
|
-
|
|
107
|
-
**Cause:** WU with this ID already exists.
|
|
108
|
-
|
|
109
|
-
**Fix:** Use a different ID or check existing WUs.
|
|
58
|
+
Let validation tell you which fields are still missing before you create the real spec.
|
|
110
59
|
|
|
111
60
|
---
|
|
112
61
|
|
|
113
62
|
## After Creation
|
|
114
63
|
|
|
115
|
-
1. Review
|
|
116
|
-
2. Claim
|
|
117
|
-
3.
|
|
64
|
+
1. Review `{{DOCS_TASKS_PATH}}/wu/WU-XXX.yaml`.
|
|
65
|
+
2. Claim it with `pnpm wu:claim --id WU-XXX --lane "<Lane>"`.
|
|
66
|
+
3. Move into the worktree immediately.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Work Unit Sizing Guide
|
|
2
|
+
|
|
3
|
+
**Last updated:** {{DATE}}
|
|
4
|
+
|
|
5
|
+
Use this summary when deciding whether a WU still fits in a single agent session.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Baseline Heuristics
|
|
10
|
+
|
|
11
|
+
| Complexity | Files | Tool Calls | Suggested Strategy |
|
|
12
|
+
| ---------- | ----- | ---------- | --------------------------- |
|
|
13
|
+
| Simple | <20 | <50 | Single session |
|
|
14
|
+
| Medium | 20-50 | 50-100 | Checkpoint and resume |
|
|
15
|
+
| Complex | 50+ | 100+ | Decompose or orchestrate |
|
|
16
|
+
| Oversized | 100+ | 200+ | Split before implementation |
|
|
17
|
+
|
|
18
|
+
These are guardrails, not a license to keep pushing once context is clearly degrading.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Context Safety Triggers
|
|
23
|
+
|
|
24
|
+
Checkpoint and hand off when any of these happen:
|
|
25
|
+
|
|
26
|
+
- Context usage approaches 50% and is still climbing
|
|
27
|
+
- Tool calls exceed roughly 50 in one session
|
|
28
|
+
- File churn keeps widening without clear closure
|
|
29
|
+
- You have to repeatedly rediscover the same repo rules
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Recovery Pattern
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
pnpm mem:checkpoint "state before handoff" --wu WU-XXX
|
|
37
|
+
pnpm wu:brief --id WU-XXX --client codex-cli
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
If the WU is clearly too large, split it instead of relying on a heroic handoff.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Docs-Only Exception
|
|
45
|
+
|
|
46
|
+
Documentation WUs can tolerate broader file counts when the change pattern is shallow and mechanical, but they still need to stay understandable in one session.
|
|
47
|
+
|
|
48
|
+
If the docs work starts spilling into CLI, core, or packaging changes, treat it like a normal cross-code WU again.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: bug-classification
|
|
3
3
|
description: Classify bugs (P0-P3) and determine fix-in-place vs separate Bug WU. Use when bug discovered mid-WU, deciding bug priority, or handling production issues.
|
|
4
4
|
version: 1.0.0
|
|
5
|
-
source:
|
|
5
|
+
source: {{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/lumenflow-agent-capsule.md
|
|
6
6
|
source_sections: §8 (Bug Handling Mid-WU)
|
|
7
7
|
last_updated: {{DATE}}
|
|
8
8
|
allowed-tools: Read, Grep
|
|
@@ -189,4 +189,4 @@ blocking: []
|
|
|
189
189
|
|
|
190
190
|
## Reference
|
|
191
191
|
|
|
192
|
-
See [LumenFlow Agent Capsule](../../../
|
|
192
|
+
See [LumenFlow Agent Capsule](../../../{{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/lumenflow-agent-capsule.md) for complete bug handling guide.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: code-quality
|
|
3
3
|
description: Shared patterns for SOLID/DRY code review, hexagonal architecture compliance, TypeScript best practices, and performance anti-patterns. Use when reviewing code quality, checking architecture boundaries, or validating TypeScript patterns.
|
|
4
4
|
version: 1.1.0
|
|
5
|
-
source:
|
|
5
|
+
source: {{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/lumenflow-agent-capsule.md
|
|
6
6
|
source_sections: Core Principles, Hexagonal Architecture
|
|
7
7
|
last_updated: {{DATE}}
|
|
8
8
|
allowed-tools: Read, Grep, Glob
|
|
@@ -10,7 +10,7 @@ allowed-tools: Read, Grep, Glob
|
|
|
10
10
|
|
|
11
11
|
# Code Quality Skill
|
|
12
12
|
|
|
13
|
-
**Source**: `
|
|
13
|
+
**Source**: `{{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/lumenflow-agent-capsule.md` (canonical)
|
|
14
14
|
|
|
15
15
|
## When to Use
|
|
16
16
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: context-management
|
|
3
3
|
description: Session checkpoint patterns, output bypass for large results, when to spawn fresh sub-agents. Use for long-running sessions, context exhaustion, or agent coordination.
|
|
4
4
|
version: 1.4.0
|
|
5
|
-
source:
|
|
5
|
+
source: {{DOCS_ONBOARDING_PATH}}/agent-invocation-guide.md
|
|
6
6
|
source_sections: Context Tiers, Session Management, Wave Orchestration
|
|
7
7
|
last_updated: {{DATE}}
|
|
8
8
|
allowed-tools: Read, Write, Bash
|
|
@@ -10,7 +10,7 @@ allowed-tools: Read, Write, Bash
|
|
|
10
10
|
|
|
11
11
|
# Context Management Skill
|
|
12
12
|
|
|
13
|
-
**Source**: `
|
|
13
|
+
**Source**: `{{DOCS_ONBOARDING_PATH}}/agent-invocation-guide.md`
|
|
14
14
|
|
|
15
15
|
Patterns for managing context in long-running AI coding sessions.
|
|
16
16
|
|
|
@@ -56,7 +56,7 @@ pnpm wu:brief --id WU-XXX --client claude-code
|
|
|
56
56
|
- Recovery mechanisms are complex and vendor-specific
|
|
57
57
|
- Prevention (fresh agent) is simpler and more reliable than recovery
|
|
58
58
|
|
|
59
|
-
**This is not failure—it's disciplined execution.** See [wu-sizing-guide.md](../../../
|
|
59
|
+
**This is not failure—it's disciplined execution.** See [wu-sizing-guide.md](../../../{{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/wu-sizing-guide.md) for complete sizing thresholds.
|
|
60
60
|
|
|
61
61
|
---
|
|
62
62
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: execution-memory
|
|
3
3
|
description: Memory layer for session tracking, context recovery, and agent coordination. Use when resuming work after /clear, coordinating with parallel agents, or managing long-running sessions.
|
|
4
4
|
version: 1.2.0
|
|
5
|
-
source:
|
|
5
|
+
source: {{QUICK_REF_LINK}}
|
|
6
6
|
source_sections: Memory Commands
|
|
7
7
|
last_updated: {{DATE}}
|
|
8
8
|
allowed-tools: Read, Bash, Grep
|
|
@@ -94,7 +94,7 @@ Edits initiative YAML fields atomically using micro-worktree isolation:
|
|
|
94
94
|
|
|
95
95
|
## Initiative Structure
|
|
96
96
|
|
|
97
|
-
Initiatives are defined in `
|
|
97
|
+
Initiatives are defined in `{{DOCS_TASKS_PATH}}/initiatives/INIT-001.yaml`:
|
|
98
98
|
|
|
99
99
|
```yaml
|
|
100
100
|
id: INIT-001
|
|
@@ -157,7 +157,7 @@ pnpm wu:brief --id WU-1504 --evidence-only # Evidence only, no prompt ou
|
|
|
157
157
|
- Validation agents checking orchestrator's work
|
|
158
158
|
- Explore agents for codebase research
|
|
159
159
|
|
|
160
|
-
See [agent-invocation-guide.md](../../../
|
|
160
|
+
See [agent-invocation-guide.md](../../../{{DOCS_ONBOARDING_PATH}}/agent-invocation-guide.md) for decision tree.
|
|
161
161
|
|
|
162
162
|
## Best Practices
|
|
163
163
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: library-first
|
|
3
3
|
description: Validate well-known libraries solve your problem before custom code. Use when implementing parsing, dates, validation, or any non-trivial logic.
|
|
4
4
|
version: 1.0.0
|
|
5
|
-
source:
|
|
5
|
+
source: {{DOCS_ONBOARDING_PATH}}/library-first-toolkit.md
|
|
6
6
|
source_sections: Validation Protocol, Decision Tree, Context7 Query Templates
|
|
7
7
|
last_updated: {{DATE}}
|
|
8
8
|
allowed-tools: Read, mcp__context7__*
|
|
@@ -10,7 +10,7 @@ allowed-tools: Read, mcp__context7__*
|
|
|
10
10
|
|
|
11
11
|
# Library-First Skill
|
|
12
12
|
|
|
13
|
-
**Source**: `
|
|
13
|
+
**Source**: `{{DOCS_ONBOARDING_PATH}}/library-first-toolkit.md` (canonical)
|
|
14
14
|
|
|
15
15
|
Search for libraries BEFORE writing custom code. Custom implementations create debt, violate DRY/SOLID, and introduce bugs that libraries have already solved.
|
|
16
16
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: lumenflow-gates
|
|
3
3
|
description: Quality gates troubleshooting (format, lint, typecheck, tests). Use when gates fail, debugging format/lint/typecheck errors, or determining if failure is from your changes vs pre-existing.
|
|
4
4
|
version: 2.1.0
|
|
5
|
-
source:
|
|
5
|
+
source: {{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/lumenflow-agent-capsule.md
|
|
6
6
|
source_sections: Validation & Gates
|
|
7
7
|
last_updated: {{DATE}}
|
|
8
8
|
allowed-tools: Read, Bash, Grep
|
|
@@ -10,7 +10,7 @@ allowed-tools: Read, Bash, Grep
|
|
|
10
10
|
|
|
11
11
|
# LumenFlow Gates Skill
|
|
12
12
|
|
|
13
|
-
**Source**: `
|
|
13
|
+
**Source**: `{{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/lumenflow-agent-capsule.md` (canonical)
|
|
14
14
|
|
|
15
15
|
## When to Use
|
|
16
16
|
|
|
@@ -84,4 +84,4 @@ pnpm tasks:validate # WU YAML validation
|
|
|
84
84
|
|
|
85
85
|
---
|
|
86
86
|
|
|
87
|
-
**Full spec**: [LumenFlow Agent Capsule](../../../
|
|
87
|
+
**Full spec**: [LumenFlow Agent Capsule](../../../{{DOCS_OPERATIONS_PATH}}/_frameworks/lumenflow/lumenflow-agent-capsule.md)
|