moflo 4.9.20 → 4.9.22

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.
Files changed (240) hide show
  1. package/.claude/agents/analysis/analyze-code-quality.md +0 -121
  2. package/.claude/agents/analysis/code-analyzer.md +5 -26
  3. package/.claude/agents/architecture/system-design/arch-system-design.md +0 -119
  4. package/.claude/agents/base-template-generator.md +0 -1
  5. package/.claude/agents/core/coder.md +0 -22
  6. package/.claude/agents/core/planner.md +0 -16
  7. package/.claude/agents/core/researcher.md +0 -16
  8. package/.claude/agents/core/reviewer.md +0 -17
  9. package/.claude/agents/core/tester.md +0 -19
  10. package/.claude/agents/custom/test-long-runner.md +0 -2
  11. package/.claude/agents/development/dev-backend-api.md +0 -167
  12. package/.claude/agents/development/dev-database.md +43 -0
  13. package/.claude/agents/development/dev-frontend.md +42 -0
  14. package/.claude/agents/devops/ci-cd/ops-cicd-github.md +0 -112
  15. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +0 -111
  16. package/.claude/agents/security/security-auditor.md +45 -0
  17. package/.claude/guidance/shipped/moflo-agent-rules.md +172 -0
  18. package/.claude/guidance/shipped/moflo-claude-swarm-cohesion.md +73 -265
  19. package/.claude/guidance/shipped/moflo-cli-reference.md +6 -6
  20. package/.claude/guidance/shipped/moflo-core-guidance.md +66 -184
  21. package/.claude/guidance/shipped/moflo-cross-platform.md +1 -1
  22. package/.claude/guidance/shipped/moflo-error-handling.md +3 -3
  23. package/.claude/guidance/shipped/moflo-guidance-rules.md +17 -7
  24. package/.claude/guidance/shipped/moflo-memory-strategy.md +76 -182
  25. package/.claude/guidance/shipped/moflo-memorydb-maintenance.md +6 -8
  26. package/.claude/guidance/shipped/moflo-settings-injection.md +7 -9
  27. package/.claude/guidance/shipped/moflo-source-hygiene.md +5 -5
  28. package/.claude/guidance/shipped/moflo-spell-connectors.md +3 -4
  29. package/.claude/guidance/shipped/moflo-spell-custom-steps.md +3 -4
  30. package/.claude/guidance/shipped/moflo-spell-engine.md +40 -162
  31. package/.claude/guidance/shipped/moflo-spell-runner.md +134 -0
  32. package/.claude/guidance/shipped/moflo-spell-sandboxing.md +10 -57
  33. package/.claude/guidance/shipped/moflo-spell-troubleshooting.md +149 -0
  34. package/.claude/guidance/shipped/moflo-subagents.md +43 -114
  35. package/.claude/guidance/shipped/moflo-task-icons.md +4 -4
  36. package/.claude/guidance/shipped/moflo-user-facing-language.md +3 -3
  37. package/.claude/guidance/shipped/moflo-verbose-command-filtering.md +3 -3
  38. package/.claude/guidance/shipped/moflo-yaml-reference.md +4 -5
  39. package/.claude/helpers/gate.cjs +192 -15
  40. package/.claude/helpers/prompt-hook.mjs +4 -38
  41. package/.claude/helpers/simplify-classify.cjs +32 -11
  42. package/.claude/helpers/subagent-bootstrap.json +1 -1
  43. package/.claude/helpers/subagent-start.cjs +1 -1
  44. package/.claude/skills/connector-builder/SKILL.md +42 -429
  45. package/.claude/skills/connector-builder/templates/connector.md +189 -0
  46. package/.claude/skills/connector-builder/templates/step-command.md +176 -0
  47. package/.claude/skills/eldar/SKILL.md +7 -7
  48. package/.claude/skills/fl/SKILL.md +3 -3
  49. package/.claude/skills/fl/execution-modes.md +39 -16
  50. package/.claude/skills/fl/phases.md +3 -3
  51. package/.claude/skills/{simplify → flo-simplify}/SKILL.md +11 -11
  52. package/.claude/skills/guidance/SKILL.md +17 -9
  53. package/.claude/skills/memory-patterns/SKILL.md +1 -1
  54. package/.claude/skills/publish/SKILL.md +121 -36
  55. package/.claude/skills/reset-epic/SKILL.md +2 -2
  56. package/.claude/skills/spell-builder/SKILL.md +39 -226
  57. package/.claude/skills/spell-builder/architecture.md +1 -1
  58. package/.claude/skills/spell-builder/permissions.md +107 -0
  59. package/.claude/skills/spell-builder/preflight.md +101 -0
  60. package/.claude/skills/spell-schedule/SKILL.md +2 -3
  61. package/bin/gate.cjs +192 -15
  62. package/bin/lib/retired-files.mjs +146 -0
  63. package/bin/prompt-hook.mjs +4 -38
  64. package/bin/session-start-launcher.mjs +120 -1
  65. package/bin/setup-project.mjs +63 -69
  66. package/bin/simplify-classify.cjs +32 -11
  67. package/dist/src/cli/appliance/rvfa-builder.js +1 -1
  68. package/dist/src/cli/commands/agent.js +3 -9
  69. package/dist/src/cli/commands/doctor-checks-deep.js +4 -0
  70. package/dist/src/cli/commands/hooks.js +1 -3
  71. package/dist/src/cli/commands/index.js +2 -0
  72. package/dist/src/cli/commands/retire.js +111 -0
  73. package/dist/src/cli/hooks/reasoningbank/index.js +7 -7
  74. package/dist/src/cli/init/claudemd-generator.js +30 -33
  75. package/dist/src/cli/init/executor.js +53 -69
  76. package/dist/src/cli/init/helpers-generator.js +165 -52
  77. package/dist/src/cli/init/moflo-init.js +41 -114
  78. package/dist/src/cli/init/settings-generator.js +44 -14
  79. package/dist/src/cli/mcp-tools/agent-tools.js +9 -27
  80. package/dist/src/cli/mcp-tools/hooks-tools.js +23 -21
  81. package/dist/src/cli/memory/controllers/semantic-router.js +18 -12
  82. package/dist/src/cli/memory/sona-optimizer.js +6 -6
  83. package/dist/src/cli/neural/domain/services/learning-service.js +3 -3
  84. package/dist/src/cli/services/agent-router.js +2 -5
  85. package/dist/src/cli/services/hook-block-hash.js +11 -2
  86. package/dist/src/cli/services/hook-wiring.js +86 -3
  87. package/dist/src/cli/services/subagent-bootstrap.js +1 -1
  88. package/dist/src/cli/shared/events/example-usage.js +6 -6
  89. package/dist/src/cli/shared/hooks/task-hooks.js +8 -8
  90. package/dist/src/cli/version.js +1 -1
  91. package/package.json +3 -2
  92. package/retired-files.json +1989 -0
  93. package/scripts/post-install-bootstrap.mjs +19 -0
  94. package/src/cli/data/model-registry.json +2 -2
  95. package/.claude/agents/consensus/byzantine-coordinator.md +0 -63
  96. package/.claude/agents/consensus/crdt-synchronizer.md +0 -997
  97. package/.claude/agents/consensus/gossip-coordinator.md +0 -63
  98. package/.claude/agents/consensus/performance-benchmarker.md +0 -851
  99. package/.claude/agents/consensus/quorum-manager.md +0 -823
  100. package/.claude/agents/consensus/raft-manager.md +0 -63
  101. package/.claude/agents/consensus/security-manager.md +0 -622
  102. package/.claude/agents/data/ml/data-ml-model.md +0 -193
  103. package/.claude/agents/github/code-review-swarm.md +0 -538
  104. package/.claude/agents/github/github-modes.md +0 -172
  105. package/.claude/agents/github/issue-tracker.md +0 -311
  106. package/.claude/agents/github/multi-repo-swarm.md +0 -551
  107. package/.claude/agents/github/pr-manager.md +0 -183
  108. package/.claude/agents/github/project-board-sync.md +0 -508
  109. package/.claude/agents/github/release-manager.md +0 -360
  110. package/.claude/agents/github/release-swarm.md +0 -580
  111. package/.claude/agents/github/repo-architect.md +0 -391
  112. package/.claude/agents/github/swarm-issue.md +0 -566
  113. package/.claude/agents/github/swarm-pr.md +0 -414
  114. package/.claude/agents/github/sync-coordinator.md +0 -426
  115. package/.claude/agents/github/workflow-automation.md +0 -606
  116. package/.claude/agents/goal/code-goal-planner.md +0 -440
  117. package/.claude/agents/goal/goal-planner.md +0 -168
  118. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +0 -127
  119. package/.claude/agents/hive-mind/queen-coordinator.md +0 -198
  120. package/.claude/agents/hive-mind/scout-explorer.md +0 -233
  121. package/.claude/agents/hive-mind/swarm-memory-manager.md +0 -184
  122. package/.claude/agents/hive-mind/worker-specialist.md +0 -208
  123. package/.claude/agents/neural/safla-neural.md +0 -73
  124. package/.claude/agents/optimization/benchmark-suite.md +0 -665
  125. package/.claude/agents/optimization/load-balancer.md +0 -431
  126. package/.claude/agents/optimization/performance-monitor.md +0 -672
  127. package/.claude/agents/optimization/resource-allocator.md +0 -674
  128. package/.claude/agents/optimization/topology-optimizer.md +0 -808
  129. package/.claude/agents/reasoning/goal-planner.md +0 -67
  130. package/.claude/agents/sona/sona-learning-optimizer.md +0 -74
  131. package/.claude/agents/sparc/architecture.md +0 -472
  132. package/.claude/agents/sparc/pseudocode.md +0 -318
  133. package/.claude/agents/sparc/refinement.md +0 -525
  134. package/.claude/agents/sparc/specification.md +0 -276
  135. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +0 -225
  136. package/.claude/agents/swarm/adaptive-coordinator.md +0 -391
  137. package/.claude/agents/swarm/hierarchical-coordinator.md +0 -321
  138. package/.claude/agents/swarm/mesh-coordinator.md +0 -383
  139. package/.claude/agents/testing/production-validator.md +0 -395
  140. package/.claude/agents/testing/tdd-london-swarm.md +0 -244
  141. package/.claude/agents/v3/adr-architect.md +0 -184
  142. package/.claude/agents/v3/aidefence-guardian.md +0 -277
  143. package/.claude/agents/v3/claims-authorizer.md +0 -208
  144. package/.claude/agents/v3/collective-intelligence-coordinator.md +0 -988
  145. package/.claude/agents/v3/ddd-domain-expert.md +0 -220
  146. package/.claude/agents/v3/injection-analyst.md +0 -232
  147. package/.claude/agents/v3/memory-specialist.md +0 -987
  148. package/.claude/agents/v3/performance-engineer.md +0 -1225
  149. package/.claude/agents/v3/pii-detector.md +0 -146
  150. package/.claude/agents/v3/reasoningbank-learner.md +0 -213
  151. package/.claude/agents/v3/security-architect-aidefence.md +0 -405
  152. package/.claude/agents/v3/security-architect.md +0 -865
  153. package/.claude/agents/v3/security-auditor.md +0 -771
  154. package/.claude/agents/v3/sparc-orchestrator.md +0 -182
  155. package/.claude/agents/v3/swarm-memory-manager.md +0 -142
  156. package/.claude/agents/v3/v3-integration-architect.md +0 -205
  157. package/.claude/commands/claude-flow-help.md +0 -103
  158. package/.claude/commands/claude-flow-memory.md +0 -107
  159. package/.claude/commands/claude-flow-swarm.md +0 -205
  160. package/.claude/commands/github/README.md +0 -11
  161. package/.claude/commands/github/code-review-swarm.md +0 -514
  162. package/.claude/commands/github/code-review.md +0 -25
  163. package/.claude/commands/github/github-modes.md +0 -146
  164. package/.claude/commands/github/github-swarm.md +0 -113
  165. package/.claude/commands/github/issue-tracker.md +0 -284
  166. package/.claude/commands/github/issue-triage.md +0 -25
  167. package/.claude/commands/github/multi-repo-swarm.md +0 -519
  168. package/.claude/commands/github/pr-enhance.md +0 -26
  169. package/.claude/commands/github/pr-manager.md +0 -164
  170. package/.claude/commands/github/project-board-sync.md +0 -471
  171. package/.claude/commands/github/release-manager.md +0 -332
  172. package/.claude/commands/github/release-swarm.md +0 -544
  173. package/.claude/commands/github/repo-analyze.md +0 -25
  174. package/.claude/commands/github/repo-architect.md +0 -361
  175. package/.claude/commands/github/swarm-issue.md +0 -482
  176. package/.claude/commands/github/swarm-pr.md +0 -285
  177. package/.claude/commands/github/sync-coordinator.md +0 -294
  178. package/.claude/commands/github/workflow-automation.md +0 -442
  179. package/.claude/commands/hooks/README.md +0 -11
  180. package/.claude/commands/hooks/overview.md +0 -58
  181. package/.claude/commands/hooks/post-edit.md +0 -117
  182. package/.claude/commands/hooks/post-task.md +0 -112
  183. package/.claude/commands/hooks/pre-edit.md +0 -113
  184. package/.claude/commands/hooks/pre-task.md +0 -111
  185. package/.claude/commands/hooks/session-end.md +0 -118
  186. package/.claude/commands/hooks/setup.md +0 -103
  187. package/.claude/commands/simplify.md +0 -101
  188. package/.claude/commands/sparc/analyzer.md +0 -42
  189. package/.claude/commands/sparc/architect.md +0 -43
  190. package/.claude/commands/sparc/ask.md +0 -86
  191. package/.claude/commands/sparc/batch-executor.md +0 -44
  192. package/.claude/commands/sparc/code.md +0 -78
  193. package/.claude/commands/sparc/coder.md +0 -44
  194. package/.claude/commands/sparc/debug.md +0 -72
  195. package/.claude/commands/sparc/debugger.md +0 -44
  196. package/.claude/commands/sparc/designer.md +0 -43
  197. package/.claude/commands/sparc/devops.md +0 -98
  198. package/.claude/commands/sparc/docs-writer.md +0 -69
  199. package/.claude/commands/sparc/documenter.md +0 -44
  200. package/.claude/commands/sparc/innovator.md +0 -44
  201. package/.claude/commands/sparc/integration.md +0 -72
  202. package/.claude/commands/sparc/mcp.md +0 -106
  203. package/.claude/commands/sparc/memory-manager.md +0 -44
  204. package/.claude/commands/sparc/optimizer.md +0 -44
  205. package/.claude/commands/sparc/orchestrator.md +0 -116
  206. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +0 -72
  207. package/.claude/commands/sparc/refinement-optimization-mode.md +0 -72
  208. package/.claude/commands/sparc/researcher.md +0 -44
  209. package/.claude/commands/sparc/reviewer.md +0 -44
  210. package/.claude/commands/sparc/security-review.md +0 -69
  211. package/.claude/commands/sparc/sparc-modes.md +0 -139
  212. package/.claude/commands/sparc/sparc.md +0 -99
  213. package/.claude/commands/sparc/spec-pseudocode.md +0 -69
  214. package/.claude/commands/sparc/spell-manager.md +0 -44
  215. package/.claude/commands/sparc/supabase-admin.md +0 -337
  216. package/.claude/commands/sparc/swarm-coordinator.md +0 -44
  217. package/.claude/commands/sparc/tdd.md +0 -44
  218. package/.claude/commands/sparc/tester.md +0 -44
  219. package/.claude/commands/sparc/tutorial.md +0 -68
  220. package/.claude/commands/sparc.md +0 -151
  221. package/.claude/guidance/shipped/moflo-session-start.md +0 -154
  222. package/.claude/guidance/shipped/moflo-spell-engine-architecture.md +0 -145
  223. package/.claude/skills/browser/SKILL.md +0 -204
  224. package/.claude/skills/github-code-review/SKILL.md +0 -1140
  225. package/.claude/skills/github-multi-repo/SKILL.md +0 -866
  226. package/.claude/skills/github-project-management/SKILL.md +0 -1272
  227. package/.claude/skills/github-release-management/SKILL.md +0 -1074
  228. package/.claude/skills/github-workflow-automation/SKILL.md +0 -1060
  229. package/.claude/skills/hive-mind-advanced/SKILL.md +0 -712
  230. package/.claude/skills/hooks-automation/SKILL.md +0 -1193
  231. package/.claude/skills/pair-programming/SKILL.md +0 -1202
  232. package/.claude/skills/performance-analysis/SKILL.md +0 -563
  233. package/.claude/skills/skill-builder/SKILL.md +0 -910
  234. package/.claude/skills/sparc-methodology/SKILL.md +0 -904
  235. package/.claude/skills/stream-chain/SKILL.md +0 -563
  236. package/.claude/skills/swarm-advanced/SKILL.md +0 -811
  237. package/.claude/skills/swarm-orchestration/SKILL.md +0 -179
  238. package/.claude/skills/verification-quality/SKILL.md +0 -649
  239. package/.claude/skills/worker-benchmarks/skill.md +0 -135
  240. package/.claude/skills/worker-integration/skill.md +0 -154
@@ -15,46 +15,16 @@ npm install moflo
15
15
  npx flo init # Interactive setup wizard
16
16
  ```
17
17
 
18
- `flo init` does the following:
19
-
20
- 1. Creates `moflo.yaml` with detected project settings
21
- 2. Sets up `.claude/settings.json` hooks (SessionStart, pre-edit, etc.)
22
- 3. Configures `.mcp.json` for MCP tool access
23
- 4. Copies the agent bootstrap guide to `.claude/guidance/`
24
- 5. Injects a memory search section into CLAUDE.md
18
+ `flo init` creates `moflo.yaml`, sets up `.claude/settings.json` hooks, configures `.mcp.json` for MCP tools, copies bootstrap guidance to `.claude/guidance/`, and injects a memory-search section into `CLAUDE.md`.
25
19
 
26
20
  ### Post-Install
27
21
 
28
22
  ```bash
29
- npx flo-setup # Copy bootstrap guidance, inject CLAUDE.md section
23
+ npx flo-setup # Re-copy bootstrap guidance, re-inject CLAUDE.md section
30
24
  npx flo doctor --fix # Verify everything is working
31
25
  ```
32
26
 
33
- For the full schema of `moflo.yaml` and the env-var overrides, see `moflo-yaml-reference.md`.
34
-
35
- ---
36
-
37
- ## Building from Source
38
-
39
- **Full instructions: [`docs/BUILD.md`](../../../docs/BUILD.md)** — the canonical, step-by-step build/test/publish process. Always follow it.
40
-
41
- Quick reference (from project root only):
42
-
43
- ```bash
44
- git pull origin main # ALWAYS pull first
45
- npm run build # tsc -b (project references)
46
- npm test # 0 failures required
47
- npm version patch --no-git-tag-version # Bump + sync cli version
48
- npm run build # Rebuild with new version
49
- npm publish --otp=XXX # Requires 2FA OTP
50
- ```
51
-
52
- **Critical rules:**
53
-
54
- - npm only — no pnpm, yarn, or bun
55
- - Always build from root (`npm run build`) — never cd into subdirectories
56
- - Never publish without a successful build — `prepublishOnly` masks failures
57
- - Never publish without tests passing
27
+ For the full schema of `moflo.yaml` and env-var overrides, see `.claude/guidance/moflo-yaml-reference.md`. (Building moflo itself from source is a maintainer concern — see `docs/BUILD.md`.)
58
28
 
59
29
  ---
60
30
 
@@ -64,31 +34,28 @@ When a Claude Code session starts, moflo automatically runs three background ind
64
34
 
65
35
  | Indexer | Command | Namespace | What it does |
66
36
  |---------|---------|-----------|--------------|
67
- | Guidance | `npx flo-index` | `guidance` | Chunks markdown docs, builds RAG links, generates 384-dim embeddings |
37
+ | Guidance | `npx flo-index` | `guidance` | Chunks markdown, builds RAG links, generates 384-dim embeddings |
68
38
  | Code Map | `npx flo-codemap` | `code-map` | Scans source for types, interfaces, exports, directory structure |
69
39
  | Learning | `npx flo-learn` | `patterns` | Pattern research on codebase for cross-session learning |
70
40
 
71
41
  These run in background and are incremental (unchanged files are skipped). Controlled by `auto_index` in `moflo.yaml`.
72
42
 
73
- ### Helper Script Auto-Sync
43
+ ### Session-Start Cost Expectations
74
44
 
75
- On version change, `session-start-launcher.mjs` copies helper scripts from the installed moflo package to the consumer project's `.claude/helpers/` and `.claude/scripts/` directories. This ensures hooks always run the latest version.
45
+ The launcher does more than copy helpers it also heals the memory DB, runs embeddings migrations, recycles the daemon when the install changes, and self-heals `.claude/settings.json` hook wiring. Expected timing:
76
46
 
77
- **Rule: static files, not dynamic generation.** If a helper script has no dynamic content (no per-project interpolation), it must be shipped as a pre-built static file in `bin/` and synced via the session-start file lists. Do not generate static content dynamically at runtime — it adds fragile moving parts (background `init --upgrade`, race conditions with session-start exit) and causes stale scripts when the sync list is incomplete.
47
+ | Scenario | Cost | What you'll see |
48
+ |----------|------|-----------------|
49
+ | Steady-state start (no version change) | < 200 ms | Silent; no `moflo:` lines |
50
+ | First start after `npm install moflo` | A few seconds (one-shot) | `moflo:` lines reporting synced files, daemon recycle, manifest write |
51
+ | Major upgrade with embeddings migration | 30–60 s (one-shot) | Progress bar on stderr; cannot be skipped |
52
+ | Slow on every start | Manifest drift loop | Run `flo doctor --fix` |
78
53
 
79
- | Source | Target | Files |
80
- |--------|--------|-------|
81
- | `bin/` | `.claude/scripts/` | `hooks.mjs`, `session-start-launcher.mjs`, `index-guidance.mjs`, `build-embeddings.mjs`, `generate-code-map.mjs`, `semantic-search.mjs` |
82
- | `bin/` | `.claude/helpers/` | `gate.cjs`, `gate-hook.mjs`, `prompt-hook.mjs`, `hook-handler.cjs` |
83
- | `src/cli/.claude/helpers/` | `.claude/helpers/` | `auto-memory-hook.mjs`, `statusline.cjs`, `subagent-start.cjs`, `pre-commit`, `post-commit` |
84
-
85
- When adding a new helper script: generate it once, save it to `bin/`, and add it to the appropriate list in `session-start-launcher.mjs`.
86
-
87
- **The full picture.** Helper sync is one of several things the launcher does on every session start. For the complete lifecycle (DB heal, embeddings migration, daemon recycling, settings.json self-heal, etc.) see `moflo-session-start.md`. For the contract on what moflo writes into `.claude/settings.json` and how surgical hook-wiring rewrites work, see `moflo-settings-injection.md`.
54
+ For the contract on what moflo writes into `.claude/settings.json` and how surgical hook-wiring rewrites work, see `.claude/guidance/moflo-settings-injection.md`.
88
55
 
89
56
  ### Bundled Guidance
90
57
 
91
- Moflo ships its own guidance files (in `.claude/guidance/` within the package). When installed as a dependency, these are **automatically indexed** alongside the consumer project's guidance under the `guidance` namespace. This means agents in your project can search for moflo system docs (swarm patterns, memory commands, etc.) without any extra setup.
58
+ Moflo ships its own guidance files inside the package. When installed as a dependency they are **automatically indexed** alongside the consumer project's guidance under the `guidance` namespace agents can search for moflo system docs (swarm patterns, memory commands, etc.) without extra setup.
92
59
 
93
60
  ---
94
61
 
@@ -117,33 +84,23 @@ Moflo ships its own guidance files (in `.claude/guidance/` within the package).
117
84
 
118
85
  ## MCP Tools Setup
119
86
 
120
- MCP tools are the preferred way for Claude to interact with moflo. `flo init` writes `.mcp.json` in the project root automatically (see `moflo-yaml-reference.md` for the file's content and the global-registration alternative).
121
-
122
- This gives Claude access to ~125 MCP tools (`mcp__moflo__memory_*`, `mcp__moflo__hooks_*`, `mcp__moflo__swarm_*`, `mcp__moflo__moflodb_*`, etc.) without any global installation.
87
+ `flo init` writes `.mcp.json` in the project root automatically (see `.claude/guidance/moflo-yaml-reference.md` for the file's content and the global-registration alternative). This gives Claude access to ~125 MCP tools (`mcp__moflo__memory_*`, `mcp__moflo__hooks_*`, `mcp__moflo__swarm_*`, `mcp__moflo__moflodb_*`, etc.) without any global installation.
123
88
 
124
- ### Policy: every shipped MCP tool must have a real consumer (#693)
125
-
126
- We do not ship speculative tools. Every tool registered in `src/cli/mcp-tools/` must satisfy at least one of these:
127
-
128
- 1. Referenced as `mcp__moflo__<name>` in a skill, agent file, doc, or guidance .md
129
- 2. Called via `callMCPTool('<name>')` from CLI command code
130
- 3. On the explicit allowlist in `src/cli/__tests__/mcp-tools-drift-guard.test.ts` with a justification (e.g. "expert API for `moflodb_*` controllers" or "advertised in `moflo-init.ts` CLAUDE.md fragment")
131
-
132
- The drift-guard test fails CI if a new tool is registered with no consumer and no allowlist entry. If you ship a tool, ship a real call site for it (or document why it has none).
89
+ **Every shipped MCP tool has a real consumer call site** (skill, agent, doc, CLI code, or allowlist entry with justification). The drift-guard test in `src/cli/__tests__/mcp-tools-drift-guard.test.ts` fails CI if a new tool is registered with no consumer — moflo does not ship speculative tools.
133
90
 
134
91
  ---
135
92
 
136
93
  ## Project Config (Anti-Drift Defaults)
137
94
 
138
- - **Topology**: hierarchical (prevents drift)
139
- - **Max Agents**: 8 (smaller = less drift)
140
- - **Strategy**: specialized (clear roles)
141
- - **Consensus**: raft
142
- - **Memory**: hybrid
143
- - **HNSW**: Enabled
144
- - **Neural**: Enabled
95
+ - **Topology:** hierarchical (prevents drift)
96
+ - **Max Agents:** 8 (smaller = less drift)
97
+ - **Strategy:** specialized (clear roles)
98
+ - **Consensus:** raft
99
+ - **Memory:** hybrid
100
+ - **HNSW:** Enabled
101
+ - **Neural:** Enabled
145
102
 
146
- For the full `moflo.yaml` schema, gate toggles, model routing, and sandbox config, see `moflo-yaml-reference.md`. For the catalog of commands, agents, hooks, and consensus topologies these defaults shape, see `moflo-cli-reference.md`.
103
+ For the full `moflo.yaml` schema, gate toggles, model routing, and sandbox config, see `.claude/guidance/moflo-yaml-reference.md`. For the catalog of commands, agents, hooks, and consensus topologies these defaults shape, see `.claude/guidance/moflo-cli-reference.md`.
147
104
 
148
105
  ---
149
106
 
@@ -151,123 +108,49 @@ For the full `moflo.yaml` schema, gate toggles, model routing, and sandbox confi
151
108
 
152
109
  ### Before Starting Coding Tasks
153
110
 
154
- **MCP (Preferred):** `mcp__moflo__memory_search` — `query: "[task keywords]", namespace: "patterns"`
111
+ **MCP (preferred):** `mcp__moflo__memory_search` — `query: "[task keywords]"`, `namespace: "patterns"`.
155
112
 
156
- **CLI Fallback:**
113
+ **CLI fallback:** `npx flo memory search --query '[task keywords]' --namespace patterns`.
157
114
 
158
- ```bash
159
- npx flo memory search --query '[task keywords]' --namespace patterns
160
- ```
161
-
162
- ### After Completing Any Task Successfully (MCP Preferred)
115
+ ### After Completing Any Task
163
116
 
164
117
  | Step | MCP Tool | Key Params |
165
118
  |------|----------|------------|
166
- | 1. Store pattern | `mcp__moflo__memory_store` | `namespace: "patterns", key: "[name]", value: "[what worked]"` |
167
- | 2. Train neural | `mcp__moflo__hooks_post-edit` | `file: "[main-file]", trainNeural: true` |
168
- | 3. Record completion | `mcp__moflo__hooks_post-task` | `taskId: "[id]", success: true, storeResults: true` |
119
+ | Store pattern | `mcp__moflo__memory_store` | `namespace: "patterns", key: "[name]", value: "[what worked]"` |
120
+ | Train neural | `mcp__moflo__hooks_post-edit` | `file: "[main-file]", trainNeural: true` |
121
+ | Record completion | `mcp__moflo__hooks_post-task` | `taskId: "[id]", success: true, storeResults: true` |
169
122
 
170
123
  ### Continuous Improvement Triggers
171
124
 
172
- | Trigger | Worker | When to Use |
173
- |------------------------|------------|----------------------------|
174
- | After major refactor | `optimize` | Performance optimization |
175
- | After adding features | `testgaps` | Find missing test coverage |
176
- | After security changes | `audit` | Security analysis |
177
- | After API changes | `document` | Update documentation |
178
- | Every 5+ file changes | `map` | Update codebase map |
179
- | Complex debugging | `deepdive` | Deep code analysis |
125
+ | Trigger | Worker | Use For |
126
+ |---------|--------|---------|
127
+ | After major refactor | `optimize` | Performance optimization |
128
+ | After adding features | `testgaps` | Find missing test coverage |
129
+ | After security changes | `audit` | Security analysis |
130
+ | After API changes | `document` | Update documentation |
131
+ | Every 5+ file changes | `map` | Update codebase map |
132
+ | Complex debugging | `deepdive` | Deep code analysis |
180
133
 
181
134
  ### Memory-Enhanced Development
182
135
 
183
- **ALWAYS check memory before:**
184
-
185
- - Starting a new feature (search for similar implementations)
186
- - Debugging an issue (search for past solutions)
187
- - Refactoring code (search for learned patterns)
188
- - Performance work (search for optimization strategies)
189
-
190
- **ALWAYS store in memory after:**
191
-
192
- - Solving a tricky bug (store the solution pattern)
193
- - Completing a feature (store the approach)
194
- - Finding a performance fix (store the optimization)
195
- - Discovering a security issue (store the vulnerability pattern)
196
-
197
- ---
198
-
199
- ## Memory Commands Reference (MCP Preferred)
136
+ | Action | When |
137
+ |--------|------|
138
+ | Search memory before writing code | Starting a new feature, debugging an issue, refactoring, performance work |
139
+ | Store in memory after solving | Tricky bug, completed feature, perf fix, security finding |
200
140
 
201
- ### Store Data
202
-
203
- **MCP:** `mcp__moflo__memory_store`
204
-
205
- - Required: `key`, `value`
206
- - Optional: `namespace` (default: "default"), `ttl`, `tags`
207
-
208
- **CLI Fallback:**
209
-
210
- ```bash
211
- npx flo memory store --key "pattern-auth" --value "JWT with refresh tokens" --namespace patterns
212
- ```
213
-
214
- ### Search Data (semantic vector search)
215
-
216
- **MCP:** `mcp__moflo__memory_search`
217
-
218
- - Required: `query`
219
- - Optional: `namespace`, `limit`, `threshold`
220
-
221
- **CLI Fallback:**
222
-
223
- ```bash
224
- npx flo memory search --query "authentication patterns" --namespace patterns --limit 5
225
- ```
226
-
227
- ### List Entries
228
-
229
- **MCP:** `mcp__moflo__memory_list`
230
-
231
- - Optional: `namespace`, `limit`
232
-
233
- ### Retrieve Specific Entry
234
-
235
- **MCP:** `mcp__moflo__memory_retrieve`
236
-
237
- - Required: `key`
238
- - Optional: `namespace` (default: "default")
141
+ For namespaces, embedding model, indexing pipeline, and writing guidance that retrieves well, see `.claude/guidance/moflo-memory-strategy.md`.
239
142
 
240
143
  ---
241
144
 
242
- ## Claude Code vs MCP vs CLI Tools
243
-
244
- ### Claude Code Handles ALL EXECUTION:
245
-
246
- - **Task tool**: Spawn and run agents concurrently
247
- - File operations (Read, Write, Edit, Glob, Grep)
248
- - Code generation and programming
249
- - Bash commands and system operations
250
- - Git operations
145
+ ## Claude Code vs MCP vs CLI
251
146
 
252
- ### MCP Tools Handle Coordination (Preferred):
253
-
254
- | Operation | MCP Tool |
255
- |-----------|----------|
256
- | Swarm init | `mcp__moflo__swarm_init` |
257
- | Agent spawn | `mcp__moflo__agent_spawn` |
258
- | Memory store | `mcp__moflo__memory_store` |
259
- | Memory search | `mcp__moflo__memory_search` |
260
- | Hooks (all) | `mcp__moflo__hooks_<hook-name>` |
261
-
262
- ### CLI Commands (Fallback Only):
263
-
264
- Only use CLI via Bash when MCP tools are unavailable:
265
-
266
- ```bash
267
- npx flo <command> [options]
268
- ```
147
+ | Layer | Handles | Examples |
148
+ |-------|---------|----------|
149
+ | Claude Code (execution) | Spawning agents, file ops, code, bash, git | `Task`, `Read`, `Write`, `Edit`, `Glob`, `Grep`, `Bash` |
150
+ | MCP tools (coordination — preferred) | Swarm/agent orchestration, memory, hooks | `mcp__moflo__swarm_init`, `mcp__moflo__agent_spawn`, `mcp__moflo__memory_store`, `mcp__moflo__hooks_*` |
151
+ | CLI (fallback only) | Same coordination via shell when MCP unavailable | `npx flo <command> [options]` |
269
152
 
270
- **KEY**: MCP tools coordinate strategy, Claude Code's Task tool executes with real agents.
153
+ **Key:** MCP tools coordinate strategy; Claude Code's `Task` tool executes with real agents.
271
154
 
272
155
  ---
273
156
 
@@ -279,32 +162,31 @@ Checks: Node version (20+), Git, config validity, daemon status, memory database
279
162
 
280
163
  ---
281
164
 
282
- ## Troubleshooting Common Issues
165
+ ## Troubleshooting
283
166
 
284
167
  | Symptom | Cause | Fix |
285
168
  |---------|-------|-----|
286
169
  | No MCP tools available | `.mcp.json` missing or moflo not installed | Run `npx flo init` or manually create `.mcp.json` |
287
- | Memory search returns nothing | Indexer hasn't run yet | Run `npx flo-index --force` to index guidance |
288
- | Low search quality | Guidance docs missing `**Purpose:**` lines or generic headings | Follow guidance optimization rules in `moflo-memory-strategy.md` |
289
- | Session start slow | All three indexers running | Set `auto_index.code_map: false` in `moflo.yaml` if code map not needed |
170
+ | Memory search returns nothing | Indexer hasn't run yet | Run `npx flo-index --force` |
171
+ | Low search quality | Guidance docs missing `**Purpose:**` lines or generic headings | See `.claude/guidance/moflo-guidance-rules.md` |
172
+ | Session start slow | All three indexers running | Set `auto_index.code_map: false` in `moflo.yaml` if not needed |
290
173
  | Status line not showing | `statusline.cjs` error or `status_line.enabled: false` | Run `node .claude/helpers/statusline.cjs` to test, check `moflo.yaml` |
291
- | Embeddings fail on first run (offline / air-gapped) | `fastembed` model cache missing | Pre-populate `~/.cache/fastembed` or set `FASTEMBED_CACHE` to a pre-baked cache dir — see `docs/modules/embeddings.md` "Sandbox & air-gapped first-run" |
174
+ | Embeddings fail offline / air-gapped | `fastembed` model cache missing | Pre-populate `~/.cache/fastembed` or set `FASTEMBED_CACHE` (see `docs/modules/embeddings.md`) |
292
175
  | `flo` command not found | Not in PATH | Use `npx flo` or `node node_modules/moflo/bin/index-guidance.mjs` |
293
- | Bundled guidance not indexed | Running inside moflo repo (same dir) | Bundled guidance only indexes when installed as a dependency in a different project |
176
+ | Bundled guidance not indexed | Running inside the moflo repo | Bundled guidance only indexes when installed as a dependency in a different project |
294
177
 
295
- See `moflo-memory-strategy.md` for memory-specific troubleshooting.
178
+ See `.claude/guidance/moflo-memory-strategy.md` for memory-specific troubleshooting and `.claude/guidance/moflo-spell-troubleshooting.md` for spell sandbox/network failures.
296
179
 
297
180
  ---
298
181
 
299
182
  ## See Also
300
183
 
301
- - `.claude/guidance/shipped/moflo-cli-reference.md` — CLI commands, agents, hooks, hive-mind, RuVector
302
- - `.claude/guidance/shipped/moflo-yaml-reference.md` — `moflo.yaml` schema, environment variables, `.mcp.json` setup
303
- - `.claude/guidance/shipped/moflo-subagents.md` — Subagents memory-first protocol and store patterns
304
- - `.claude/guidance/shipped/moflo-claude-swarm-cohesion.md` — Task & swarm coordination with TaskCreate/TaskUpdate
305
- - `.claude/guidance/shipped/moflo-memory-strategy.md` — Database schema, namespaces, search commands, RAG linking
306
- - `.claude/guidance/shipped/moflo-memorydb-maintenance.md` — Reindexing, namespace purging, recovery
307
- - `.claude/guidance/shipped/moflo-session-start.md` — Complete session-start lifecycle (DB heal, sync, migrations, daemon)
308
- - `.claude/guidance/shipped/moflo-settings-injection.md` — What moflo writes into `.claude/` and how surgical self-heal works
309
- - `.claude/guidance/shipped/moflo-cross-platform.md` — Windows/macOS/Linux portability rules for any code change
310
- - `.claude/guidance/shipped/moflo-verbose-command-filtering.md` — Filter long verbose commands at the source; never tee-then-grep
184
+ - `.claude/guidance/moflo-cli-reference.md` — CLI commands, agents, hooks, hive-mind, RuVector
185
+ - `.claude/guidance/moflo-yaml-reference.md` — `moflo.yaml` schema, environment variables, `.mcp.json` setup
186
+ - `.claude/guidance/moflo-subagents.md` — Subagents memory-first protocol and store patterns
187
+ - `.claude/guidance/moflo-claude-swarm-cohesion.md` — Task & swarm coordination with TaskCreate/TaskUpdate
188
+ - `.claude/guidance/moflo-memory-strategy.md` — Database schema, namespaces, search commands, RAG linking
189
+ - `.claude/guidance/moflo-memorydb-maintenance.md` — Reindexing, namespace purging, recovery
190
+ - `.claude/guidance/moflo-settings-injection.md` — What moflo writes into `.claude/` and how surgical self-heal works
191
+ - `.claude/guidance/moflo-cross-platform.md` — Windows/macOS/Linux portability rules for any code change
192
+ - `.claude/guidance/moflo-verbose-command-filtering.md` — Filter long verbose commands at the source; never tee-then-grep
@@ -163,4 +163,4 @@ Before submitting any code change, verify:
163
163
  ## See Also
164
164
 
165
165
  - `CLAUDE.md` — Consumer project checklist, build rules
166
- - `.claude/guidance/shipped/moflo-source-hygiene.md` — Source code hygiene rules
166
+ - `.claude/guidance/moflo-source-hygiene.md` — Source code hygiene rules
@@ -45,7 +45,7 @@
45
45
 
46
46
  ## Transient Errors Must Use Retry + Circuit Breaker
47
47
 
48
- **Wrap every transient-failure-capable operation in a retry helper with exponential backoff and a circuit breaker.** One-shot try-and-log on a transient class strands users in partial-state loops (#854: Windows file-lock + AV scan race left stale `.claude/helpers/gate.cjs` across 8+ moflo bumps).
48
+ **Wrap every transient-failure-capable operation in a retry helper with exponential backoff and a circuit breaker.** One-shot try-and-log on a transient class strands users in partial-state loops — a representative incident: a Windows file-lock + AV scan race left stale `.claude/helpers/gate.cjs` across 8+ moflo bumps because each per-version sync swallowed the EBUSY without retrying.
49
49
 
50
50
  | Element | Default |
51
51
  |---------|---------|
@@ -70,5 +70,5 @@ if (!result.ok) syncFailures.push({ key, message: `${errMessage(result.err)} (re
70
70
 
71
71
  ## See Also
72
72
 
73
- - `.claude/guidance/shipped/moflo-source-hygiene.md` — General source code standards
74
- - `.claude/guidance/shipped/moflo-cross-platform.md` — Cross-platform rules
73
+ - `.claude/guidance/moflo-source-hygiene.md` — General source code standards
74
+ - `.claude/guidance/moflo-cross-platform.md` — Cross-platform rules
@@ -74,13 +74,23 @@ TaskCreate({
74
74
 
75
75
  ## 5. Keep Files Under 500 Lines
76
76
 
77
- Long guidance files lose effectiveness because:
77
+ **The 500-line cap applies to every `.claude/guidance/**/*.md` file AND every `.claude/skills/*/SKILL.md` entry file AND every `.claude/agents/**/*.md` entry file.** The same RAG/attention math applies to all three:
78
78
 
79
- - RAG chunking splits them, and chunks lose cross-section context
79
+ - RAG chunking splits long files, and chunks lose cross-section context
80
80
  - Claude deprioritizes content deep in a long document
81
81
  - Competing chunks from the same file dilute search relevance
82
+ - For SKILL.md and agent .md, the **entire file is loaded into context on every invocation** (or on every `Agent({subagent_type})` spawn) — every extra line is a per-invocation token cost across all consumers
82
83
 
83
- If a doc exceeds 500 lines, split by concern into separate files. Each file should cover one topic thoroughly rather than many topics shallowly.
84
+ If a doc exceeds 500 lines, split by concern. Two patterns:
85
+
86
+ | Pattern | Where it fits | Example |
87
+ |---------|---------------|---------|
88
+ | **Sibling files** (guidance) | Topical split — each file owns one concern | `moflo-spell-engine.md` + `moflo-spell-runner.md` + `moflo-spell-troubleshooting.md` |
89
+ | **Progressive disclosure** (skills, agents) | Entry SKILL.md or agent .md links to companions in the same directory | `spell-builder/SKILL.md` (entry) + `architecture.md` + `permissions.md` + `preflight.md` (companions); `agents/<cat>/<name>.md` (entry, has frontmatter) + `<name>-protocols.md` (companion, no frontmatter) |
90
+
91
+ Companion files are NOT auto-loaded — Claude reads them only when the entry directs it to. This keeps the per-invocation cost low while preserving the depth.
92
+
93
+ A gating test (`skill-and-guidance-size-drift.test.ts`) enforces the cap and will fail CI if a guidance doc, SKILL.md entry, or agent entry exceeds 500 lines. Companion files (agent .md without YAML frontmatter, or any .md inside a skill directory other than SKILL.md) are exempt because they only load on demand.
84
94
 
85
95
  ---
86
96
 
@@ -137,8 +147,8 @@ Use relative names (not absolute paths) so the links work across project context
137
147
 
138
148
  ## See Also
139
149
 
140
- - `.claude/guidance/shipped/moflo-memory-strategy.md` — Companion rules on namespaces, RAG indexing, and search patterns the data feeds
141
- - `.claude/guidance/shipped/moflo-task-icons.md` — UX rule for `TaskCreate` and `Agent` description fields (ICON + [Role])
142
- - `.claude/guidance/shipped/moflo-user-facing-language.md` — How to phrase any text shown to end users (plain risk-level language, no jargon)
143
- - `.claude/guidance/shipped/moflo-subagents.md` — Memory-first protocol any guidance you write should reinforce
150
+ - `.claude/guidance/moflo-memory-strategy.md` — Companion rules on namespaces, RAG indexing, and search patterns the data feeds
151
+ - `.claude/guidance/moflo-task-icons.md` — UX rule for `TaskCreate` and `Agent` description fields (ICON + [Role])
152
+ - `.claude/guidance/moflo-user-facing-language.md` — How to phrase any text shown to end users (plain risk-level language, no jargon)
153
+ - `.claude/guidance/moflo-subagents.md` — Memory-first protocol any guidance you write should reinforce
144
154
  - `.claude/skills/guidance/SKILL.md` — `/guidance` skill that helps you author or audit guidance against these rules