macro-agent 0.0.11 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. package/.macro-agent/teams/self-driving/prompts/grinder.md +27 -0
  2. package/.macro-agent/teams/self-driving/prompts/judge.md +27 -0
  3. package/.macro-agent/teams/self-driving/prompts/planner.md +33 -0
  4. package/.macro-agent/teams/self-driving/roles/grinder.yaml +17 -0
  5. package/.macro-agent/teams/self-driving/roles/judge.yaml +24 -0
  6. package/.macro-agent/teams/self-driving/roles/planner.yaml +18 -0
  7. package/.macro-agent/teams/self-driving/team.yaml +103 -0
  8. package/.macro-agent/teams/structured/prompts/developer.md +26 -0
  9. package/.macro-agent/teams/structured/prompts/lead.md +25 -0
  10. package/.macro-agent/teams/structured/prompts/reviewer.md +24 -0
  11. package/.macro-agent/teams/structured/roles/developer.yaml +12 -0
  12. package/.macro-agent/teams/structured/roles/lead.yaml +11 -0
  13. package/.macro-agent/teams/structured/roles/reviewer.yaml +19 -0
  14. package/.macro-agent/teams/structured/team.yaml +89 -0
  15. package/.sudocode/issues.jsonl +6 -0
  16. package/.sudocode/specs.jsonl +7 -0
  17. package/CLAUDE.md +110 -30
  18. package/README.md +60 -3
  19. package/dist/acp/macro-agent.d.ts +4 -0
  20. package/dist/acp/macro-agent.d.ts.map +1 -1
  21. package/dist/acp/macro-agent.js +50 -4
  22. package/dist/acp/macro-agent.js.map +1 -1
  23. package/dist/acp/session-mapper.d.ts +20 -1
  24. package/dist/acp/session-mapper.d.ts.map +1 -1
  25. package/dist/acp/session-mapper.js +90 -1
  26. package/dist/acp/session-mapper.js.map +1 -1
  27. package/dist/acp/types.d.ts +24 -1
  28. package/dist/acp/types.d.ts.map +1 -1
  29. package/dist/acp/types.js.map +1 -1
  30. package/dist/agent/agent-manager.d.ts +25 -1
  31. package/dist/agent/agent-manager.d.ts.map +1 -1
  32. package/dist/agent/agent-manager.js +93 -7
  33. package/dist/agent/agent-manager.js.map +1 -1
  34. package/dist/agent/types.d.ts +22 -0
  35. package/dist/agent/types.d.ts.map +1 -1
  36. package/dist/agent/types.js.map +1 -1
  37. package/dist/agent-detection/command-builder.d.ts +30 -0
  38. package/dist/agent-detection/command-builder.d.ts.map +1 -0
  39. package/dist/agent-detection/command-builder.js +71 -0
  40. package/dist/agent-detection/command-builder.js.map +1 -0
  41. package/dist/agent-detection/detector.d.ts +84 -0
  42. package/dist/agent-detection/detector.d.ts.map +1 -0
  43. package/dist/agent-detection/detector.js +240 -0
  44. package/dist/agent-detection/detector.js.map +1 -0
  45. package/dist/agent-detection/index.d.ts +12 -0
  46. package/dist/agent-detection/index.d.ts.map +1 -0
  47. package/dist/agent-detection/index.js +14 -0
  48. package/dist/agent-detection/index.js.map +1 -0
  49. package/dist/agent-detection/registry.d.ts +53 -0
  50. package/dist/agent-detection/registry.d.ts.map +1 -0
  51. package/dist/agent-detection/registry.js +177 -0
  52. package/dist/agent-detection/registry.js.map +1 -0
  53. package/dist/agent-detection/types.d.ts +121 -0
  54. package/dist/agent-detection/types.d.ts.map +1 -0
  55. package/dist/agent-detection/types.js +20 -0
  56. package/dist/agent-detection/types.js.map +1 -0
  57. package/dist/api/server.d.ts.map +1 -1
  58. package/dist/api/server.js +95 -0
  59. package/dist/api/server.js.map +1 -1
  60. package/dist/cli/index.js +29 -0
  61. package/dist/cli/index.js.map +1 -1
  62. package/dist/cli/mcp.js +38 -0
  63. package/dist/cli/mcp.js.map +1 -1
  64. package/dist/config/index.d.ts +2 -0
  65. package/dist/config/index.d.ts.map +1 -0
  66. package/dist/config/index.js +2 -0
  67. package/dist/config/index.js.map +1 -0
  68. package/dist/config/project-config.d.ts +46 -0
  69. package/dist/config/project-config.d.ts.map +1 -0
  70. package/dist/config/project-config.js +68 -0
  71. package/dist/config/project-config.js.map +1 -0
  72. package/dist/lifecycle/cascade.d.ts +1 -1
  73. package/dist/lifecycle/cascade.d.ts.map +1 -1
  74. package/dist/lifecycle/handlers/index.d.ts +4 -0
  75. package/dist/lifecycle/handlers/index.d.ts.map +1 -1
  76. package/dist/lifecycle/handlers/index.js +2 -0
  77. package/dist/lifecycle/handlers/index.js.map +1 -1
  78. package/dist/lifecycle/handlers/worker.d.ts +4 -0
  79. package/dist/lifecycle/handlers/worker.d.ts.map +1 -1
  80. package/dist/lifecycle/handlers/worker.js +35 -3
  81. package/dist/lifecycle/handlers/worker.js.map +1 -1
  82. package/dist/map/adapter/acp-over-map.d.ts.map +1 -1
  83. package/dist/map/adapter/acp-over-map.js +32 -2
  84. package/dist/map/adapter/acp-over-map.js.map +1 -1
  85. package/dist/map/adapter/event-translator.d.ts.map +1 -1
  86. package/dist/map/adapter/event-translator.js +1 -0
  87. package/dist/map/adapter/event-translator.js.map +1 -1
  88. package/dist/map/adapter/extensions/agent-detection.d.ts +49 -0
  89. package/dist/map/adapter/extensions/agent-detection.d.ts.map +1 -0
  90. package/dist/map/adapter/extensions/agent-detection.js +91 -0
  91. package/dist/map/adapter/extensions/agent-detection.js.map +1 -0
  92. package/dist/map/adapter/extensions/index.d.ts +10 -1
  93. package/dist/map/adapter/extensions/index.d.ts.map +1 -1
  94. package/dist/map/adapter/extensions/index.js +39 -0
  95. package/dist/map/adapter/extensions/index.js.map +1 -1
  96. package/dist/map/adapter/extensions/resume.d.ts +47 -0
  97. package/dist/map/adapter/extensions/resume.d.ts.map +1 -0
  98. package/dist/map/adapter/extensions/resume.js +59 -0
  99. package/dist/map/adapter/extensions/resume.js.map +1 -0
  100. package/dist/map/adapter/extensions/workspace-files.d.ts +42 -0
  101. package/dist/map/adapter/extensions/workspace-files.d.ts.map +1 -0
  102. package/dist/map/adapter/extensions/workspace-files.js +338 -0
  103. package/dist/map/adapter/extensions/workspace-files.js.map +1 -0
  104. package/dist/mcp/mcp-server.d.ts +6 -0
  105. package/dist/mcp/mcp-server.d.ts.map +1 -1
  106. package/dist/mcp/mcp-server.js +45 -0
  107. package/dist/mcp/mcp-server.js.map +1 -1
  108. package/dist/mcp/tools/claim_task.d.ts +35 -0
  109. package/dist/mcp/tools/claim_task.d.ts.map +1 -0
  110. package/dist/mcp/tools/claim_task.js +58 -0
  111. package/dist/mcp/tools/claim_task.js.map +1 -0
  112. package/dist/mcp/tools/done.d.ts +11 -2
  113. package/dist/mcp/tools/done.d.ts.map +1 -1
  114. package/dist/mcp/tools/done.js +15 -10
  115. package/dist/mcp/tools/done.js.map +1 -1
  116. package/dist/mcp/tools/list_claimable_tasks.d.ts +38 -0
  117. package/dist/mcp/tools/list_claimable_tasks.d.ts.map +1 -0
  118. package/dist/mcp/tools/list_claimable_tasks.js +63 -0
  119. package/dist/mcp/tools/list_claimable_tasks.js.map +1 -0
  120. package/dist/mcp/tools/unclaim_task.d.ts +31 -0
  121. package/dist/mcp/tools/unclaim_task.d.ts.map +1 -0
  122. package/dist/mcp/tools/unclaim_task.js +47 -0
  123. package/dist/mcp/tools/unclaim_task.js.map +1 -0
  124. package/dist/metrics/index.d.ts +2 -0
  125. package/dist/metrics/index.d.ts.map +1 -0
  126. package/dist/metrics/index.js +2 -0
  127. package/dist/metrics/index.js.map +1 -0
  128. package/dist/metrics/metrics.d.ts +79 -0
  129. package/dist/metrics/metrics.d.ts.map +1 -0
  130. package/dist/metrics/metrics.js +166 -0
  131. package/dist/metrics/metrics.js.map +1 -0
  132. package/dist/roles/capabilities.d.ts +1 -0
  133. package/dist/roles/capabilities.d.ts.map +1 -1
  134. package/dist/roles/capabilities.js +3 -0
  135. package/dist/roles/capabilities.js.map +1 -1
  136. package/dist/roles/types.d.ts +1 -1
  137. package/dist/roles/types.d.ts.map +1 -1
  138. package/dist/router/message-router.d.ts +41 -0
  139. package/dist/router/message-router.d.ts.map +1 -1
  140. package/dist/router/message-router.js +136 -5
  141. package/dist/router/message-router.js.map +1 -1
  142. package/dist/store/event-store.d.ts +8 -1
  143. package/dist/store/event-store.d.ts.map +1 -1
  144. package/dist/store/event-store.js +120 -4
  145. package/dist/store/event-store.js.map +1 -1
  146. package/dist/store/types/agents.d.ts +1 -1
  147. package/dist/store/types/agents.d.ts.map +1 -1
  148. package/dist/store/types/events.d.ts +1 -1
  149. package/dist/store/types/events.d.ts.map +1 -1
  150. package/dist/store/types/events.js.map +1 -1
  151. package/dist/store/types/index.d.ts +1 -0
  152. package/dist/store/types/index.d.ts.map +1 -1
  153. package/dist/store/types/index.js +1 -0
  154. package/dist/store/types/index.js.map +1 -1
  155. package/dist/store/types/sessions.d.ts +44 -0
  156. package/dist/store/types/sessions.d.ts.map +1 -0
  157. package/dist/store/types/sessions.js +9 -0
  158. package/dist/store/types/sessions.js.map +1 -0
  159. package/dist/store/types/tasks.d.ts +2 -0
  160. package/dist/store/types/tasks.d.ts.map +1 -1
  161. package/dist/task/backend/memory.d.ts +4 -1
  162. package/dist/task/backend/memory.d.ts.map +1 -1
  163. package/dist/task/backend/memory.js +81 -0
  164. package/dist/task/backend/memory.js.map +1 -1
  165. package/dist/task/backend/types.d.ts +30 -0
  166. package/dist/task/backend/types.d.ts.map +1 -1
  167. package/dist/task/backend/types.js.map +1 -1
  168. package/dist/teams/index.d.ts +4 -0
  169. package/dist/teams/index.d.ts.map +1 -0
  170. package/dist/teams/index.js +4 -0
  171. package/dist/teams/index.js.map +1 -0
  172. package/dist/teams/team-loader.d.ts +20 -0
  173. package/dist/teams/team-loader.d.ts.map +1 -0
  174. package/dist/teams/team-loader.js +293 -0
  175. package/dist/teams/team-loader.js.map +1 -0
  176. package/dist/teams/team-runtime.d.ts +139 -0
  177. package/dist/teams/team-runtime.d.ts.map +1 -0
  178. package/dist/teams/team-runtime.js +613 -0
  179. package/dist/teams/team-runtime.js.map +1 -0
  180. package/dist/teams/types.d.ts +266 -0
  181. package/dist/teams/types.d.ts.map +1 -0
  182. package/dist/teams/types.js +20 -0
  183. package/dist/teams/types.js.map +1 -0
  184. package/dist/workspace/dataplane-adapter.d.ts +1 -1
  185. package/dist/workspace/dataplane-adapter.d.ts.map +1 -1
  186. package/dist/workspace/dataplane-adapter.js +1 -1
  187. package/dist/workspace/dataplane-adapter.js.map +1 -1
  188. package/dist/workspace/index.d.ts +1 -1
  189. package/dist/workspace/index.d.ts.map +1 -1
  190. package/dist/workspace/strategies/index.d.ts +6 -0
  191. package/dist/workspace/strategies/index.d.ts.map +1 -0
  192. package/dist/workspace/strategies/index.js +5 -0
  193. package/dist/workspace/strategies/index.js.map +1 -0
  194. package/dist/workspace/strategies/optimistic.d.ts +26 -0
  195. package/dist/workspace/strategies/optimistic.d.ts.map +1 -0
  196. package/dist/workspace/strategies/optimistic.js +121 -0
  197. package/dist/workspace/strategies/optimistic.js.map +1 -0
  198. package/dist/workspace/strategies/queue.d.ts +26 -0
  199. package/dist/workspace/strategies/queue.d.ts.map +1 -0
  200. package/dist/workspace/strategies/queue.js +67 -0
  201. package/dist/workspace/strategies/queue.js.map +1 -0
  202. package/dist/workspace/strategies/registry.d.ts +37 -0
  203. package/dist/workspace/strategies/registry.d.ts.map +1 -0
  204. package/dist/workspace/strategies/registry.js +63 -0
  205. package/dist/workspace/strategies/registry.js.map +1 -0
  206. package/dist/workspace/strategies/trunk.d.ts +20 -0
  207. package/dist/workspace/strategies/trunk.d.ts.map +1 -0
  208. package/dist/workspace/strategies/trunk.js +108 -0
  209. package/dist/workspace/strategies/trunk.js.map +1 -0
  210. package/dist/workspace/strategies/types.d.ts +104 -0
  211. package/dist/workspace/strategies/types.d.ts.map +1 -0
  212. package/dist/workspace/strategies/types.js +11 -0
  213. package/dist/workspace/strategies/types.js.map +1 -0
  214. package/dist/workspace/types.d.ts +1 -1
  215. package/dist/workspace/types.d.ts.map +1 -1
  216. package/dist/workspace/workspace-manager.d.ts +1 -1
  217. package/dist/workspace/workspace-manager.d.ts.map +1 -1
  218. package/docs/implementation-details.md +1127 -0
  219. package/docs/implementation-summary.md +448 -0
  220. package/docs/plan-self-driving-support.md +433 -0
  221. package/docs/spec-self-driving-support.md +462 -0
  222. package/docs/team-templates.md +860 -0
  223. package/docs/teams.md +233 -0
  224. package/package.json +4 -2
  225. package/src/acp/__tests__/integration.test.ts +161 -1
  226. package/src/acp/__tests__/macro-agent.test.ts +95 -0
  227. package/src/acp/__tests__/session-persistence.test.ts +276 -0
  228. package/src/acp/macro-agent.ts +79 -7
  229. package/src/acp/session-mapper.ts +108 -1
  230. package/src/acp/types.ts +33 -1
  231. package/src/agent/agent-manager.ts +158 -6
  232. package/src/agent/types.ts +27 -0
  233. package/src/agent-detection/__tests__/command-builder.test.ts +336 -0
  234. package/src/agent-detection/__tests__/detector.test.ts +768 -0
  235. package/src/agent-detection/__tests__/registry.test.ts +254 -0
  236. package/src/agent-detection/command-builder.ts +90 -0
  237. package/src/agent-detection/detector.ts +307 -0
  238. package/src/agent-detection/index.ts +36 -0
  239. package/src/agent-detection/registry.ts +200 -0
  240. package/src/agent-detection/types.ts +184 -0
  241. package/src/api/server.ts +110 -0
  242. package/src/cli/index.ts +44 -0
  243. package/src/cli/mcp.ts +47 -0
  244. package/src/config/index.ts +9 -0
  245. package/src/config/project-config.ts +107 -0
  246. package/src/lifecycle/cascade.ts +1 -1
  247. package/src/lifecycle/handlers/index.ts +8 -0
  248. package/src/lifecycle/handlers/worker.ts +48 -3
  249. package/src/map/adapter/__tests__/extensions.test.ts +359 -0
  250. package/src/map/adapter/__tests__/workspace-files.test.ts +673 -0
  251. package/src/map/adapter/acp-over-map.ts +45 -2
  252. package/src/map/adapter/event-translator.ts +1 -0
  253. package/src/map/adapter/extensions/agent-detection.ts +201 -0
  254. package/src/map/adapter/extensions/index.ts +63 -0
  255. package/src/map/adapter/extensions/resume.ts +114 -0
  256. package/src/map/adapter/extensions/workspace-files.ts +449 -0
  257. package/src/mcp/mcp-server.ts +67 -0
  258. package/src/mcp/tools/claim_task.ts +86 -0
  259. package/src/mcp/tools/done.ts +24 -10
  260. package/src/mcp/tools/list_claimable_tasks.ts +93 -0
  261. package/src/mcp/tools/unclaim_task.ts +71 -0
  262. package/src/metrics/index.ts +9 -0
  263. package/src/metrics/metrics.ts +280 -0
  264. package/src/roles/capabilities.ts +3 -0
  265. package/src/roles/types.ts +2 -1
  266. package/src/router/__tests__/message-router.test.ts +561 -0
  267. package/src/router/message-router.ts +223 -6
  268. package/src/store/event-store.ts +151 -3
  269. package/src/store/types/agents.ts +1 -1
  270. package/src/store/types/events.ts +2 -1
  271. package/src/store/types/index.ts +1 -0
  272. package/src/store/types/sessions.ts +53 -0
  273. package/src/store/types/tasks.ts +3 -0
  274. package/src/task/backend/memory.ts +116 -0
  275. package/src/task/backend/types.ts +43 -0
  276. package/src/teams/__tests__/cross-subsystem.integration.test.ts +983 -0
  277. package/src/teams/__tests__/e2e/team-runtime.e2e.test.ts +553 -0
  278. package/src/teams/__tests__/team-system.test.ts +1280 -0
  279. package/src/teams/index.ts +13 -0
  280. package/src/teams/team-loader.ts +434 -0
  281. package/src/teams/team-runtime.ts +727 -0
  282. package/src/teams/types.ts +377 -0
  283. package/src/workspace/dataplane-adapter.ts +1 -1
  284. package/src/workspace/index.ts +1 -1
  285. package/src/workspace/strategies/index.ts +18 -0
  286. package/src/workspace/strategies/optimistic.ts +136 -0
  287. package/src/workspace/strategies/queue.ts +81 -0
  288. package/src/workspace/strategies/registry.ts +89 -0
  289. package/src/workspace/strategies/trunk.ts +123 -0
  290. package/src/workspace/strategies/types.ts +145 -0
  291. package/src/workspace/types.ts +1 -1
  292. package/src/workspace/workspace-manager.ts +1 -1
  293. package/.claude/settings.local.json +0 -59
  294. package/dist/map/utils/address-translation.d.ts +0 -99
  295. package/dist/map/utils/address-translation.d.ts.map +0 -1
  296. package/dist/map/utils/address-translation.js +0 -285
  297. package/dist/map/utils/address-translation.js.map +0 -1
  298. package/dist/map/utils/index.d.ts +0 -7
  299. package/dist/map/utils/index.d.ts.map +0 -1
  300. package/dist/map/utils/index.js +0 -7
  301. package/dist/map/utils/index.js.map +0 -1
  302. package/references/acp-factory-ref/CHANGELOG.md +0 -33
  303. package/references/acp-factory-ref/LICENSE +0 -21
  304. package/references/acp-factory-ref/README.md +0 -341
  305. package/references/acp-factory-ref/package-lock.json +0 -3102
  306. package/references/acp-factory-ref/package.json +0 -96
  307. package/references/acp-factory-ref/python/CHANGELOG.md +0 -33
  308. package/references/acp-factory-ref/python/LICENSE +0 -21
  309. package/references/acp-factory-ref/python/Makefile +0 -57
  310. package/references/acp-factory-ref/python/README.md +0 -253
  311. package/references/acp-factory-ref/python/pyproject.toml +0 -73
  312. package/references/acp-factory-ref/python/tests/__init__.py +0 -0
  313. package/references/acp-factory-ref/python/tests/e2e/__init__.py +0 -1
  314. package/references/acp-factory-ref/python/tests/e2e/test_codex_e2e.py +0 -349
  315. package/references/acp-factory-ref/python/tests/e2e/test_gemini_e2e.py +0 -165
  316. package/references/acp-factory-ref/python/tests/e2e/test_opencode_e2e.py +0 -296
  317. package/references/acp-factory-ref/python/tests/test_client_handler.py +0 -543
  318. package/references/acp-factory-ref/python/tests/test_pushable.py +0 -199
  319. package/references/claude-code-acp/.github/workflows/ci.yml +0 -45
  320. package/references/claude-code-acp/.github/workflows/publish.yml +0 -34
  321. package/references/claude-code-acp/.prettierrc.json +0 -4
  322. package/references/claude-code-acp/CHANGELOG.md +0 -249
  323. package/references/claude-code-acp/LICENSE +0 -222
  324. package/references/claude-code-acp/README.md +0 -53
  325. package/references/claude-code-acp/docs/RELEASES.md +0 -24
  326. package/references/claude-code-acp/eslint.config.js +0 -48
  327. package/references/claude-code-acp/package-lock.json +0 -4570
  328. package/references/claude-code-acp/package.json +0 -88
  329. package/references/claude-code-acp/scripts/release.sh +0 -119
  330. package/references/claude-code-acp/src/acp-agent.ts +0 -2065
  331. package/references/claude-code-acp/src/index.ts +0 -26
  332. package/references/claude-code-acp/src/lib.ts +0 -38
  333. package/references/claude-code-acp/src/mcp-server.ts +0 -911
  334. package/references/claude-code-acp/src/settings.ts +0 -522
  335. package/references/claude-code-acp/src/tests/.claude/commands/quick-math.md +0 -5
  336. package/references/claude-code-acp/src/tests/.claude/commands/say-hello.md +0 -6
  337. package/references/claude-code-acp/src/tests/acp-agent-fork.test.ts +0 -479
  338. package/references/claude-code-acp/src/tests/acp-agent.test.ts +0 -1502
  339. package/references/claude-code-acp/src/tests/extract-lines.test.ts +0 -103
  340. package/references/claude-code-acp/src/tests/fork-session.test.ts +0 -335
  341. package/references/claude-code-acp/src/tests/replace-and-calculate-location.test.ts +0 -334
  342. package/references/claude-code-acp/src/tests/settings.test.ts +0 -617
  343. package/references/claude-code-acp/src/tests/skills-options.test.ts +0 -187
  344. package/references/claude-code-acp/src/tests/tools.test.ts +0 -318
  345. package/references/claude-code-acp/src/tests/typescript-declarations.test.ts +0 -558
  346. package/references/claude-code-acp/src/tools.ts +0 -819
  347. package/references/claude-code-acp/src/utils.ts +0 -171
  348. package/references/claude-code-acp/tsconfig.json +0 -18
  349. package/references/claude-code-acp/vitest.config.ts +0 -19
  350. package/references/multi-agent-protocol/.sudocode/issues.jsonl +0 -111
  351. package/references/multi-agent-protocol/.sudocode/specs.jsonl +0 -13
  352. package/references/multi-agent-protocol/LICENSE +0 -21
  353. package/references/multi-agent-protocol/README.md +0 -113
  354. package/references/multi-agent-protocol/docs/00-design-specification.md +0 -496
  355. package/references/multi-agent-protocol/docs/01-open-questions.md +0 -1050
  356. package/references/multi-agent-protocol/docs/02-wire-protocol.md +0 -296
  357. package/references/multi-agent-protocol/docs/03-streaming-semantics.md +0 -252
  358. package/references/multi-agent-protocol/docs/04-error-handling.md +0 -231
  359. package/references/multi-agent-protocol/docs/05-connection-model.md +0 -244
  360. package/references/multi-agent-protocol/docs/06-visibility-permissions.md +0 -243
  361. package/references/multi-agent-protocol/docs/07-federation.md +0 -259
  362. package/references/multi-agent-protocol/docs/08-macro-agent-migration.md +0 -253
  363. package/references/multi-agent-protocol/docs/09-authentication.md +0 -680
  364. package/references/multi-agent-protocol/docs/10-mail-protocol.md +0 -553
  365. package/references/multi-agent-protocol/docs/agent-iam-integration.md +0 -877
  366. package/references/multi-agent-protocol/docs/agentic-mesh-integration-draft.md +0 -459
  367. package/references/multi-agent-protocol/docs/git-transport-draft.md +0 -251
  368. package/references/multi-agent-protocol/docs-site/Gemfile +0 -22
  369. package/references/multi-agent-protocol/docs-site/README.md +0 -82
  370. package/references/multi-agent-protocol/docs-site/_config.yml +0 -91
  371. package/references/multi-agent-protocol/docs-site/_includes/head_custom.html +0 -20
  372. package/references/multi-agent-protocol/docs-site/_sass/color_schemes/map.scss +0 -42
  373. package/references/multi-agent-protocol/docs-site/_sass/custom/custom.scss +0 -34
  374. package/references/multi-agent-protocol/docs-site/examples/full-integration.md +0 -510
  375. package/references/multi-agent-protocol/docs-site/examples/index.md +0 -138
  376. package/references/multi-agent-protocol/docs-site/examples/simple-chat.md +0 -282
  377. package/references/multi-agent-protocol/docs-site/examples/task-queue.md +0 -399
  378. package/references/multi-agent-protocol/docs-site/getting-started/index.md +0 -98
  379. package/references/multi-agent-protocol/docs-site/getting-started/installation.md +0 -219
  380. package/references/multi-agent-protocol/docs-site/getting-started/overview.md +0 -172
  381. package/references/multi-agent-protocol/docs-site/getting-started/quickstart.md +0 -237
  382. package/references/multi-agent-protocol/docs-site/index.md +0 -136
  383. package/references/multi-agent-protocol/docs-site/protocol/authentication.md +0 -391
  384. package/references/multi-agent-protocol/docs-site/protocol/connection-model.md +0 -376
  385. package/references/multi-agent-protocol/docs-site/protocol/design.md +0 -284
  386. package/references/multi-agent-protocol/docs-site/protocol/error-handling.md +0 -312
  387. package/references/multi-agent-protocol/docs-site/protocol/federation.md +0 -449
  388. package/references/multi-agent-protocol/docs-site/protocol/index.md +0 -129
  389. package/references/multi-agent-protocol/docs-site/protocol/permissions.md +0 -398
  390. package/references/multi-agent-protocol/docs-site/protocol/streaming.md +0 -353
  391. package/references/multi-agent-protocol/docs-site/protocol/wire-protocol.md +0 -369
  392. package/references/multi-agent-protocol/docs-site/sdk/api/agent.md +0 -357
  393. package/references/multi-agent-protocol/docs-site/sdk/api/client.md +0 -380
  394. package/references/multi-agent-protocol/docs-site/sdk/api/index.md +0 -62
  395. package/references/multi-agent-protocol/docs-site/sdk/api/server.md +0 -453
  396. package/references/multi-agent-protocol/docs-site/sdk/api/types.md +0 -468
  397. package/references/multi-agent-protocol/docs-site/sdk/guides/agent.md +0 -375
  398. package/references/multi-agent-protocol/docs-site/sdk/guides/authentication.md +0 -405
  399. package/references/multi-agent-protocol/docs-site/sdk/guides/client.md +0 -352
  400. package/references/multi-agent-protocol/docs-site/sdk/guides/index.md +0 -89
  401. package/references/multi-agent-protocol/docs-site/sdk/guides/server.md +0 -360
  402. package/references/multi-agent-protocol/docs-site/sdk/guides/testing.md +0 -446
  403. package/references/multi-agent-protocol/docs-site/sdk/guides/transports.md +0 -363
  404. package/references/multi-agent-protocol/docs-site/sdk/index.md +0 -206
  405. package/references/multi-agent-protocol/package-lock.json +0 -3886
  406. package/references/multi-agent-protocol/package.json +0 -56
  407. package/references/multi-agent-protocol/schema/meta.json +0 -467
  408. package/references/multi-agent-protocol/schema/schema.json +0 -2558
@@ -1,96 +0,0 @@
1
- {
2
- "name": "acp-factory",
3
- "version": "0.1.9",
4
- "description": "A library for spawning and managing agents through the Agent Client Protocol (ACP)",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "type": "module",
8
- "exports": {
9
- ".": {
10
- "types": "./dist/index.d.ts",
11
- "import": "./dist/index.js"
12
- }
13
- },
14
- "files": [
15
- "dist/",
16
- "README.md",
17
- "LICENSE",
18
- "CHANGELOG.md"
19
- ],
20
- "scripts": {
21
- "build": "tsc",
22
- "dev": "tsc --watch",
23
- "test": "vitest",
24
- "test:run": "vitest run",
25
- "test:e2e": "RUN_E2E_TESTS=true vitest run test/e2e/",
26
- "test:e2e:local": "RUN_E2E_TESTS=true USE_LOCAL_FORK=true vitest run test/e2e/",
27
- "test:e2e:codex": "RUN_E2E_TESTS=true vitest run test/e2e/codex.e2e.test.ts",
28
- "test:e2e:copilot-cli": "RUN_E2E_TESTS=true vitest run test/e2e/copilot-cli.e2e.test.ts",
29
- "test:e2e:gemini": "RUN_E2E_TESTS=true vitest run test/e2e/gemini.e2e.test.ts",
30
- "test:e2e:opencode": "RUN_E2E_TESTS=true vitest run test/e2e/opencode.e2e.test.ts",
31
- "test:e2e:claude": "RUN_E2E_TESTS=true vitest run test/e2e/session-fork-resume.test.ts test/e2e/fork-with-flush.e2e.test.ts",
32
- "lint": "eslint src --ext .ts",
33
- "lint:fix": "eslint src --ext .ts --fix",
34
- "clean": "rm -rf dist",
35
- "prebuild": "npm run clean",
36
- "pretest:run": "npm run build",
37
- "prepublishOnly": "npm run test:run && npm run build",
38
- "version": "npm run build",
39
- "postversion": "git push && git push --tags",
40
- "release:patch": "npm version patch",
41
- "release:minor": "npm version minor",
42
- "release:major": "npm version major",
43
- "publish:dry": "npm publish --dry-run",
44
- "publish:npm": "npm publish --access public"
45
- },
46
- "repository": {
47
- "type": "git",
48
- "url": "git+https://github.com/sudocode-ai/acp-factory.git"
49
- },
50
- "bugs": {
51
- "url": "https://github.com/sudocode-ai/acp-factory/issues"
52
- },
53
- "homepage": "https://github.com/sudocode-ai/acp-factory#readme",
54
- "keywords": [
55
- "acp",
56
- "agent",
57
- "agent-client-protocol",
58
- "ai",
59
- "llm",
60
- "typescript",
61
- "sdk"
62
- ],
63
- "author": "Sudocode AI",
64
- "license": "MIT",
65
- "engines": {
66
- "node": ">=18.0.0"
67
- },
68
- "dependencies": {
69
- "@agentclientprotocol/sdk": "^0.13.0"
70
- },
71
- "peerDependencies": {
72
- "@sudocode-ai/claude-code-acp": "^0.13.8",
73
- "@zed-industries/codex-acp": "^0.9.0",
74
- "@github/copilot": ">0.0.388",
75
- "@google/gemini-cli": "^0.21.0"
76
- },
77
- "peerDependenciesMeta": {
78
- "@sudocode-ai/claude-code-acp": {
79
- "optional": true
80
- },
81
- "@zed-industries/codex-acp": {
82
- "optional": true
83
- },
84
- "@github/copilot": {
85
- "optional": true
86
- },
87
- "@google/gemini-cli": {
88
- "optional": true
89
- }
90
- },
91
- "devDependencies": {
92
- "@types/node": "^22.0.0",
93
- "typescript": "^5.7.0",
94
- "vitest": "^2.0.0"
95
- }
96
- }
@@ -1,33 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ## [Unreleased]
9
-
10
- ## [0.1.0] - 2025-01-06
11
-
12
- ### Added
13
-
14
- - Initial release - 1:1 port from TypeScript implementation
15
- - `AgentFactory` for registering and spawning agents
16
- - `AgentHandle` for managing agent processes
17
- - `Session` for interacting with agent sessions
18
- - Pre-registered agents: `claude-code`, `codex`, `gemini`, `opencode`
19
- - Streaming responses via async iterators
20
- - Permission handling modes: `auto-approve`, `auto-deny`, `callback`, `interactive`
21
- - Interactive permission requests as session updates
22
- - `session.interrupt_with()` for interrupting and redirecting agents
23
- - `session.fork()` for creating independent session copies (experimental)
24
- - `agent_handle.fork_session()` for forking by session ID (experimental)
25
- - `session.flush()` for checkpointing sessions to disk
26
- - Custom file read/write handlers
27
- - Terminal operation handlers
28
- - MCP server support
29
- - Full type annotations (PEP 561 compliant)
30
-
31
- ### Dependencies
32
-
33
- - `agent-client-protocol` >=0.7.0
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 Sudocode AI
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
@@ -1,57 +0,0 @@
1
- .PHONY: install dev test lint format typecheck clean build publish publish-test
2
-
3
- # Install package
4
- install:
5
- pip install .
6
-
7
- # Install with dev dependencies
8
- dev:
9
- pip install -e ".[dev]"
10
-
11
- # Run tests
12
- test:
13
- pytest
14
-
15
- # Run linter
16
- lint:
17
- ruff check src tests
18
-
19
- # Format code
20
- format:
21
- ruff format src tests
22
- ruff check --fix src tests
23
-
24
- # Run type checker
25
- typecheck:
26
- mypy src
27
-
28
- # Clean build artifacts
29
- clean:
30
- rm -rf dist build *.egg-info src/*.egg-info
31
- find . -type d -name __pycache__ -exec rm -rf {} + 2>/dev/null || true
32
- find . -type f -name "*.pyc" -delete
33
-
34
- # Build package
35
- build: clean
36
- python -m build
37
-
38
- # Publish to TestPyPI (for testing)
39
- publish-test: build
40
- python -m twine upload --repository testpypi dist/*
41
-
42
- # Publish to PyPI
43
- publish: build
44
- python -m twine upload dist/*
45
-
46
- # Version bump helpers
47
- version-patch:
48
- @echo "Update version in pyproject.toml and src/acp_factory/__init__.py"
49
- @echo "Then run: git tag v<version> && git push --tags"
50
-
51
- version-minor:
52
- @echo "Update version in pyproject.toml and src/acp_factory/__init__.py"
53
- @echo "Then run: git tag v<version> && git push --tags"
54
-
55
- version-major:
56
- @echo "Update version in pyproject.toml and src/acp_factory/__init__.py"
57
- @echo "Then run: git tag v<version> && git push --tags"
@@ -1,253 +0,0 @@
1
- # acp-factory
2
-
3
- A Python library for spawning and managing AI agents through the [Agent Client Protocol (ACP)](https://agentclientprotocol.com/).
4
-
5
- ## Installation
6
-
7
- ```bash
8
- pip install acp-factory
9
- ```
10
-
11
- ## Prerequisites
12
-
13
- - Python 3.10+
14
- - [Claude Code](https://claude.ai/claude-code) installed and authenticated (run `claude` once to set up)
15
- - Or set `ANTHROPIC_API_KEY` environment variable
16
-
17
- ## Quick Start
18
-
19
- ```python
20
- import asyncio
21
- from acp_factory import AgentFactory
22
-
23
- async def main():
24
- # Spawn a Claude Code agent
25
- agent = await AgentFactory.spawn("claude-code", {
26
- "permission_mode": "auto-approve",
27
- })
28
-
29
- # Create a session
30
- session = await agent.create_session(".")
31
-
32
- # Send a prompt and stream responses
33
- async for update in session.prompt("What files are in this directory?"):
34
- if update.get("session_update") == "agent_message_chunk":
35
- content = update.get("content", {})
36
- if content.get("type") == "text":
37
- print(content.get("text", ""), end="")
38
-
39
- # Clean up
40
- await agent.close()
41
-
42
- asyncio.run(main())
43
- ```
44
-
45
- ## API Reference
46
-
47
- ### AgentFactory
48
-
49
- Static class for managing agent types and spawning agents.
50
-
51
- ```python
52
- # List available agents
53
- AgentFactory.list_agents() # ["claude-code", "codex", "gemini", "opencode"]
54
-
55
- # Register a custom agent
56
- AgentFactory.register("my-agent", AgentConfig(
57
- command="my-agent",
58
- args=["--acp"],
59
- env={"MY_VAR": "value"},
60
- ))
61
-
62
- # Spawn an agent
63
- agent = await AgentFactory.spawn("claude-code", options)
64
- ```
65
-
66
- ### AgentHandle
67
-
68
- Represents a running agent process.
69
-
70
- ```python
71
- # Agent capabilities
72
- agent.capabilities # {"loadSession": True, ...}
73
-
74
- # Create a new session
75
- session = await agent.create_session("/path/to/cwd", SessionOptions(
76
- mode="code",
77
- mcp_servers=[],
78
- ))
79
-
80
- # Load an existing session
81
- session = await agent.load_session(session_id, "/path/to/cwd")
82
-
83
- # Close the agent
84
- await agent.close()
85
-
86
- # Check if running
87
- agent.is_running() # True/False
88
- ```
89
-
90
- ### Session
91
-
92
- High-level interface for interacting with an agent session.
93
-
94
- ```python
95
- # Session properties
96
- session.id # Session ID
97
- session.modes # Available modes ["code", "ask", ...]
98
- session.models # Available models ["claude-sonnet-4-...", ...]
99
-
100
- # Send a prompt (returns async iterator)
101
- async for update in session.prompt("Hello!"):
102
- # Handle updates
103
- pass
104
-
105
- # Cancel the current prompt
106
- await session.cancel()
107
-
108
- # Set the session mode
109
- await session.set_mode("ask")
110
-
111
- # Interrupt and redirect with new context
112
- async for update in session.interrupt_with("Focus on tests only"):
113
- # Handle updates from new prompt
114
- pass
115
- ```
116
-
117
- ## Permission Modes
118
-
119
- Control how permission requests are handled:
120
-
121
- ```python
122
- from acp_factory import SpawnOptions
123
-
124
- # Auto-approve all requests (default)
125
- await AgentFactory.spawn("claude-code", SpawnOptions(
126
- permission_mode="auto-approve",
127
- ))
128
-
129
- # Auto-deny all requests
130
- await AgentFactory.spawn("claude-code", SpawnOptions(
131
- permission_mode="auto-deny",
132
- ))
133
-
134
- # Use a callback handler
135
- async def handle_permission(request):
136
- return {"outcome": {"outcome": "selected", "option_id": "allow"}}
137
-
138
- await AgentFactory.spawn("claude-code", SpawnOptions(
139
- permission_mode="callback",
140
- on_permission_request=handle_permission,
141
- ))
142
-
143
- # Interactive mode - permissions emitted as session updates
144
- await AgentFactory.spawn("claude-code", SpawnOptions(
145
- permission_mode="interactive",
146
- ))
147
- ```
148
-
149
- ## Development
150
-
151
- ### Setup
152
-
153
- ```bash
154
- # Clone the repository
155
- git clone https://github.com/sudocode-ai/acp-factory.git
156
- cd acp-factory/python
157
-
158
- # Install with dev dependencies
159
- make dev
160
- # or
161
- pip install -e ".[dev]"
162
- ```
163
-
164
- ### Commands
165
-
166
- ```bash
167
- # Run tests
168
- make test
169
-
170
- # Run linter
171
- make lint
172
-
173
- # Format code
174
- make format
175
-
176
- # Type check
177
- make typecheck
178
-
179
- # Clean build artifacts
180
- make clean
181
- ```
182
-
183
- ## Publishing to PyPI
184
-
185
- ### Prerequisites
186
-
187
- 1. Create accounts on [PyPI](https://pypi.org/) and [TestPyPI](https://test.pypi.org/)
188
- 2. Create API tokens for both
189
- 3. Configure `~/.pypirc`:
190
-
191
- ```ini
192
- [distutils]
193
- index-servers =
194
- pypi
195
- testpypi
196
-
197
- [pypi]
198
- username = __token__
199
- password = pypi-YOUR_PYPI_TOKEN
200
-
201
- [testpypi]
202
- username = __token__
203
- password = pypi-YOUR_TESTPYPI_TOKEN
204
- ```
205
-
206
- ### Release Process
207
-
208
- 1. **Update version** in both files:
209
- - `pyproject.toml` → `version = "X.Y.Z"`
210
- - `src/acp_factory/__init__.py` → `__version__ = "X.Y.Z"`
211
-
212
- 2. **Update CHANGELOG.md** with release notes
213
-
214
- 3. **Test on TestPyPI first:**
215
- ```bash
216
- make publish-test
217
-
218
- # Test installation from TestPyPI
219
- pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ acp-factory
220
- ```
221
-
222
- 4. **Publish to PyPI:**
223
- ```bash
224
- make publish
225
- ```
226
-
227
- 5. **Create git tag:**
228
- ```bash
229
- git tag v0.0.1
230
- git push --tags
231
- ```
232
-
233
- ### Manual Publishing
234
-
235
- If you prefer not to use Make:
236
-
237
- ```bash
238
- # Install build tools
239
- pip install build twine
240
-
241
- # Build package
242
- python -m build
243
-
244
- # Upload to TestPyPI
245
- python -m twine upload --repository testpypi dist/*
246
-
247
- # Upload to PyPI
248
- python -m twine upload dist/*
249
- ```
250
-
251
- ## License
252
-
253
- MIT
@@ -1,73 +0,0 @@
1
- [build-system]
2
- requires = ["hatchling"]
3
- build-backend = "hatchling.build"
4
-
5
- [project]
6
- name = "acp-factory"
7
- version = "0.1.1"
8
- description = "A library for spawning and managing agents through the Agent Client Protocol (ACP)"
9
- readme = "README.md"
10
- license = "MIT"
11
- requires-python = ">=3.10"
12
- authors = [
13
- { name = "Sudocode AI" }
14
- ]
15
- keywords = [
16
- "acp",
17
- "agent",
18
- "agent-client-protocol",
19
- "ai",
20
- "llm",
21
- "sdk"
22
- ]
23
- classifiers = [
24
- "Development Status :: 3 - Alpha",
25
- "Intended Audience :: Developers",
26
- "License :: OSI Approved :: MIT License",
27
- "Programming Language :: Python :: 3",
28
- "Programming Language :: Python :: 3.10",
29
- "Programming Language :: Python :: 3.11",
30
- "Programming Language :: Python :: 3.12",
31
- "Programming Language :: Python :: 3.13",
32
- "Typing :: Typed",
33
- ]
34
- dependencies = [
35
- "agent-client-protocol>=0.7.0",
36
- ]
37
-
38
- [project.optional-dependencies]
39
- dev = [
40
- "pytest>=8.0.0",
41
- "pytest-asyncio>=0.23.0",
42
- "ruff>=0.4.0",
43
- "mypy>=1.10.0",
44
- "build>=1.0.0",
45
- "twine>=5.0.0",
46
- ]
47
-
48
- [project.urls]
49
- Homepage = "https://github.com/sudocode-ai/acp-factory"
50
- Documentation = "https://github.com/sudocode-ai/acp-factory/tree/main/python#readme"
51
- Repository = "https://github.com/sudocode-ai/acp-factory"
52
- Issues = "https://github.com/sudocode-ai/acp-factory/issues"
53
- Changelog = "https://github.com/sudocode-ai/acp-factory/blob/main/python/CHANGELOG.md"
54
-
55
- [tool.hatch.build.targets.wheel]
56
- packages = ["src/acp_factory"]
57
-
58
- [tool.ruff]
59
- target-version = "py310"
60
- line-length = 100
61
-
62
- [tool.ruff.lint]
63
- select = ["E", "F", "I", "W"]
64
-
65
- [tool.mypy]
66
- python_version = "3.10"
67
- strict = true
68
- warn_return_any = true
69
- warn_unused_configs = true
70
-
71
- [tool.pytest.ini_options]
72
- asyncio_mode = "auto"
73
- testpaths = ["tests"]
@@ -1 +0,0 @@
1
- """E2E tests for acp-factory Python port."""