@monoes/monomindcli 2.9.21 → 2.9.23

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 (505) hide show
  1. package/.claude/agents/consensus/quorum-manager.md +35 -54
  2. package/.claude/agents/core/coordinator.md +14 -18
  3. package/.claude/agents/core/researcher.md +1 -1
  4. package/.claude/agents/github/issue-tracker.md +3 -3
  5. package/.claude/agents/github/{code-review-swarm.md → monoswarm-code-review.md} +1 -1
  6. package/.claude/agents/github/{swarm-issue.md → monoswarm-issue.md} +1 -1
  7. package/.claude/agents/github/{multi-repo-swarm.md → monoswarm-multi-repo.md} +1 -1
  8. package/.claude/agents/github/{swarm-pr.md → monoswarm-pr.md} +1 -1
  9. package/.claude/agents/github/pr-manager.md +1 -1
  10. package/.claude/agents/github/release-manager.md +1 -1
  11. package/.claude/agents/github/repo-architect.md +1 -1
  12. package/.claude/agents/github/sync-coordinator.md +4 -4
  13. package/.claude/agents/{hive-mind → monoswarm}/collective-intelligence-coordinator.md +9 -16
  14. package/.claude/agents/{swarm → monoswarm}/mesh-coordinator.md +19 -24
  15. package/.claude/agents/{hive-mind/swarm-memory-manager.md → monoswarm/monoswarm-memory-manager.md} +1 -1
  16. package/.claude/agents/templates/{coordinator-swarm-init.md → coordinator-monoswarm-init.md} +1 -1
  17. package/.claude/agents/testing/{tdd-london-swarm.md → tdd-london-monoswarm.md} +2 -2
  18. package/.claude/commands/agents/agent-coordination.md +3 -3
  19. package/.claude/commands/agents/agent-types.md +1 -1
  20. package/.claude/commands/automation/self-healing.md +1 -1
  21. package/.claude/commands/automation/smart-spawn.md +1 -1
  22. package/.claude/commands/coordination/README.md +1 -1
  23. package/.claude/commands/coordination/{swarm-init.md → monoswarm-init.md} +2 -2
  24. package/.claude/commands/coordination/task-orchestrate.md +4 -4
  25. package/.claude/commands/github/README.md +1 -1
  26. package/.claude/commands/github/issue-tracker.md +2 -2
  27. package/.claude/commands/github/pr-manager.md +1 -1
  28. package/.claude/commands/github/release-manager.md +1 -1
  29. package/.claude/commands/github/repo-architect.md +1 -1
  30. package/.claude/commands/github/sync-coordinator.md +2 -2
  31. package/.claude/commands/hooks/README.md +1 -2
  32. package/.claude/commands/hooks/overview.md +1 -2
  33. package/.claude/commands/hooks/setup.md +0 -3
  34. package/.claude/commands/mastermind/createtask.md +2 -2
  35. package/.claude/commands/mastermind/do.md +3 -3
  36. package/.claude/commands/mastermind/help.md +2 -2
  37. package/.claude/commands/mastermind/ideate.md +1 -1
  38. package/.claude/commands/mastermind/improve.md +1 -1
  39. package/.claude/commands/mastermind/memory.md +2 -2
  40. package/.claude/commands/mastermind/{swarm.md → monoswarm.md} +13 -26
  41. package/.claude/commands/mastermind/topology.md +1 -1
  42. package/.claude/commands/memory/README.md +2 -2
  43. package/.claude/commands/memory/memory-search.md +1 -1
  44. package/.claude/commands/monoswarm/README.md +59 -0
  45. package/.claude/commands/monoswarm/consensus.md +61 -0
  46. package/.claude/commands/monoswarm/init.md +68 -0
  47. package/.claude/commands/monoswarm/memory.md +55 -0
  48. package/.claude/commands/monoswarm/monoswarm.md +139 -0
  49. package/.claude/commands/{swarm → monoswarm}/research.md +2 -2
  50. package/.claude/commands/monoswarm/spawn.md +49 -0
  51. package/.claude/commands/monoswarm/status.md +48 -0
  52. package/.claude/commands/monoswarm/stop.md +46 -0
  53. package/.claude/commands/optimization/auto-topology.md +9 -9
  54. package/.claude/commands/stream-chain/run.md +1 -1
  55. package/.claude/commands/workflows/development.md +1 -1
  56. package/.claude/commands/workflows/research.md +2 -2
  57. package/.claude/helpers/audit-log-writer.cjs +72 -0
  58. package/.claude/helpers/control-start.cjs +84 -26
  59. package/.claude/helpers/handlers/agent-start-handler.cjs +5 -5
  60. package/.claude/helpers/handlers/gates-handler.cjs +31 -10
  61. package/.claude/helpers/handlers/session-restore-handler.cjs +1 -1
  62. package/.claude/helpers/handlers/task-handler.cjs +4 -4
  63. package/.claude/helpers/skill-registry.json +4718 -3669
  64. package/.claude/helpers/statusline.cjs +21 -21
  65. package/.claude/helpers/token-tracker.cjs +0 -6
  66. package/.claude/settings.json +2 -3
  67. package/.claude/skills/hooks-automation/SKILL.md +5 -5
  68. package/.claude/skills/mastermind-createorg/SKILL.md +26 -3
  69. package/.claude/skills/mastermind-protocol/SKILL.md +3 -3
  70. package/.claude/skills/memory-toolkit/SKILL.md +2 -2
  71. package/.claude/skills/{swarm-orchestration → monoswarm}/SKILL.md +106 -42
  72. package/.claude/skills/specialagent/SKILL.md +1 -1
  73. package/README.md +31 -12
  74. package/dist/src/autopilot-state.d.ts +0 -16
  75. package/dist/src/autopilot-state.d.ts.map +1 -1
  76. package/dist/src/autopilot-state.js +0 -15
  77. package/dist/src/autopilot-state.js.map +1 -1
  78. package/dist/src/browser/dashboard/server.js +3 -3
  79. package/dist/src/browser/dashboard/server.js.map +1 -1
  80. package/dist/src/browser/dashboard/ui.html +2 -2
  81. package/dist/src/capabilities/cap-documents.d.ts.map +1 -1
  82. package/dist/src/capabilities/cap-documents.js +49 -38
  83. package/dist/src/capabilities/cap-documents.js.map +1 -1
  84. package/dist/src/commands/agent-lifecycle.d.ts.map +1 -1
  85. package/dist/src/commands/agent-lifecycle.js +4 -9
  86. package/dist/src/commands/agent-lifecycle.js.map +1 -1
  87. package/dist/src/commands/agent-ops.d.ts.map +1 -1
  88. package/dist/src/commands/agent-ops.js +37 -24
  89. package/dist/src/commands/agent-ops.js.map +1 -1
  90. package/dist/src/commands/analyze-ast.d.ts +1 -1
  91. package/dist/src/commands/analyze-ast.d.ts.map +1 -1
  92. package/dist/src/commands/analyze-ast.js +8 -27
  93. package/dist/src/commands/analyze-ast.js.map +1 -1
  94. package/dist/src/commands/analyze-imports.d.ts.map +1 -1
  95. package/dist/src/commands/analyze-imports.js +18 -17
  96. package/dist/src/commands/analyze-imports.js.map +1 -1
  97. package/dist/src/commands/analyze-symbols.d.ts.map +1 -1
  98. package/dist/src/commands/analyze-symbols.js +10 -24
  99. package/dist/src/commands/analyze-symbols.js.map +1 -1
  100. package/dist/src/commands/analyze.d.ts +19 -6
  101. package/dist/src/commands/analyze.d.ts.map +1 -1
  102. package/dist/src/commands/analyze.js +61 -15
  103. package/dist/src/commands/analyze.js.map +1 -1
  104. package/dist/src/commands/autopilot.d.ts.map +1 -1
  105. package/dist/src/commands/autopilot.js +4 -89
  106. package/dist/src/commands/autopilot.js.map +1 -1
  107. package/dist/src/commands/browse.d.ts +1 -1
  108. package/dist/src/commands/cleanup.d.ts.map +1 -1
  109. package/dist/src/commands/cleanup.js +4 -2
  110. package/dist/src/commands/cleanup.js.map +1 -1
  111. package/dist/src/commands/completions.d.ts.map +1 -1
  112. package/dist/src/commands/completions.js +0 -1
  113. package/dist/src/commands/completions.js.map +1 -1
  114. package/dist/src/commands/config.js +7 -7
  115. package/dist/src/commands/config.js.map +1 -1
  116. package/dist/src/commands/doctor-project-checks.d.ts +7 -0
  117. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  118. package/dist/src/commands/doctor-project-checks.js +37 -5
  119. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  120. package/dist/src/commands/doctor.d.ts.map +1 -1
  121. package/dist/src/commands/doctor.js +9 -3
  122. package/dist/src/commands/doctor.js.map +1 -1
  123. package/dist/src/commands/events.d.ts +9 -0
  124. package/dist/src/commands/events.d.ts.map +1 -0
  125. package/dist/src/commands/events.js +89 -0
  126. package/dist/src/commands/events.js.map +1 -0
  127. package/dist/src/commands/hooks-routing-commands.d.ts +1 -2
  128. package/dist/src/commands/hooks-routing-commands.d.ts.map +1 -1
  129. package/dist/src/commands/hooks-routing-commands.js +1 -101
  130. package/dist/src/commands/hooks-routing-commands.js.map +1 -1
  131. package/dist/src/commands/hooks-workers.d.ts.map +1 -1
  132. package/dist/src/commands/hooks-workers.js +19 -71
  133. package/dist/src/commands/hooks-workers.js.map +1 -1
  134. package/dist/src/commands/hooks.d.ts +1 -1
  135. package/dist/src/commands/hooks.d.ts.map +1 -1
  136. package/dist/src/commands/hooks.js +4 -7
  137. package/dist/src/commands/hooks.js.map +1 -1
  138. package/dist/src/commands/index.d.ts +2 -2
  139. package/dist/src/commands/index.d.ts.map +1 -1
  140. package/dist/src/commands/index.js +4 -3
  141. package/dist/src/commands/index.js.map +1 -1
  142. package/dist/src/commands/init-subcommands.d.ts.map +1 -1
  143. package/dist/src/commands/init-subcommands.js +4 -0
  144. package/dist/src/commands/init-subcommands.js.map +1 -1
  145. package/dist/src/commands/init-wizard.d.ts.map +1 -1
  146. package/dist/src/commands/init-wizard.js +0 -8
  147. package/dist/src/commands/init-wizard.js.map +1 -1
  148. package/dist/src/commands/init.d.ts.map +1 -1
  149. package/dist/src/commands/init.js +53 -23
  150. package/dist/src/commands/init.js.map +1 -1
  151. package/dist/src/commands/mcp.d.ts +1 -0
  152. package/dist/src/commands/mcp.d.ts.map +1 -1
  153. package/dist/src/commands/mcp.js +111 -60
  154. package/dist/src/commands/mcp.js.map +1 -1
  155. package/dist/src/commands/memory-crud.d.ts.map +1 -1
  156. package/dist/src/commands/memory-crud.js +33 -20
  157. package/dist/src/commands/memory-crud.js.map +1 -1
  158. package/dist/src/commands/monoswarm.d.ts +8 -0
  159. package/dist/src/commands/monoswarm.d.ts.map +1 -0
  160. package/dist/src/commands/{swarm.js → monoswarm.js} +83 -297
  161. package/dist/src/commands/monoswarm.js.map +1 -0
  162. package/dist/src/commands/neural-core.d.ts.map +1 -1
  163. package/dist/src/commands/neural-core.js +9 -1
  164. package/dist/src/commands/neural-core.js.map +1 -1
  165. package/dist/src/commands/neural-optimize.d.ts.map +1 -1
  166. package/dist/src/commands/neural-optimize.js +30 -110
  167. package/dist/src/commands/neural-optimize.js.map +1 -1
  168. package/dist/src/commands/neural-registry.d.ts +1 -2
  169. package/dist/src/commands/neural-registry.d.ts.map +1 -1
  170. package/dist/src/commands/neural-registry.js +21 -168
  171. package/dist/src/commands/neural-registry.js.map +1 -1
  172. package/dist/src/commands/org-observe.d.ts +34 -3
  173. package/dist/src/commands/org-observe.d.ts.map +1 -1
  174. package/dist/src/commands/org-observe.js +213 -45
  175. package/dist/src/commands/org-observe.js.map +1 -1
  176. package/dist/src/commands/org.d.ts +14 -0
  177. package/dist/src/commands/org.d.ts.map +1 -1
  178. package/dist/src/commands/org.js +118 -20
  179. package/dist/src/commands/org.js.map +1 -1
  180. package/dist/src/commands/performance.d.ts.map +1 -1
  181. package/dist/src/commands/performance.js +38 -31
  182. package/dist/src/commands/performance.js.map +1 -1
  183. package/dist/src/commands/security-misc.d.ts.map +1 -1
  184. package/dist/src/commands/security-misc.js +220 -90
  185. package/dist/src/commands/security-misc.js.map +1 -1
  186. package/dist/src/commands/security-scan.d.ts +13 -0
  187. package/dist/src/commands/security-scan.d.ts.map +1 -1
  188. package/dist/src/commands/security-scan.js +96 -27
  189. package/dist/src/commands/security-scan.js.map +1 -1
  190. package/dist/src/commands/security.js +1 -1
  191. package/dist/src/commands/security.js.map +1 -1
  192. package/dist/src/commands/start.d.ts.map +1 -1
  193. package/dist/src/commands/start.js +17 -96
  194. package/dist/src/commands/start.js.map +1 -1
  195. package/dist/src/commands/status.d.ts.map +1 -1
  196. package/dist/src/commands/status.js +72 -64
  197. package/dist/src/commands/status.js.map +1 -1
  198. package/dist/src/commands/tokens.d.ts.map +1 -1
  199. package/dist/src/commands/tokens.js +4 -5
  200. package/dist/src/commands/tokens.js.map +1 -1
  201. package/dist/src/consensus/audit-writer.d.ts +2 -2
  202. package/dist/src/consensus/audit-writer.d.ts.map +1 -1
  203. package/dist/src/consensus/audit-writer.js +1 -1
  204. package/dist/src/index.d.ts +2 -2
  205. package/dist/src/index.d.ts.map +1 -1
  206. package/dist/src/index.js +12 -10
  207. package/dist/src/index.js.map +1 -1
  208. package/dist/src/init/claudemd-generator.d.ts.map +1 -1
  209. package/dist/src/init/claudemd-generator.js +32 -31
  210. package/dist/src/init/claudemd-generator.js.map +1 -1
  211. package/dist/src/init/codex-generator.d.ts +10 -0
  212. package/dist/src/init/codex-generator.d.ts.map +1 -0
  213. package/dist/src/init/codex-generator.js +67 -0
  214. package/dist/src/init/codex-generator.js.map +1 -0
  215. package/dist/src/init/copy-assets.d.ts.map +1 -1
  216. package/dist/src/init/copy-assets.js +4 -8
  217. package/dist/src/init/copy-assets.js.map +1 -1
  218. package/dist/src/init/executor.d.ts.map +1 -1
  219. package/dist/src/init/executor.js +9 -2
  220. package/dist/src/init/executor.js.map +1 -1
  221. package/dist/src/init/helpers-generator.js +1 -1
  222. package/dist/src/init/index.d.ts +1 -0
  223. package/dist/src/init/index.d.ts.map +1 -1
  224. package/dist/src/init/index.js +1 -0
  225. package/dist/src/init/index.js.map +1 -1
  226. package/dist/src/init/opencode-generator.js +2 -2
  227. package/dist/src/init/opencode-generator.js.map +1 -1
  228. package/dist/src/init/settings-generator.d.ts.map +1 -1
  229. package/dist/src/init/settings-generator.js +1 -2
  230. package/dist/src/init/settings-generator.js.map +1 -1
  231. package/dist/src/init/shared.d.ts.map +1 -1
  232. package/dist/src/init/shared.js +3 -7
  233. package/dist/src/init/shared.js.map +1 -1
  234. package/dist/src/init/statusline-generator.js +19 -19
  235. package/dist/src/init/types.d.ts +9 -10
  236. package/dist/src/init/types.d.ts.map +1 -1
  237. package/dist/src/init/types.js +8 -6
  238. package/dist/src/init/types.js.map +1 -1
  239. package/dist/src/init/upgrade.js +5 -5
  240. package/dist/src/init/upgrade.js.map +1 -1
  241. package/dist/src/init/write-capabilities.d.ts.map +1 -1
  242. package/dist/src/init/write-capabilities.js +36 -49
  243. package/dist/src/init/write-capabilities.js.map +1 -1
  244. package/dist/src/init/write-claude.js +1 -1
  245. package/dist/src/init/write-claude.js.map +1 -1
  246. package/dist/src/init/write-codex.d.ts +4 -0
  247. package/dist/src/init/write-codex.d.ts.map +1 -0
  248. package/dist/src/init/write-codex.js +57 -0
  249. package/dist/src/init/write-codex.js.map +1 -0
  250. package/dist/src/init/write-runtime-config.d.ts.map +1 -1
  251. package/dist/src/init/write-runtime-config.js +4 -5
  252. package/dist/src/init/write-runtime-config.js.map +1 -1
  253. package/dist/src/knowledge/eval/golden-set.js +15 -15
  254. package/dist/src/knowledge/eval/golden-set.js.map +1 -1
  255. package/dist/src/mcp-client.d.ts.map +1 -1
  256. package/dist/src/mcp-client.js +1 -2
  257. package/dist/src/mcp-client.js.map +1 -1
  258. package/dist/src/mcp-server.js +1 -1
  259. package/dist/src/mcp-server.js.map +1 -1
  260. package/dist/src/mcp-tools/agent-tools.d.ts +1 -1
  261. package/dist/src/mcp-tools/agent-tools.d.ts.map +1 -1
  262. package/dist/src/mcp-tools/agent-tools.js +3 -3
  263. package/dist/src/mcp-tools/agent-tools.js.map +1 -1
  264. package/dist/src/mcp-tools/autopilot-tools.d.ts +1 -1
  265. package/dist/src/mcp-tools/autopilot-tools.d.ts.map +1 -1
  266. package/dist/src/mcp-tools/autopilot-tools.js +4 -62
  267. package/dist/src/mcp-tools/autopilot-tools.js.map +1 -1
  268. package/dist/src/mcp-tools/guidance-tools.d.ts.map +1 -1
  269. package/dist/src/mcp-tools/guidance-tools.js +21 -31
  270. package/dist/src/mcp-tools/guidance-tools.js.map +1 -1
  271. package/dist/src/mcp-tools/hooks-intelligence.d.ts +0 -1
  272. package/dist/src/mcp-tools/hooks-intelligence.d.ts.map +1 -1
  273. package/dist/src/mcp-tools/hooks-intelligence.js +56 -103
  274. package/dist/src/mcp-tools/hooks-intelligence.js.map +1 -1
  275. package/dist/src/mcp-tools/hooks-routing.d.ts +1 -2
  276. package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
  277. package/dist/src/mcp-tools/hooks-routing.js +78 -152
  278. package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
  279. package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
  280. package/dist/src/mcp-tools/hooks-tools.js +2 -4
  281. package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
  282. package/dist/src/mcp-tools/index.d.ts +1 -2
  283. package/dist/src/mcp-tools/index.d.ts.map +1 -1
  284. package/dist/src/mcp-tools/index.js +1 -2
  285. package/dist/src/mcp-tools/index.js.map +1 -1
  286. package/dist/src/mcp-tools/memory-tools.js +10 -10
  287. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  288. package/dist/src/mcp-tools/monograph/query-tools.js +9 -9
  289. package/dist/src/mcp-tools/monograph/query-tools.js.map +1 -1
  290. package/dist/src/mcp-tools/monoswarm-tools.d.ts +17 -0
  291. package/dist/src/mcp-tools/monoswarm-tools.d.ts.map +1 -0
  292. package/dist/src/mcp-tools/monoswarm-tools.js +1153 -0
  293. package/dist/src/mcp-tools/monoswarm-tools.js.map +1 -0
  294. package/dist/src/mcp-tools/performance-tools.d.ts.map +1 -1
  295. package/dist/src/mcp-tools/performance-tools.js +32 -25
  296. package/dist/src/mcp-tools/performance-tools.js.map +1 -1
  297. package/dist/src/mcp-tools/system-tools.d.ts.map +1 -1
  298. package/dist/src/mcp-tools/system-tools.js +30 -13
  299. package/dist/src/mcp-tools/system-tools.js.map +1 -1
  300. package/dist/src/mcp-tools/transfer-tools.d.ts +8 -12
  301. package/dist/src/mcp-tools/transfer-tools.d.ts.map +1 -1
  302. package/dist/src/mcp-tools/transfer-tools.js +9 -13
  303. package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
  304. package/dist/src/memory/embedding-operations.d.ts.map +1 -1
  305. package/dist/src/memory/embedding-operations.js +0 -37
  306. package/dist/src/memory/embedding-operations.js.map +1 -1
  307. package/dist/src/memory/hnsw-operations.d.ts +14 -74
  308. package/dist/src/memory/hnsw-operations.d.ts.map +1 -1
  309. package/dist/src/memory/hnsw-operations.js +22 -262
  310. package/dist/src/memory/hnsw-operations.js.map +1 -1
  311. package/dist/src/memory/intelligence.d.ts +2 -2
  312. package/dist/src/memory/intelligence.d.ts.map +1 -1
  313. package/dist/src/memory/intelligence.js +8 -7
  314. package/dist/src/memory/intelligence.js.map +1 -1
  315. package/dist/src/memory/memory-bridge.d.ts +24 -24
  316. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  317. package/dist/src/memory/memory-bridge.js +33 -34
  318. package/dist/src/memory/memory-bridge.js.map +1 -1
  319. package/dist/src/memory/memory-crud.d.ts.map +1 -1
  320. package/dist/src/memory/memory-crud.js +0 -20
  321. package/dist/src/memory/memory-crud.js.map +1 -1
  322. package/dist/src/memory/memory-initializer.d.ts +2 -3
  323. package/dist/src/memory/memory-initializer.d.ts.map +1 -1
  324. package/dist/src/memory/memory-initializer.js +2 -3
  325. package/dist/src/memory/memory-initializer.js.map +1 -1
  326. package/dist/src/memory/memory-read.d.ts.map +1 -1
  327. package/dist/src/memory/memory-read.js +5 -14
  328. package/dist/src/memory/memory-read.js.map +1 -1
  329. package/dist/src/memory/sona-optimizer.d.ts +1 -1
  330. package/dist/src/memory/sona-optimizer.js +1 -1
  331. package/dist/src/monovector/model-outcomes.d.ts +25 -0
  332. package/dist/src/monovector/model-outcomes.d.ts.map +1 -0
  333. package/dist/src/monovector/model-outcomes.js +113 -0
  334. package/dist/src/monovector/model-outcomes.js.map +1 -0
  335. package/dist/src/orgrt/agent-runner.d.ts +8 -2
  336. package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
  337. package/dist/src/orgrt/agent-runner.js.map +1 -1
  338. package/dist/src/orgrt/antigravity-runner.d.ts +25 -2
  339. package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
  340. package/dist/src/orgrt/antigravity-runner.js +265 -124
  341. package/dist/src/orgrt/antigravity-runner.js.map +1 -1
  342. package/dist/src/orgrt/approvals.d.ts +16 -1
  343. package/dist/src/orgrt/approvals.d.ts.map +1 -1
  344. package/dist/src/orgrt/approvals.js +47 -2
  345. package/dist/src/orgrt/approvals.js.map +1 -1
  346. package/dist/src/orgrt/checkpoint-ops.d.ts +10 -16
  347. package/dist/src/orgrt/checkpoint-ops.d.ts.map +1 -1
  348. package/dist/src/orgrt/checkpoint-ops.js +12 -18
  349. package/dist/src/orgrt/checkpoint-ops.js.map +1 -1
  350. package/dist/src/orgrt/checkpoint.d.ts +12 -1
  351. package/dist/src/orgrt/checkpoint.d.ts.map +1 -1
  352. package/dist/src/orgrt/checkpoint.js +19 -3
  353. package/dist/src/orgrt/checkpoint.js.map +1 -1
  354. package/dist/src/orgrt/codex-runner.d.ts +26 -2
  355. package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
  356. package/dist/src/orgrt/codex-runner.js +359 -128
  357. package/dist/src/orgrt/codex-runner.js.map +1 -1
  358. package/dist/src/orgrt/copilot-runner.d.ts +14 -0
  359. package/dist/src/orgrt/copilot-runner.d.ts.map +1 -0
  360. package/dist/src/orgrt/copilot-runner.js +260 -0
  361. package/dist/src/orgrt/copilot-runner.js.map +1 -0
  362. package/dist/src/orgrt/cross-org.d.ts.map +1 -1
  363. package/dist/src/orgrt/cross-org.js +11 -0
  364. package/dist/src/orgrt/cross-org.js.map +1 -1
  365. package/dist/src/orgrt/crush-runner.d.ts +27 -0
  366. package/dist/src/orgrt/crush-runner.d.ts.map +1 -0
  367. package/dist/src/orgrt/crush-runner.js +263 -0
  368. package/dist/src/orgrt/crush-runner.js.map +1 -0
  369. package/dist/src/orgrt/daemon.d.ts +68 -16
  370. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  371. package/dist/src/orgrt/daemon.js +212 -29
  372. package/dist/src/orgrt/daemon.js.map +1 -1
  373. package/dist/src/orgrt/decisions.d.ts +1 -0
  374. package/dist/src/orgrt/decisions.d.ts.map +1 -1
  375. package/dist/src/orgrt/decisions.js +20 -0
  376. package/dist/src/orgrt/decisions.js.map +1 -1
  377. package/dist/src/orgrt/grok-runner.d.ts +18 -0
  378. package/dist/src/orgrt/grok-runner.d.ts.map +1 -0
  379. package/dist/src/orgrt/grok-runner.js +348 -0
  380. package/dist/src/orgrt/grok-runner.js.map +1 -0
  381. package/dist/src/orgrt/kimicode-runner.d.ts +53 -7
  382. package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
  383. package/dist/src/orgrt/kimicode-runner.js +246 -144
  384. package/dist/src/orgrt/kimicode-runner.js.map +1 -1
  385. package/dist/src/orgrt/mailbox.d.ts +26 -1
  386. package/dist/src/orgrt/mailbox.d.ts.map +1 -1
  387. package/dist/src/orgrt/mailbox.js +74 -2
  388. package/dist/src/orgrt/mailbox.js.map +1 -1
  389. package/dist/src/orgrt/pi-rpc-runner.d.ts +68 -0
  390. package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -0
  391. package/dist/src/orgrt/pi-rpc-runner.js +385 -0
  392. package/dist/src/orgrt/pi-rpc-runner.js.map +1 -0
  393. package/dist/src/orgrt/pi-runner.d.ts +16 -0
  394. package/dist/src/orgrt/pi-runner.d.ts.map +1 -0
  395. package/dist/src/orgrt/pi-runner.js +264 -0
  396. package/dist/src/orgrt/pi-runner.js.map +1 -0
  397. package/dist/src/orgrt/policy.d.ts +11 -0
  398. package/dist/src/orgrt/policy.d.ts.map +1 -1
  399. package/dist/src/orgrt/policy.js +25 -2
  400. package/dist/src/orgrt/policy.js.map +1 -1
  401. package/dist/src/orgrt/provider.d.ts +29 -1
  402. package/dist/src/orgrt/provider.d.ts.map +1 -1
  403. package/dist/src/orgrt/provider.js +62 -2
  404. package/dist/src/orgrt/provider.js.map +1 -1
  405. package/dist/src/orgrt/qwen-rpc-runner.d.ts +56 -0
  406. package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -0
  407. package/dist/src/orgrt/qwen-rpc-runner.js +346 -0
  408. package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -0
  409. package/dist/src/orgrt/qwen-runner.d.ts +18 -0
  410. package/dist/src/orgrt/qwen-runner.d.ts.map +1 -0
  411. package/dist/src/orgrt/qwen-runner.js +270 -0
  412. package/dist/src/orgrt/qwen-runner.js.map +1 -0
  413. package/dist/src/orgrt/scheduler-integration.d.ts.map +1 -1
  414. package/dist/src/orgrt/scheduler-integration.js +7 -0
  415. package/dist/src/orgrt/scheduler-integration.js.map +1 -1
  416. package/dist/src/orgrt/session.d.ts +29 -1
  417. package/dist/src/orgrt/session.d.ts.map +1 -1
  418. package/dist/src/orgrt/session.js +87 -18
  419. package/dist/src/orgrt/session.js.map +1 -1
  420. package/dist/src/orgrt/task-dag.d.ts +29 -1
  421. package/dist/src/orgrt/task-dag.d.ts.map +1 -1
  422. package/dist/src/orgrt/task-dag.js +54 -0
  423. package/dist/src/orgrt/task-dag.js.map +1 -1
  424. package/dist/src/orgrt/test-loop.d.ts.map +1 -1
  425. package/dist/src/orgrt/test-loop.js +86 -9
  426. package/dist/src/orgrt/test-loop.js.map +1 -1
  427. package/dist/src/orgrt/tool-fence.d.ts.map +1 -1
  428. package/dist/src/orgrt/tool-fence.js +15 -0
  429. package/dist/src/orgrt/tool-fence.js.map +1 -1
  430. package/dist/src/orgrt/types.d.ts +50 -1
  431. package/dist/src/orgrt/types.d.ts.map +1 -1
  432. package/dist/src/orgrt/types.js +47 -4
  433. package/dist/src/orgrt/types.js.map +1 -1
  434. package/dist/src/orgrt/usage-proxy.d.ts +32 -0
  435. package/dist/src/orgrt/usage-proxy.d.ts.map +1 -0
  436. package/dist/src/orgrt/usage-proxy.js +226 -0
  437. package/dist/src/orgrt/usage-proxy.js.map +1 -0
  438. package/dist/src/pricing/model-pricing.d.ts.map +1 -1
  439. package/dist/src/pricing/model-pricing.js +0 -4
  440. package/dist/src/pricing/model-pricing.js.map +1 -1
  441. package/dist/src/security/audit-log.d.ts +47 -0
  442. package/dist/src/security/audit-log.d.ts.map +1 -0
  443. package/dist/src/security/audit-log.js +84 -0
  444. package/dist/src/security/audit-log.js.map +1 -0
  445. package/dist/src/services/config-file-manager.d.ts +2 -2
  446. package/dist/src/services/config-file-manager.d.ts.map +1 -1
  447. package/dist/src/services/config-file-manager.js +6 -7
  448. package/dist/src/services/config-file-manager.js.map +1 -1
  449. package/dist/src/suggest.d.ts.map +1 -1
  450. package/dist/src/suggest.js +4 -5
  451. package/dist/src/suggest.js.map +1 -1
  452. package/dist/src/transfer/anonymization/index.d.ts +1 -1
  453. package/dist/src/transfer/anonymization/index.js +1 -1
  454. package/dist/src/types.d.ts +3 -3
  455. package/dist/src/types.d.ts.map +1 -1
  456. package/dist/src/ui/collector.mjs +9 -13
  457. package/dist/src/ui/dashboard.html +93 -10
  458. package/dist/src/ui/data/agent-avatars.html +0 -12
  459. package/dist/src/ui/data/agent-avatars.json +10 -26
  460. package/dist/src/ui/orgs.html +8 -1
  461. package/dist/src/ui/routes-org.mjs +85 -16
  462. package/dist/src/ui/server.mjs +50 -23
  463. package/dist/src/utils/json-file.d.ts +12 -0
  464. package/dist/src/utils/json-file.d.ts.map +1 -1
  465. package/dist/src/utils/json-file.js +11 -0
  466. package/dist/src/utils/json-file.js.map +1 -1
  467. package/dist/tsconfig.tsbuildinfo +1 -1
  468. package/package.json +5 -5
  469. package/.claude/agents/consensus/crdt-synchronizer.md +0 -977
  470. package/.claude/commands/hive-mind/README.md +0 -42
  471. package/.claude/commands/hive-mind/hive-mind-consensus.md +0 -72
  472. package/.claude/commands/hive-mind/hive-mind-init.md +0 -68
  473. package/.claude/commands/hive-mind/hive-mind-memory.md +0 -73
  474. package/.claude/commands/hive-mind/hive-mind-spawn.md +0 -82
  475. package/.claude/commands/hive-mind/hive-mind-status.md +0 -56
  476. package/.claude/commands/hive-mind/hive-mind-stop.md +0 -55
  477. package/.claude/commands/hive-mind/hive-mind.md +0 -87
  478. package/.claude/commands/swarm/README.md +0 -40
  479. package/.claude/commands/swarm/swarm.md +0 -79
  480. package/.claude/skills/hive-mind-advanced/SKILL.md +0 -347
  481. package/.claude/skills/swarm-advanced/SKILL.md +0 -936
  482. package/dist/src/commands/swarm.d.ts +0 -8
  483. package/dist/src/commands/swarm.d.ts.map +0 -1
  484. package/dist/src/commands/swarm.js.map +0 -1
  485. package/dist/src/mcp-tools/hive-mind-tools.d.ts +0 -17
  486. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +0 -1
  487. package/dist/src/mcp-tools/hive-mind-tools.js +0 -1239
  488. package/dist/src/mcp-tools/hive-mind-tools.js.map +0 -1
  489. package/dist/src/mcp-tools/swarm-tools.d.ts +0 -9
  490. package/dist/src/mcp-tools/swarm-tools.d.ts.map +0 -1
  491. package/dist/src/mcp-tools/swarm-tools.js +0 -411
  492. package/dist/src/mcp-tools/swarm-tools.js.map +0 -1
  493. package/dist/src/ui/data/avatars/crdt-synchronizer.svg +0 -53
  494. package/dist/src/ui/data/avatars/gossip-coordinator.svg +0 -54
  495. package/scripts/deploy-ipfs-node.sh +0 -153
  496. package/scripts/setup-ipfs-registry.md +0 -365
  497. /package/.claude/agents/{hive-mind → monoswarm}/scout-explorer.md +0 -0
  498. /package/.claude/agents/{hive-mind → monoswarm}/worker-specialist.md +0 -0
  499. /package/.claude/commands/{swarm → monoswarm}/analysis.md +0 -0
  500. /package/.claude/commands/{swarm → monoswarm}/development.md +0 -0
  501. /package/.claude/commands/{swarm → monoswarm}/examples.md +0 -0
  502. /package/.claude/commands/{swarm → monoswarm}/maintenance.md +0 -0
  503. /package/.claude/commands/{swarm → monoswarm}/optimization.md +0 -0
  504. /package/.claude/commands/{swarm → monoswarm}/testing.md +0 -0
  505. /package/dist/src/ui/data/avatars/{code-review-swarm.svg → monoswarm-code-review.svg} +0 -0
@@ -0,0 +1,263 @@
1
+ // packages/@monomind/cli/src/orgrt/crush-runner.ts
2
+ /**
3
+ * CrushAgentRunner — AgentRunner impl backed by the Crush CLI
4
+ * (`crush`, https://github.com/charmbracelet/crush).
5
+ *
6
+ * Architectural difference from the other subprocess runners: `crush run
7
+ * "<prompt>"` (per its public CLI docs) is a plain one-shot invocation —
8
+ * text response to stdout, no documented JSON output mode. On the FIRST turn
9
+ * this runner sends the system prompt + tool protocol; subsequent turns add
10
+ * `--continue` (resume the most-recently-used session — confirmed by
11
+ * cross-checking a second, independent public agentic-CLI wrapper's provider
12
+ * table, which lists `--session <id>` / `--continue` as crush's resume
13
+ * mechanism) instead of re-sending the full system prompt, so conversational
14
+ * context is NOT re-derived from scratch every turn the way the original
15
+ * (pre-cross-check) revision of this runner did.
16
+ *
17
+ * RESOLVED against a live v0.89.0 install (issue #180): crush's session
18
+ * store is a per-project SQLite DB at `<cwd>/.crush/crush.db` (created
19
+ * fresh per working directory unless `--data-dir` is overridden), so `crush
20
+ * session list` and `--continue`'s "most recently used session" are
21
+ * inherently scoped PER CWD, not global. Verified concretely: seeded two
22
+ * concurrent sessions from two different cwds with distinct secret words,
23
+ * then ran `crush run --continue` in each cwd — each one correctly recalled
24
+ * only its own secret, with zero cross-contamination. This runner never
25
+ * passes `--data-dir`, so the safe-by-default behavior applies as long as
26
+ * that stays true. The `--session <id>` capture-and-pass-explicitly
27
+ * alternative is therefore unnecessary.
28
+ *
29
+ * Also caught and fixed while validating live: this runner used to pass
30
+ * `--yolo` to `crush run`, which crush v0.89.0 REJECTS outright ("Unknown
31
+ * flag: --yolo") — `--yolo`/`-y` is a root-only flag for the interactive
32
+ * TUI and is not accepted by the `run` subcommand in any position. That
33
+ * made every single invocation fail with a non-zero exit. Confirmed live
34
+ * that it's also unnecessary: non-interactive `run` mode auto-approves tool
35
+ * calls without it (a file-write tool call completed with zero prompting).
36
+ *
37
+ * Usage accounting — crush's plain-text output carries no token counts, so
38
+ * this runner optionally routes crush's LLM traffic through a
39
+ * UsageProxyServer (usage-proxy.ts) by setting a base-URL env var before
40
+ * spawning and reading totals() after the turn. CONFIRMED BROKEN against a
41
+ * live install: crush ignores `OPENAI_BASE_URL` entirely (pointed it at an
42
+ * unreachable port with a real custom provider configured — crush still
43
+ * reached the real upstream, proving the env var is never read). crush's
44
+ * provider base_url is only configurable via a JSON config file
45
+ * (`~/.config/crush/crush.json`, `providers.<id>.base_url`, confirmed
46
+ * working live) — there is no runtime env-var override. `baseUrlEnvVar` as
47
+ * currently implemented does nothing for crush; it fails closed (usage
48
+ * stays at 0, turns aren't broken) but never actually collects usage. Real
49
+ * fix: write/merge a temp provider entry into crush's JSON config (or a
50
+ * `--data-dir`-scoped copy of it) pointed at the proxy before spawn, instead
51
+ * of setting an env var — not implemented here, since that requires
52
+ * deciding how to safely merge into a user's existing crush.json rather
53
+ * than just confirming a fact.
54
+ *
55
+ * Org tools — FENCE PROTOCOL: same approach as the other subprocess runners.
56
+ */
57
+ import { spawn } from 'node:child_process';
58
+ import { buildToolProtocol, parseToolCalls, executeToolCall, formatToolResults, MAX_TOOL_ROUNDS, TOOL_CALL_RE } from './tool-fence.js';
59
+ import { UsageProxyServer } from './usage-proxy.js';
60
+ const TURN_TIMEOUT_MS = 2 * 60 * 60 * 1000;
61
+ /** Distinct from TURN_TIMEOUT_MS: catches a hung first-run interactive prompt
62
+ * (trust/telemetry gate) fast instead of waiting out the full turn timeout.
63
+ * Fires only if the process has produced ZERO stdout by this point — any
64
+ * output at all disarms it, since a slow model response is not a hang. */
65
+ const STARTUP_GRACE_MS = 45_000;
66
+ /** Strip tool_call fences and normalize whitespace on crush's plain-text
67
+ * stdout. Exported for unit testing (crush-runner.test.ts). */
68
+ export function parseCrushOutput(stdout) {
69
+ const rawText = stdout.trim();
70
+ const text = rawText.replace(TOOL_CALL_RE, '').trim();
71
+ return { text, rawText };
72
+ }
73
+ export class CrushAgentRunner {
74
+ crushBin;
75
+ usageProxyOpts;
76
+ constructor(opts = {}) {
77
+ this.crushBin = opts.crushBin;
78
+ if (opts.usageProxy) {
79
+ this.usageProxyOpts = {
80
+ upstreamBaseUrl: opts.usageProxy.upstreamBaseUrl,
81
+ baseUrlEnvVar: opts.usageProxy.baseUrlEnvVar ?? 'OPENAI_BASE_URL',
82
+ };
83
+ }
84
+ }
85
+ async *run(args) {
86
+ const bin = this.crushBin || process.env.CRUSH_CLI_BIN || 'crush';
87
+ let proxy;
88
+ if (this.usageProxyOpts) {
89
+ proxy = new UsageProxyServer({ upstreamBaseUrl: this.usageProxyOpts.upstreamBaseUrl, apiStyle: 'openai' });
90
+ await proxy.start();
91
+ }
92
+ // Set once the first crush invocation completes — subsequent calls pass
93
+ // --continue (resume the most-recently-used session) instead of
94
+ // re-sending the full system prompt from scratch every turn.
95
+ let sessionStarted = false;
96
+ try {
97
+ for await (const p of args.prompt) {
98
+ const text = typeof p === 'string' ? p : (p?.message?.content ?? String(p ?? ''));
99
+ let nextPrompt = sessionStarted ? text : `${args.systemPrompt}${buildToolProtocol(args.tools)}\n\n---\n\n${text}`;
100
+ // Reset ONCE per mailbox prompt, not per tool-call round — totals()
101
+ // is read after the LAST round below, so resetting inside the round
102
+ // loop was discarding every round's usage except the final one.
103
+ proxy?.reset();
104
+ for (let round = 0; round <= MAX_TOOL_ROUNDS; round++) {
105
+ const outcome = await this.runTurn(bin, nextPrompt, args, proxy, sessionStarted);
106
+ sessionStarted = true;
107
+ if (outcome.hangSuspected) {
108
+ throw new Error(`CrushAgentRunner: crush produced no output within ${STARTUP_GRACE_MS / 1000}s and was killed. ` +
109
+ 'This usually means it is stuck on a first-run interactive prompt (trust/telemetry gate) ' +
110
+ 'that headless mode has no way to answer. Run `crush` once manually in a real terminal in ' +
111
+ `this project to accept any prompts, then retry.${outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''}`);
112
+ }
113
+ if (outcome.exitCode !== 0) {
114
+ throw new Error(`CrushAgentRunner: crush run failed (exit ${outcome.exitCode})` +
115
+ (outcome.timedOut ? ` — killed after exceeding the ${TURN_TIMEOUT_MS / 3_600_000}h turn timeout` : '') +
116
+ (outcome.stderrTail ? `\nstderr: ${outcome.stderrTail.slice(-500)}` : ''));
117
+ }
118
+ if (outcome.text)
119
+ yield { type: 'assistant', text: outcome.text };
120
+ const malformed = [];
121
+ const calls = parseToolCalls([outcome.rawText], (raw, err) => malformed.push(`[monomind] ignored malformed tool_call fence (${err}): ${raw.slice(0, 200)}`));
122
+ for (const note of malformed)
123
+ yield { type: 'assistant', text: note };
124
+ if (calls.length === 0) {
125
+ const totals = proxy?.totals();
126
+ yield {
127
+ type: 'result',
128
+ subtype: 'success',
129
+ input_tokens: totals?.inputTokens ?? 0,
130
+ output_tokens: totals?.outputTokens ?? 0,
131
+ };
132
+ break;
133
+ }
134
+ if (round === MAX_TOOL_ROUNDS) {
135
+ yield { type: 'assistant', text: `[monomind] tool-call round cap (${MAX_TOOL_ROUNDS}) reached — dropping ${calls.length} pending tool call(s)` };
136
+ const totals = proxy?.totals();
137
+ yield { type: 'result', subtype: 'success', input_tokens: totals?.inputTokens ?? 0, output_tokens: totals?.outputTokens ?? 0 };
138
+ break;
139
+ }
140
+ // sessionStarted is true by now (set right after the first
141
+ // runTurn call above) — the retry continues the same crush
142
+ // session via --continue instead of re-sending the system prompt.
143
+ const results = [];
144
+ for (const call of calls)
145
+ results.push(await executeToolCall(args.tools, call, args.canUseTool));
146
+ nextPrompt = formatToolResults(calls, results);
147
+ }
148
+ }
149
+ }
150
+ catch (err) {
151
+ if (err.code === 'ENOENT') {
152
+ throw new Error('CrushAgentRunner requires the Crush CLI (crush) on PATH. ' +
153
+ 'Install it per https://github.com/charmbracelet/crush, then configure a provider. ' +
154
+ 'Or unset the runtime to use Claude.');
155
+ }
156
+ throw err;
157
+ }
158
+ finally {
159
+ await proxy?.stop();
160
+ }
161
+ }
162
+ runTurn(bin, prompt, args, proxy, continueSession) {
163
+ return new Promise((resolve, reject) => {
164
+ // No --yolo here: confirmed against a live v0.89.0 install that `crush
165
+ // run` rejects it outright ("Unknown flag: --yolo") — --yolo/-y is a
166
+ // root-only flag for the interactive TUI, not propagated to `run`.
167
+ // Non-interactive `run` mode auto-approves tool calls without it
168
+ // (confirmed live: a file-write tool call completed with no prompt),
169
+ // so this isn't a missing-permission gap either — passing it just
170
+ // made every single invocation fail with a non-zero exit. See #180.
171
+ const cliArgs = ['run', prompt];
172
+ if (args.model)
173
+ cliArgs.push('--model', args.model);
174
+ if (continueSession)
175
+ cliArgs.push('--continue');
176
+ // CRUSH_DISABLE_PROVIDER_AUTO_UPDATE: confirmed via crush's own docs —
177
+ // suppresses a first-run/periodic provider-list update check that would
178
+ // otherwise add an unpredictable network round-trip to a headless turn.
179
+ const env = {
180
+ ...process.env,
181
+ CRUSH_DISABLE_PROVIDER_AUTO_UPDATE: '1',
182
+ ...args.env,
183
+ };
184
+ if (proxy && this.usageProxyOpts)
185
+ env[this.usageProxyOpts.baseUrlEnvVar] = proxy.url();
186
+ const child = spawn(bin, cliArgs, { cwd: args.cwd, env, stdio: ['ignore', 'pipe', 'pipe'] });
187
+ let stderrTail = '';
188
+ child.stderr?.on('data', (c) => { stderrTail = (stderrTail + c.toString()).slice(-4000); });
189
+ let sawOutput = false;
190
+ let timedOut = false;
191
+ let hangSuspected = false;
192
+ const KILL_GRACE_MS = 5000;
193
+ let killTimer;
194
+ const timer = setTimeout(() => {
195
+ timedOut = true;
196
+ child.kill('SIGTERM');
197
+ killTimer = setTimeout(() => { try {
198
+ child.kill('SIGKILL');
199
+ }
200
+ catch { /* already gone */ } }, KILL_GRACE_MS);
201
+ killTimer.unref?.();
202
+ }, TURN_TIMEOUT_MS);
203
+ // See STARTUP_GRACE_MS — disarmed by the first stdout chunk below.
204
+ let hangTimer = setTimeout(() => {
205
+ hangSuspected = true;
206
+ child.kill('SIGTERM');
207
+ killTimer = setTimeout(() => { try {
208
+ child.kill('SIGKILL');
209
+ }
210
+ catch { /* already gone */ } }, KILL_GRACE_MS);
211
+ killTimer.unref?.();
212
+ }, STARTUP_GRACE_MS);
213
+ const exitPromise = new Promise((res, rej) => {
214
+ child.on('error', rej);
215
+ child.on('close', (code) => res(code ?? 1));
216
+ });
217
+ exitPromise.catch(() => { });
218
+ const readStdout = (async () => {
219
+ let stdout = '';
220
+ for await (const chunk of child.stdout) {
221
+ if (!sawOutput) {
222
+ sawOutput = true;
223
+ if (hangTimer) {
224
+ clearTimeout(hangTimer);
225
+ hangTimer = undefined;
226
+ }
227
+ }
228
+ stdout += chunk.toString();
229
+ }
230
+ return stdout;
231
+ })();
232
+ // Timer cleanup lives in a top-level .finally() (not nested inside a
233
+ // success-path .then()) so it runs on EITHER path — a stdout stream
234
+ // error would otherwise skip straight to reject() and leave the
235
+ // TURN_TIMEOUT_MS/hangTimer/killTimer timers running past the
236
+ // process's actual lifetime.
237
+ Promise.all([readStdout, exitPromise])
238
+ .then(([stdout, exitCode]) => {
239
+ const parsed = parseCrushOutput(stdout);
240
+ resolve({ text: parsed.text, rawText: parsed.rawText, exitCode, stderrTail, timedOut, hangSuspected });
241
+ }, (err) => {
242
+ // A stdout stream error (the reject path) means the process is
243
+ // still ALIVE and unmanaged — none of the timeout/hang timers
244
+ // would have fired to kill it. Without this, that error would
245
+ // orphan the child. child.kill() on an already-dead process is a
246
+ // documented no-op, so this is safe on every path.
247
+ try {
248
+ child.kill('SIGTERM');
249
+ }
250
+ catch { /* already gone */ }
251
+ reject(err);
252
+ })
253
+ .finally(() => {
254
+ clearTimeout(timer);
255
+ if (hangTimer)
256
+ clearTimeout(hangTimer);
257
+ if (killTimer)
258
+ clearTimeout(killTimer);
259
+ });
260
+ });
261
+ }
262
+ }
263
+ //# sourceMappingURL=crush-runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crush-runner.js","sourceRoot":"","sources":["../../../src/orgrt/crush-runner.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { OrgBus } from './bus.js';
2
2
  import { PolicyEngine } from './policy.js';
3
3
  import { Mailbox } from './mailbox.js';
4
- import { type OrgDef, type OrgRole, type BusEvent, type DecisionGate } from './types.js';
4
+ import { type OrgDef, type OrgRole, type BusEvent, type DecisionGate, type ProviderConfig } from './types.js';
5
5
  import { TaskDag } from './task-dag.js';
6
6
  import type { query } from '@anthropic-ai/claude-agent-sdk';
7
7
  import type { AgentRunner } from './agent-runner.js';
@@ -14,18 +14,62 @@ import { type RoleFence } from './fence.js';
14
14
  * undefined for the default path keeps Claude/Antigravity orgs byte-for-byte
15
15
  * unchanged. Callers pass `role.runtime ?? def.runtime` as `orgRuntime`
16
16
  * (see resolveRoleRunner). */
17
- export type RuntimeKind = 'claude' | 'kimicode' | 'opencode' | 'vercel' | 'codex' | 'antigravity';
17
+ export type RuntimeKind = 'claude' | 'kimicode' | 'opencode' | 'vercel' | 'codex' | 'antigravity' | 'grok' | 'qwen' | 'crush' | 'copilot' | 'pi'
18
+ /** Opt-in alternate to 'pi': keeps the pi subprocess alive for the whole
19
+ * mailbox session (--mode rpc) instead of spawning fresh per turn — see
20
+ * pi-rpc-runner.ts's header for the protocol source (live-verified
21
+ * against pi v0.73.1, issue #179). Prefer plain 'pi' unless you
22
+ * specifically want session-lifetime context continuity. */
23
+ | 'pi-rpc'
24
+ /** Opt-in alternate to 'qwen': keeps the qwen subprocess alive for the
25
+ * whole mailbox session (--input-format/--output-format stream-json)
26
+ * instead of spawning fresh per turn — see qwen-rpc-runner.ts's header
27
+ * for the protocol source (live-verified against qwen-code v0.21.13,
28
+ * issue #182). One gap not independently re-verified: whether `result`
29
+ * fires exactly once per turn even when qwen runs several of its own
30
+ * native tools in sequence first (inferred by symmetry with the non-RPC
31
+ * QwenAgentRunner, not separately live-tested for this runner). Prefer
32
+ * plain 'qwen' unless you specifically want session-lifetime context
33
+ * continuity. */
34
+ | 'qwen-rpc';
18
35
  export type ProviderKind = 'subscription' | 'api-key' | 'base-url' | 'bedrock' | 'vertex' | 'gemini' | 'openai' | 'vercel-api-key' | 'codex' | 'antigravity';
19
- export declare function resolveRunner(orgRuntime?: RuntimeKind, providerKind?: ProviderKind): AgentRunner | undefined;
36
+ export declare function resolveRunner(orgRuntime?: RuntimeKind, providerKind?: ProviderKind, provider?: ProviderConfig): AgentRunner | undefined;
20
37
  /** Per-session variant: a role's own `runtime` field wins over the org-level
21
38
  * one (and the env var) — including `role.runtime === 'claude'`, which forces
22
39
  * the default Claude path even when the org/env select another runtime.
23
40
  * Roles without a `runtime` inherit the org-level resolution unchanged.
24
41
  * If no explicit runtime is set, auto-resolve from the provider kind. */
25
- export declare function resolveRoleRunner(roleRuntime?: RuntimeKind, orgRuntime?: RuntimeKind, roleProviderKind?: ProviderKind, orgProviderKind?: ProviderKind): AgentRunner | undefined;
42
+ export declare function resolveRoleRunner(roleRuntime?: RuntimeKind, orgRuntime?: RuntimeKind, roleProviderKind?: ProviderKind, orgProviderKind?: ProviderKind, roleProvider?: ProviderConfig): AgentRunner | undefined;
26
43
  /** Per-role token budget: a role's own `budget_tokens` wins; otherwise the
27
44
  * even split of run_config.budget_tokens across all roles. */
28
45
  export declare function roleTokenBudget(role: OrgRole, def: OrgDef): number;
46
+ /** Idle watchdog's per-tick recovery check: given the previous nudge timestamp,
47
+ * the cumulative nudge count, and the timestamp of the most recent real tool
48
+ * call, returns the nudge count that should carry forward now that fresh
49
+ * activity means the org is no longer idle.
50
+ *
51
+ * `nudgedAt !== 0` means we're recovering from an outstanding nudge. Resetting
52
+ * the counter here means it only ever tracks UNRESOLVED idle spells in a row,
53
+ * not a lifetime total — a long-running org that goes idle and recovers any
54
+ * number of times (e.g. periodic checkpoints on a slow background task) is
55
+ * never punished for having had several separate, healthy idle spells over
56
+ * its lifetime. Before this existed, `nudges` only ever incremented, so a run
57
+ * that answered every single nudge with real work still hit the "org idle
58
+ * again after 3 nudges" cap and got force-stopped on its 4th idle spell —
59
+ * observed live killing an in-progress 24h soak test under 90 minutes in.
60
+ *
61
+ * But "recovering" must mean genuine forward progress, not just any bus
62
+ * event — a bare, content-free reply to the nudge (a boss that answers with
63
+ * "✓ Complete" and calls no tools at all) still updates lastActivity, so the
64
+ * org isn't flagged as silent, but it accomplishes nothing: nobody outside
65
+ * the boss's own turn ever sees it, since role coordination only happens via
66
+ * tool calls (org_send, org_task, ...). Requiring `lastToolActivity >=
67
+ * nudgedAt` — a real tool call happened AFTER this nudge was sent — closes
68
+ * that gap: observed live, a boss stuck responding to four consecutive
69
+ * 10-minute nudges with one-line acknowledgments and zero tool calls looped
70
+ * indefinitely making no progress, because every trivial reply reset the cap
71
+ * that was supposed to catch exactly this. */
72
+ export declare function resolvedIdleNudgeCount(nudgedAt: number, nudges: number, lastToolActivity: number): number;
29
73
  /** Bounded ring buffer for agent terminal scrollback. */
30
74
  export declare class ScrollbackBuffer {
31
75
  private maxLines;
@@ -178,17 +222,31 @@ export declare class OrgDaemon {
178
222
  hasOrgDef(name: string): boolean;
179
223
  /** @param opts.drainMs how long to let in-flight agent sessions finish before
180
224
  * reaping. Defaults to the short abort bound; the planned-completion path
181
- * passes a far longer window (see COMPLETE_DRAIN_MS). */
225
+ * passes a far longer window (see COMPLETE_DRAIN_MS).
226
+ * @param opts.closedBy #206: tags WHY the run ended, persisted into
227
+ * runtime.json so `org run` can tell a clean, goal-driven end
228
+ * (closedBy: 'org-complete') from every other kind of stop (idle
229
+ * watchdog, boss-restart-exhausted, manual `org stop`) and exit non-zero
230
+ * for the latter. Only the org_complete auto-stop path passes this. */
182
231
  stopOrg(name: string, opts?: {
183
232
  drainMs?: number;
233
+ closedBy?: string;
184
234
  }): Promise<void>;
185
235
  private finishStop;
186
236
  stopAll(): Promise<void>;
187
- /** @internal */
188
- persistState(name: string, status: string, run: string, org?: RunningOrg, checkpointOverride?: OrgCheckpoint | null): void;
237
+ /** @internal
238
+ * @param closedBy #206: why the run ended — 'org-complete' for a clean,
239
+ * goal-driven end (the only value any caller currently passes); absent for
240
+ * every other stop (idle watchdog, boss-restart-exhausted, manual `org
241
+ * stop`). Mirrors persistCrashStateAll()'s existing closedBy: 'crash-handler'
242
+ * for the process-crash path, which org.ts already reads. */
243
+ persistState(name: string, status: string, run: string, org?: RunningOrg, checkpointOverride?: OrgCheckpoint | null, closedBy?: string): void;
189
244
  /** Mark every currently-running org as crashed in runtime.json.
190
- * Called from process-level crash handlers — must be synchronous and best-effort. */
191
- persistCrashStateAll(): void;
245
+ * Called from process-level crash handlers — must be synchronous and best-effort.
246
+ * @param error the uncaught error/rejection reason, if known — without
247
+ * this, `runOutcomeResult` (org.ts)'s "crashed: <error>" message always
248
+ * read "crashed: unknown error" regardless of what actually happened. */
249
+ persistCrashStateAll(error?: string): void;
192
250
  private heartbeatPath;
193
251
  /** Write a heartbeat file so `org status` can distinguish "daemon alive" from
194
252
  * "daemon gone" even when runtime.json still says running. */
@@ -222,6 +280,7 @@ export declare class OrgDaemon {
222
280
  private dagSplitTask;
223
281
  private dagMergeTask;
224
282
  private dagCancelTask;
283
+ private dagBlockTask;
225
284
  private dagPlanGraph;
226
285
  recordDecision(org: string, role: string, decision: {
227
286
  type: 'tool' | 'handoff' | 'approval' | 'routing';
@@ -261,12 +320,5 @@ export declare class OrgDaemon {
261
320
  private storeRunMemory;
262
321
  replayFrom(name: string, run: string): Promise<RunningOrg | null>;
263
322
  resumeOrg(name: string): Promise<RunningOrg | null>;
264
- branchCheckpoint(name: string, run: string, branchName: string): {
265
- ok: true;
266
- branchRun: string;
267
- } | {
268
- ok: false;
269
- error: string;
270
- };
271
323
  }
272
324
  //# sourceMappingURL=daemon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../../src/orgrt/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../../src/orgrt/daemon.ts"],"names":[],"mappings":"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"}