@monoes/monomindcli 1.11.11 → 1.11.12

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 (316) hide show
  1. package/.claude/commands/mastermind/idea.md +1 -1
  2. package/.claude/commands/mastermind/master.md +1 -1
  3. package/.claude/skills/mastermind/_protocol.md +4 -4
  4. package/.claude/skills/mastermind/autodev.md +1 -1
  5. package/.claude/skills/mastermind/build.md +3 -3
  6. package/.claude/skills/mastermind/content.md +3 -3
  7. package/.claude/skills/mastermind/createorg.md +2 -2
  8. package/.claude/skills/mastermind/finance.md +3 -3
  9. package/.claude/skills/mastermind/marketing.md +3 -3
  10. package/.claude/skills/mastermind/ops.md +3 -3
  11. package/.claude/skills/mastermind/release.md +3 -3
  12. package/.claude/skills/mastermind/research.md +3 -3
  13. package/.claude/skills/mastermind/review.md +3 -3
  14. package/.claude/skills/mastermind/sales.md +3 -3
  15. package/dist/src/init/statusline-generator.js +3 -3
  16. package/dist/src/observability/replay-reader.d.ts +1 -1
  17. package/dist/src/observability/replay-reader.d.ts.map +1 -1
  18. package/dist/src/update/checker.d.ts.map +1 -1
  19. package/dist/src/update/checker.js +24 -7
  20. package/dist/src/update/checker.js.map +1 -1
  21. package/dist/src/update/index.d.ts.map +1 -1
  22. package/dist/src/update/index.js +3 -6
  23. package/dist/src/update/index.js.map +1 -1
  24. package/dist/tsconfig.tsbuildinfo +1 -1
  25. package/package.json +1 -1
  26. package/dist/src/agents/halt-signal.d.ts +0 -25
  27. package/dist/src/agents/halt-signal.d.ts.map +0 -1
  28. package/dist/src/agents/halt-signal.js +0 -76
  29. package/dist/src/agents/halt-signal.js.map +0 -1
  30. package/dist/src/agents/index.d.ts +0 -18
  31. package/dist/src/agents/index.d.ts.map +0 -1
  32. package/dist/src/agents/index.js +0 -13
  33. package/dist/src/agents/index.js.map +0 -1
  34. package/dist/src/agents/managed-agent.d.ts +0 -41
  35. package/dist/src/agents/managed-agent.d.ts.map +0 -1
  36. package/dist/src/agents/managed-agent.js +0 -69
  37. package/dist/src/agents/managed-agent.js.map +0 -1
  38. package/dist/src/agents/prompt-experiment.d.ts +0 -23
  39. package/dist/src/agents/prompt-experiment.d.ts.map +0 -1
  40. package/dist/src/agents/prompt-experiment.js +0 -49
  41. package/dist/src/agents/prompt-experiment.js.map +0 -1
  42. package/dist/src/agents/prompt-version-manager.d.ts +0 -22
  43. package/dist/src/agents/prompt-version-manager.d.ts.map +0 -1
  44. package/dist/src/agents/prompt-version-manager.js +0 -80
  45. package/dist/src/agents/prompt-version-manager.js.map +0 -1
  46. package/dist/src/agents/registry-query.d.ts +0 -71
  47. package/dist/src/agents/registry-query.d.ts.map +0 -1
  48. package/dist/src/agents/registry-query.js +0 -125
  49. package/dist/src/agents/registry-query.js.map +0 -1
  50. package/dist/src/agents/score-decay.d.ts +0 -19
  51. package/dist/src/agents/score-decay.d.ts.map +0 -1
  52. package/dist/src/agents/score-decay.js +0 -22
  53. package/dist/src/agents/score-decay.js.map +0 -1
  54. package/dist/src/agents/shared-instructions-loader.d.ts +0 -13
  55. package/dist/src/agents/shared-instructions-loader.d.ts.map +0 -1
  56. package/dist/src/agents/shared-instructions-loader.js +0 -40
  57. package/dist/src/agents/shared-instructions-loader.js.map +0 -1
  58. package/dist/src/agents/specialization-scorer.d.ts +0 -54
  59. package/dist/src/agents/specialization-scorer.d.ts.map +0 -1
  60. package/dist/src/agents/specialization-scorer.js +0 -212
  61. package/dist/src/agents/specialization-scorer.js.map +0 -1
  62. package/dist/src/agents/termination-watcher.d.ts +0 -30
  63. package/dist/src/agents/termination-watcher.d.ts.map +0 -1
  64. package/dist/src/agents/termination-watcher.js +0 -84
  65. package/dist/src/agents/termination-watcher.js.map +0 -1
  66. package/dist/src/agents/trigger-index.d.ts +0 -20
  67. package/dist/src/agents/trigger-index.d.ts.map +0 -1
  68. package/dist/src/agents/trigger-index.js +0 -38
  69. package/dist/src/agents/trigger-index.js.map +0 -1
  70. package/dist/src/agents/trigger-scanner.d.ts +0 -64
  71. package/dist/src/agents/trigger-scanner.d.ts.map +0 -1
  72. package/dist/src/agents/trigger-scanner.js +0 -308
  73. package/dist/src/agents/trigger-scanner.js.map +0 -1
  74. package/dist/src/agents/version-diff.d.ts +0 -18
  75. package/dist/src/agents/version-diff.d.ts.map +0 -1
  76. package/dist/src/agents/version-diff.js +0 -64
  77. package/dist/src/agents/version-diff.js.map +0 -1
  78. package/dist/src/agents/version-store.d.ts +0 -60
  79. package/dist/src/agents/version-store.d.ts.map +0 -1
  80. package/dist/src/agents/version-store.js +0 -235
  81. package/dist/src/agents/version-store.js.map +0 -1
  82. package/dist/src/benchmarks/pretrain/index.d.ts +0 -45
  83. package/dist/src/benchmarks/pretrain/index.d.ts.map +0 -1
  84. package/dist/src/benchmarks/pretrain/index.js +0 -404
  85. package/dist/src/benchmarks/pretrain/index.js.map +0 -1
  86. package/dist/src/commands/agent-wasm.d.ts +0 -14
  87. package/dist/src/commands/agent-wasm.d.ts.map +0 -1
  88. package/dist/src/commands/agent-wasm.js +0 -333
  89. package/dist/src/commands/agent-wasm.js.map +0 -1
  90. package/dist/src/commands/embeddings.d.ts.map +0 -1
  91. package/dist/src/commands/embeddings.js.map +0 -1
  92. package/dist/src/commands/ui.js +0 -68
  93. package/dist/src/consensus/index.d.ts +0 -7
  94. package/dist/src/consensus/index.d.ts.map +0 -1
  95. package/dist/src/consensus/index.js +0 -6
  96. package/dist/src/consensus/index.js.map +0 -1
  97. package/dist/src/context/context-provider.d.ts +0 -44
  98. package/dist/src/context/context-provider.d.ts.map +0 -1
  99. package/dist/src/context/context-provider.js +0 -25
  100. package/dist/src/context/context-provider.js.map +0 -1
  101. package/dist/src/context/git-state-provider.d.ts +0 -12
  102. package/dist/src/context/git-state-provider.d.ts.map +0 -1
  103. package/dist/src/context/git-state-provider.js +0 -34
  104. package/dist/src/context/git-state-provider.js.map +0 -1
  105. package/dist/src/context/index.d.ts +0 -12
  106. package/dist/src/context/index.d.ts.map +0 -1
  107. package/dist/src/context/index.js +0 -12
  108. package/dist/src/context/index.js.map +0 -1
  109. package/dist/src/context/project-conventions-provider.d.ts +0 -15
  110. package/dist/src/context/project-conventions-provider.d.ts.map +0 -1
  111. package/dist/src/context/project-conventions-provider.js +0 -19
  112. package/dist/src/context/project-conventions-provider.js.map +0 -1
  113. package/dist/src/context/prompt-assembler.d.ts +0 -26
  114. package/dist/src/context/prompt-assembler.d.ts.map +0 -1
  115. package/dist/src/context/prompt-assembler.js +0 -93
  116. package/dist/src/context/prompt-assembler.js.map +0 -1
  117. package/dist/src/context/task-history-provider.d.ts +0 -24
  118. package/dist/src/context/task-history-provider.d.ts.map +0 -1
  119. package/dist/src/context/task-history-provider.js +0 -32
  120. package/dist/src/context/task-history-provider.js.map +0 -1
  121. package/dist/src/context/user-preferences-provider.d.ts +0 -14
  122. package/dist/src/context/user-preferences-provider.d.ts.map +0 -1
  123. package/dist/src/context/user-preferences-provider.js +0 -27
  124. package/dist/src/context/user-preferences-provider.js.map +0 -1
  125. package/dist/src/dlq/dlq-reader.d.ts +0 -31
  126. package/dist/src/dlq/dlq-reader.d.ts.map +0 -1
  127. package/dist/src/dlq/dlq-reader.js +0 -81
  128. package/dist/src/dlq/dlq-reader.js.map +0 -1
  129. package/dist/src/dlq/dlq-writer.d.ts +0 -24
  130. package/dist/src/dlq/dlq-writer.d.ts.map +0 -1
  131. package/dist/src/dlq/dlq-writer.js +0 -65
  132. package/dist/src/dlq/dlq-writer.js.map +0 -1
  133. package/dist/src/dlq/index.d.ts +0 -10
  134. package/dist/src/dlq/index.d.ts.map +0 -1
  135. package/dist/src/dlq/index.js +0 -7
  136. package/dist/src/dlq/index.js.map +0 -1
  137. package/dist/src/eval/dataset-manager.d.ts +0 -33
  138. package/dist/src/eval/dataset-manager.d.ts.map +0 -1
  139. package/dist/src/eval/dataset-manager.js +0 -107
  140. package/dist/src/eval/dataset-manager.js.map +0 -1
  141. package/dist/src/eval/dataset-runner.d.ts +0 -23
  142. package/dist/src/eval/dataset-runner.d.ts.map +0 -1
  143. package/dist/src/eval/dataset-runner.js +0 -59
  144. package/dist/src/eval/dataset-runner.js.map +0 -1
  145. package/dist/src/eval/index.d.ts +0 -10
  146. package/dist/src/eval/index.d.ts.map +0 -1
  147. package/dist/src/eval/index.js +0 -7
  148. package/dist/src/eval/index.js.map +0 -1
  149. package/dist/src/eval/trace-collector.d.ts +0 -40
  150. package/dist/src/eval/trace-collector.d.ts.map +0 -1
  151. package/dist/src/eval/trace-collector.js +0 -102
  152. package/dist/src/eval/trace-collector.js.map +0 -1
  153. package/dist/src/graph/enrich.mjs +0 -362
  154. package/dist/src/infrastructure/in-memory-repositories.d.ts +0 -68
  155. package/dist/src/infrastructure/in-memory-repositories.d.ts.map +0 -1
  156. package/dist/src/infrastructure/in-memory-repositories.js +0 -264
  157. package/dist/src/infrastructure/in-memory-repositories.js.map +0 -1
  158. package/dist/src/interactive/interrupt.d.ts +0 -22
  159. package/dist/src/interactive/interrupt.d.ts.map +0 -1
  160. package/dist/src/interactive/interrupt.js +0 -71
  161. package/dist/src/interactive/interrupt.js.map +0 -1
  162. package/dist/src/mcp/deprecation-injector.d.ts +0 -25
  163. package/dist/src/mcp/deprecation-injector.d.ts.map +0 -1
  164. package/dist/src/mcp/deprecation-injector.js +0 -48
  165. package/dist/src/mcp/deprecation-injector.js.map +0 -1
  166. package/dist/src/mcp/tool-registry.d.ts +0 -61
  167. package/dist/src/mcp/tool-registry.d.ts.map +0 -1
  168. package/dist/src/mcp/tool-registry.js +0 -246
  169. package/dist/src/mcp/tool-registry.js.map +0 -1
  170. package/dist/src/mcp-tools/wasm-agent-tools.d.ts +0 -9
  171. package/dist/src/mcp-tools/wasm-agent-tools.d.ts.map +0 -1
  172. package/dist/src/mcp-tools/wasm-agent-tools.js +0 -230
  173. package/dist/src/mcp-tools/wasm-agent-tools.js.map +0 -1
  174. package/dist/src/model/complexity-scorer.d.ts +0 -21
  175. package/dist/src/model/complexity-scorer.d.ts.map +0 -1
  176. package/dist/src/model/complexity-scorer.js +0 -106
  177. package/dist/src/model/complexity-scorer.js.map +0 -1
  178. package/dist/src/model/index.d.ts +0 -4
  179. package/dist/src/model/index.d.ts.map +0 -1
  180. package/dist/src/model/index.js +0 -4
  181. package/dist/src/model/index.js.map +0 -1
  182. package/dist/src/model/model-settings.d.ts +0 -22
  183. package/dist/src/model/model-settings.d.ts.map +0 -1
  184. package/dist/src/model/model-settings.js +0 -33
  185. package/dist/src/model/model-settings.js.map +0 -1
  186. package/dist/src/model/model-tier-resolver.d.ts +0 -24
  187. package/dist/src/model/model-tier-resolver.d.ts.map +0 -1
  188. package/dist/src/model/model-tier-resolver.js +0 -65
  189. package/dist/src/model/model-tier-resolver.js.map +0 -1
  190. package/dist/src/monovector/capabilities.d.ts +0 -34
  191. package/dist/src/monovector/capabilities.d.ts.map +0 -1
  192. package/dist/src/monovector/capabilities.js +0 -37
  193. package/dist/src/monovector/capabilities.js.map +0 -1
  194. package/dist/src/orchestration/index.d.ts +0 -7
  195. package/dist/src/orchestration/index.d.ts.map +0 -1
  196. package/dist/src/orchestration/index.js +0 -6
  197. package/dist/src/orchestration/index.js.map +0 -1
  198. package/dist/src/orchestration/mode-dispatcher.d.ts +0 -11
  199. package/dist/src/orchestration/mode-dispatcher.d.ts.map +0 -1
  200. package/dist/src/orchestration/mode-dispatcher.js +0 -31
  201. package/dist/src/orchestration/mode-dispatcher.js.map +0 -1
  202. package/dist/src/orchestration/routing-modes.d.ts +0 -68
  203. package/dist/src/orchestration/routing-modes.d.ts.map +0 -1
  204. package/dist/src/orchestration/routing-modes.js +0 -180
  205. package/dist/src/orchestration/routing-modes.js.map +0 -1
  206. package/dist/src/plugins/tests/demo-plugin-store.d.ts +0 -7
  207. package/dist/src/plugins/tests/demo-plugin-store.d.ts.map +0 -1
  208. package/dist/src/plugins/tests/demo-plugin-store.js +0 -126
  209. package/dist/src/plugins/tests/demo-plugin-store.js.map +0 -1
  210. package/dist/src/plugins/tests/standalone-test.d.ts +0 -12
  211. package/dist/src/plugins/tests/standalone-test.d.ts.map +0 -1
  212. package/dist/src/plugins/tests/standalone-test.js +0 -188
  213. package/dist/src/plugins/tests/standalone-test.js.map +0 -1
  214. package/dist/src/plugins/tests/test-plugin-store.d.ts +0 -7
  215. package/dist/src/plugins/tests/test-plugin-store.d.ts.map +0 -1
  216. package/dist/src/plugins/tests/test-plugin-store.js +0 -206
  217. package/dist/src/plugins/tests/test-plugin-store.js.map +0 -1
  218. package/dist/src/runtime/headless.d.ts +0 -60
  219. package/dist/src/runtime/headless.d.ts.map +0 -1
  220. package/dist/src/runtime/headless.js +0 -284
  221. package/dist/src/runtime/headless.js.map +0 -1
  222. package/dist/src/services/agentic-flow-bridge.d.ts +0 -50
  223. package/dist/src/services/agentic-flow-bridge.d.ts.map +0 -1
  224. package/dist/src/services/agentic-flow-bridge.js +0 -95
  225. package/dist/src/services/agentic-flow-bridge.js.map +0 -1
  226. package/dist/src/services/container-worker-pool.d.ts +0 -197
  227. package/dist/src/services/container-worker-pool.d.ts.map +0 -1
  228. package/dist/src/services/container-worker-pool.js +0 -623
  229. package/dist/src/services/container-worker-pool.js.map +0 -1
  230. package/dist/src/services/index.d.ts +0 -13
  231. package/dist/src/services/index.d.ts.map +0 -1
  232. package/dist/src/services/index.js +0 -11
  233. package/dist/src/services/index.js.map +0 -1
  234. package/dist/src/services/worker-queue.d.ts +0 -201
  235. package/dist/src/services/worker-queue.d.ts.map +0 -1
  236. package/dist/src/services/worker-queue.js +0 -594
  237. package/dist/src/services/worker-queue.js.map +0 -1
  238. package/dist/src/swarm/communication-graph.d.ts +0 -25
  239. package/dist/src/swarm/communication-graph.d.ts.map +0 -1
  240. package/dist/src/swarm/communication-graph.js +0 -77
  241. package/dist/src/swarm/communication-graph.js.map +0 -1
  242. package/dist/src/swarm/flow-enforcer.d.ts +0 -31
  243. package/dist/src/swarm/flow-enforcer.d.ts.map +0 -1
  244. package/dist/src/swarm/flow-enforcer.js +0 -61
  245. package/dist/src/swarm/flow-enforcer.js.map +0 -1
  246. package/dist/src/swarm/flow-visualizer.d.ts +0 -19
  247. package/dist/src/swarm/flow-visualizer.d.ts.map +0 -1
  248. package/dist/src/swarm/flow-visualizer.js +0 -68
  249. package/dist/src/swarm/flow-visualizer.js.map +0 -1
  250. package/dist/src/transfer/deploy-seraphine.d.ts +0 -13
  251. package/dist/src/transfer/deploy-seraphine.d.ts.map +0 -1
  252. package/dist/src/transfer/deploy-seraphine.js +0 -205
  253. package/dist/src/transfer/deploy-seraphine.js.map +0 -1
  254. package/dist/src/transfer/store/tests/standalone-test.d.ts +0 -12
  255. package/dist/src/transfer/store/tests/standalone-test.d.ts.map +0 -1
  256. package/dist/src/transfer/store/tests/standalone-test.js +0 -190
  257. package/dist/src/transfer/store/tests/standalone-test.js.map +0 -1
  258. package/dist/src/transfer/test-seraphine.d.ts +0 -6
  259. package/dist/src/transfer/test-seraphine.d.ts.map +0 -1
  260. package/dist/src/transfer/test-seraphine.js +0 -105
  261. package/dist/src/transfer/test-seraphine.js.map +0 -1
  262. package/dist/src/transfer/tests/test-store.d.ts +0 -7
  263. package/dist/src/transfer/tests/test-store.d.ts.map +0 -1
  264. package/dist/src/transfer/tests/test-store.js +0 -214
  265. package/dist/src/transfer/tests/test-store.js.map +0 -1
  266. package/dist/src/ui/.monomind/data/pending-insights.jsonl +0 -0
  267. package/dist/src/ui/.monomind/data/ranked-context.json +0 -5
  268. package/dist/src/ui/.monomind/loops/mastermind-review-1778664132789.json +0 -16
  269. package/dist/src/ui/.monomind/sessions/current.json +0 -13
  270. package/dist/src/ui/.monomind/sessions/session-1776778451399.json +0 -15
  271. package/dist/src/ui/collector.mjs +0 -646
  272. package/dist/src/ui/dashboard.html +0 -9694
  273. package/dist/src/ui/data/mastermind-events.jsonl +0 -59
  274. package/dist/src/ui/data/mastermind-sessions.json +0 -1
  275. package/dist/src/ui/orgs.html +0 -1360
  276. package/dist/src/ui/server.mjs +0 -4334
  277. package/dist/src/workflow/condition-evaluator.d.ts +0 -10
  278. package/dist/src/workflow/condition-evaluator.d.ts.map +0 -1
  279. package/dist/src/workflow/condition-evaluator.js +0 -82
  280. package/dist/src/workflow/condition-evaluator.js.map +0 -1
  281. package/dist/src/workflow/context-resolver.d.ts +0 -12
  282. package/dist/src/workflow/context-resolver.d.ts.map +0 -1
  283. package/dist/src/workflow/context-resolver.js +0 -23
  284. package/dist/src/workflow/context-resolver.js.map +0 -1
  285. package/dist/src/workflow/dag-builder.d.ts +0 -17
  286. package/dist/src/workflow/dag-builder.d.ts.map +0 -1
  287. package/dist/src/workflow/dag-builder.js +0 -129
  288. package/dist/src/workflow/dag-builder.js.map +0 -1
  289. package/dist/src/workflow/dag-executor.d.ts +0 -9
  290. package/dist/src/workflow/dag-executor.d.ts.map +0 -1
  291. package/dist/src/workflow/dag-executor.js +0 -116
  292. package/dist/src/workflow/dag-executor.js.map +0 -1
  293. package/dist/src/workflow/dag-types.d.ts +0 -41
  294. package/dist/src/workflow/dag-types.d.ts.map +0 -1
  295. package/dist/src/workflow/dag-types.js +0 -8
  296. package/dist/src/workflow/dag-types.js.map +0 -1
  297. package/dist/src/workflow/dsl-parser.d.ts +0 -12
  298. package/dist/src/workflow/dsl-parser.d.ts.map +0 -1
  299. package/dist/src/workflow/dsl-parser.js +0 -20
  300. package/dist/src/workflow/dsl-parser.js.map +0 -1
  301. package/dist/src/workflow/dsl-schema.d.ts +0 -165
  302. package/dist/src/workflow/dsl-schema.d.ts.map +0 -1
  303. package/dist/src/workflow/dsl-schema.js +0 -82
  304. package/dist/src/workflow/dsl-schema.js.map +0 -1
  305. package/dist/src/workflow/index.d.ts +0 -13
  306. package/dist/src/workflow/index.d.ts.map +0 -1
  307. package/dist/src/workflow/index.js +0 -11
  308. package/dist/src/workflow/index.js.map +0 -1
  309. package/dist/src/workflow/template-engine.d.ts +0 -11
  310. package/dist/src/workflow/template-engine.d.ts.map +0 -1
  311. package/dist/src/workflow/template-engine.js +0 -40
  312. package/dist/src/workflow/template-engine.js.map +0 -1
  313. package/dist/src/workflow/workflow-executor.d.ts +0 -29
  314. package/dist/src/workflow/workflow-executor.d.ts.map +0 -1
  315. package/dist/src/workflow/workflow-executor.js +0 -227
  316. package/dist/src/workflow/workflow-executor.js.map +0 -1
@@ -1,264 +0,0 @@
1
- /**
2
- * In-Memory Repositories - CLI Infrastructure
3
- *
4
- * Lightweight in-memory implementations for CLI use.
5
- *
6
- * @module v1/cli/infrastructure
7
- */
8
- /**
9
- * In-Memory Agent Repository
10
- */
11
- export class InMemoryAgentRepository {
12
- agents = new Map();
13
- initialized = false;
14
- async initialize() {
15
- this.initialized = true;
16
- }
17
- async shutdown() {
18
- this.agents.clear();
19
- this.initialized = false;
20
- }
21
- async clear() {
22
- this.agents.clear();
23
- }
24
- async save(agent) {
25
- this.agents.set(agent.id, agent);
26
- }
27
- async findById(id) {
28
- return this.agents.get(id) ?? null;
29
- }
30
- async findByName(name) {
31
- for (const agent of this.agents.values()) {
32
- if (agent.name === name)
33
- return agent;
34
- }
35
- return null;
36
- }
37
- async delete(id) {
38
- return this.agents.delete(id);
39
- }
40
- async exists(id) {
41
- return this.agents.has(id);
42
- }
43
- async saveMany(agents) {
44
- for (const agent of agents) {
45
- this.agents.set(agent.id, agent);
46
- }
47
- }
48
- async findByIds(ids) {
49
- return ids.map((id) => this.agents.get(id)).filter((a) => a !== undefined);
50
- }
51
- async deleteMany(ids) {
52
- let deleted = 0;
53
- for (const id of ids) {
54
- if (this.agents.delete(id))
55
- deleted++;
56
- }
57
- return deleted;
58
- }
59
- async findAll(options) {
60
- let result = Array.from(this.agents.values());
61
- if (options?.status)
62
- result = result.filter((a) => a.status === options.status);
63
- if (options?.role)
64
- result = result.filter((a) => a.role === options.role);
65
- if (options?.domain)
66
- result = result.filter((a) => a.domain === options.domain);
67
- if (options?.limit)
68
- result = result.slice(0, options.limit);
69
- return result;
70
- }
71
- async findByStatus(status) {
72
- return this.findAll({ status });
73
- }
74
- async findByRole(role) {
75
- return this.findAll({ role });
76
- }
77
- async findByDomain(domain) {
78
- return this.findAll({ domain });
79
- }
80
- async findByParent(parentId) {
81
- return Array.from(this.agents.values()).filter((a) => a.parentId === parentId);
82
- }
83
- async findByCapability(capability) {
84
- return Array.from(this.agents.values()).filter((a) => a.hasCapability(capability));
85
- }
86
- async findAvailable() {
87
- return Array.from(this.agents.values()).filter((a) => a.isAvailable());
88
- }
89
- async getStatistics() {
90
- const agents = Array.from(this.agents.values());
91
- const byStatus = {
92
- idle: 0,
93
- active: 0,
94
- busy: 0,
95
- paused: 0,
96
- terminated: 0,
97
- error: 0,
98
- };
99
- const byRole = {};
100
- const byDomain = {};
101
- let totalCompleted = 0;
102
- let totalUtilization = 0;
103
- for (const agent of agents) {
104
- byStatus[agent.status]++;
105
- byRole[agent.role] = (byRole[agent.role] ?? 0) + 1;
106
- byDomain[agent.domain] = (byDomain[agent.domain] ?? 0) + 1;
107
- totalCompleted += agent.completedTaskCount;
108
- totalUtilization += agent.getUtilization();
109
- }
110
- return {
111
- total: agents.length,
112
- byStatus,
113
- byRole,
114
- byDomain,
115
- totalTasksCompleted: totalCompleted,
116
- averageUtilization: agents.length > 0 ? totalUtilization / agents.length : 0,
117
- };
118
- }
119
- async count(options) {
120
- return (await this.findAll(options)).length;
121
- }
122
- }
123
- /**
124
- * In-Memory Task Repository
125
- */
126
- export class InMemoryTaskRepository {
127
- tasks = new Map();
128
- initialized = false;
129
- async initialize() {
130
- this.initialized = true;
131
- }
132
- async shutdown() {
133
- this.tasks.clear();
134
- this.initialized = false;
135
- }
136
- async clear() {
137
- this.tasks.clear();
138
- }
139
- async save(task) {
140
- this.tasks.set(task.id, task);
141
- }
142
- async findById(id) {
143
- return this.tasks.get(id) ?? null;
144
- }
145
- async delete(id) {
146
- return this.tasks.delete(id);
147
- }
148
- async exists(id) {
149
- return this.tasks.has(id);
150
- }
151
- async saveMany(tasks) {
152
- for (const task of tasks) {
153
- this.tasks.set(task.id, task);
154
- }
155
- }
156
- async findByIds(ids) {
157
- return ids.map((id) => this.tasks.get(id)).filter((t) => t !== undefined);
158
- }
159
- async deleteMany(ids) {
160
- let deleted = 0;
161
- for (const id of ids) {
162
- if (this.tasks.delete(id))
163
- deleted++;
164
- }
165
- return deleted;
166
- }
167
- async findAll(options) {
168
- let result = Array.from(this.tasks.values());
169
- if (options?.status)
170
- result = result.filter((t) => t.status === options.status);
171
- if (options?.priority)
172
- result = result.filter((t) => t.priority === options.priority);
173
- if (options?.type)
174
- result = result.filter((t) => t.type === options.type);
175
- if (options?.assignedAgentId)
176
- result = result.filter((t) => t.assignedAgentId === options.assignedAgentId);
177
- if (options?.limit)
178
- result = result.slice(0, options.limit);
179
- return result;
180
- }
181
- async findByStatus(status) {
182
- return this.findAll({ status });
183
- }
184
- async findByPriority(priority) {
185
- return this.findAll({ priority });
186
- }
187
- async findByAgent(agentId) {
188
- return this.findAll({ assignedAgentId: agentId });
189
- }
190
- async findPending() {
191
- return this.findByStatus('pending');
192
- }
193
- async findQueued() {
194
- return this.findByStatus('queued');
195
- }
196
- async findRunning() {
197
- return this.findByStatus('running');
198
- }
199
- async findTimedOut() {
200
- return Array.from(this.tasks.values()).filter((t) => t.isTimedOut());
201
- }
202
- async getNextTask(agentCapabilities) {
203
- const queued = await this.findQueued();
204
- if (queued.length === 0)
205
- return null;
206
- queued.sort((a, b) => a.comparePriority(b));
207
- return queued[0];
208
- }
209
- async getTaskQueue(limit = 10) {
210
- const queued = await this.findQueued();
211
- queued.sort((a, b) => a.comparePriority(b));
212
- return queued.slice(0, limit);
213
- }
214
- async getStatistics() {
215
- const tasks = Array.from(this.tasks.values());
216
- const byStatus = {
217
- pending: 0,
218
- queued: 0,
219
- assigned: 0,
220
- running: 0,
221
- completed: 0,
222
- failed: 0,
223
- cancelled: 0,
224
- };
225
- const byPriority = {
226
- critical: 0,
227
- high: 0,
228
- normal: 0,
229
- low: 0,
230
- };
231
- const byType = {};
232
- let totalDuration = 0;
233
- let completedCount = 0;
234
- let failedCount = 0;
235
- let retryTotal = 0;
236
- for (const task of tasks) {
237
- byStatus[task.status]++;
238
- byPriority[task.priority]++;
239
- byType[task.type] = (byType[task.type] ?? 0) + 1;
240
- if (task.status === 'completed') {
241
- completedCount++;
242
- const duration = task.getExecutionDuration();
243
- if (duration)
244
- totalDuration += duration;
245
- }
246
- if (task.status === 'failed')
247
- failedCount++;
248
- retryTotal += task.retryCount;
249
- }
250
- return {
251
- total: tasks.length,
252
- byStatus,
253
- byPriority,
254
- byType,
255
- averageExecutionTime: completedCount > 0 ? totalDuration / completedCount : 0,
256
- successRate: tasks.length > 0 ? completedCount / tasks.length : 0,
257
- retryRate: tasks.length > 0 ? retryTotal / tasks.length : 0,
258
- };
259
- }
260
- async count(options) {
261
- return (await this.findAll(options)).length;
262
- }
263
- }
264
- //# sourceMappingURL=in-memory-repositories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"in-memory-repositories.js","sourceRoot":"","sources":["../../../src/infrastructure/in-memory-repositories.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- export type InterruptDecision = 'approved' | 'rejected' | 'edited';
2
- export interface InterruptPromptResult {
3
- decision: InterruptDecision;
4
- editedTask?: string;
5
- }
6
- export interface InterruptConfig {
7
- interruptBefore: string[];
8
- confidenceThreshold?: number;
9
- autoApprove?: boolean;
10
- }
11
- export declare class InterruptRegistry {
12
- private config;
13
- load(config: InterruptConfig): void;
14
- shouldInterrupt(agentSlug: string, confidence?: number): boolean;
15
- getConfig(): InterruptConfig;
16
- }
17
- export declare const interruptRegistry: InterruptRegistry;
18
- export declare class InterruptController {
19
- prompt(agentSlug: string, taskDescription: string, checkpointId: string): Promise<InterruptPromptResult>;
20
- }
21
- export declare const interruptController: InterruptController;
22
- //# sourceMappingURL=interrupt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interrupt.d.ts","sourceRoot":"","sources":["../../../src/interactive/interrupt.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAA4C;IAE1D,IAAI,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAInC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO;IAahE,SAAS,IAAI,eAAe;CAG7B;AAED,eAAO,MAAM,iBAAiB,mBAA0B,CAAC;AAEzD,qBAAa,mBAAmB;IACxB,MAAM,CACV,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,qBAAqB,CAAC;CA+ClC;AAED,eAAO,MAAM,mBAAmB,qBAA4B,CAAC"}
@@ -1,71 +0,0 @@
1
- import * as readline from 'node:readline';
2
- export class InterruptRegistry {
3
- config = { interruptBefore: [] };
4
- load(config) {
5
- this.config = config;
6
- }
7
- shouldInterrupt(agentSlug, confidence) {
8
- if (this.config.autoApprove)
9
- return false;
10
- if (this.config.interruptBefore.includes(agentSlug))
11
- return true;
12
- if (confidence !== undefined &&
13
- this.config.confidenceThreshold !== undefined &&
14
- confidence < this.config.confidenceThreshold) {
15
- return true;
16
- }
17
- return false;
18
- }
19
- getConfig() {
20
- return { ...this.config };
21
- }
22
- }
23
- export const interruptRegistry = new InterruptRegistry();
24
- export class InterruptController {
25
- async prompt(agentSlug, taskDescription, checkpointId) {
26
- // Non-TTY / CI mode
27
- if (!process.stdin.isTTY || process.env.CI_AUTO_APPROVE === '1') {
28
- return { decision: 'approved' };
29
- }
30
- const rl = readline.createInterface({
31
- input: process.stdin,
32
- output: process.stdout,
33
- });
34
- // Strip control characters from interpolated fields. ANSI escape sequences
35
- // in any of these fields would let a malicious agent or LLM-generated task
36
- // description redraw the screen and trick the user into approving an
37
- // entirely different action than the one shown — defeating this very gate.
38
- const safe = (s) => String(s ?? '').replace(/[\x00-\x1f\x7f-\x9f]/g, '?').slice(0, 500);
39
- console.log('\n' + '='.repeat(60));
40
- console.log('[MONOMIND] Interrupt — Human approval required');
41
- console.log(` Agent: ${safe(agentSlug)}`);
42
- console.log(` Task: ${safe(taskDescription)}`);
43
- console.log(` Checkpoint: ${safe(checkpointId)}`);
44
- console.log('='.repeat(60));
45
- console.log(' Options: [y] approve [n] reject [e] edit task');
46
- return new Promise((resolve) => {
47
- rl.question(' Choice (y/n/e): ', (answer) => {
48
- rl.close();
49
- const trimmed = answer.trim().toLowerCase();
50
- if (trimmed === 'y' || trimmed === 'yes') {
51
- resolve({ decision: 'approved' });
52
- }
53
- else if (trimmed === 'e' || trimmed === 'edit') {
54
- const rl2 = readline.createInterface({
55
- input: process.stdin,
56
- output: process.stdout,
57
- });
58
- rl2.question(' New task description: ', (newTask) => {
59
- rl2.close();
60
- resolve({ decision: 'edited', editedTask: newTask });
61
- });
62
- }
63
- else {
64
- resolve({ decision: 'rejected' });
65
- }
66
- });
67
- });
68
- }
69
- }
70
- export const interruptController = new InterruptController();
71
- //# sourceMappingURL=interrupt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interrupt.js","sourceRoot":"","sources":["../../../src/interactive/interrupt.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- /**
2
- * Deprecation Injector (Task 31)
3
- *
4
- * Injects deprecation warnings into MCP tool responses when the
5
- * invoked tool has been marked as deprecated in the ToolRegistry.
6
- */
7
- import type { ToolRegistry } from './tool-registry.js';
8
- /**
9
- * Injects deprecation metadata into MCP responses.
10
- */
11
- export declare class DeprecationInjector {
12
- private readonly registry;
13
- constructor(registry: ToolRegistry);
14
- /**
15
- * If `toolName` is deprecated, augment the response with a warning.
16
- *
17
- * Returns the original response unmodified when the tool is not
18
- * deprecated. When deprecated, adds `_deprecation` metadata.
19
- *
20
- * Warning format:
21
- * [DEPRECATED] Tool "<name>" is deprecated. <message>. Use "<successor>" instead.
22
- */
23
- inject(response: Record<string, unknown>, toolName: string): Record<string, unknown>;
24
- }
25
- //# sourceMappingURL=deprecation-injector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deprecation-injector.d.ts","sourceRoot":"","sources":["../../../src/mcp/deprecation-injector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;gBAE5B,QAAQ,EAAE,YAAY;IAIlC;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CA4BrF"}
@@ -1,48 +0,0 @@
1
- /**
2
- * Deprecation Injector (Task 31)
3
- *
4
- * Injects deprecation warnings into MCP tool responses when the
5
- * invoked tool has been marked as deprecated in the ToolRegistry.
6
- */
7
- /**
8
- * Injects deprecation metadata into MCP responses.
9
- */
10
- export class DeprecationInjector {
11
- registry;
12
- constructor(registry) {
13
- this.registry = registry;
14
- }
15
- /**
16
- * If `toolName` is deprecated, augment the response with a warning.
17
- *
18
- * Returns the original response unmodified when the tool is not
19
- * deprecated. When deprecated, adds `_deprecation` metadata.
20
- *
21
- * Warning format:
22
- * [DEPRECATED] Tool "<name>" is deprecated. <message>. Use "<successor>" instead.
23
- */
24
- inject(response, toolName) {
25
- const tool = this.registry.getVersion(toolName);
26
- if (!tool || !tool.deprecated) {
27
- return response;
28
- }
29
- const parts = [`[DEPRECATED] Tool "${toolName}" is deprecated.`];
30
- if (tool.deprecationMessage) {
31
- parts.push(tool.deprecationMessage + '.');
32
- }
33
- if (tool.successor) {
34
- parts.push(`Use "${tool.successor}" instead.`);
35
- }
36
- const warning = parts.join(' ');
37
- return {
38
- ...response,
39
- _deprecation: {
40
- warning,
41
- deprecated: true,
42
- successor: tool.successor ?? null,
43
- deprecatedAt: tool.deprecatedAt ?? null,
44
- },
45
- };
46
- }
47
- }
48
- //# sourceMappingURL=deprecation-injector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deprecation-injector.js","sourceRoot":"","sources":["../../../src/mcp/deprecation-injector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,OAAO,mBAAmB;IACb,QAAQ,CAAe;IAExC,YAAY,QAAsB;QAChC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAiC,EAAE,QAAgB;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAC9B,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,sBAAsB,QAAQ,kBAAkB,CAAC,CAAC;QAEjE,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,YAAY,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEhC,OAAO;YACL,GAAG,QAAQ;YACX,YAAY,EAAE;gBACZ,OAAO;gBACP,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;gBACjC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI;aACxC;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -1,61 +0,0 @@
1
- /**
2
- * Tool Registry (Task 31)
3
- *
4
- * Manages semver versioning for MCP tools with deprecation tracking
5
- * and tool-to-agent impact analysis. Uses JSONL file storage.
6
- */
7
- import type { VersionedMCPTool, ToolVersionEntry } from '../../../shared/src/types/tool-version.js';
8
- /**
9
- * Registry for versioned MCP tools.
10
- *
11
- * Stores tool metadata and version history in a JSONL file.
12
- * Supports deprecation marking and agent impact analysis.
13
- */
14
- export declare class ToolRegistry {
15
- private tools;
16
- private history;
17
- private readonly storagePath;
18
- constructor(storagePath?: string);
19
- /**
20
- * Register a new tool or update an existing one.
21
- */
22
- register(tool: VersionedMCPTool): void;
23
- /**
24
- * Mark a tool as deprecated with an optional successor.
25
- */
26
- deprecate(toolName: string, message: string, successor?: string): void;
27
- /**
28
- * Get the current version info for a tool.
29
- * Returns null if the tool is not registered.
30
- */
31
- getVersion(toolName: string): VersionedMCPTool | null;
32
- /**
33
- * List all deprecated tools.
34
- */
35
- listDeprecated(): VersionedMCPTool[];
36
- /**
37
- * Find agents that reference the given tool.
38
- *
39
- * Scans agent markdown files under the provided agents directory
40
- * and returns slugs of agents whose `tools:` frontmatter or body
41
- * mention the tool name.
42
- */
43
- getImpactedAgents(toolName: string, agentsDir?: string): string[];
44
- /**
45
- * Get the full version history for a tool, or all tools if no name given.
46
- */
47
- getHistory(toolName?: string): ToolVersionEntry[];
48
- /**
49
- * Get all registered tools.
50
- */
51
- listAll(): VersionedMCPTool[];
52
- /**
53
- * Load existing entries from the JSONL file on disk.
54
- */
55
- private loadFromDisk;
56
- /**
57
- * Append a version history entry and the current tool state to disk.
58
- */
59
- private appendEntry;
60
- }
61
- //# sourceMappingURL=tool-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../../src/mcp/tool-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,2CAA2C,CAAC;AAKnD;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAA4C;IACzD,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAEzB,WAAW,GAAE,MAA6B;IAYtD;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAsBtC;;OAEG;IACH,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI;IAyBP;;;OAGG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAIrD;;OAEG;IACH,cAAc,IAAI,gBAAgB,EAAE;IAUpC;;;;;;OAMG;IACH,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,MAAiB,GAC3B,MAAM,EAAE;IA6BX;;OAEG;IACH,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAOjD;;OAEG;IACH,OAAO,IAAI,gBAAgB,EAAE;IAM7B;;OAEG;IACH,OAAO,CAAC,YAAY;IAuCpB;;OAEG;IACH,OAAO,CAAC,WAAW;CAgBpB"}