macro-agent 0.1.1 → 0.1.3

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 (1339) hide show
  1. package/.gitattributes +3 -0
  2. package/.opentasks/config.json +9 -0
  3. package/.sudocode/issues.jsonl +28 -0
  4. package/.sudocode/specs.jsonl +4 -0
  5. package/CLAUDE.md +433 -201
  6. package/README.md +129 -371
  7. package/dist/acp/index.d.ts +9 -51
  8. package/dist/acp/index.d.ts.map +1 -1
  9. package/dist/acp/index.js +5 -46
  10. package/dist/acp/index.js.map +1 -1
  11. package/dist/acp/macro-agent.d.ts +28 -255
  12. package/dist/acp/macro-agent.d.ts.map +1 -1
  13. package/dist/acp/macro-agent.js +593 -1231
  14. package/dist/acp/macro-agent.js.map +1 -1
  15. package/dist/acp/map-bridge.d.ts +62 -0
  16. package/dist/acp/map-bridge.d.ts.map +1 -0
  17. package/dist/acp/map-bridge.js +123 -0
  18. package/dist/acp/map-bridge.js.map +1 -0
  19. package/dist/acp/session-mapper.d.ts +29 -126
  20. package/dist/acp/session-mapper.d.ts.map +1 -1
  21. package/dist/acp/session-mapper.js +36 -234
  22. package/dist/acp/session-mapper.js.map +1 -1
  23. package/dist/acp/types.d.ts +24 -535
  24. package/dist/acp/types.d.ts.map +1 -1
  25. package/dist/acp/types.js +7 -7
  26. package/dist/acp/types.js.map +1 -1
  27. package/dist/acp/websocket-server.d.ts +16 -136
  28. package/dist/acp/websocket-server.d.ts.map +1 -1
  29. package/dist/acp/websocket-server.js +131 -371
  30. package/dist/acp/websocket-server.js.map +1 -1
  31. package/dist/adapters/federation.d.ts +76 -0
  32. package/dist/adapters/federation.d.ts.map +1 -0
  33. package/dist/adapters/federation.js +120 -0
  34. package/dist/adapters/federation.js.map +1 -0
  35. package/dist/adapters/inbox-adapter.d.ts +72 -0
  36. package/dist/adapters/inbox-adapter.d.ts.map +1 -0
  37. package/dist/adapters/inbox-adapter.js +196 -0
  38. package/dist/adapters/inbox-adapter.js.map +1 -0
  39. package/dist/adapters/inbox-client-adapter.d.ts +40 -0
  40. package/dist/adapters/inbox-client-adapter.d.ts.map +1 -0
  41. package/dist/adapters/inbox-client-adapter.js +135 -0
  42. package/dist/adapters/inbox-client-adapter.js.map +1 -0
  43. package/dist/adapters/index.d.ts +11 -0
  44. package/dist/adapters/index.d.ts.map +1 -0
  45. package/dist/adapters/index.js +10 -0
  46. package/dist/adapters/index.js.map +1 -0
  47. package/dist/adapters/opentasks-daemon.d.ts +32 -0
  48. package/dist/adapters/opentasks-daemon.d.ts.map +1 -0
  49. package/dist/adapters/opentasks-daemon.js +190 -0
  50. package/dist/adapters/opentasks-daemon.js.map +1 -0
  51. package/dist/adapters/tasks-adapter.d.ts +49 -0
  52. package/dist/adapters/tasks-adapter.d.ts.map +1 -0
  53. package/dist/adapters/tasks-adapter.js +209 -0
  54. package/dist/adapters/tasks-adapter.js.map +1 -0
  55. package/dist/adapters/types.d.ts +198 -0
  56. package/dist/adapters/types.d.ts.map +1 -0
  57. package/dist/adapters/types.js +13 -0
  58. package/dist/adapters/types.js.map +1 -0
  59. package/dist/agent/agent-manager-v2.d.ts +38 -0
  60. package/dist/agent/agent-manager-v2.d.ts.map +1 -0
  61. package/dist/agent/agent-manager-v2.js +1097 -0
  62. package/dist/agent/agent-manager-v2.js.map +1 -0
  63. package/dist/agent/agent-manager.d.ts +52 -42
  64. package/dist/agent/agent-manager.d.ts.map +1 -1
  65. package/dist/agent/agent-manager.js +11 -1255
  66. package/dist/agent/agent-manager.js.map +1 -1
  67. package/dist/agent/agent-store.d.ts +89 -0
  68. package/dist/agent/agent-store.d.ts.map +1 -0
  69. package/dist/agent/agent-store.js +279 -0
  70. package/dist/agent/agent-store.js.map +1 -0
  71. package/dist/agent/types.d.ts +7 -0
  72. package/dist/agent/types.d.ts.map +1 -1
  73. package/dist/agent/types.js.map +1 -1
  74. package/dist/api/index.d.ts +5 -3
  75. package/dist/api/index.d.ts.map +1 -1
  76. package/dist/api/index.js +4 -3
  77. package/dist/api/index.js.map +1 -1
  78. package/dist/api/server.d.ts +6 -123
  79. package/dist/api/server.d.ts.map +1 -1
  80. package/dist/api/server.js +247 -1489
  81. package/dist/api/server.js.map +1 -1
  82. package/dist/api/types.d.ts +20 -248
  83. package/dist/api/types.d.ts.map +1 -1
  84. package/dist/api/types.js +3 -1
  85. package/dist/api/types.js.map +1 -1
  86. package/dist/boot-v2.d.ts +165 -0
  87. package/dist/boot-v2.d.ts.map +1 -0
  88. package/dist/boot-v2.js +315 -0
  89. package/dist/boot-v2.js.map +1 -0
  90. package/dist/cli/acp.d.ts +6 -28
  91. package/dist/cli/acp.d.ts.map +1 -1
  92. package/dist/cli/acp.js +39 -373
  93. package/dist/cli/acp.js.map +1 -1
  94. package/dist/cli/index.d.ts +1 -2
  95. package/dist/cli/index.d.ts.map +1 -1
  96. package/dist/cli/index.js +65 -449
  97. package/dist/cli/index.js.map +1 -1
  98. package/dist/cli/mcp.d.ts +18 -8
  99. package/dist/cli/mcp.d.ts.map +1 -1
  100. package/dist/cli/mcp.js +231 -282
  101. package/dist/cli/mcp.js.map +1 -1
  102. package/dist/cognitive/analyst-role.d.ts +13 -0
  103. package/dist/cognitive/analyst-role.d.ts.map +1 -0
  104. package/dist/cognitive/analyst-role.js +48 -0
  105. package/dist/cognitive/analyst-role.js.map +1 -0
  106. package/dist/cognitive/index.d.ts +18 -0
  107. package/dist/cognitive/index.d.ts.map +1 -0
  108. package/dist/cognitive/index.js +21 -0
  109. package/dist/cognitive/index.js.map +1 -0
  110. package/dist/cognitive/macro-agent-backend.d.ts +40 -0
  111. package/dist/cognitive/macro-agent-backend.d.ts.map +1 -0
  112. package/dist/cognitive/macro-agent-backend.js +290 -0
  113. package/dist/cognitive/macro-agent-backend.js.map +1 -0
  114. package/dist/cognitive/session-converter.d.ts +30 -0
  115. package/dist/cognitive/session-converter.d.ts.map +1 -0
  116. package/dist/cognitive/session-converter.js +119 -0
  117. package/dist/cognitive/session-converter.js.map +1 -0
  118. package/dist/cognitive/types.d.ts +129 -0
  119. package/dist/cognitive/types.d.ts.map +1 -0
  120. package/dist/cognitive/types.js +12 -0
  121. package/dist/cognitive/types.js.map +1 -0
  122. package/dist/cognitive/workspace-handler.d.ts +46 -0
  123. package/dist/cognitive/workspace-handler.d.ts.map +1 -0
  124. package/dist/cognitive/workspace-handler.js +135 -0
  125. package/dist/cognitive/workspace-handler.js.map +1 -0
  126. package/dist/config/project-config.d.ts +13 -2
  127. package/dist/config/project-config.d.ts.map +1 -1
  128. package/dist/config/project-config.js +12 -2
  129. package/dist/config/project-config.js.map +1 -1
  130. package/dist/control/control-client.d.ts +63 -0
  131. package/dist/control/control-client.d.ts.map +1 -0
  132. package/dist/control/control-client.js +276 -0
  133. package/dist/control/control-client.js.map +1 -0
  134. package/dist/control/control-server.d.ts +46 -0
  135. package/dist/control/control-server.d.ts.map +1 -0
  136. package/dist/control/control-server.js +237 -0
  137. package/dist/control/control-server.js.map +1 -0
  138. package/dist/control/index.d.ts +9 -0
  139. package/dist/control/index.d.ts.map +1 -0
  140. package/dist/control/index.js +8 -0
  141. package/dist/control/index.js.map +1 -0
  142. package/dist/control/types.d.ts +64 -0
  143. package/dist/control/types.d.ts.map +1 -0
  144. package/dist/control/types.js +10 -0
  145. package/dist/control/types.js.map +1 -0
  146. package/dist/index.d.ts +15 -16
  147. package/dist/index.d.ts.map +1 -1
  148. package/dist/index.js +17 -34
  149. package/dist/index.js.map +1 -1
  150. package/dist/integrations/context-builder.d.ts +49 -0
  151. package/dist/integrations/context-builder.d.ts.map +1 -0
  152. package/dist/integrations/context-builder.js +160 -0
  153. package/dist/integrations/context-builder.js.map +1 -0
  154. package/dist/integrations/sessionlog.d.ts +58 -0
  155. package/dist/integrations/sessionlog.d.ts.map +1 -0
  156. package/dist/integrations/sessionlog.js +152 -0
  157. package/dist/integrations/sessionlog.js.map +1 -0
  158. package/dist/integrations/skilltree.d.ts +53 -0
  159. package/dist/integrations/skilltree.d.ts.map +1 -0
  160. package/dist/integrations/skilltree.js +140 -0
  161. package/dist/integrations/skilltree.js.map +1 -0
  162. package/dist/lifecycle/cleanup.d.ts +5 -14
  163. package/dist/lifecycle/cleanup.d.ts.map +1 -1
  164. package/dist/lifecycle/cleanup.js +4 -34
  165. package/dist/lifecycle/cleanup.js.map +1 -1
  166. package/dist/lifecycle/handlers-v2.d.ts +33 -0
  167. package/dist/lifecycle/handlers-v2.d.ts.map +1 -0
  168. package/dist/lifecycle/handlers-v2.js +319 -0
  169. package/dist/lifecycle/handlers-v2.js.map +1 -0
  170. package/dist/lifecycle/index.d.ts +3 -5
  171. package/dist/lifecycle/index.d.ts.map +1 -1
  172. package/dist/lifecycle/index.js +3 -12
  173. package/dist/lifecycle/index.js.map +1 -1
  174. package/dist/lifecycle/types.d.ts +2 -0
  175. package/dist/lifecycle/types.d.ts.map +1 -1
  176. package/dist/lifecycle/types.js.map +1 -1
  177. package/dist/map/acp-bridge.d.ts +39 -0
  178. package/dist/map/acp-bridge.d.ts.map +1 -0
  179. package/dist/map/acp-bridge.js +180 -0
  180. package/dist/map/acp-bridge.js.map +1 -0
  181. package/dist/map/cc-swarm-hooks.d.ts +36 -0
  182. package/dist/map/cc-swarm-hooks.d.ts.map +1 -0
  183. package/dist/map/cc-swarm-hooks.js +218 -0
  184. package/dist/map/cc-swarm-hooks.js.map +1 -0
  185. package/dist/map/coordination-handler.d.ts +36 -0
  186. package/dist/map/coordination-handler.d.ts.map +1 -0
  187. package/dist/map/coordination-handler.js +166 -0
  188. package/dist/map/coordination-handler.js.map +1 -0
  189. package/dist/map/index.d.ts +5 -10
  190. package/dist/map/index.d.ts.map +1 -1
  191. package/dist/map/index.js +4 -13
  192. package/dist/map/index.js.map +1 -1
  193. package/dist/map/lifecycle-bridge.d.ts +34 -0
  194. package/dist/map/lifecycle-bridge.d.ts.map +1 -0
  195. package/dist/map/lifecycle-bridge.js +96 -0
  196. package/dist/map/lifecycle-bridge.js.map +1 -0
  197. package/dist/map/server.d.ts +38 -0
  198. package/dist/map/server.d.ts.map +1 -0
  199. package/dist/map/server.js +461 -0
  200. package/dist/map/server.js.map +1 -0
  201. package/dist/map/sidecar.d.ts +24 -0
  202. package/dist/map/sidecar.d.ts.map +1 -0
  203. package/dist/map/sidecar.js +263 -0
  204. package/dist/map/sidecar.js.map +1 -0
  205. package/dist/map/task-bridge.d.ts +22 -0
  206. package/dist/map/task-bridge.d.ts.map +1 -0
  207. package/dist/map/task-bridge.js +67 -0
  208. package/dist/map/task-bridge.js.map +1 -0
  209. package/dist/map/trajectory-reporter.d.ts +24 -0
  210. package/dist/map/trajectory-reporter.d.ts.map +1 -0
  211. package/dist/map/trajectory-reporter.js +86 -0
  212. package/dist/map/trajectory-reporter.js.map +1 -0
  213. package/dist/map/types.d.ts +162 -226
  214. package/dist/map/types.d.ts.map +1 -1
  215. package/dist/map/types.js +6 -165
  216. package/dist/map/types.js.map +1 -1
  217. package/dist/mcp/index.d.ts +2 -2
  218. package/dist/mcp/index.d.ts.map +1 -1
  219. package/dist/mcp/index.js +2 -2
  220. package/dist/mcp/index.js.map +1 -1
  221. package/dist/mcp/mcp-server-v2.d.ts +44 -0
  222. package/dist/mcp/mcp-server-v2.d.ts.map +1 -0
  223. package/dist/mcp/mcp-server-v2.js +376 -0
  224. package/dist/mcp/mcp-server-v2.js.map +1 -0
  225. package/dist/mcp/tools/done-v2.d.ts +57 -0
  226. package/dist/mcp/tools/done-v2.d.ts.map +1 -0
  227. package/dist/mcp/tools/done-v2.js +129 -0
  228. package/dist/mcp/tools/done-v2.js.map +1 -0
  229. package/dist/metrics/index.d.ts +7 -1
  230. package/dist/metrics/index.d.ts.map +1 -1
  231. package/dist/metrics/index.js +6 -1
  232. package/dist/metrics/index.js.map +1 -1
  233. package/dist/metrics/metrics.d.ts +9 -70
  234. package/dist/metrics/metrics.d.ts.map +1 -1
  235. package/dist/metrics/metrics.js +89 -145
  236. package/dist/metrics/metrics.js.map +1 -1
  237. package/dist/metrics/types.d.ts +44 -0
  238. package/dist/metrics/types.d.ts.map +1 -0
  239. package/dist/metrics/types.js +7 -0
  240. package/dist/metrics/types.js.map +1 -0
  241. package/dist/roles/builtin/coordinator.d.ts.map +1 -1
  242. package/dist/roles/builtin/coordinator.js +2 -1
  243. package/dist/roles/builtin/coordinator.js.map +1 -1
  244. package/dist/roles/builtin/integrator.d.ts.map +1 -1
  245. package/dist/roles/builtin/integrator.js +2 -1
  246. package/dist/roles/builtin/integrator.js.map +1 -1
  247. package/dist/roles/builtin/worker.d.ts.map +1 -1
  248. package/dist/roles/builtin/worker.js +3 -1
  249. package/dist/roles/builtin/worker.js.map +1 -1
  250. package/dist/roles/capabilities.d.ts +6 -0
  251. package/dist/roles/capabilities.d.ts.map +1 -1
  252. package/dist/roles/capabilities.js +10 -0
  253. package/dist/roles/capabilities.js.map +1 -1
  254. package/dist/roles/config-loader.d.ts +1 -1
  255. package/dist/roles/config-loader.d.ts.map +1 -1
  256. package/dist/roles/config-loader.js +3 -2
  257. package/dist/roles/config-loader.js.map +1 -1
  258. package/dist/roles/types.d.ts +3 -1
  259. package/dist/roles/types.d.ts.map +1 -1
  260. package/dist/store/index.d.ts +3 -6
  261. package/dist/store/index.d.ts.map +1 -1
  262. package/dist/store/index.js +3 -21
  263. package/dist/store/index.js.map +1 -1
  264. package/dist/store/types/agents.d.ts +5 -0
  265. package/dist/store/types/agents.d.ts.map +1 -1
  266. package/dist/store/types/events.d.ts +3 -60
  267. package/dist/store/types/events.d.ts.map +1 -1
  268. package/dist/store/types/events.js +3 -46
  269. package/dist/store/types/events.js.map +1 -1
  270. package/dist/store/types/index.d.ts +0 -3
  271. package/dist/store/types/index.d.ts.map +1 -1
  272. package/dist/store/types/index.js +0 -3
  273. package/dist/store/types/index.js.map +1 -1
  274. package/dist/teams/index.d.ts +2 -2
  275. package/dist/teams/index.d.ts.map +1 -1
  276. package/dist/teams/index.js +1 -1
  277. package/dist/teams/index.js.map +1 -1
  278. package/dist/teams/seed-defaults.d.ts +20 -0
  279. package/dist/teams/seed-defaults.d.ts.map +1 -0
  280. package/dist/teams/seed-defaults.js +71 -0
  281. package/dist/teams/seed-defaults.js.map +1 -0
  282. package/dist/teams/team-loader.d.ts +6 -2
  283. package/dist/teams/team-loader.d.ts.map +1 -1
  284. package/dist/teams/team-loader.js +154 -162
  285. package/dist/teams/team-loader.js.map +1 -1
  286. package/dist/teams/team-manager-v2.d.ts +87 -0
  287. package/dist/teams/team-manager-v2.d.ts.map +1 -0
  288. package/dist/teams/team-manager-v2.js +203 -0
  289. package/dist/teams/team-manager-v2.js.map +1 -0
  290. package/dist/teams/team-runtime-v2.d.ts +149 -0
  291. package/dist/teams/team-runtime-v2.d.ts.map +1 -0
  292. package/dist/teams/team-runtime-v2.js +741 -0
  293. package/dist/teams/team-runtime-v2.js.map +1 -0
  294. package/dist/teams/types.d.ts +41 -151
  295. package/dist/teams/types.d.ts.map +1 -1
  296. package/dist/teams/types.js +2 -3
  297. package/dist/teams/types.js.map +1 -1
  298. package/dist/trigger/index.d.ts +2 -2
  299. package/dist/trigger/index.d.ts.map +1 -1
  300. package/dist/trigger/index.js +4 -4
  301. package/dist/trigger/index.js.map +1 -1
  302. package/dist/trigger/sources/cron/cron-service.d.ts +1 -1
  303. package/dist/trigger/sources/cron/cron-service.d.ts.map +1 -1
  304. package/dist/trigger/sources/webhook/webhook-handler.d.ts +1 -1
  305. package/dist/trigger/sources/webhook/webhook-handler.d.ts.map +1 -1
  306. package/dist/trigger/strategies/ai-router.d.ts +31 -0
  307. package/dist/trigger/strategies/ai-router.d.ts.map +1 -0
  308. package/dist/trigger/strategies/ai-router.js +132 -0
  309. package/dist/trigger/strategies/ai-router.js.map +1 -0
  310. package/dist/trigger/trigger-system-v2.d.ts +106 -0
  311. package/dist/trigger/trigger-system-v2.d.ts.map +1 -0
  312. package/dist/trigger/trigger-system-v2.js +347 -0
  313. package/dist/trigger/trigger-system-v2.js.map +1 -0
  314. package/dist/trigger/types.d.ts +8 -0
  315. package/dist/trigger/types.d.ts.map +1 -1
  316. package/dist/trigger/types.js.map +1 -1
  317. package/dist/workspace/strategies/optimistic.d.ts +13 -3
  318. package/dist/workspace/strategies/optimistic.d.ts.map +1 -1
  319. package/dist/workspace/strategies/optimistic.js +4 -4
  320. package/dist/workspace/strategies/optimistic.js.map +1 -1
  321. package/docs/design-subsystem-extraction.md +627 -0
  322. package/docs/lifecycle-events-design.md +111 -0
  323. package/docs/openhive-capability-summary.md +415 -0
  324. package/docs/openhive-integration.md +415 -0
  325. package/docs/roadmap-v2-gaps.md +216 -0
  326. package/docs/teams.md +73 -0
  327. package/package.json +26 -6
  328. package/src/__tests__/boot-v2.test.ts +196 -0
  329. package/src/__tests__/e2e/acp-over-map-live.e2e.test.ts +496 -0
  330. package/src/__tests__/e2e/acp-over-map.e2e.test.ts +365 -0
  331. package/src/__tests__/e2e/agent-lifecycle.e2e.test.ts +770 -0
  332. package/src/__tests__/e2e/cc-swarm-bridge.e2e.test.ts +253 -0
  333. package/src/__tests__/e2e/cognitive-workspace.e2e.test.ts +282 -0
  334. package/src/__tests__/e2e/done-scenarios.e2e.test.ts +322 -0
  335. package/src/__tests__/e2e/live-agent.e2e.test.ts +1330 -0
  336. package/src/__tests__/e2e/map-server.e2e.test.ts +128 -0
  337. package/src/__tests__/e2e/map-sidecar.e2e.test.ts +139 -0
  338. package/src/__tests__/e2e/opentasks-integration.e2e.test.ts +280 -0
  339. package/src/__tests__/e2e/pull-mode.e2e.test.ts +632 -0
  340. package/src/__tests__/e2e/resume-continue.e2e.test.ts +312 -0
  341. package/src/__tests__/e2e/swarmkit-integration.e2e.test.ts +562 -0
  342. package/src/__tests__/e2e/swarmkit-live.e2e.test.ts +1049 -0
  343. package/src/__tests__/e2e/trajectory-tracking.e2e.test.ts +258 -0
  344. package/src/__tests__/e2e/trigger-wake.e2e.test.ts +257 -0
  345. package/src/__tests__/e2e/workspace-lifecycle.e2e.test.ts +375 -0
  346. package/src/acp/__tests__/macro-agent.test.ts +234 -945
  347. package/src/acp/__tests__/session-mapper.test.ts +82 -155
  348. package/src/acp/__tests__/websocket-server.test.ts +121 -270
  349. package/src/acp/index.ts +18 -118
  350. package/src/acp/macro-agent.ts +692 -1752
  351. package/src/acp/map-bridge.ts +193 -0
  352. package/src/acp/session-mapper.ts +43 -276
  353. package/src/acp/types.ts +39 -767
  354. package/src/acp/websocket-server.ts +152 -588
  355. package/src/adapters/__tests__/federation.test.ts +256 -0
  356. package/src/adapters/__tests__/inbox-adapter.test.ts +316 -0
  357. package/src/adapters/__tests__/tasks-adapter.test.ts +269 -0
  358. package/src/adapters/federation.ts +185 -0
  359. package/src/adapters/inbox-adapter.ts +292 -0
  360. package/src/adapters/inbox-client-adapter.ts +173 -0
  361. package/src/adapters/index.ts +44 -0
  362. package/src/adapters/opentasks-daemon.ts +252 -0
  363. package/src/adapters/tasks-adapter.ts +327 -0
  364. package/src/adapters/types.ts +285 -0
  365. package/src/agent/__tests__/agent-manager-v2.test.ts +554 -0
  366. package/src/agent/__tests__/agent-store.test.ts +413 -0
  367. package/src/agent/agent-manager-v2.ts +1476 -0
  368. package/src/agent/agent-manager.ts +41 -1723
  369. package/src/agent/agent-store.ts +385 -0
  370. package/src/agent/types.ts +9 -0
  371. package/src/api/__tests__/server.test.ts +238 -961
  372. package/src/api/index.ts +5 -3
  373. package/src/api/server.ts +276 -1870
  374. package/src/api/types.ts +25 -337
  375. package/src/boot-v2.ts +527 -0
  376. package/src/cli/acp.ts +40 -435
  377. package/src/cli/index.ts +68 -466
  378. package/src/cli/mcp.ts +260 -326
  379. package/src/cognitive/__tests__/macro-agent-backend.test.ts +478 -0
  380. package/src/cognitive/__tests__/session-converter.test.ts +423 -0
  381. package/src/cognitive/__tests__/workspace-handler.test.ts +221 -0
  382. package/src/cognitive/analyst-role.ts +59 -0
  383. package/src/cognitive/index.ts +49 -0
  384. package/src/cognitive/macro-agent-backend.ts +354 -0
  385. package/src/cognitive/session-converter.ts +151 -0
  386. package/src/cognitive/types.ts +163 -0
  387. package/src/cognitive/workspace-handler.ts +163 -0
  388. package/src/config/project-config.ts +27 -3
  389. package/src/control/__tests__/control-resilience.test.ts +251 -0
  390. package/src/control/__tests__/control-socket.test.ts +240 -0
  391. package/src/control/control-client.ts +337 -0
  392. package/src/control/control-server.ts +298 -0
  393. package/src/control/index.ts +17 -0
  394. package/src/control/types.ts +95 -0
  395. package/src/index.ts +43 -222
  396. package/src/integrations/__tests__/context-builder.test.ts +218 -0
  397. package/src/integrations/__tests__/sessionlog.test.ts +498 -0
  398. package/src/integrations/__tests__/skilltree.test.ts +136 -0
  399. package/src/integrations/context-builder.ts +280 -0
  400. package/src/integrations/sessionlog.ts +194 -0
  401. package/src/integrations/skilltree.ts +183 -0
  402. package/src/lifecycle/__tests__/handlers-v2.test.ts +565 -0
  403. package/src/lifecycle/cleanup.ts +6 -46
  404. package/src/lifecycle/handlers-v2.ts +437 -0
  405. package/src/lifecycle/index.ts +2 -28
  406. package/src/lifecycle/types.ts +3 -0
  407. package/src/map/__tests__/lifecycle-bridge.test.ts +223 -0
  408. package/src/map/__tests__/permission-forwarding.test.ts +143 -0
  409. package/src/map/__tests__/sidecar-integration.test.ts +190 -0
  410. package/src/map/__tests__/task-bridge.test.ts +153 -0
  411. package/src/map/__tests__/trajectory-reporter.test.ts +173 -0
  412. package/src/map/acp-bridge.ts +270 -0
  413. package/src/map/cc-swarm-hooks.ts +242 -0
  414. package/src/map/coordination-handler.ts +220 -0
  415. package/src/map/index.ts +13 -14
  416. package/src/map/lifecycle-bridge.ts +140 -0
  417. package/src/map/server.ts +527 -0
  418. package/src/map/sidecar.ts +312 -0
  419. package/src/map/task-bridge.ts +89 -0
  420. package/src/map/trajectory-reporter.ts +124 -0
  421. package/src/map/types.ts +195 -367
  422. package/src/mcp/__tests__/mcp-server-v2.test.ts +236 -0
  423. package/src/mcp/index.ts +2 -2
  424. package/src/mcp/mcp-server-v2.ts +485 -0
  425. package/src/mcp/tools/done-v2.ts +203 -0
  426. package/src/metrics/__tests__/metrics.test.ts +205 -0
  427. package/src/metrics/index.ts +13 -9
  428. package/src/metrics/metrics.ts +110 -239
  429. package/src/metrics/types.ts +63 -0
  430. package/src/roles/builtin/coordinator.ts +2 -0
  431. package/src/roles/builtin/integrator.ts +2 -0
  432. package/src/roles/builtin/worker.ts +3 -0
  433. package/src/roles/capabilities.ts +11 -0
  434. package/src/roles/config-loader.ts +3 -2
  435. package/src/roles/types.ts +7 -0
  436. package/src/store/index.ts +3 -64
  437. package/src/store/types/agents.ts +5 -0
  438. package/src/store/types/events.ts +5 -100
  439. package/src/store/types/index.ts +0 -3
  440. package/src/teams/__tests__/team-manager-v2.test.ts +425 -0
  441. package/src/teams/__tests__/team-runtime-v2.test.ts +402 -0
  442. package/src/teams/index.ts +20 -4
  443. package/src/teams/seed-defaults.ts +79 -0
  444. package/src/teams/team-loader.ts +200 -234
  445. package/src/teams/team-manager-v2.ts +268 -0
  446. package/src/teams/team-runtime-v2.ts +898 -0
  447. package/src/teams/types.ts +99 -200
  448. package/src/trigger/__tests__/trigger-system-v2.test.ts +257 -0
  449. package/src/trigger/index.ts +16 -31
  450. package/src/trigger/sources/cron/cron-service.ts +1 -1
  451. package/src/trigger/sources/webhook/webhook-handler.ts +1 -1
  452. package/src/trigger/strategies/ai-router.ts +170 -0
  453. package/src/trigger/trigger-system-v2.ts +536 -0
  454. package/src/trigger/types.ts +13 -0
  455. package/src/workspace/strategies/optimistic.ts +9 -6
  456. package/.claude/settings.local.json +0 -61
  457. package/dist/acp/websocket-stream.d.ts +0 -30
  458. package/dist/acp/websocket-stream.d.ts.map +0 -1
  459. package/dist/acp/websocket-stream.js +0 -118
  460. package/dist/acp/websocket-stream.js.map +0 -1
  461. package/dist/activity/deduplication.d.ts +0 -85
  462. package/dist/activity/deduplication.d.ts.map +0 -1
  463. package/dist/activity/deduplication.js +0 -149
  464. package/dist/activity/deduplication.js.map +0 -1
  465. package/dist/activity/index.d.ts +0 -16
  466. package/dist/activity/index.d.ts.map +0 -1
  467. package/dist/activity/index.js +0 -17
  468. package/dist/activity/index.js.map +0 -1
  469. package/dist/activity/relevance.d.ts +0 -81
  470. package/dist/activity/relevance.d.ts.map +0 -1
  471. package/dist/activity/relevance.js +0 -161
  472. package/dist/activity/relevance.js.map +0 -1
  473. package/dist/activity/types.d.ts +0 -169
  474. package/dist/activity/types.d.ts.map +0 -1
  475. package/dist/activity/types.js +0 -33
  476. package/dist/activity/types.js.map +0 -1
  477. package/dist/activity/watcher.d.ts +0 -64
  478. package/dist/activity/watcher.d.ts.map +0 -1
  479. package/dist/activity/watcher.js +0 -212
  480. package/dist/activity/watcher.js.map +0 -1
  481. package/dist/agent/wake.d.ts +0 -85
  482. package/dist/agent/wake.d.ts.map +0 -1
  483. package/dist/agent/wake.js +0 -278
  484. package/dist/agent/wake.js.map +0 -1
  485. package/dist/lifecycle/handlers/generic.d.ts +0 -27
  486. package/dist/lifecycle/handlers/generic.d.ts.map +0 -1
  487. package/dist/lifecycle/handlers/generic.js +0 -56
  488. package/dist/lifecycle/handlers/generic.js.map +0 -1
  489. package/dist/lifecycle/handlers/index.d.ts +0 -47
  490. package/dist/lifecycle/handlers/index.d.ts.map +0 -1
  491. package/dist/lifecycle/handlers/index.js +0 -93
  492. package/dist/lifecycle/handlers/index.js.map +0 -1
  493. package/dist/lifecycle/handlers/integrator.d.ts +0 -81
  494. package/dist/lifecycle/handlers/integrator.d.ts.map +0 -1
  495. package/dist/lifecycle/handlers/integrator.js +0 -451
  496. package/dist/lifecycle/handlers/integrator.js.map +0 -1
  497. package/dist/lifecycle/handlers/monitor.d.ts +0 -29
  498. package/dist/lifecycle/handlers/monitor.d.ts.map +0 -1
  499. package/dist/lifecycle/handlers/monitor.js +0 -79
  500. package/dist/lifecycle/handlers/monitor.js.map +0 -1
  501. package/dist/lifecycle/handlers/worker.d.ts +0 -56
  502. package/dist/lifecycle/handlers/worker.d.ts.map +0 -1
  503. package/dist/lifecycle/handlers/worker.js +0 -381
  504. package/dist/lifecycle/handlers/worker.js.map +0 -1
  505. package/dist/mail/conversation-map.d.ts +0 -33
  506. package/dist/mail/conversation-map.d.ts.map +0 -1
  507. package/dist/mail/conversation-map.js +0 -61
  508. package/dist/mail/conversation-map.js.map +0 -1
  509. package/dist/mail/index.d.ts +0 -11
  510. package/dist/mail/index.d.ts.map +0 -1
  511. package/dist/mail/index.js +0 -11
  512. package/dist/mail/index.js.map +0 -1
  513. package/dist/mail/mail-service.d.ts +0 -85
  514. package/dist/mail/mail-service.d.ts.map +0 -1
  515. package/dist/mail/mail-service.js +0 -121
  516. package/dist/mail/mail-service.js.map +0 -1
  517. package/dist/mail/stores/eventstore-conversation-store.d.ts +0 -40
  518. package/dist/mail/stores/eventstore-conversation-store.d.ts.map +0 -1
  519. package/dist/mail/stores/eventstore-conversation-store.js +0 -131
  520. package/dist/mail/stores/eventstore-conversation-store.js.map +0 -1
  521. package/dist/mail/stores/eventstore-participant-store.d.ts +0 -43
  522. package/dist/mail/stores/eventstore-participant-store.d.ts.map +0 -1
  523. package/dist/mail/stores/eventstore-participant-store.js +0 -145
  524. package/dist/mail/stores/eventstore-participant-store.js.map +0 -1
  525. package/dist/mail/stores/eventstore-thread-store.d.ts +0 -46
  526. package/dist/mail/stores/eventstore-thread-store.d.ts.map +0 -1
  527. package/dist/mail/stores/eventstore-thread-store.js +0 -118
  528. package/dist/mail/stores/eventstore-thread-store.js.map +0 -1
  529. package/dist/mail/stores/eventstore-turn-store.d.ts +0 -47
  530. package/dist/mail/stores/eventstore-turn-store.d.ts.map +0 -1
  531. package/dist/mail/stores/eventstore-turn-store.js +0 -153
  532. package/dist/mail/stores/eventstore-turn-store.js.map +0 -1
  533. package/dist/mail/stores/index.d.ts +0 -12
  534. package/dist/mail/stores/index.d.ts.map +0 -1
  535. package/dist/mail/stores/index.js +0 -12
  536. package/dist/mail/stores/index.js.map +0 -1
  537. package/dist/mail/stores/types.d.ts +0 -146
  538. package/dist/mail/stores/types.d.ts.map +0 -1
  539. package/dist/mail/stores/types.js +0 -13
  540. package/dist/mail/stores/types.js.map +0 -1
  541. package/dist/mail/turn-recorder.d.ts +0 -30
  542. package/dist/mail/turn-recorder.d.ts.map +0 -1
  543. package/dist/mail/turn-recorder.js +0 -98
  544. package/dist/mail/turn-recorder.js.map +0 -1
  545. package/dist/map/adapter/acp-over-map.d.ts +0 -115
  546. package/dist/map/adapter/acp-over-map.d.ts.map +0 -1
  547. package/dist/map/adapter/acp-over-map.js +0 -1024
  548. package/dist/map/adapter/acp-over-map.js.map +0 -1
  549. package/dist/map/adapter/connection-manager.d.ts +0 -150
  550. package/dist/map/adapter/connection-manager.d.ts.map +0 -1
  551. package/dist/map/adapter/connection-manager.js +0 -207
  552. package/dist/map/adapter/connection-manager.js.map +0 -1
  553. package/dist/map/adapter/event-log.d.ts +0 -87
  554. package/dist/map/adapter/event-log.d.ts.map +0 -1
  555. package/dist/map/adapter/event-log.js +0 -122
  556. package/dist/map/adapter/event-log.js.map +0 -1
  557. package/dist/map/adapter/event-translator.d.ts +0 -85
  558. package/dist/map/adapter/event-translator.d.ts.map +0 -1
  559. package/dist/map/adapter/event-translator.js +0 -295
  560. package/dist/map/adapter/event-translator.js.map +0 -1
  561. package/dist/map/adapter/extensions/agent-detection.d.ts +0 -49
  562. package/dist/map/adapter/extensions/agent-detection.d.ts.map +0 -1
  563. package/dist/map/adapter/extensions/agent-detection.js +0 -91
  564. package/dist/map/adapter/extensions/agent-detection.js.map +0 -1
  565. package/dist/map/adapter/extensions/agent-lifecycle.d.ts +0 -82
  566. package/dist/map/adapter/extensions/agent-lifecycle.d.ts.map +0 -1
  567. package/dist/map/adapter/extensions/agent-lifecycle.js +0 -164
  568. package/dist/map/adapter/extensions/agent-lifecycle.js.map +0 -1
  569. package/dist/map/adapter/extensions/index.d.ts +0 -89
  570. package/dist/map/adapter/extensions/index.d.ts.map +0 -1
  571. package/dist/map/adapter/extensions/index.js +0 -187
  572. package/dist/map/adapter/extensions/index.js.map +0 -1
  573. package/dist/map/adapter/extensions/mcp-bridge.d.ts +0 -57
  574. package/dist/map/adapter/extensions/mcp-bridge.d.ts.map +0 -1
  575. package/dist/map/adapter/extensions/mcp-bridge.js +0 -745
  576. package/dist/map/adapter/extensions/mcp-bridge.js.map +0 -1
  577. package/dist/map/adapter/extensions/rename.d.ts +0 -29
  578. package/dist/map/adapter/extensions/rename.d.ts.map +0 -1
  579. package/dist/map/adapter/extensions/rename.js +0 -49
  580. package/dist/map/adapter/extensions/rename.js.map +0 -1
  581. package/dist/map/adapter/extensions/resume.d.ts +0 -47
  582. package/dist/map/adapter/extensions/resume.d.ts.map +0 -1
  583. package/dist/map/adapter/extensions/resume.js +0 -59
  584. package/dist/map/adapter/extensions/resume.js.map +0 -1
  585. package/dist/map/adapter/extensions/task.d.ts +0 -40
  586. package/dist/map/adapter/extensions/task.d.ts.map +0 -1
  587. package/dist/map/adapter/extensions/task.js +0 -197
  588. package/dist/map/adapter/extensions/task.js.map +0 -1
  589. package/dist/map/adapter/extensions/update-metadata.d.ts +0 -29
  590. package/dist/map/adapter/extensions/update-metadata.d.ts.map +0 -1
  591. package/dist/map/adapter/extensions/update-metadata.js +0 -67
  592. package/dist/map/adapter/extensions/update-metadata.js.map +0 -1
  593. package/dist/map/adapter/extensions/wake.d.ts +0 -60
  594. package/dist/map/adapter/extensions/wake.d.ts.map +0 -1
  595. package/dist/map/adapter/extensions/wake.js +0 -144
  596. package/dist/map/adapter/extensions/wake.js.map +0 -1
  597. package/dist/map/adapter/extensions/workspace-files.d.ts +0 -42
  598. package/dist/map/adapter/extensions/workspace-files.d.ts.map +0 -1
  599. package/dist/map/adapter/extensions/workspace-files.js +0 -338
  600. package/dist/map/adapter/extensions/workspace-files.js.map +0 -1
  601. package/dist/map/adapter/extensions/workspace.d.ts +0 -57
  602. package/dist/map/adapter/extensions/workspace.d.ts.map +0 -1
  603. package/dist/map/adapter/extensions/workspace.js +0 -81
  604. package/dist/map/adapter/extensions/workspace.js.map +0 -1
  605. package/dist/map/adapter/index.d.ts +0 -20
  606. package/dist/map/adapter/index.d.ts.map +0 -1
  607. package/dist/map/adapter/index.js +0 -38
  608. package/dist/map/adapter/index.js.map +0 -1
  609. package/dist/map/adapter/interface.d.ts +0 -450
  610. package/dist/map/adapter/interface.d.ts.map +0 -1
  611. package/dist/map/adapter/interface.js +0 -24
  612. package/dist/map/adapter/interface.js.map +0 -1
  613. package/dist/map/adapter/mail-handler-adapter.d.ts +0 -27
  614. package/dist/map/adapter/mail-handler-adapter.d.ts.map +0 -1
  615. package/dist/map/adapter/mail-handler-adapter.js +0 -292
  616. package/dist/map/adapter/mail-handler-adapter.js.map +0 -1
  617. package/dist/map/adapter/map-adapter.d.ts +0 -200
  618. package/dist/map/adapter/map-adapter.d.ts.map +0 -1
  619. package/dist/map/adapter/map-adapter.js +0 -1199
  620. package/dist/map/adapter/map-adapter.js.map +0 -1
  621. package/dist/map/adapter/rpc-handler.d.ts +0 -263
  622. package/dist/map/adapter/rpc-handler.d.ts.map +0 -1
  623. package/dist/map/adapter/rpc-handler.js +0 -365
  624. package/dist/map/adapter/rpc-handler.js.map +0 -1
  625. package/dist/map/adapter/subscription-manager.d.ts +0 -174
  626. package/dist/map/adapter/subscription-manager.d.ts.map +0 -1
  627. package/dist/map/adapter/subscription-manager.js +0 -248
  628. package/dist/map/adapter/subscription-manager.js.map +0 -1
  629. package/dist/map/adapter/types.d.ts +0 -194
  630. package/dist/map/adapter/types.d.ts.map +0 -1
  631. package/dist/map/adapter/types.js +0 -27
  632. package/dist/map/adapter/types.js.map +0 -1
  633. package/dist/map/adapter/websocket-integration.d.ts +0 -113
  634. package/dist/map/adapter/websocket-integration.d.ts.map +0 -1
  635. package/dist/map/adapter/websocket-integration.js +0 -134
  636. package/dist/map/adapter/websocket-integration.js.map +0 -1
  637. package/dist/map/federation/envelope.d.ts +0 -98
  638. package/dist/map/federation/envelope.d.ts.map +0 -1
  639. package/dist/map/federation/envelope.js +0 -160
  640. package/dist/map/federation/envelope.js.map +0 -1
  641. package/dist/map/federation/federation-handler.d.ts +0 -50
  642. package/dist/map/federation/federation-handler.d.ts.map +0 -1
  643. package/dist/map/federation/federation-handler.js +0 -306
  644. package/dist/map/federation/federation-handler.js.map +0 -1
  645. package/dist/map/federation/index.d.ts +0 -14
  646. package/dist/map/federation/index.d.ts.map +0 -1
  647. package/dist/map/federation/index.js +0 -13
  648. package/dist/map/federation/index.js.map +0 -1
  649. package/dist/map/federation/types.d.ts +0 -239
  650. package/dist/map/federation/types.d.ts.map +0 -1
  651. package/dist/map/federation/types.js +0 -23
  652. package/dist/map/federation/types.js.map +0 -1
  653. package/dist/map/utils/address-translation.d.ts +0 -99
  654. package/dist/map/utils/address-translation.d.ts.map +0 -1
  655. package/dist/map/utils/address-translation.js +0 -285
  656. package/dist/map/utils/address-translation.js.map +0 -1
  657. package/dist/map/utils/index.d.ts +0 -7
  658. package/dist/map/utils/index.d.ts.map +0 -1
  659. package/dist/map/utils/index.js +0 -7
  660. package/dist/map/utils/index.js.map +0 -1
  661. package/dist/mcp/map-client.d.ts +0 -39
  662. package/dist/mcp/map-client.d.ts.map +0 -1
  663. package/dist/mcp/map-client.js +0 -129
  664. package/dist/mcp/map-client.js.map +0 -1
  665. package/dist/mcp/mcp-server.d.ts +0 -70
  666. package/dist/mcp/mcp-server.d.ts.map +0 -1
  667. package/dist/mcp/mcp-server.js +0 -1015
  668. package/dist/mcp/mcp-server.js.map +0 -1
  669. package/dist/mcp/tools/claim_task.d.ts +0 -35
  670. package/dist/mcp/tools/claim_task.d.ts.map +0 -1
  671. package/dist/mcp/tools/claim_task.js +0 -58
  672. package/dist/mcp/tools/claim_task.js.map +0 -1
  673. package/dist/mcp/tools/done.d.ts +0 -102
  674. package/dist/mcp/tools/done.d.ts.map +0 -1
  675. package/dist/mcp/tools/done.js +0 -234
  676. package/dist/mcp/tools/done.js.map +0 -1
  677. package/dist/mcp/tools/inject_context.d.ts +0 -61
  678. package/dist/mcp/tools/inject_context.d.ts.map +0 -1
  679. package/dist/mcp/tools/inject_context.js +0 -123
  680. package/dist/mcp/tools/inject_context.js.map +0 -1
  681. package/dist/mcp/tools/list_claimable_tasks.d.ts +0 -38
  682. package/dist/mcp/tools/list_claimable_tasks.d.ts.map +0 -1
  683. package/dist/mcp/tools/list_claimable_tasks.js +0 -63
  684. package/dist/mcp/tools/list_claimable_tasks.js.map +0 -1
  685. package/dist/mcp/tools/unclaim_task.d.ts +0 -31
  686. package/dist/mcp/tools/unclaim_task.d.ts.map +0 -1
  687. package/dist/mcp/tools/unclaim_task.js +0 -47
  688. package/dist/mcp/tools/unclaim_task.js.map +0 -1
  689. package/dist/mcp/tools/wait_for_activity.d.ts +0 -60
  690. package/dist/mcp/tools/wait_for_activity.d.ts.map +0 -1
  691. package/dist/mcp/tools/wait_for_activity.js +0 -135
  692. package/dist/mcp/tools/wait_for_activity.js.map +0 -1
  693. package/dist/monitor/health-check-service.d.ts +0 -143
  694. package/dist/monitor/health-check-service.d.ts.map +0 -1
  695. package/dist/monitor/health-check-service.js +0 -240
  696. package/dist/monitor/health-check-service.js.map +0 -1
  697. package/dist/monitor/index.d.ts +0 -14
  698. package/dist/monitor/index.d.ts.map +0 -1
  699. package/dist/monitor/index.js +0 -14
  700. package/dist/monitor/index.js.map +0 -1
  701. package/dist/monitor/stall-detector.d.ts +0 -109
  702. package/dist/monitor/stall-detector.d.ts.map +0 -1
  703. package/dist/monitor/stall-detector.js +0 -152
  704. package/dist/monitor/stall-detector.js.map +0 -1
  705. package/dist/peer/capability-manager.d.ts +0 -56
  706. package/dist/peer/capability-manager.d.ts.map +0 -1
  707. package/dist/peer/capability-manager.js +0 -186
  708. package/dist/peer/capability-manager.js.map +0 -1
  709. package/dist/peer/encapsulation-manager.d.ts +0 -190
  710. package/dist/peer/encapsulation-manager.d.ts.map +0 -1
  711. package/dist/peer/encapsulation-manager.js +0 -486
  712. package/dist/peer/encapsulation-manager.js.map +0 -1
  713. package/dist/peer/federation-manager.d.ts +0 -223
  714. package/dist/peer/federation-manager.d.ts.map +0 -1
  715. package/dist/peer/federation-manager.js +0 -528
  716. package/dist/peer/federation-manager.js.map +0 -1
  717. package/dist/peer/hierarchy-errors.d.ts +0 -208
  718. package/dist/peer/hierarchy-errors.d.ts.map +0 -1
  719. package/dist/peer/hierarchy-errors.js +0 -268
  720. package/dist/peer/hierarchy-errors.js.map +0 -1
  721. package/dist/peer/hierarchy-protocol.d.ts +0 -159
  722. package/dist/peer/hierarchy-protocol.d.ts.map +0 -1
  723. package/dist/peer/hierarchy-protocol.js +0 -142
  724. package/dist/peer/hierarchy-protocol.js.map +0 -1
  725. package/dist/peer/index.d.ts +0 -15
  726. package/dist/peer/index.d.ts.map +0 -1
  727. package/dist/peer/index.js +0 -15
  728. package/dist/peer/index.js.map +0 -1
  729. package/dist/peer/peer-manager.d.ts +0 -99
  730. package/dist/peer/peer-manager.d.ts.map +0 -1
  731. package/dist/peer/peer-manager.js +0 -333
  732. package/dist/peer/peer-manager.js.map +0 -1
  733. package/dist/peer/task-delegation.d.ts +0 -189
  734. package/dist/peer/task-delegation.d.ts.map +0 -1
  735. package/dist/peer/task-delegation.js +0 -303
  736. package/dist/peer/task-delegation.js.map +0 -1
  737. package/dist/peer/transports/index.d.ts +0 -8
  738. package/dist/peer/transports/index.d.ts.map +0 -1
  739. package/dist/peer/transports/index.js +0 -8
  740. package/dist/peer/transports/index.js.map +0 -1
  741. package/dist/peer/transports/local-transport.d.ts +0 -56
  742. package/dist/peer/transports/local-transport.d.ts.map +0 -1
  743. package/dist/peer/transports/local-transport.js +0 -263
  744. package/dist/peer/transports/local-transport.js.map +0 -1
  745. package/dist/peer/transports/websocket-transport.d.ts +0 -86
  746. package/dist/peer/transports/websocket-transport.d.ts.map +0 -1
  747. package/dist/peer/transports/websocket-transport.js +0 -338
  748. package/dist/peer/transports/websocket-transport.js.map +0 -1
  749. package/dist/peer/types.d.ts +0 -268
  750. package/dist/peer/types.d.ts.map +0 -1
  751. package/dist/peer/types.js +0 -36
  752. package/dist/peer/types.js.map +0 -1
  753. package/dist/router/address-resolver.d.ts +0 -102
  754. package/dist/router/address-resolver.d.ts.map +0 -1
  755. package/dist/router/address-resolver.js +0 -198
  756. package/dist/router/address-resolver.js.map +0 -1
  757. package/dist/router/broadcast.d.ts +0 -53
  758. package/dist/router/broadcast.d.ts.map +0 -1
  759. package/dist/router/broadcast.js +0 -75
  760. package/dist/router/broadcast.js.map +0 -1
  761. package/dist/router/channels.d.ts +0 -148
  762. package/dist/router/channels.d.ts.map +0 -1
  763. package/dist/router/channels.js +0 -126
  764. package/dist/router/channels.js.map +0 -1
  765. package/dist/router/index.d.ts +0 -21
  766. package/dist/router/index.d.ts.map +0 -1
  767. package/dist/router/index.js +0 -18
  768. package/dist/router/index.js.map +0 -1
  769. package/dist/router/message-router.d.ts +0 -197
  770. package/dist/router/message-router.d.ts.map +0 -1
  771. package/dist/router/message-router.js +0 -903
  772. package/dist/router/message-router.js.map +0 -1
  773. package/dist/router/message-types.d.ts +0 -183
  774. package/dist/router/message-types.d.ts.map +0 -1
  775. package/dist/router/message-types.js +0 -79
  776. package/dist/router/message-types.js.map +0 -1
  777. package/dist/router/role-resolver.d.ts +0 -67
  778. package/dist/router/role-resolver.d.ts.map +0 -1
  779. package/dist/router/role-resolver.js +0 -106
  780. package/dist/router/role-resolver.js.map +0 -1
  781. package/dist/router/signals.d.ts +0 -253
  782. package/dist/router/signals.d.ts.map +0 -1
  783. package/dist/router/signals.js +0 -53
  784. package/dist/router/signals.js.map +0 -1
  785. package/dist/router/types.d.ts +0 -191
  786. package/dist/router/types.d.ts.map +0 -1
  787. package/dist/router/types.js +0 -34
  788. package/dist/router/types.js.map +0 -1
  789. package/dist/router/wake.d.ts +0 -111
  790. package/dist/router/wake.d.ts.map +0 -1
  791. package/dist/router/wake.js +0 -180
  792. package/dist/router/wake.js.map +0 -1
  793. package/dist/server/combined-server.d.ts +0 -88
  794. package/dist/server/combined-server.d.ts.map +0 -1
  795. package/dist/server/combined-server.js +0 -331
  796. package/dist/server/combined-server.js.map +0 -1
  797. package/dist/steering/index.d.ts +0 -11
  798. package/dist/steering/index.d.ts.map +0 -1
  799. package/dist/steering/index.js +0 -11
  800. package/dist/steering/index.js.map +0 -1
  801. package/dist/steering/inject.d.ts +0 -39
  802. package/dist/steering/inject.d.ts.map +0 -1
  803. package/dist/steering/inject.js +0 -197
  804. package/dist/steering/inject.js.map +0 -1
  805. package/dist/steering/types.d.ts +0 -100
  806. package/dist/steering/types.d.ts.map +0 -1
  807. package/dist/steering/types.js +0 -11
  808. package/dist/steering/types.js.map +0 -1
  809. package/dist/store/backends/index.d.ts +0 -11
  810. package/dist/store/backends/index.d.ts.map +0 -1
  811. package/dist/store/backends/index.js +0 -15
  812. package/dist/store/backends/index.js.map +0 -1
  813. package/dist/store/backends/json-backend.d.ts +0 -23
  814. package/dist/store/backends/json-backend.d.ts.map +0 -1
  815. package/dist/store/backends/json-backend.js +0 -220
  816. package/dist/store/backends/json-backend.js.map +0 -1
  817. package/dist/store/backends/memory-backend.d.ts +0 -12
  818. package/dist/store/backends/memory-backend.d.ts.map +0 -1
  819. package/dist/store/backends/memory-backend.js +0 -205
  820. package/dist/store/backends/memory-backend.js.map +0 -1
  821. package/dist/store/backends/sqlite-backend.d.ts +0 -27
  822. package/dist/store/backends/sqlite-backend.d.ts.map +0 -1
  823. package/dist/store/backends/sqlite-backend.js +0 -231
  824. package/dist/store/backends/sqlite-backend.js.map +0 -1
  825. package/dist/store/backends/tinybase-backend.d.ts +0 -22
  826. package/dist/store/backends/tinybase-backend.d.ts.map +0 -1
  827. package/dist/store/backends/tinybase-backend.js +0 -203
  828. package/dist/store/backends/tinybase-backend.js.map +0 -1
  829. package/dist/store/backends/types.d.ts +0 -175
  830. package/dist/store/backends/types.d.ts.map +0 -1
  831. package/dist/store/backends/types.js +0 -28
  832. package/dist/store/backends/types.js.map +0 -1
  833. package/dist/store/event-store.d.ts +0 -128
  834. package/dist/store/event-store.d.ts.map +0 -1
  835. package/dist/store/event-store.js +0 -1739
  836. package/dist/store/event-store.js.map +0 -1
  837. package/dist/store/instance.d.ts +0 -283
  838. package/dist/store/instance.d.ts.map +0 -1
  839. package/dist/store/instance.js +0 -363
  840. package/dist/store/instance.js.map +0 -1
  841. package/dist/store/migrations.d.ts +0 -41
  842. package/dist/store/migrations.d.ts.map +0 -1
  843. package/dist/store/migrations.js +0 -79
  844. package/dist/store/migrations.js.map +0 -1
  845. package/dist/store/types/config.d.ts +0 -16
  846. package/dist/store/types/config.d.ts.map +0 -1
  847. package/dist/store/types/config.js +0 -8
  848. package/dist/store/types/config.js.map +0 -1
  849. package/dist/store/types/conversations.d.ts +0 -91
  850. package/dist/store/types/conversations.d.ts.map +0 -1
  851. package/dist/store/types/conversations.js +0 -8
  852. package/dist/store/types/conversations.js.map +0 -1
  853. package/dist/store/types/sessions.d.ts +0 -44
  854. package/dist/store/types/sessions.d.ts.map +0 -1
  855. package/dist/store/types/sessions.js +0 -9
  856. package/dist/store/types/sessions.js.map +0 -1
  857. package/dist/task/backend/index.d.ts +0 -93
  858. package/dist/task/backend/index.d.ts.map +0 -1
  859. package/dist/task/backend/index.js +0 -178
  860. package/dist/task/backend/index.js.map +0 -1
  861. package/dist/task/backend/memory.d.ts +0 -70
  862. package/dist/task/backend/memory.d.ts.map +0 -1
  863. package/dist/task/backend/memory.js +0 -621
  864. package/dist/task/backend/memory.js.map +0 -1
  865. package/dist/task/backend/opentasks/backend.d.ts +0 -140
  866. package/dist/task/backend/opentasks/backend.d.ts.map +0 -1
  867. package/dist/task/backend/opentasks/backend.js +0 -1023
  868. package/dist/task/backend/opentasks/backend.js.map +0 -1
  869. package/dist/task/backend/opentasks/client.d.ts +0 -337
  870. package/dist/task/backend/opentasks/client.d.ts.map +0 -1
  871. package/dist/task/backend/opentasks/client.js +0 -225
  872. package/dist/task/backend/opentasks/client.js.map +0 -1
  873. package/dist/task/backend/opentasks/daemon-manager.d.ts +0 -89
  874. package/dist/task/backend/opentasks/daemon-manager.d.ts.map +0 -1
  875. package/dist/task/backend/opentasks/daemon-manager.js +0 -195
  876. package/dist/task/backend/opentasks/daemon-manager.js.map +0 -1
  877. package/dist/task/backend/opentasks/index.d.ts +0 -21
  878. package/dist/task/backend/opentasks/index.d.ts.map +0 -1
  879. package/dist/task/backend/opentasks/index.js +0 -21
  880. package/dist/task/backend/opentasks/index.js.map +0 -1
  881. package/dist/task/backend/opentasks/mapping.d.ts +0 -48
  882. package/dist/task/backend/opentasks/mapping.d.ts.map +0 -1
  883. package/dist/task/backend/opentasks/mapping.js +0 -77
  884. package/dist/task/backend/opentasks/mapping.js.map +0 -1
  885. package/dist/task/backend/sudocode/__tests__/integration/test-utils.d.ts +0 -54
  886. package/dist/task/backend/sudocode/__tests__/integration/test-utils.d.ts.map +0 -1
  887. package/dist/task/backend/sudocode/__tests__/integration/test-utils.js +0 -88
  888. package/dist/task/backend/sudocode/__tests__/integration/test-utils.js.map +0 -1
  889. package/dist/task/backend/sudocode/backend.d.ts +0 -155
  890. package/dist/task/backend/sudocode/backend.d.ts.map +0 -1
  891. package/dist/task/backend/sudocode/backend.js +0 -942
  892. package/dist/task/backend/sudocode/backend.js.map +0 -1
  893. package/dist/task/backend/sudocode/client.d.ts +0 -303
  894. package/dist/task/backend/sudocode/client.d.ts.map +0 -1
  895. package/dist/task/backend/sudocode/client.js +0 -101
  896. package/dist/task/backend/sudocode/client.js.map +0 -1
  897. package/dist/task/backend/sudocode/index.d.ts +0 -19
  898. package/dist/task/backend/sudocode/index.d.ts.map +0 -1
  899. package/dist/task/backend/sudocode/index.js +0 -17
  900. package/dist/task/backend/sudocode/index.js.map +0 -1
  901. package/dist/task/backend/sudocode/mapping.d.ts +0 -51
  902. package/dist/task/backend/sudocode/mapping.d.ts.map +0 -1
  903. package/dist/task/backend/sudocode/mapping.js +0 -86
  904. package/dist/task/backend/sudocode/mapping.js.map +0 -1
  905. package/dist/task/backend/sudocode/server-client.d.ts +0 -56
  906. package/dist/task/backend/sudocode/server-client.d.ts.map +0 -1
  907. package/dist/task/backend/sudocode/server-client.js +0 -367
  908. package/dist/task/backend/sudocode/server-client.js.map +0 -1
  909. package/dist/task/backend/sudocode/standalone-client.d.ts +0 -91
  910. package/dist/task/backend/sudocode/standalone-client.d.ts.map +0 -1
  911. package/dist/task/backend/sudocode/standalone-client.js +0 -476
  912. package/dist/task/backend/sudocode/standalone-client.js.map +0 -1
  913. package/dist/task/backend/sudocode/sync-policy.d.ts +0 -166
  914. package/dist/task/backend/sudocode/sync-policy.d.ts.map +0 -1
  915. package/dist/task/backend/sudocode/sync-policy.js +0 -221
  916. package/dist/task/backend/sudocode/sync-policy.js.map +0 -1
  917. package/dist/task/backend/sudocode/tools.d.ts +0 -87
  918. package/dist/task/backend/sudocode/tools.d.ts.map +0 -1
  919. package/dist/task/backend/sudocode/tools.js +0 -743
  920. package/dist/task/backend/sudocode/tools.js.map +0 -1
  921. package/dist/task/backend/tool-provider.d.ts +0 -56
  922. package/dist/task/backend/tool-provider.d.ts.map +0 -1
  923. package/dist/task/backend/tool-provider.js +0 -424
  924. package/dist/task/backend/tool-provider.js.map +0 -1
  925. package/dist/task/backend/types.d.ts +0 -297
  926. package/dist/task/backend/types.d.ts.map +0 -1
  927. package/dist/task/backend/types.js +0 -27
  928. package/dist/task/backend/types.js.map +0 -1
  929. package/dist/task/backend/unified-tool-provider.d.ts +0 -57
  930. package/dist/task/backend/unified-tool-provider.d.ts.map +0 -1
  931. package/dist/task/backend/unified-tool-provider.js +0 -623
  932. package/dist/task/backend/unified-tool-provider.js.map +0 -1
  933. package/dist/task/index.d.ts +0 -7
  934. package/dist/task/index.d.ts.map +0 -1
  935. package/dist/task/index.js +0 -7
  936. package/dist/task/index.js.map +0 -1
  937. package/dist/task/retry-policy.d.ts +0 -89
  938. package/dist/task/retry-policy.d.ts.map +0 -1
  939. package/dist/task/retry-policy.js +0 -160
  940. package/dist/task/retry-policy.js.map +0 -1
  941. package/dist/task/task-manager.d.ts +0 -70
  942. package/dist/task/task-manager.d.ts.map +0 -1
  943. package/dist/task/task-manager.js +0 -319
  944. package/dist/task/task-manager.js.map +0 -1
  945. package/dist/task/types.d.ts +0 -72
  946. package/dist/task/types.d.ts.map +0 -1
  947. package/dist/task/types.js +0 -33
  948. package/dist/task/types.js.map +0 -1
  949. package/dist/teams/team-runtime.d.ts +0 -139
  950. package/dist/teams/team-runtime.d.ts.map +0 -1
  951. package/dist/teams/team-runtime.js +0 -615
  952. package/dist/teams/team-runtime.js.map +0 -1
  953. package/dist/trigger/router/index.d.ts +0 -11
  954. package/dist/trigger/router/index.d.ts.map +0 -1
  955. package/dist/trigger/router/index.js +0 -10
  956. package/dist/trigger/router/index.js.map +0 -1
  957. package/dist/trigger/router/strategies/ai-router-strategy.d.ts +0 -34
  958. package/dist/trigger/router/strategies/ai-router-strategy.d.ts.map +0 -1
  959. package/dist/trigger/router/strategies/ai-router-strategy.js +0 -359
  960. package/dist/trigger/router/strategies/ai-router-strategy.js.map +0 -1
  961. package/dist/trigger/router/strategies/direct-strategy.d.ts +0 -32
  962. package/dist/trigger/router/strategies/direct-strategy.d.ts.map +0 -1
  963. package/dist/trigger/router/strategies/direct-strategy.js +0 -119
  964. package/dist/trigger/router/strategies/direct-strategy.js.map +0 -1
  965. package/dist/trigger/router/strategies/index.d.ts +0 -11
  966. package/dist/trigger/router/strategies/index.d.ts.map +0 -1
  967. package/dist/trigger/router/strategies/index.js +0 -11
  968. package/dist/trigger/router/strategies/index.js.map +0 -1
  969. package/dist/trigger/router/strategies/role-strategy.d.ts +0 -39
  970. package/dist/trigger/router/strategies/role-strategy.d.ts.map +0 -1
  971. package/dist/trigger/router/strategies/role-strategy.js +0 -207
  972. package/dist/trigger/router/strategies/role-strategy.js.map +0 -1
  973. package/dist/trigger/router/trigger-router.d.ts +0 -54
  974. package/dist/trigger/router/trigger-router.d.ts.map +0 -1
  975. package/dist/trigger/router/trigger-router.js +0 -362
  976. package/dist/trigger/router/trigger-router.js.map +0 -1
  977. package/dist/trigger/router/types.d.ts +0 -225
  978. package/dist/trigger/router/types.d.ts.map +0 -1
  979. package/dist/trigger/router/types.js +0 -10
  980. package/dist/trigger/router/types.js.map +0 -1
  981. package/dist/trigger/trigger-system.d.ts +0 -77
  982. package/dist/trigger/trigger-system.d.ts.map +0 -1
  983. package/dist/trigger/trigger-system.js +0 -84
  984. package/dist/trigger/trigger-system.js.map +0 -1
  985. package/references/acp-factory-ref/CHANGELOG.md +0 -33
  986. package/references/acp-factory-ref/LICENSE +0 -21
  987. package/references/acp-factory-ref/README.md +0 -341
  988. package/references/acp-factory-ref/package-lock.json +0 -3102
  989. package/references/acp-factory-ref/package.json +0 -96
  990. package/references/acp-factory-ref/python/CHANGELOG.md +0 -33
  991. package/references/acp-factory-ref/python/LICENSE +0 -21
  992. package/references/acp-factory-ref/python/Makefile +0 -57
  993. package/references/acp-factory-ref/python/README.md +0 -253
  994. package/references/acp-factory-ref/python/pyproject.toml +0 -73
  995. package/references/acp-factory-ref/python/tests/e2e/__init__.py +0 -1
  996. package/references/acp-factory-ref/python/tests/e2e/test_codex_e2e.py +0 -349
  997. package/references/acp-factory-ref/python/tests/e2e/test_gemini_e2e.py +0 -165
  998. package/references/acp-factory-ref/python/tests/e2e/test_opencode_e2e.py +0 -296
  999. package/references/acp-factory-ref/python/tests/test_client_handler.py +0 -543
  1000. package/references/acp-factory-ref/python/tests/test_pushable.py +0 -199
  1001. package/references/claude-code-acp/.github/workflows/ci.yml +0 -45
  1002. package/references/claude-code-acp/.github/workflows/publish.yml +0 -34
  1003. package/references/claude-code-acp/.prettierrc.json +0 -4
  1004. package/references/claude-code-acp/CHANGELOG.md +0 -249
  1005. package/references/claude-code-acp/LICENSE +0 -222
  1006. package/references/claude-code-acp/README.md +0 -53
  1007. package/references/claude-code-acp/docs/RELEASES.md +0 -24
  1008. package/references/claude-code-acp/eslint.config.js +0 -48
  1009. package/references/claude-code-acp/package-lock.json +0 -4570
  1010. package/references/claude-code-acp/package.json +0 -88
  1011. package/references/claude-code-acp/scripts/release.sh +0 -119
  1012. package/references/claude-code-acp/src/acp-agent.ts +0 -2076
  1013. package/references/claude-code-acp/src/index.ts +0 -26
  1014. package/references/claude-code-acp/src/lib.ts +0 -38
  1015. package/references/claude-code-acp/src/mcp-server.ts +0 -911
  1016. package/references/claude-code-acp/src/settings.ts +0 -522
  1017. package/references/claude-code-acp/src/tests/.claude/commands/quick-math.md +0 -5
  1018. package/references/claude-code-acp/src/tests/.claude/commands/say-hello.md +0 -6
  1019. package/references/claude-code-acp/src/tests/acp-agent-fork.test.ts +0 -479
  1020. package/references/claude-code-acp/src/tests/acp-agent.test.ts +0 -1502
  1021. package/references/claude-code-acp/src/tests/extract-lines.test.ts +0 -103
  1022. package/references/claude-code-acp/src/tests/fork-session.test.ts +0 -335
  1023. package/references/claude-code-acp/src/tests/replace-and-calculate-location.test.ts +0 -334
  1024. package/references/claude-code-acp/src/tests/settings.test.ts +0 -617
  1025. package/references/claude-code-acp/src/tests/skills-options.test.ts +0 -187
  1026. package/references/claude-code-acp/src/tests/tools.test.ts +0 -318
  1027. package/references/claude-code-acp/src/tests/typescript-declarations.test.ts +0 -558
  1028. package/references/claude-code-acp/src/tools.ts +0 -819
  1029. package/references/claude-code-acp/src/utils.ts +0 -171
  1030. package/references/claude-code-acp/tsconfig.json +0 -18
  1031. package/references/claude-code-acp/vitest.config.ts +0 -19
  1032. package/references/multi-agent-protocol/.sudocode/issues.jsonl +0 -111
  1033. package/references/multi-agent-protocol/.sudocode/specs.jsonl +0 -13
  1034. package/references/multi-agent-protocol/LICENSE +0 -21
  1035. package/references/multi-agent-protocol/README.md +0 -113
  1036. package/references/multi-agent-protocol/docs/00-design-specification.md +0 -496
  1037. package/references/multi-agent-protocol/docs/01-open-questions.md +0 -1050
  1038. package/references/multi-agent-protocol/docs/02-wire-protocol.md +0 -296
  1039. package/references/multi-agent-protocol/docs/03-streaming-semantics.md +0 -252
  1040. package/references/multi-agent-protocol/docs/04-error-handling.md +0 -231
  1041. package/references/multi-agent-protocol/docs/05-connection-model.md +0 -244
  1042. package/references/multi-agent-protocol/docs/06-visibility-permissions.md +0 -243
  1043. package/references/multi-agent-protocol/docs/07-federation.md +0 -259
  1044. package/references/multi-agent-protocol/docs/08-macro-agent-migration.md +0 -253
  1045. package/references/multi-agent-protocol/docs/09-authentication.md +0 -680
  1046. package/references/multi-agent-protocol/docs/10-mail-protocol.md +0 -553
  1047. package/references/multi-agent-protocol/docs/agent-iam-integration.md +0 -877
  1048. package/references/multi-agent-protocol/docs/agentic-mesh-integration-draft.md +0 -459
  1049. package/references/multi-agent-protocol/docs/git-transport-draft.md +0 -251
  1050. package/references/multi-agent-protocol/docs-site/Gemfile +0 -22
  1051. package/references/multi-agent-protocol/docs-site/README.md +0 -82
  1052. package/references/multi-agent-protocol/docs-site/_config.yml +0 -91
  1053. package/references/multi-agent-protocol/docs-site/_includes/head_custom.html +0 -20
  1054. package/references/multi-agent-protocol/docs-site/_sass/color_schemes/map.scss +0 -42
  1055. package/references/multi-agent-protocol/docs-site/_sass/custom/custom.scss +0 -34
  1056. package/references/multi-agent-protocol/docs-site/examples/full-integration.md +0 -510
  1057. package/references/multi-agent-protocol/docs-site/examples/index.md +0 -138
  1058. package/references/multi-agent-protocol/docs-site/examples/simple-chat.md +0 -282
  1059. package/references/multi-agent-protocol/docs-site/examples/task-queue.md +0 -399
  1060. package/references/multi-agent-protocol/docs-site/getting-started/index.md +0 -98
  1061. package/references/multi-agent-protocol/docs-site/getting-started/installation.md +0 -219
  1062. package/references/multi-agent-protocol/docs-site/getting-started/overview.md +0 -172
  1063. package/references/multi-agent-protocol/docs-site/getting-started/quickstart.md +0 -237
  1064. package/references/multi-agent-protocol/docs-site/index.md +0 -136
  1065. package/references/multi-agent-protocol/docs-site/protocol/authentication.md +0 -391
  1066. package/references/multi-agent-protocol/docs-site/protocol/connection-model.md +0 -376
  1067. package/references/multi-agent-protocol/docs-site/protocol/design.md +0 -284
  1068. package/references/multi-agent-protocol/docs-site/protocol/error-handling.md +0 -312
  1069. package/references/multi-agent-protocol/docs-site/protocol/federation.md +0 -449
  1070. package/references/multi-agent-protocol/docs-site/protocol/index.md +0 -129
  1071. package/references/multi-agent-protocol/docs-site/protocol/permissions.md +0 -398
  1072. package/references/multi-agent-protocol/docs-site/protocol/streaming.md +0 -353
  1073. package/references/multi-agent-protocol/docs-site/protocol/wire-protocol.md +0 -369
  1074. package/references/multi-agent-protocol/docs-site/sdk/api/agent.md +0 -357
  1075. package/references/multi-agent-protocol/docs-site/sdk/api/client.md +0 -380
  1076. package/references/multi-agent-protocol/docs-site/sdk/api/index.md +0 -62
  1077. package/references/multi-agent-protocol/docs-site/sdk/api/server.md +0 -453
  1078. package/references/multi-agent-protocol/docs-site/sdk/api/types.md +0 -468
  1079. package/references/multi-agent-protocol/docs-site/sdk/guides/agent.md +0 -375
  1080. package/references/multi-agent-protocol/docs-site/sdk/guides/authentication.md +0 -405
  1081. package/references/multi-agent-protocol/docs-site/sdk/guides/client.md +0 -352
  1082. package/references/multi-agent-protocol/docs-site/sdk/guides/index.md +0 -89
  1083. package/references/multi-agent-protocol/docs-site/sdk/guides/server.md +0 -360
  1084. package/references/multi-agent-protocol/docs-site/sdk/guides/testing.md +0 -446
  1085. package/references/multi-agent-protocol/docs-site/sdk/guides/transports.md +0 -363
  1086. package/references/multi-agent-protocol/docs-site/sdk/index.md +0 -206
  1087. package/references/multi-agent-protocol/package-lock.json +0 -3886
  1088. package/references/multi-agent-protocol/package.json +0 -56
  1089. package/references/multi-agent-protocol/schema/meta.json +0 -467
  1090. package/references/multi-agent-protocol/schema/schema.json +0 -2558
  1091. package/src/__tests__/e2e/agent-spawn-visibility.e2e.test.ts +0 -761
  1092. package/src/__tests__/e2e/cascade-termination.e2e.test.ts +0 -588
  1093. package/src/__tests__/e2e/conflict-resolution-flow.e2e.test.ts +0 -790
  1094. package/src/__tests__/e2e/full-agent-conflict-resolution.e2e.test.ts +0 -714
  1095. package/src/__tests__/e2e/full-agent-orchestration.e2e.test.ts +0 -536
  1096. package/src/__tests__/e2e/mcp-server-debug.e2e.test.ts +0 -372
  1097. package/src/__tests__/e2e/mcp-thin-client-bridge.e2e.test.ts +0 -304
  1098. package/src/__tests__/e2e/mcp-tools-available.e2e.test.ts +0 -324
  1099. package/src/__tests__/e2e/multi-agent.e2e.test.ts +0 -1527
  1100. package/src/__tests__/e2e/multi-coordinator.e2e.test.ts +0 -602
  1101. package/src/__tests__/e2e/orchestration-flow.e2e.test.ts +0 -686
  1102. package/src/__tests__/e2e/spawn-session-streaming.e2e.test.ts +0 -563
  1103. package/src/__tests__/e2e/steering-task.e2e.test.ts +0 -840
  1104. package/src/__tests__/integration.e2e.test.ts +0 -407
  1105. package/src/acp/__tests__/combined-websocket-server.test.ts +0 -260
  1106. package/src/acp/__tests__/history.test.ts +0 -530
  1107. package/src/acp/__tests__/integration.test.ts +0 -1049
  1108. package/src/acp/__tests__/multi-client-mounting.test.ts +0 -303
  1109. package/src/acp/__tests__/session-persistence.test.ts +0 -276
  1110. package/src/acp/__tests__/websocket-full.e2e.test.ts +0 -401
  1111. package/src/acp/__tests__/websocket-integration.test.ts +0 -484
  1112. package/src/acp/__tests__/websocket-stream.test.ts +0 -281
  1113. package/src/acp/__tests__/websocket.e2e.test.ts +0 -390
  1114. package/src/acp/websocket-stream.ts +0 -140
  1115. package/src/activity/__tests__/deduplication.test.ts +0 -345
  1116. package/src/activity/__tests__/relevance.test.ts +0 -347
  1117. package/src/activity/__tests__/watcher.test.ts +0 -344
  1118. package/src/activity/deduplication.ts +0 -219
  1119. package/src/activity/index.ts +0 -51
  1120. package/src/activity/relevance.ts +0 -258
  1121. package/src/activity/types.ts +0 -263
  1122. package/src/activity/watcher.ts +0 -345
  1123. package/src/agent/__tests__/agent-manager.test.ts +0 -1382
  1124. package/src/agent/__tests__/wake.test.ts +0 -768
  1125. package/src/agent/wake.ts +0 -357
  1126. package/src/api/__tests__/conversation-api.test.ts +0 -468
  1127. package/src/cli/__tests__/acp.test.ts +0 -214
  1128. package/src/lifecycle/__tests__/cascade-termination.test.ts +0 -919
  1129. package/src/lifecycle/__tests__/cascade.test.ts +0 -595
  1130. package/src/lifecycle/__tests__/cleanup.test.ts +0 -322
  1131. package/src/lifecycle/__tests__/handlers.test.ts +0 -1826
  1132. package/src/lifecycle/__tests__/lifecycle.e2e.test.ts +0 -354
  1133. package/src/lifecycle/__tests__/merge-queue.e2e.test.ts +0 -602
  1134. package/src/lifecycle/handlers/generic.ts +0 -87
  1135. package/src/lifecycle/handlers/index.ts +0 -166
  1136. package/src/lifecycle/handlers/integrator.ts +0 -672
  1137. package/src/lifecycle/handlers/monitor.ts +0 -114
  1138. package/src/lifecycle/handlers/worker.ts +0 -506
  1139. package/src/mail/__tests__/conversation-lifecycle.test.ts +0 -409
  1140. package/src/mail/__tests__/eventstore-stores.test.ts +0 -1073
  1141. package/src/mail/__tests__/mail-full-agent.e2e.test.ts +0 -575
  1142. package/src/mail/__tests__/mail-integration.test.ts +0 -759
  1143. package/src/mail/__tests__/mail-map-protocol.e2e.test.ts +0 -1068
  1144. package/src/mail/__tests__/mail-service.test.ts +0 -506
  1145. package/src/mail/__tests__/turn-recorder.test.ts +0 -328
  1146. package/src/mail/conversation-map.ts +0 -107
  1147. package/src/mail/index.ts +0 -25
  1148. package/src/mail/mail-service.ts +0 -257
  1149. package/src/mail/stores/eventstore-conversation-store.ts +0 -146
  1150. package/src/mail/stores/eventstore-participant-store.ts +0 -172
  1151. package/src/mail/stores/eventstore-thread-store.ts +0 -129
  1152. package/src/mail/stores/eventstore-turn-store.ts +0 -173
  1153. package/src/mail/stores/index.ts +0 -12
  1154. package/src/mail/stores/types.ts +0 -160
  1155. package/src/mail/turn-recorder.ts +0 -124
  1156. package/src/map/README.md +0 -79
  1157. package/src/map/__tests__/adapter-types.test.ts +0 -326
  1158. package/src/map/__tests__/interface-types.test.ts +0 -342
  1159. package/src/map/__tests__/types.test.ts +0 -411
  1160. package/src/map/adapter/__tests__/acp-over-map-cancel.test.ts +0 -820
  1161. package/src/map/adapter/__tests__/acp-over-map-getmodels.test.ts +0 -355
  1162. package/src/map/adapter/__tests__/acp-over-map-history.test.ts +0 -1386
  1163. package/src/map/adapter/__tests__/acp-over-map-persistence.e2e.test.ts +0 -440
  1164. package/src/map/adapter/__tests__/connection-manager.test.ts +0 -344
  1165. package/src/map/adapter/__tests__/event-broadcast.test.ts +0 -420
  1166. package/src/map/adapter/__tests__/event-log.test.ts +0 -527
  1167. package/src/map/adapter/__tests__/event-translator.test.ts +0 -550
  1168. package/src/map/adapter/__tests__/extensions.test.ts +0 -1387
  1169. package/src/map/adapter/__tests__/map-adapter.test.ts +0 -926
  1170. package/src/map/adapter/__tests__/mcp-bridge.test.ts +0 -1187
  1171. package/src/map/adapter/__tests__/multi-client-broadcast.test.ts +0 -711
  1172. package/src/map/adapter/__tests__/rpc-handler.test.ts +0 -644
  1173. package/src/map/adapter/__tests__/subscription-manager.test.ts +0 -536
  1174. package/src/map/adapter/__tests__/websocket-integration.test.ts +0 -487
  1175. package/src/map/adapter/__tests__/workspace-files.test.ts +0 -673
  1176. package/src/map/adapter/acp-over-map.ts +0 -1483
  1177. package/src/map/adapter/connection-manager.ts +0 -400
  1178. package/src/map/adapter/event-log.ts +0 -208
  1179. package/src/map/adapter/event-translator.ts +0 -415
  1180. package/src/map/adapter/extensions/agent-detection.ts +0 -201
  1181. package/src/map/adapter/extensions/agent-lifecycle.ts +0 -267
  1182. package/src/map/adapter/extensions/index.ts +0 -280
  1183. package/src/map/adapter/extensions/mcp-bridge.ts +0 -995
  1184. package/src/map/adapter/extensions/resume.ts +0 -114
  1185. package/src/map/adapter/extensions/task.ts +0 -326
  1186. package/src/map/adapter/extensions/update-metadata.ts +0 -126
  1187. package/src/map/adapter/extensions/wake.ts +0 -239
  1188. package/src/map/adapter/extensions/workspace-files.ts +0 -449
  1189. package/src/map/adapter/extensions/workspace.ts +0 -176
  1190. package/src/map/adapter/index.ts +0 -158
  1191. package/src/map/adapter/interface.ts +0 -581
  1192. package/src/map/adapter/mail-handler-adapter.ts +0 -429
  1193. package/src/map/adapter/map-adapter.ts +0 -1749
  1194. package/src/map/adapter/rpc-handler.ts +0 -604
  1195. package/src/map/adapter/subscription-manager.ts +0 -474
  1196. package/src/map/adapter/types.ts +0 -259
  1197. package/src/map/adapter/websocket-integration.ts +0 -229
  1198. package/src/map/federation/__tests__/envelope.test.ts +0 -362
  1199. package/src/map/federation/__tests__/federation-handler.test.ts +0 -461
  1200. package/src/map/federation/envelope.ts +0 -243
  1201. package/src/map/federation/federation-handler.ts +0 -442
  1202. package/src/map/federation/index.ts +0 -65
  1203. package/src/map/federation/types.ts +0 -344
  1204. package/src/mcp/__tests__/map-client.test.ts +0 -386
  1205. package/src/mcp/__tests__/mcp-server-thin-client.test.ts +0 -368
  1206. package/src/mcp/__tests__/mcp-server.test.ts +0 -1002
  1207. package/src/mcp/map-client.ts +0 -177
  1208. package/src/mcp/mcp-server.ts +0 -1395
  1209. package/src/mcp/tools/__tests__/done.test.ts +0 -484
  1210. package/src/mcp/tools/claim_task.ts +0 -86
  1211. package/src/mcp/tools/done.ts +0 -338
  1212. package/src/mcp/tools/inject_context.ts +0 -173
  1213. package/src/mcp/tools/list_claimable_tasks.ts +0 -93
  1214. package/src/mcp/tools/unclaim_task.ts +0 -71
  1215. package/src/mcp/tools/wait_for_activity.ts +0 -185
  1216. package/src/monitor/__tests__/health-check-service.test.ts +0 -425
  1217. package/src/monitor/__tests__/stale-agent-flow.integration.test.ts +0 -393
  1218. package/src/monitor/__tests__/stall-detector.test.ts +0 -395
  1219. package/src/monitor/health-check-service.ts +0 -359
  1220. package/src/monitor/index.ts +0 -28
  1221. package/src/monitor/stall-detector.ts +0 -238
  1222. package/src/peer/__tests__/capability-manager.test.ts +0 -454
  1223. package/src/peer/__tests__/encapsulation-manager.test.ts +0 -787
  1224. package/src/peer/__tests__/federation-manager.test.ts +0 -828
  1225. package/src/peer/__tests__/hierarchy-errors.test.ts +0 -307
  1226. package/src/peer/__tests__/peer-manager.test.ts +0 -535
  1227. package/src/peer/__tests__/task-delegation.test.ts +0 -741
  1228. package/src/peer/capability-manager.ts +0 -289
  1229. package/src/peer/encapsulation-manager.ts +0 -831
  1230. package/src/peer/federation-manager.ts +0 -897
  1231. package/src/peer/hierarchy-errors.ts +0 -382
  1232. package/src/peer/hierarchy-protocol.ts +0 -328
  1233. package/src/peer/index.ts +0 -15
  1234. package/src/peer/peer-manager.ts +0 -540
  1235. package/src/peer/task-delegation.ts +0 -594
  1236. package/src/peer/transports/__tests__/local-transport.test.ts +0 -355
  1237. package/src/peer/transports/__tests__/websocket-transport.test.ts +0 -270
  1238. package/src/peer/transports/index.ts +0 -18
  1239. package/src/peer/transports/local-transport.ts +0 -348
  1240. package/src/peer/transports/websocket-transport.ts +0 -452
  1241. package/src/peer/types.ts +0 -331
  1242. package/src/roles/__tests__/capability-enforcement.test.ts +0 -989
  1243. package/src/roles/__tests__/message-routing.e2e.test.ts +0 -464
  1244. package/src/roles/__tests__/role-resolution.test.ts +0 -576
  1245. package/src/router/README.md +0 -120
  1246. package/src/router/__tests__/address-resolver.test.ts +0 -340
  1247. package/src/router/__tests__/broadcast.test.ts +0 -185
  1248. package/src/router/__tests__/message-router.test.ts +0 -1070
  1249. package/src/router/__tests__/role-channel.test.ts +0 -213
  1250. package/src/router/__tests__/send-to-address.test.ts +0 -731
  1251. package/src/router/__tests__/wake.test.ts +0 -459
  1252. package/src/router/address-resolver.ts +0 -303
  1253. package/src/router/broadcast.ts +0 -117
  1254. package/src/router/channels.ts +0 -283
  1255. package/src/router/index.ts +0 -148
  1256. package/src/router/message-router.ts +0 -1392
  1257. package/src/router/message-types.ts +0 -294
  1258. package/src/router/role-resolver.ts +0 -164
  1259. package/src/router/signals.ts +0 -335
  1260. package/src/router/types.ts +0 -306
  1261. package/src/router/wake.ts +0 -270
  1262. package/src/server/__tests__/combined-server.test.ts +0 -360
  1263. package/src/server/combined-server.ts +0 -530
  1264. package/src/steering/__tests__/inject.test.ts +0 -405
  1265. package/src/steering/__tests__/injection.e2e.test.ts +0 -932
  1266. package/src/steering/__tests__/steering-integration.test.ts +0 -747
  1267. package/src/steering/index.ts +0 -25
  1268. package/src/steering/inject.ts +0 -262
  1269. package/src/steering/types.ts +0 -143
  1270. package/src/store/README.md +0 -134
  1271. package/src/store/__tests__/event-store.test.ts +0 -1446
  1272. package/src/store/__tests__/instance.test.ts +0 -556
  1273. package/src/store/__tests__/migrations.test.ts +0 -109
  1274. package/src/store/backends/__tests__/memory-backend.test.ts +0 -383
  1275. package/src/store/backends/__tests__/sqlite-backend.test.ts +0 -427
  1276. package/src/store/backends/index.ts +0 -42
  1277. package/src/store/backends/json-backend.ts +0 -295
  1278. package/src/store/backends/memory-backend.ts +0 -256
  1279. package/src/store/backends/sqlite-backend.ts +0 -337
  1280. package/src/store/backends/tinybase-backend.ts +0 -276
  1281. package/src/store/backends/types.ts +0 -252
  1282. package/src/store/event-store.ts +0 -2204
  1283. package/src/store/instance.ts +0 -681
  1284. package/src/store/migrations.ts +0 -96
  1285. package/src/store/types/config.ts +0 -19
  1286. package/src/store/types/conversations.ts +0 -129
  1287. package/src/store/types/sessions.ts +0 -53
  1288. package/src/task/__tests__/retry-policy.test.ts +0 -409
  1289. package/src/task/__tests__/task-integration.test.ts +0 -457
  1290. package/src/task/__tests__/task-manager.test.ts +0 -815
  1291. package/src/task/backend/__tests__/create-task-backend.test.ts +0 -225
  1292. package/src/task/backend/__tests__/e2e/unified-tool-provider-opentasks.e2e.test.ts +0 -524
  1293. package/src/task/backend/__tests__/memory.test.ts +0 -1274
  1294. package/src/task/backend/__tests__/unified-tool-provider.test.ts +0 -579
  1295. package/src/task/backend/index.ts +0 -310
  1296. package/src/task/backend/memory.ts +0 -828
  1297. package/src/task/backend/opentasks/__tests__/backend.test.ts +0 -968
  1298. package/src/task/backend/opentasks/__tests__/daemon-manager.test.ts +0 -406
  1299. package/src/task/backend/opentasks/__tests__/mapping.test.ts +0 -84
  1300. package/src/task/backend/opentasks/__tests__/opentasks-backend.e2e.test.ts +0 -1338
  1301. package/src/task/backend/opentasks/backend.ts +0 -1323
  1302. package/src/task/backend/opentasks/client.ts +0 -652
  1303. package/src/task/backend/opentasks/daemon-manager.ts +0 -253
  1304. package/src/task/backend/opentasks/index.ts +0 -69
  1305. package/src/task/backend/opentasks/mapping.ts +0 -94
  1306. package/src/task/backend/types.ts +0 -458
  1307. package/src/task/backend/unified-tool-provider.ts +0 -779
  1308. package/src/task/index.ts +0 -7
  1309. package/src/task/retry-policy.ts +0 -204
  1310. package/src/task/task-manager.ts +0 -515
  1311. package/src/task/types.ts +0 -136
  1312. package/src/teams/__tests__/cross-subsystem.integration.test.ts +0 -983
  1313. package/src/teams/__tests__/e2e/team-runtime.e2e.test.ts +0 -553
  1314. package/src/teams/__tests__/team-system.test.ts +0 -1280
  1315. package/src/teams/team-runtime.ts +0 -729
  1316. package/src/trigger/CLAUDE.md +0 -308
  1317. package/src/trigger/README.md +0 -429
  1318. package/src/trigger/__tests__/macro-agent-regression.test.ts +0 -946
  1319. package/src/trigger/__tests__/routing-strategies.test.ts +0 -329
  1320. package/src/trigger/__tests__/trigger-router.test.ts +0 -433
  1321. package/src/trigger/__tests__/trigger-system-integration.test.ts +0 -581
  1322. package/src/trigger/router/index.ts +0 -36
  1323. package/src/trigger/router/strategies/ai-router-strategy.ts +0 -481
  1324. package/src/trigger/router/strategies/direct-strategy.ts +0 -162
  1325. package/src/trigger/router/strategies/index.ts +0 -26
  1326. package/src/trigger/router/strategies/role-strategy.ts +0 -274
  1327. package/src/trigger/router/trigger-router.ts +0 -463
  1328. package/src/trigger/router/types.ts +0 -273
  1329. package/src/trigger/trigger-system.ts +0 -206
  1330. package/src/workspace/__tests__/multi-coordinator.test.ts +0 -1005
  1331. package/src/workspace/__tests__/workspace-manager.test.ts +0 -391
  1332. package/src/workspace/__tests__/workspace.e2e.test.ts +0 -1155
  1333. package/src/workspace/merge-queue/__tests__/hierarchical-consolidation.e2e.test.ts +0 -414
  1334. package/test_fixtures/harness/__tests__/behavior-executor-and-stepper.test.ts +0 -714
  1335. package/test_fixtures/harness/__tests__/fixtures.test.ts +0 -347
  1336. package/test_fixtures/harness/__tests__/merge-queue-and-worktrees.test.ts +0 -452
  1337. package/test_fixtures/harness/__tests__/temp-repo-and-simulator.test.ts +0 -422
  1338. package/test_fixtures/harness/__tests__/test-harness-and-assertions.test.ts +0 -568
  1339. /package/{references/acp-factory-ref/python/tests/__init__.py → .opentasks/graph.jsonl} +0 -0
@@ -1,673 +0,0 @@
1
- /**
2
- * Tests for Workspace File Search Extension Methods (_macro/workspace/files/*)
3
- *
4
- * Tests the search, list, and read handlers using a real temporary filesystem.
5
- */
6
-
7
- import { describe, it, expect, beforeEach, afterEach, vi } from "vitest";
8
- import * as fs from "fs";
9
- import * as path from "path";
10
- import * as os from "os";
11
- import {
12
- registerWorkspaceFileExtensions,
13
- unregisterWorkspaceFileExtensions,
14
- type WorkspaceFileServices,
15
- } from "../extensions/workspace-files.js";
16
- import type { MAPAdapter, ExtensionHandler, ExtensionContext } from "../interface.js";
17
- import type { ParticipantCapabilities } from "../types.js";
18
- import type { AgentId } from "../../../store/types/index.js";
19
-
20
- // =============================================================================
21
- // Mock Setup
22
- // =============================================================================
23
-
24
- function createMockAdapter(): MAPAdapter & {
25
- handlers: Map<string, ExtensionHandler>;
26
- } {
27
- const handlers = new Map<string, ExtensionHandler>();
28
-
29
- return {
30
- handlers,
31
- registerExtension: vi.fn((method: string, handler: ExtensionHandler) => {
32
- handlers.set(method, handler);
33
- }),
34
- unregisterExtension: vi.fn((method: string) => {
35
- handlers.delete(method);
36
- }),
37
- hasExtension: vi.fn((method: string) => handlers.has(method)),
38
- getExtensions: vi.fn(() => Array.from(handlers.keys())),
39
- start: vi.fn(),
40
- stop: vi.fn(),
41
- isRunning: vi.fn().mockReturnValue(true),
42
- acceptConnection: vi.fn(),
43
- disconnectParticipant: vi.fn(),
44
- getParticipant: vi.fn(),
45
- getParticipants: vi.fn().mockReturnValue([]),
46
- createSubscription: vi.fn(),
47
- removeSubscription: vi.fn(),
48
- pauseSubscription: vi.fn(),
49
- resumeSubscription: vi.fn(),
50
- getSubscriptions: vi.fn().mockReturnValue([]),
51
- emitEvent: vi.fn(),
52
- listAgents: vi.fn().mockReturnValue([]),
53
- getAgent: vi.fn(),
54
- listScopes: vi.fn().mockReturnValue([]),
55
- getScope: vi.fn(),
56
- sendMessage: vi.fn(),
57
- onEvent: vi.fn().mockReturnValue(() => {}),
58
- config: { name: "test", version: "1.0.0" },
59
- } as unknown as MAPAdapter & { handlers: Map<string, ExtensionHandler> };
60
- }
61
-
62
- function createMockContext(): ExtensionContext {
63
- return {
64
- participantId: "p-test" as any,
65
- capabilities: {
66
- canQuery: true,
67
- canSubscribe: true,
68
- canMessage: true,
69
- canManageTasks: true,
70
- } as ParticipantCapabilities,
71
- sessionId: "s-test",
72
- };
73
- }
74
-
75
- // =============================================================================
76
- // Temporary Workspace Filesystem
77
- // =============================================================================
78
-
79
- let tmpDir: string;
80
-
81
- function createTempWorkspace(): string {
82
- const dir = fs.mkdtempSync(path.join(os.tmpdir(), "workspace-files-test-"));
83
-
84
- // Create a file structure:
85
- // src/
86
- // index.ts
87
- // utils/
88
- // helpers.ts
89
- // README.md
90
- // package.json
91
- // .git/ (excluded dir)
92
- // config
93
- // node_modules/ (excluded dir)
94
- // foo.js
95
- // image.png (binary extension)
96
-
97
- fs.mkdirSync(path.join(dir, "src", "utils"), { recursive: true });
98
- fs.writeFileSync(path.join(dir, "src", "index.ts"), 'export const main = "hello";');
99
- fs.writeFileSync(path.join(dir, "src", "utils", "helpers.ts"), 'export function help() {}');
100
- fs.writeFileSync(path.join(dir, "README.md"), "# Test Project");
101
- fs.writeFileSync(path.join(dir, "package.json"), '{"name":"test"}');
102
-
103
- // Excluded directories
104
- fs.mkdirSync(path.join(dir, ".git"), { recursive: true });
105
- fs.writeFileSync(path.join(dir, ".git", "config"), "git config");
106
- fs.mkdirSync(path.join(dir, "node_modules"), { recursive: true });
107
- fs.writeFileSync(path.join(dir, "node_modules", "foo.js"), "module");
108
-
109
- // Binary file
110
- fs.writeFileSync(path.join(dir, "image.png"), Buffer.from([0x89, 0x50, 0x4e, 0x47]));
111
-
112
- return dir;
113
- }
114
-
115
- function cleanupTempWorkspace(dir: string): void {
116
- fs.rmSync(dir, { recursive: true, force: true });
117
- }
118
-
119
- // =============================================================================
120
- // Tests
121
- // =============================================================================
122
-
123
- describe("Workspace File Extensions", () => {
124
- let adapter: MAPAdapter & { handlers: Map<string, ExtensionHandler> };
125
- let services: WorkspaceFileServices;
126
-
127
- beforeEach(() => {
128
- tmpDir = createTempWorkspace();
129
- adapter = createMockAdapter();
130
-
131
- services = {
132
- getWorkspace: vi.fn().mockReturnValue({ path: tmpDir }),
133
- agentExists: vi.fn().mockReturnValue(true),
134
- };
135
- });
136
-
137
- afterEach(() => {
138
- cleanupTempWorkspace(tmpDir);
139
- });
140
-
141
- // ===========================================================================
142
- // Registration
143
- // ===========================================================================
144
-
145
- describe("registration", () => {
146
- it("registers all three workspace file methods", () => {
147
- registerWorkspaceFileExtensions(adapter, services);
148
-
149
- expect(adapter.handlers.has("_macro/workspace/files/search")).toBe(true);
150
- expect(adapter.handlers.has("_macro/workspace/files/list")).toBe(true);
151
- expect(adapter.handlers.has("_macro/workspace/files/read")).toBe(true);
152
- });
153
-
154
- it("unregisters all three workspace file methods", () => {
155
- registerWorkspaceFileExtensions(adapter, services);
156
- unregisterWorkspaceFileExtensions(adapter);
157
-
158
- expect(adapter.handlers.has("_macro/workspace/files/search")).toBe(false);
159
- expect(adapter.handlers.has("_macro/workspace/files/list")).toBe(false);
160
- expect(adapter.handlers.has("_macro/workspace/files/read")).toBe(false);
161
- });
162
- });
163
-
164
- // ===========================================================================
165
- // _macro/workspace/files/search
166
- // ===========================================================================
167
-
168
- describe("_macro/workspace/files/search", () => {
169
- it("finds files matching a query", async () => {
170
- registerWorkspaceFileExtensions(adapter, services);
171
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
172
-
173
- const result = (await handler(createMockContext(), {
174
- agentId: "agent-1",
175
- query: "index",
176
- })) as { files: Array<{ path: string; isDirectory: boolean }> };
177
-
178
- expect(result.files).toHaveLength(1);
179
- expect(result.files[0].path).toBe("src/index.ts");
180
- expect(result.files[0].isDirectory).toBe(false);
181
- });
182
-
183
- it("finds files matching by extension", async () => {
184
- registerWorkspaceFileExtensions(adapter, services);
185
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
186
-
187
- const result = (await handler(createMockContext(), {
188
- agentId: "agent-1",
189
- query: ".ts",
190
- })) as { files: Array<{ path: string }> };
191
-
192
- const paths = result.files.map((f) => f.path);
193
- expect(paths).toContain("src/index.ts");
194
- expect(paths).toContain("src/utils/helpers.ts");
195
- });
196
-
197
- it("returns MIME types for matched files", async () => {
198
- registerWorkspaceFileExtensions(adapter, services);
199
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
200
-
201
- const result = (await handler(createMockContext(), {
202
- agentId: "agent-1",
203
- query: "index.ts",
204
- })) as { files: Array<{ mime?: string }> };
205
-
206
- expect(result.files[0].mime).toBe("text/typescript");
207
- });
208
-
209
- it("returns file sizes", async () => {
210
- registerWorkspaceFileExtensions(adapter, services);
211
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
212
-
213
- const result = (await handler(createMockContext(), {
214
- agentId: "agent-1",
215
- query: "README",
216
- })) as { files: Array<{ size?: number }> };
217
-
218
- expect(result.files[0].size).toBeGreaterThan(0);
219
- });
220
-
221
- it("excludes node_modules and .git directories", async () => {
222
- registerWorkspaceFileExtensions(adapter, services);
223
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
224
-
225
- // Search for something that exists in node_modules
226
- const result = (await handler(createMockContext(), {
227
- agentId: "agent-1",
228
- query: "foo",
229
- })) as { files: Array<{ path: string }> };
230
-
231
- const paths = result.files.map((f) => f.path);
232
- expect(paths).not.toContain("node_modules/foo.js");
233
- });
234
-
235
- it("excludes binary file extensions", async () => {
236
- registerWorkspaceFileExtensions(adapter, services);
237
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
238
-
239
- const result = (await handler(createMockContext(), {
240
- agentId: "agent-1",
241
- query: "image",
242
- })) as { files: Array<{ path: string }> };
243
-
244
- const paths = result.files.map((f) => f.path);
245
- expect(paths).not.toContain("image.png");
246
- });
247
-
248
- it("case-insensitive matching", async () => {
249
- registerWorkspaceFileExtensions(adapter, services);
250
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
251
-
252
- const result = (await handler(createMockContext(), {
253
- agentId: "agent-1",
254
- query: "README",
255
- })) as { files: Array<{ path: string }> };
256
-
257
- expect(result.files).toHaveLength(1);
258
- expect(result.files[0].path).toBe("README.md");
259
- });
260
-
261
- it("supports path-based queries with /", async () => {
262
- registerWorkspaceFileExtensions(adapter, services);
263
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
264
-
265
- const result = (await handler(createMockContext(), {
266
- agentId: "agent-1",
267
- query: "src/utils",
268
- })) as { files: Array<{ path: string }> };
269
-
270
- const paths = result.files.map((f) => f.path);
271
- // Should find the directory and the file inside
272
- expect(paths).toContain("src/utils/");
273
- expect(paths).toContain("src/utils/helpers.ts");
274
- });
275
-
276
- it("respects limit parameter", async () => {
277
- registerWorkspaceFileExtensions(adapter, services);
278
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
279
-
280
- const result = (await handler(createMockContext(), {
281
- agentId: "agent-1",
282
- query: ".", // matches everything
283
- limit: 2,
284
- })) as { files: Array<{ path: string }> };
285
-
286
- expect(result.files.length).toBeLessThanOrEqual(2);
287
- });
288
-
289
- it("searches within cwd subdirectory", async () => {
290
- registerWorkspaceFileExtensions(adapter, services);
291
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
292
-
293
- const result = (await handler(createMockContext(), {
294
- agentId: "agent-1",
295
- query: "helpers",
296
- cwd: "src/utils",
297
- })) as { files: Array<{ path: string }> };
298
-
299
- expect(result.files).toHaveLength(1);
300
- expect(result.files[0].path).toBe("src/utils/helpers.ts");
301
- });
302
-
303
- it("returns empty array when no matches", async () => {
304
- registerWorkspaceFileExtensions(adapter, services);
305
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
306
-
307
- const result = (await handler(createMockContext(), {
308
- agentId: "agent-1",
309
- query: "nonexistent-file-xyz",
310
- })) as { files: Array<{ path: string }> };
311
-
312
- expect(result.files).toEqual([]);
313
- });
314
-
315
- it("returns empty files when agent has no workspace", async () => {
316
- (services.getWorkspace as ReturnType<typeof vi.fn>).mockReturnValue(null);
317
- registerWorkspaceFileExtensions(adapter, services);
318
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
319
-
320
- const result = (await handler(createMockContext(), {
321
- agentId: "agent-1",
322
- query: "test",
323
- })) as { files: unknown[] };
324
-
325
- expect(result.files).toEqual([]);
326
- });
327
-
328
- it("throws for missing agentId", async () => {
329
- registerWorkspaceFileExtensions(adapter, services);
330
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
331
-
332
- await expect(
333
- handler(createMockContext(), { query: "test" })
334
- ).rejects.toThrow("agentId is required");
335
- });
336
-
337
- it("throws for missing query", async () => {
338
- registerWorkspaceFileExtensions(adapter, services);
339
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
340
-
341
- await expect(
342
- handler(createMockContext(), { agentId: "agent-1" })
343
- ).rejects.toThrow("query is required");
344
- });
345
-
346
- it("throws for non-existent agent", async () => {
347
- (services.agentExists as ReturnType<typeof vi.fn>).mockReturnValue(false);
348
- registerWorkspaceFileExtensions(adapter, services);
349
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
350
-
351
- await expect(
352
- handler(createMockContext(), { agentId: "missing", query: "test" })
353
- ).rejects.toThrow("not found");
354
- });
355
- });
356
-
357
- // ===========================================================================
358
- // _macro/workspace/files/list
359
- // ===========================================================================
360
-
361
- describe("_macro/workspace/files/list", () => {
362
- it("lists files in root directory", async () => {
363
- registerWorkspaceFileExtensions(adapter, services);
364
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
365
-
366
- const result = (await handler(createMockContext(), {
367
- agentId: "agent-1",
368
- })) as { files: Array<{ path: string; isDirectory: boolean }> };
369
-
370
- const paths = result.files.map((f) => f.path);
371
- expect(paths).toContain("src/");
372
- expect(paths).toContain("README.md");
373
- expect(paths).toContain("package.json");
374
- });
375
-
376
- it("lists directories before files (sorted)", async () => {
377
- registerWorkspaceFileExtensions(adapter, services);
378
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
379
-
380
- const result = (await handler(createMockContext(), {
381
- agentId: "agent-1",
382
- })) as { files: Array<{ isDirectory: boolean }> };
383
-
384
- // All directories should come before files
385
- const firstFileIndex = result.files.findIndex((f) => !f.isDirectory);
386
- const lastDirIndex = result.files.findLastIndex((f) => f.isDirectory);
387
- if (firstFileIndex !== -1 && lastDirIndex !== -1) {
388
- expect(lastDirIndex).toBeLessThan(firstFileIndex);
389
- }
390
- });
391
-
392
- it("lists files in subdirectory", async () => {
393
- registerWorkspaceFileExtensions(adapter, services);
394
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
395
-
396
- const result = (await handler(createMockContext(), {
397
- agentId: "agent-1",
398
- directory: "src",
399
- })) as { files: Array<{ path: string }> };
400
-
401
- const paths = result.files.map((f) => f.path);
402
- expect(paths).toContain("src/utils/");
403
- expect(paths).toContain("src/index.ts");
404
- });
405
-
406
- it("excludes node_modules and .git from listing", async () => {
407
- registerWorkspaceFileExtensions(adapter, services);
408
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
409
-
410
- const result = (await handler(createMockContext(), {
411
- agentId: "agent-1",
412
- })) as { files: Array<{ path: string }> };
413
-
414
- const paths = result.files.map((f) => f.path);
415
- expect(paths).not.toContain("node_modules/");
416
- expect(paths).not.toContain(".git/");
417
- });
418
-
419
- it("excludes binary files from listing", async () => {
420
- registerWorkspaceFileExtensions(adapter, services);
421
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
422
-
423
- const result = (await handler(createMockContext(), {
424
- agentId: "agent-1",
425
- })) as { files: Array<{ path: string }> };
426
-
427
- const paths = result.files.map((f) => f.path);
428
- expect(paths).not.toContain("image.png");
429
- });
430
-
431
- it("returns MIME and size for files", async () => {
432
- registerWorkspaceFileExtensions(adapter, services);
433
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
434
-
435
- const result = (await handler(createMockContext(), {
436
- agentId: "agent-1",
437
- directory: "src",
438
- })) as { files: Array<{ path: string; mime?: string; size?: number; isDirectory: boolean }> };
439
-
440
- const indexFile = result.files.find((f) => f.path === "src/index.ts");
441
- expect(indexFile).toBeDefined();
442
- expect(indexFile!.mime).toBe("text/typescript");
443
- expect(indexFile!.size).toBeGreaterThan(0);
444
- });
445
-
446
- it("returns empty files when agent has no workspace", async () => {
447
- (services.getWorkspace as ReturnType<typeof vi.fn>).mockReturnValue(null);
448
- registerWorkspaceFileExtensions(adapter, services);
449
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
450
-
451
- const result = (await handler(createMockContext(), {
452
- agentId: "agent-1",
453
- })) as { files: unknown[] };
454
-
455
- expect(result.files).toEqual([]);
456
- });
457
-
458
- it("throws for missing agentId", async () => {
459
- registerWorkspaceFileExtensions(adapter, services);
460
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
461
-
462
- await expect(handler(createMockContext(), {})).rejects.toThrow(
463
- "agentId is required"
464
- );
465
- });
466
-
467
- it("throws for non-existent agent", async () => {
468
- (services.agentExists as ReturnType<typeof vi.fn>).mockReturnValue(false);
469
- registerWorkspaceFileExtensions(adapter, services);
470
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
471
-
472
- await expect(
473
- handler(createMockContext(), { agentId: "missing" })
474
- ).rejects.toThrow("not found");
475
- });
476
-
477
- it("throws for non-existent directory", async () => {
478
- registerWorkspaceFileExtensions(adapter, services);
479
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
480
-
481
- await expect(
482
- handler(createMockContext(), { agentId: "agent-1", directory: "nonexistent" })
483
- ).rejects.toThrow("Directory not found");
484
- });
485
- });
486
-
487
- // ===========================================================================
488
- // _macro/workspace/files/read
489
- // ===========================================================================
490
-
491
- describe("_macro/workspace/files/read", () => {
492
- it("reads file contents", async () => {
493
- registerWorkspaceFileExtensions(adapter, services);
494
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
495
-
496
- const result = (await handler(createMockContext(), {
497
- agentId: "agent-1",
498
- path: "src/index.ts",
499
- })) as { text: string; mime: string; size: number };
500
-
501
- expect(result.text).toBe('export const main = "hello";');
502
- expect(result.mime).toBe("text/typescript");
503
- expect(result.size).toBeGreaterThan(0);
504
- });
505
-
506
- it("reads file with correct MIME type", async () => {
507
- registerWorkspaceFileExtensions(adapter, services);
508
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
509
-
510
- const result = (await handler(createMockContext(), {
511
- agentId: "agent-1",
512
- path: "README.md",
513
- })) as { text: string; mime: string };
514
-
515
- expect(result.text).toBe("# Test Project");
516
- expect(result.mime).toBe("text/markdown");
517
- });
518
-
519
- it("reads JSON file", async () => {
520
- registerWorkspaceFileExtensions(adapter, services);
521
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
522
-
523
- const result = (await handler(createMockContext(), {
524
- agentId: "agent-1",
525
- path: "package.json",
526
- })) as { text: string; mime: string };
527
-
528
- expect(result.text).toBe('{"name":"test"}');
529
- expect(result.mime).toBe("application/json");
530
- });
531
-
532
- it("supports lineRange", async () => {
533
- // Create a multi-line file
534
- const multiLineContent = "line 1\nline 2\nline 3\nline 4\nline 5";
535
- fs.writeFileSync(path.join(tmpDir, "multiline.txt"), multiLineContent);
536
-
537
- registerWorkspaceFileExtensions(adapter, services);
538
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
539
-
540
- const result = (await handler(createMockContext(), {
541
- agentId: "agent-1",
542
- path: "multiline.txt",
543
- lineRange: { start: 2, end: 4 },
544
- })) as { text: string };
545
-
546
- expect(result.text).toBe("line 2\nline 3\nline 4");
547
- });
548
-
549
- it("throws for invalid lineRange (start < 1)", async () => {
550
- fs.writeFileSync(path.join(tmpDir, "lines.txt"), "line 1\nline 2");
551
- registerWorkspaceFileExtensions(adapter, services);
552
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
553
-
554
- await expect(
555
- handler(createMockContext(), {
556
- agentId: "agent-1",
557
- path: "lines.txt",
558
- lineRange: { start: 0, end: 2 },
559
- })
560
- ).rejects.toThrow("lineRange must have start >= 1");
561
- });
562
-
563
- it("throws for invalid lineRange (end < start)", async () => {
564
- fs.writeFileSync(path.join(tmpDir, "lines.txt"), "line 1\nline 2");
565
- registerWorkspaceFileExtensions(adapter, services);
566
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
567
-
568
- await expect(
569
- handler(createMockContext(), {
570
- agentId: "agent-1",
571
- path: "lines.txt",
572
- lineRange: { start: 3, end: 1 },
573
- })
574
- ).rejects.toThrow("lineRange must have start >= 1");
575
- });
576
-
577
- it("throws for missing agentId", async () => {
578
- registerWorkspaceFileExtensions(adapter, services);
579
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
580
-
581
- await expect(
582
- handler(createMockContext(), { path: "src/index.ts" })
583
- ).rejects.toThrow("agentId is required");
584
- });
585
-
586
- it("throws for missing path", async () => {
587
- registerWorkspaceFileExtensions(adapter, services);
588
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
589
-
590
- await expect(
591
- handler(createMockContext(), { agentId: "agent-1" })
592
- ).rejects.toThrow("path is required");
593
- });
594
-
595
- it("throws for non-existent agent", async () => {
596
- (services.agentExists as ReturnType<typeof vi.fn>).mockReturnValue(false);
597
- registerWorkspaceFileExtensions(adapter, services);
598
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
599
-
600
- await expect(
601
- handler(createMockContext(), { agentId: "missing", path: "src/index.ts" })
602
- ).rejects.toThrow("not found");
603
- });
604
-
605
- it("throws for agent without workspace", async () => {
606
- (services.getWorkspace as ReturnType<typeof vi.fn>).mockReturnValue(null);
607
- registerWorkspaceFileExtensions(adapter, services);
608
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
609
-
610
- await expect(
611
- handler(createMockContext(), { agentId: "agent-1", path: "src/index.ts" })
612
- ).rejects.toThrow("has no workspace");
613
- });
614
-
615
- it("throws for non-existent file", async () => {
616
- registerWorkspaceFileExtensions(adapter, services);
617
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
618
-
619
- await expect(
620
- handler(createMockContext(), { agentId: "agent-1", path: "nonexistent.ts" })
621
- ).rejects.toThrow("File not found");
622
- });
623
-
624
- it("throws for directory path", async () => {
625
- registerWorkspaceFileExtensions(adapter, services);
626
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
627
-
628
- await expect(
629
- handler(createMockContext(), { agentId: "agent-1", path: "src" })
630
- ).rejects.toThrow("Path is a directory");
631
- });
632
-
633
- it("rejects path traversal attempts", async () => {
634
- registerWorkspaceFileExtensions(adapter, services);
635
- const handler = adapter.handlers.get("_macro/workspace/files/read")!;
636
-
637
- await expect(
638
- handler(createMockContext(), { agentId: "agent-1", path: "../../etc/passwd" })
639
- ).rejects.toThrow("Path traversal not allowed");
640
- });
641
- });
642
-
643
- // ===========================================================================
644
- // Path Traversal (across all handlers)
645
- // ===========================================================================
646
-
647
- describe("path traversal protection", () => {
648
- it("search rejects cwd with path traversal", async () => {
649
- registerWorkspaceFileExtensions(adapter, services);
650
- const handler = adapter.handlers.get("_macro/workspace/files/search")!;
651
-
652
- await expect(
653
- handler(createMockContext(), {
654
- agentId: "agent-1",
655
- query: "test",
656
- cwd: "../../etc",
657
- })
658
- ).rejects.toThrow("Path traversal not allowed");
659
- });
660
-
661
- it("list rejects directory with path traversal", async () => {
662
- registerWorkspaceFileExtensions(adapter, services);
663
- const handler = adapter.handlers.get("_macro/workspace/files/list")!;
664
-
665
- await expect(
666
- handler(createMockContext(), {
667
- agentId: "agent-1",
668
- directory: "../../etc",
669
- })
670
- ).rejects.toThrow("Path traversal not allowed");
671
- });
672
- });
673
- });