agent-relay 1.1.0 → 1.2.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 (567) hide show
  1. package/.gitattributes +3 -0
  2. package/.nvmrc +1 -0
  3. package/.trajectories/completed/2026-01/traj_1dviorhnkcb5.json +65 -0
  4. package/.trajectories/completed/2026-01/traj_1dviorhnkcb5.md +37 -0
  5. package/.trajectories/completed/2026-01/traj_1k5if5snst2e.json +65 -0
  6. package/.trajectories/completed/2026-01/traj_1k5if5snst2e.md +37 -0
  7. package/.trajectories/completed/2026-01/traj_1rp3rges5811.json +49 -0
  8. package/.trajectories/completed/2026-01/traj_1rp3rges5811.md +31 -0
  9. package/.trajectories/completed/2026-01/traj_22bhyulruouw.json +113 -0
  10. package/.trajectories/completed/2026-01/traj_22bhyulruouw.md +57 -0
  11. package/.trajectories/completed/2026-01/traj_2dao7ddgnta0.json +53 -0
  12. package/.trajectories/completed/2026-01/traj_2dao7ddgnta0.md +32 -0
  13. package/.trajectories/completed/2026-01/traj_3t0440mjeunc.json +26 -0
  14. package/.trajectories/completed/2026-01/traj_3t0440mjeunc.md +6 -0
  15. package/.trajectories/completed/2026-01/traj_45x9494d9xnr.json +47 -0
  16. package/.trajectories/completed/2026-01/traj_45x9494d9xnr.md +32 -0
  17. package/.trajectories/completed/2026-01/traj_4aa0bb77s4nh.json +53 -0
  18. package/.trajectories/completed/2026-01/traj_4aa0bb77s4nh.md +32 -0
  19. package/.trajectories/completed/2026-01/traj_5lhmzq8rxpqv.json +59 -0
  20. package/.trajectories/completed/2026-01/traj_5lhmzq8rxpqv.md +33 -0
  21. package/.trajectories/completed/2026-01/traj_5vr4e9erb1fs.json +53 -0
  22. package/.trajectories/completed/2026-01/traj_5vr4e9erb1fs.md +32 -0
  23. package/.trajectories/completed/2026-01/traj_6fgiwdoklvym.json +48 -0
  24. package/.trajectories/completed/2026-01/traj_6fgiwdoklvym.md +24 -0
  25. package/.trajectories/completed/2026-01/traj_7ludwvz45veh.json +209 -0
  26. package/.trajectories/completed/2026-01/traj_7ludwvz45veh.md +97 -0
  27. package/.trajectories/completed/2026-01/traj_9921cuhel0pj.json +48 -0
  28. package/.trajectories/completed/2026-01/traj_9921cuhel0pj.md +24 -0
  29. package/.trajectories/completed/2026-01/traj_ajs7zqfux4wc.json +49 -0
  30. package/.trajectories/completed/2026-01/traj_ajs7zqfux4wc.md +23 -0
  31. package/.trajectories/completed/2026-01/traj_cvtqhlwcq9s0.json +53 -0
  32. package/.trajectories/completed/2026-01/traj_cvtqhlwcq9s0.md +32 -0
  33. package/.trajectories/completed/2026-01/traj_cxofprm2m2en.json +49 -0
  34. package/.trajectories/completed/2026-01/traj_cxofprm2m2en.md +31 -0
  35. package/.trajectories/completed/2026-01/traj_d2hhz3k0vrhn.json +26 -0
  36. package/.trajectories/completed/2026-01/traj_d2hhz3k0vrhn.md +6 -0
  37. package/.trajectories/completed/2026-01/traj_dfuvww9pege5.json +59 -0
  38. package/.trajectories/completed/2026-01/traj_dfuvww9pege5.md +37 -0
  39. package/.trajectories/completed/2026-01/traj_g0fisy9h51mf.json +77 -0
  40. package/.trajectories/completed/2026-01/traj_g0fisy9h51mf.md +42 -0
  41. package/.trajectories/completed/2026-01/traj_gjdre5voouod.json +53 -0
  42. package/.trajectories/completed/2026-01/traj_gjdre5voouod.md +32 -0
  43. package/.trajectories/completed/2026-01/traj_gtlyqtta3x8l.json +25 -0
  44. package/.trajectories/completed/2026-01/traj_gtlyqtta3x8l.md +15 -0
  45. package/.trajectories/completed/2026-01/traj_h4xijiuip3w4.json +101 -0
  46. package/.trajectories/completed/2026-01/traj_h4xijiuip3w4.md +44 -0
  47. package/.trajectories/completed/2026-01/traj_hhxte7w4gjjx.json +22 -0
  48. package/.trajectories/completed/2026-01/traj_hhxte7w4gjjx.md +5 -0
  49. package/.trajectories/completed/2026-01/traj_hpungyhoj6v5.json +53 -0
  50. package/.trajectories/completed/2026-01/traj_hpungyhoj6v5.md +32 -0
  51. package/.trajectories/completed/2026-01/traj_m2xkjv0w2sq7.json +25 -0
  52. package/.trajectories/completed/2026-01/traj_m2xkjv0w2sq7.md +15 -0
  53. package/.trajectories/completed/2026-01/traj_noq5zbvnrdvz.json +53 -0
  54. package/.trajectories/completed/2026-01/traj_noq5zbvnrdvz.md +32 -0
  55. package/.trajectories/completed/2026-01/traj_ntbs6ppopf46.json +53 -0
  56. package/.trajectories/completed/2026-01/traj_ntbs6ppopf46.md +32 -0
  57. package/.trajectories/completed/2026-01/traj_ozd98si6a7ns.json +48 -0
  58. package/.trajectories/completed/2026-01/traj_ozd98si6a7ns.md +24 -0
  59. package/.trajectories/completed/2026-01/traj_prdza7a5cxp5.json +53 -0
  60. package/.trajectories/completed/2026-01/traj_prdza7a5cxp5.md +32 -0
  61. package/.trajectories/completed/2026-01/traj_qb3twvvywfwi.json +77 -0
  62. package/.trajectories/completed/2026-01/traj_qb3twvvywfwi.md +42 -0
  63. package/.trajectories/completed/2026-01/traj_qft54mi7nfor.json +53 -0
  64. package/.trajectories/completed/2026-01/traj_qft54mi7nfor.md +32 -0
  65. package/.trajectories/completed/2026-01/traj_qx9uhf8whhxo.json +83 -0
  66. package/.trajectories/completed/2026-01/traj_qx9uhf8whhxo.md +47 -0
  67. package/.trajectories/completed/2026-01/traj_rd9toccj18a0.json +59 -0
  68. package/.trajectories/completed/2026-01/traj_rd9toccj18a0.md +37 -0
  69. package/.trajectories/completed/2026-01/traj_rt4fiw3ecp50.json +48 -0
  70. package/.trajectories/completed/2026-01/traj_rt4fiw3ecp50.md +16 -0
  71. package/.trajectories/completed/2026-01/traj_st8j35b0hrlc.json +59 -0
  72. package/.trajectories/completed/2026-01/traj_st8j35b0hrlc.md +37 -0
  73. package/.trajectories/completed/2026-01/traj_t1yy8m7hbuxp.json +53 -0
  74. package/.trajectories/completed/2026-01/traj_t1yy8m7hbuxp.md +32 -0
  75. package/.trajectories/completed/2026-01/traj_tmux_orchestrator_analysis.json +84 -0
  76. package/.trajectories/completed/2026-01/traj_tmux_orchestrator_analysis.md +109 -0
  77. package/.trajectories/completed/2026-01/traj_u9n9eqasw16k.json +53 -0
  78. package/.trajectories/completed/2026-01/traj_u9n9eqasw16k.md +32 -0
  79. package/.trajectories/completed/2026-01/traj_v87hypnongqx.json +71 -0
  80. package/.trajectories/completed/2026-01/traj_v87hypnongqx.md +42 -0
  81. package/.trajectories/completed/2026-01/traj_wkp2fgzdyinb.json +53 -0
  82. package/.trajectories/completed/2026-01/traj_wkp2fgzdyinb.md +32 -0
  83. package/.trajectories/completed/2026-01/traj_x14t8w8rn7xg.json +20 -0
  84. package/.trajectories/completed/2026-01/traj_x14t8w8rn7xg.md +6 -0
  85. package/.trajectories/completed/2026-01/traj_xnwbznkvv8ua.json +175 -0
  86. package/.trajectories/completed/2026-01/traj_xnwbznkvv8ua.md +82 -0
  87. package/.trajectories/completed/2026-01/traj_ysjc8zaeqtd3.json +47 -0
  88. package/.trajectories/completed/2026-01/traj_ysjc8zaeqtd3.md +32 -0
  89. package/.trajectories/completed/2026-01/traj_yvdadtvdgnz3.json +59 -0
  90. package/.trajectories/completed/2026-01/traj_yvdadtvdgnz3.md +37 -0
  91. package/.trajectories/completed/2026-01/traj_z0vcw1wrzide.json +53 -0
  92. package/.trajectories/completed/2026-01/traj_z0vcw1wrzide.md +32 -0
  93. package/.trajectories/index.json +314 -0
  94. package/ARCHITECTURE.md +1245 -0
  95. package/README.md +1 -1
  96. package/TESTING.md +278 -0
  97. package/deploy/init-db.sql +5 -0
  98. package/deploy/scripts/setup-fly-workspaces.sh +69 -0
  99. package/deploy/scripts/setup-railway.sh +75 -0
  100. package/deploy/workspace/entrypoint-browser.sh +118 -0
  101. package/deploy/workspace/entrypoint.sh +348 -0
  102. package/deploy/workspace/git-credential-relay +111 -0
  103. package/dist/bridge/spawner.d.ts +53 -0
  104. package/dist/bridge/spawner.js +203 -19
  105. package/dist/bridge/types.d.ts +12 -0
  106. package/dist/cli/index.js +618 -5
  107. package/dist/cloud/api/auth.d.ts +3 -2
  108. package/dist/cloud/api/auth.js +10 -98
  109. package/dist/cloud/api/billing.js +30 -9
  110. package/dist/cloud/api/cli-pty-runner.d.ts +54 -0
  111. package/dist/cloud/api/cli-pty-runner.js +119 -0
  112. package/dist/cloud/api/codex-auth-helper.d.ts +15 -0
  113. package/dist/cloud/api/codex-auth-helper.js +100 -0
  114. package/dist/cloud/api/generic-webhooks.d.ts +8 -0
  115. package/dist/cloud/api/generic-webhooks.js +129 -0
  116. package/dist/cloud/api/git.d.ts +8 -0
  117. package/dist/cloud/api/git.js +152 -0
  118. package/dist/cloud/api/github-app.d.ts +11 -0
  119. package/dist/cloud/api/github-app.js +189 -0
  120. package/dist/cloud/api/middleware/planLimits.d.ts +7 -0
  121. package/dist/cloud/api/middleware/planLimits.js +39 -1
  122. package/dist/cloud/api/monitoring.d.ts +11 -0
  123. package/dist/cloud/api/monitoring.js +578 -0
  124. package/dist/cloud/api/nango-auth.d.ts +9 -0
  125. package/dist/cloud/api/nango-auth.js +377 -0
  126. package/dist/cloud/api/onboarding.d.ts +8 -1
  127. package/dist/cloud/api/onboarding.js +313 -119
  128. package/dist/cloud/api/policy.d.ts +8 -0
  129. package/dist/cloud/api/policy.js +229 -0
  130. package/dist/cloud/api/providers.js +114 -42
  131. package/dist/cloud/api/repos.d.ts +1 -0
  132. package/dist/cloud/api/repos.js +186 -0
  133. package/dist/cloud/api/test-helpers.d.ts +10 -0
  134. package/dist/cloud/api/test-helpers.js +575 -0
  135. package/dist/cloud/api/webhooks.d.ts +8 -0
  136. package/dist/cloud/api/webhooks.js +645 -0
  137. package/dist/cloud/api/workspaces.js +320 -12
  138. package/dist/cloud/billing/plans.js +32 -19
  139. package/dist/cloud/billing/types.d.ts +9 -3
  140. package/dist/cloud/config.d.ts +9 -2
  141. package/dist/cloud/config.js +13 -4
  142. package/dist/cloud/db/drizzle.d.ts +84 -1
  143. package/dist/cloud/db/drizzle.js +470 -0
  144. package/dist/cloud/db/index.d.ts +9 -4
  145. package/dist/cloud/db/index.js +11 -3
  146. package/dist/cloud/db/schema.d.ts +3283 -556
  147. package/dist/cloud/db/schema.js +314 -1
  148. package/dist/cloud/index.d.ts +1 -0
  149. package/dist/cloud/index.js +2 -0
  150. package/dist/cloud/provisioner/index.d.ts +56 -0
  151. package/dist/cloud/provisioner/index.js +676 -34
  152. package/dist/cloud/server.d.ts +1 -0
  153. package/dist/cloud/server.js +362 -13
  154. package/dist/cloud/services/auto-scaler.d.ts +152 -0
  155. package/dist/cloud/services/auto-scaler.js +439 -0
  156. package/dist/cloud/services/capacity-manager.d.ts +148 -0
  157. package/dist/cloud/services/capacity-manager.js +449 -0
  158. package/dist/cloud/services/ci-agent-spawner.d.ts +49 -0
  159. package/dist/cloud/services/ci-agent-spawner.js +373 -0
  160. package/dist/cloud/services/index.d.ts +12 -0
  161. package/dist/cloud/services/index.js +15 -0
  162. package/dist/cloud/services/mention-handler.d.ts +65 -0
  163. package/dist/cloud/services/mention-handler.js +405 -0
  164. package/dist/cloud/services/nango.d.ts +186 -0
  165. package/dist/cloud/services/nango.js +344 -0
  166. package/dist/cloud/services/persistence.d.ts +131 -0
  167. package/dist/cloud/services/persistence.js +200 -0
  168. package/dist/cloud/services/planLimits.d.ts +37 -0
  169. package/dist/cloud/services/planLimits.js +86 -5
  170. package/dist/cloud/services/scaling-orchestrator.d.ts +159 -0
  171. package/dist/cloud/services/scaling-orchestrator.js +502 -0
  172. package/dist/cloud/services/scaling-policy.d.ts +121 -0
  173. package/dist/cloud/services/scaling-policy.js +415 -0
  174. package/dist/cloud/vault/index.js +1 -1
  175. package/dist/cloud/webhooks/index.d.ts +24 -0
  176. package/dist/cloud/webhooks/index.js +29 -0
  177. package/dist/cloud/webhooks/parsers/github.d.ts +8 -0
  178. package/dist/cloud/webhooks/parsers/github.js +234 -0
  179. package/dist/cloud/webhooks/parsers/index.d.ts +23 -0
  180. package/dist/cloud/webhooks/parsers/index.js +30 -0
  181. package/dist/cloud/webhooks/parsers/linear.d.ts +9 -0
  182. package/dist/cloud/webhooks/parsers/linear.js +258 -0
  183. package/dist/cloud/webhooks/parsers/slack.d.ts +9 -0
  184. package/dist/cloud/webhooks/parsers/slack.js +214 -0
  185. package/dist/cloud/webhooks/responders/github.d.ts +8 -0
  186. package/dist/cloud/webhooks/responders/github.js +73 -0
  187. package/dist/cloud/webhooks/responders/index.d.ts +23 -0
  188. package/dist/cloud/webhooks/responders/index.js +30 -0
  189. package/dist/cloud/webhooks/responders/linear.d.ts +9 -0
  190. package/dist/cloud/webhooks/responders/linear.js +149 -0
  191. package/dist/cloud/webhooks/responders/slack.d.ts +20 -0
  192. package/dist/cloud/webhooks/responders/slack.js +178 -0
  193. package/dist/cloud/webhooks/router.d.ts +25 -0
  194. package/dist/cloud/webhooks/router.js +504 -0
  195. package/dist/cloud/webhooks/rules-engine.d.ts +24 -0
  196. package/dist/cloud/webhooks/rules-engine.js +287 -0
  197. package/dist/cloud/webhooks/types.d.ts +186 -0
  198. package/dist/cloud/webhooks/types.js +8 -0
  199. package/dist/continuity/formatter.d.ts +51 -0
  200. package/dist/continuity/formatter.js +313 -0
  201. package/dist/continuity/handoff-store.d.ts +67 -0
  202. package/dist/continuity/handoff-store.js +472 -0
  203. package/dist/continuity/index.d.ts +45 -0
  204. package/dist/continuity/index.js +48 -0
  205. package/dist/continuity/ledger-store.d.ts +110 -0
  206. package/dist/continuity/ledger-store.js +500 -0
  207. package/dist/continuity/manager.d.ts +178 -0
  208. package/dist/continuity/manager.js +562 -0
  209. package/dist/continuity/parser.d.ts +76 -0
  210. package/dist/continuity/parser.js +579 -0
  211. package/dist/continuity/types.d.ts +180 -0
  212. package/dist/continuity/types.js +9 -0
  213. package/dist/daemon/agent-manager.d.ts +27 -0
  214. package/dist/daemon/agent-manager.js +107 -6
  215. package/dist/daemon/agent-registry.d.ts +32 -0
  216. package/dist/daemon/agent-registry.js +42 -2
  217. package/dist/daemon/api.d.ts +12 -0
  218. package/dist/daemon/api.js +131 -2
  219. package/dist/daemon/cli-auth.d.ts +67 -0
  220. package/dist/daemon/cli-auth.js +537 -0
  221. package/dist/daemon/cloud-sync.js +9 -7
  222. package/dist/daemon/orchestrator.js +30 -0
  223. package/dist/daemon/router.d.ts +5 -0
  224. package/dist/daemon/router.js +78 -26
  225. package/dist/daemon/server.d.ts +5 -0
  226. package/dist/daemon/server.js +9 -1
  227. package/dist/daemon/services/browser-testing.d.ts +88 -0
  228. package/dist/daemon/services/browser-testing.js +244 -0
  229. package/dist/daemon/services/container-spawner.d.ts +135 -0
  230. package/dist/daemon/services/container-spawner.js +313 -0
  231. package/dist/daemon/types.d.ts +5 -1
  232. package/dist/dashboard/out/404.html +1 -1
  233. package/dist/dashboard/out/_next/static/chunks/116-2502180def231162.js +1 -0
  234. package/dist/dashboard/out/_next/static/chunks/282-980c2eb8fff20123.js +1 -0
  235. package/dist/dashboard/out/_next/static/chunks/699-3b1cd6618a45d259.js +1 -0
  236. package/dist/dashboard/out/_next/static/chunks/724-2dae7627550ab88f.js +9 -0
  237. package/dist/dashboard/out/_next/static/chunks/766-1f2dd8cb7f766b0b.js +1 -0
  238. package/dist/dashboard/out/_next/static/chunks/app/app/onboarding/page-3fdfa60e53f2810d.js +1 -0
  239. package/dist/dashboard/out/_next/static/chunks/app/app/page-e6381e5a6e1fbcfd.js +1 -0
  240. package/dist/dashboard/out/_next/static/chunks/app/connect-repos/page-3538dfe0ffe984b8.js +1 -0
  241. package/dist/dashboard/out/_next/static/chunks/app/history/{page-b6edd4dde8d08194.js → page-abb9ab2d329f56e9.js} +1 -1
  242. package/dist/dashboard/out/_next/static/chunks/app/layout-c0d118c0f92d969c.js +1 -0
  243. package/dist/dashboard/out/_next/static/chunks/app/login/page-c22d080201cbd9fb.js +1 -0
  244. package/dist/dashboard/out/_next/static/chunks/app/metrics/page-67a3e98d9a43a6ed.js +1 -0
  245. package/dist/dashboard/out/_next/static/chunks/app/page-77e9c65420a06cfb.js +1 -0
  246. package/dist/dashboard/out/_next/static/chunks/app/pricing/page-b08ed1c34d14434a.js +1 -0
  247. package/dist/dashboard/out/_next/static/chunks/app/providers/page-e88bc117ef7671c3.js +1 -0
  248. package/dist/dashboard/out/_next/static/chunks/app/signup/page-68d34f50baa8ab6b.js +1 -0
  249. package/dist/dashboard/out/_next/static/chunks/e868780c-48e5f147c90a3a41.js +18 -0
  250. package/dist/dashboard/out/_next/static/chunks/{main-app-5d692157a8eb1fd9.js → main-app-6e8e8d3ef4e0192a.js} +1 -1
  251. package/dist/dashboard/out/_next/static/chunks/{main-c2f423b9c9f4591b.js → main-ed4e1fb6f29c34cf.js} +1 -1
  252. package/dist/dashboard/out/_next/static/chunks/webpack-1cdd8ed57114d5e1.js +1 -0
  253. package/dist/dashboard/out/_next/static/css/29852f26181969a0.css +1 -0
  254. package/dist/dashboard/out/_next/static/css/7c3ae9e8617d42a5.css +1 -0
  255. package/dist/dashboard/out/app/onboarding.html +1 -0
  256. package/dist/dashboard/out/app/onboarding.txt +7 -0
  257. package/dist/dashboard/out/app.html +1 -14
  258. package/dist/dashboard/out/app.txt +2 -2
  259. package/dist/dashboard/out/connect-repos.html +1 -0
  260. package/dist/dashboard/out/connect-repos.txt +7 -0
  261. package/dist/dashboard/out/history.html +1 -1
  262. package/dist/dashboard/out/history.txt +2 -2
  263. package/dist/dashboard/out/index.html +1 -1
  264. package/dist/dashboard/out/index.txt +2 -2
  265. package/dist/dashboard/out/login.html +6 -0
  266. package/dist/dashboard/out/login.txt +7 -0
  267. package/dist/dashboard/out/metrics.html +1 -1
  268. package/dist/dashboard/out/metrics.txt +2 -2
  269. package/dist/dashboard/out/pricing.html +3 -3
  270. package/dist/dashboard/out/pricing.txt +2 -2
  271. package/dist/dashboard/out/providers.html +1 -0
  272. package/dist/dashboard/out/providers.txt +7 -0
  273. package/dist/dashboard/out/signup.html +6 -0
  274. package/dist/dashboard/out/signup.txt +7 -0
  275. package/dist/dashboard-server/server.js +1308 -8
  276. package/dist/hooks/emitter.d.ts +40 -0
  277. package/dist/hooks/emitter.js +63 -0
  278. package/dist/hooks/index.d.ts +3 -0
  279. package/dist/hooks/index.js +3 -0
  280. package/dist/hooks/registry.d.ts +173 -0
  281. package/dist/hooks/registry.js +476 -0
  282. package/dist/hooks/trajectory-hooks.d.ts +52 -0
  283. package/dist/hooks/trajectory-hooks.js +183 -0
  284. package/dist/hooks/types.d.ts +141 -0
  285. package/dist/index.d.ts +2 -0
  286. package/dist/index.js +3 -0
  287. package/dist/memory/adapters/index.d.ts +8 -0
  288. package/dist/memory/adapters/index.js +8 -0
  289. package/dist/memory/adapters/inmemory.d.ts +59 -0
  290. package/dist/memory/adapters/inmemory.js +195 -0
  291. package/dist/memory/adapters/supermemory.d.ts +71 -0
  292. package/dist/memory/adapters/supermemory.js +338 -0
  293. package/dist/memory/factory.d.ts +48 -0
  294. package/dist/memory/factory.js +143 -0
  295. package/dist/memory/index.d.ts +32 -0
  296. package/dist/memory/index.js +32 -0
  297. package/dist/memory/memory-hooks.d.ts +60 -0
  298. package/dist/memory/memory-hooks.js +313 -0
  299. package/dist/memory/service.d.ts +49 -0
  300. package/dist/memory/service.js +146 -0
  301. package/dist/memory/types.d.ts +195 -0
  302. package/dist/memory/types.js +8 -0
  303. package/dist/policy/agent-policy.d.ts +225 -0
  304. package/dist/policy/agent-policy.js +665 -0
  305. package/dist/policy/cloud-policy-fetcher.d.ts +12 -0
  306. package/dist/policy/cloud-policy-fetcher.js +64 -0
  307. package/dist/resiliency/crash-insights.d.ts +156 -0
  308. package/dist/resiliency/crash-insights.js +492 -0
  309. package/dist/resiliency/gossip-health.d.ts +137 -0
  310. package/dist/resiliency/gossip-health.js +241 -0
  311. package/dist/resiliency/index.d.ts +5 -0
  312. package/dist/resiliency/index.js +5 -0
  313. package/dist/resiliency/leader-watchdog.d.ts +109 -0
  314. package/dist/resiliency/leader-watchdog.js +189 -0
  315. package/dist/resiliency/memory-monitor.d.ts +172 -0
  316. package/dist/resiliency/memory-monitor.js +593 -0
  317. package/dist/resiliency/stateless-lead.d.ts +149 -0
  318. package/dist/resiliency/stateless-lead.js +308 -0
  319. package/dist/resiliency/supervisor.d.ts +38 -0
  320. package/dist/resiliency/supervisor.js +122 -0
  321. package/dist/shared/cli-auth-config.d.ts +91 -0
  322. package/dist/shared/cli-auth-config.js +264 -0
  323. package/dist/storage/adapter.d.ts +1 -1
  324. package/dist/trajectory/config.d.ts +84 -0
  325. package/dist/trajectory/config.js +163 -0
  326. package/dist/trajectory/index.d.ts +8 -0
  327. package/dist/trajectory/index.js +8 -0
  328. package/dist/trajectory/integration.d.ts +292 -0
  329. package/dist/trajectory/integration.js +834 -0
  330. package/dist/utils/logger.js +1 -1
  331. package/dist/utils/project-namespace.d.ts +24 -0
  332. package/dist/utils/project-namespace.js +84 -0
  333. package/dist/wrapper/parser.d.ts +10 -0
  334. package/dist/wrapper/parser.js +100 -33
  335. package/dist/wrapper/pty-wrapper.d.ts +197 -16
  336. package/dist/wrapper/pty-wrapper.js +943 -106
  337. package/dist/wrapper/shared.d.ts +165 -0
  338. package/dist/wrapper/shared.js +270 -0
  339. package/dist/wrapper/tmux-wrapper.d.ts +73 -11
  340. package/dist/wrapper/tmux-wrapper.js +541 -120
  341. package/package.json +16 -16
  342. package/scripts/postinstall.js +60 -0
  343. package/test-push.txt +1 -0
  344. package/bin/tmux +0 -0
  345. package/dist/bridge/config.d.ts.map +0 -1
  346. package/dist/bridge/config.js.map +0 -1
  347. package/dist/bridge/index.d.ts.map +0 -1
  348. package/dist/bridge/index.js.map +0 -1
  349. package/dist/bridge/multi-project-client.d.ts.map +0 -1
  350. package/dist/bridge/multi-project-client.js.map +0 -1
  351. package/dist/bridge/shadow-cli.d.ts.map +0 -1
  352. package/dist/bridge/shadow-cli.js.map +0 -1
  353. package/dist/bridge/shadow-config.d.ts.map +0 -1
  354. package/dist/bridge/shadow-config.js.map +0 -1
  355. package/dist/bridge/spawner.d.ts.map +0 -1
  356. package/dist/bridge/spawner.js.map +0 -1
  357. package/dist/bridge/teams-config.d.ts.map +0 -1
  358. package/dist/bridge/teams-config.js.map +0 -1
  359. package/dist/bridge/types.d.ts.map +0 -1
  360. package/dist/bridge/types.js.map +0 -1
  361. package/dist/bridge/utils.d.ts.map +0 -1
  362. package/dist/bridge/utils.js.map +0 -1
  363. package/dist/cli/index.d.ts.map +0 -1
  364. package/dist/cli/index.js.map +0 -1
  365. package/dist/cloud/api/auth.d.ts.map +0 -1
  366. package/dist/cloud/api/auth.js.map +0 -1
  367. package/dist/cloud/api/billing.d.ts.map +0 -1
  368. package/dist/cloud/api/billing.js.map +0 -1
  369. package/dist/cloud/api/coordinators.d.ts.map +0 -1
  370. package/dist/cloud/api/coordinators.js.map +0 -1
  371. package/dist/cloud/api/daemons.d.ts.map +0 -1
  372. package/dist/cloud/api/daemons.js.map +0 -1
  373. package/dist/cloud/api/middleware/planLimits.d.ts.map +0 -1
  374. package/dist/cloud/api/middleware/planLimits.js.map +0 -1
  375. package/dist/cloud/api/onboarding.d.ts.map +0 -1
  376. package/dist/cloud/api/onboarding.js.map +0 -1
  377. package/dist/cloud/api/providers.d.ts.map +0 -1
  378. package/dist/cloud/api/providers.js.map +0 -1
  379. package/dist/cloud/api/repos.d.ts.map +0 -1
  380. package/dist/cloud/api/repos.js.map +0 -1
  381. package/dist/cloud/api/teams.d.ts.map +0 -1
  382. package/dist/cloud/api/teams.js.map +0 -1
  383. package/dist/cloud/api/usage.d.ts.map +0 -1
  384. package/dist/cloud/api/usage.js.map +0 -1
  385. package/dist/cloud/api/workspaces.d.ts.map +0 -1
  386. package/dist/cloud/api/workspaces.js.map +0 -1
  387. package/dist/cloud/billing/index.d.ts.map +0 -1
  388. package/dist/cloud/billing/index.js.map +0 -1
  389. package/dist/cloud/billing/plans.d.ts.map +0 -1
  390. package/dist/cloud/billing/plans.js.map +0 -1
  391. package/dist/cloud/billing/service.d.ts.map +0 -1
  392. package/dist/cloud/billing/service.js.map +0 -1
  393. package/dist/cloud/billing/types.d.ts.map +0 -1
  394. package/dist/cloud/billing/types.js.map +0 -1
  395. package/dist/cloud/config.d.ts.map +0 -1
  396. package/dist/cloud/config.js.map +0 -1
  397. package/dist/cloud/db/drizzle.d.ts.map +0 -1
  398. package/dist/cloud/db/drizzle.js.map +0 -1
  399. package/dist/cloud/db/index.d.ts.map +0 -1
  400. package/dist/cloud/db/index.js.map +0 -1
  401. package/dist/cloud/db/schema.d.ts.map +0 -1
  402. package/dist/cloud/db/schema.js.map +0 -1
  403. package/dist/cloud/index.d.ts.map +0 -1
  404. package/dist/cloud/index.js.map +0 -1
  405. package/dist/cloud/provisioner/index.d.ts.map +0 -1
  406. package/dist/cloud/provisioner/index.js.map +0 -1
  407. package/dist/cloud/server.d.ts.map +0 -1
  408. package/dist/cloud/server.js.map +0 -1
  409. package/dist/cloud/services/coordinator.d.ts.map +0 -1
  410. package/dist/cloud/services/coordinator.js.map +0 -1
  411. package/dist/cloud/services/planLimits.d.ts.map +0 -1
  412. package/dist/cloud/services/planLimits.js.map +0 -1
  413. package/dist/cloud/vault/index.d.ts.map +0 -1
  414. package/dist/cloud/vault/index.js.map +0 -1
  415. package/dist/daemon/agent-manager.d.ts.map +0 -1
  416. package/dist/daemon/agent-manager.js.map +0 -1
  417. package/dist/daemon/agent-registry.d.ts.map +0 -1
  418. package/dist/daemon/agent-registry.js.map +0 -1
  419. package/dist/daemon/api.d.ts.map +0 -1
  420. package/dist/daemon/api.js.map +0 -1
  421. package/dist/daemon/auth.d.ts.map +0 -1
  422. package/dist/daemon/auth.js.map +0 -1
  423. package/dist/daemon/cloud-sync.d.ts.map +0 -1
  424. package/dist/daemon/cloud-sync.js.map +0 -1
  425. package/dist/daemon/connection.d.ts.map +0 -1
  426. package/dist/daemon/connection.js.map +0 -1
  427. package/dist/daemon/index.d.ts.map +0 -1
  428. package/dist/daemon/index.js.map +0 -1
  429. package/dist/daemon/orchestrator.d.ts.map +0 -1
  430. package/dist/daemon/orchestrator.js.map +0 -1
  431. package/dist/daemon/registry.d.ts.map +0 -1
  432. package/dist/daemon/registry.js.map +0 -1
  433. package/dist/daemon/router.d.ts.map +0 -1
  434. package/dist/daemon/router.js.map +0 -1
  435. package/dist/daemon/server.d.ts.map +0 -1
  436. package/dist/daemon/server.js.map +0 -1
  437. package/dist/daemon/types.d.ts.map +0 -1
  438. package/dist/daemon/types.js.map +0 -1
  439. package/dist/daemon/workspace-manager.d.ts.map +0 -1
  440. package/dist/daemon/workspace-manager.js.map +0 -1
  441. package/dist/dashboard/out/_next/static/chunks/693-7b3301d8f6bc5014.js +0 -1
  442. package/dist/dashboard/out/_next/static/chunks/713-f78477eb185f1f4d.js +0 -1
  443. package/dist/dashboard/out/_next/static/chunks/766-e53e1cfe39b0b5b5.js +0 -1
  444. package/dist/dashboard/out/_next/static/chunks/900-037c64bfd797fb2a.js +0 -1
  445. package/dist/dashboard/out/_next/static/chunks/app/app/page-e3d9e1f4466b9bae.js +0 -1
  446. package/dist/dashboard/out/_next/static/chunks/app/layout-2433bb48965f4333.js +0 -1
  447. package/dist/dashboard/out/_next/static/chunks/app/metrics/page-e68825a81db67ba1.js +0 -1
  448. package/dist/dashboard/out/_next/static/chunks/app/page-cc108bf68c8a657f.js +0 -1
  449. package/dist/dashboard/out/_next/static/chunks/app/pricing/page-d80e03a5297f95b6.js +0 -1
  450. package/dist/dashboard/out/_next/static/chunks/webpack-a5acc2831d094776.js +0 -1
  451. package/dist/dashboard/out/_next/static/css/79b80143647a07d7.css +0 -1
  452. package/dist/dashboard/out/_next/static/css/8cf277370ad48cfe.css +0 -1
  453. package/dist/dashboard-server/metrics.d.ts.map +0 -1
  454. package/dist/dashboard-server/metrics.js.map +0 -1
  455. package/dist/dashboard-server/needs-attention.d.ts.map +0 -1
  456. package/dist/dashboard-server/needs-attention.js.map +0 -1
  457. package/dist/dashboard-server/server.d.ts.map +0 -1
  458. package/dist/dashboard-server/server.js.map +0 -1
  459. package/dist/dashboard-server/start.d.ts.map +0 -1
  460. package/dist/dashboard-server/start.js.map +0 -1
  461. package/dist/hooks/inbox-check/hook.d.ts.map +0 -1
  462. package/dist/hooks/inbox-check/hook.js.map +0 -1
  463. package/dist/hooks/inbox-check/index.d.ts.map +0 -1
  464. package/dist/hooks/inbox-check/index.js.map +0 -1
  465. package/dist/hooks/inbox-check/types.d.ts.map +0 -1
  466. package/dist/hooks/inbox-check/types.js.map +0 -1
  467. package/dist/hooks/inbox-check/utils.d.ts.map +0 -1
  468. package/dist/hooks/inbox-check/utils.js.map +0 -1
  469. package/dist/hooks/index.d.ts.map +0 -1
  470. package/dist/hooks/index.js.map +0 -1
  471. package/dist/hooks/types.d.ts.map +0 -1
  472. package/dist/hooks/types.js.map +0 -1
  473. package/dist/index.d.ts.map +0 -1
  474. package/dist/index.js.map +0 -1
  475. package/dist/protocol/framing.d.ts.map +0 -1
  476. package/dist/protocol/framing.js.map +0 -1
  477. package/dist/protocol/index.d.ts.map +0 -1
  478. package/dist/protocol/index.js.map +0 -1
  479. package/dist/protocol/types.d.ts.map +0 -1
  480. package/dist/protocol/types.js.map +0 -1
  481. package/dist/resiliency/context-persistence.d.ts.map +0 -1
  482. package/dist/resiliency/context-persistence.js.map +0 -1
  483. package/dist/resiliency/health-monitor.d.ts.map +0 -1
  484. package/dist/resiliency/health-monitor.js.map +0 -1
  485. package/dist/resiliency/index.d.ts.map +0 -1
  486. package/dist/resiliency/index.js.map +0 -1
  487. package/dist/resiliency/logger.d.ts.map +0 -1
  488. package/dist/resiliency/logger.js.map +0 -1
  489. package/dist/resiliency/metrics.d.ts.map +0 -1
  490. package/dist/resiliency/metrics.js.map +0 -1
  491. package/dist/resiliency/provider-context.d.ts.map +0 -1
  492. package/dist/resiliency/provider-context.js.map +0 -1
  493. package/dist/resiliency/supervisor.d.ts.map +0 -1
  494. package/dist/resiliency/supervisor.js.map +0 -1
  495. package/dist/state/agent-state.d.ts.map +0 -1
  496. package/dist/state/agent-state.js.map +0 -1
  497. package/dist/storage/adapter.d.ts.map +0 -1
  498. package/dist/storage/adapter.js.map +0 -1
  499. package/dist/storage/sqlite-adapter.d.ts.map +0 -1
  500. package/dist/storage/sqlite-adapter.js.map +0 -1
  501. package/dist/utils/agent-config.d.ts.map +0 -1
  502. package/dist/utils/agent-config.js.map +0 -1
  503. package/dist/utils/command-resolver.d.ts.map +0 -1
  504. package/dist/utils/command-resolver.js.map +0 -1
  505. package/dist/utils/index.d.ts.map +0 -1
  506. package/dist/utils/index.js.map +0 -1
  507. package/dist/utils/logger.d.ts.map +0 -1
  508. package/dist/utils/logger.js.map +0 -1
  509. package/dist/utils/name-generator.d.ts.map +0 -1
  510. package/dist/utils/name-generator.js.map +0 -1
  511. package/dist/utils/project-namespace.d.ts.map +0 -1
  512. package/dist/utils/project-namespace.js.map +0 -1
  513. package/dist/utils/tmux-resolver.d.ts.map +0 -1
  514. package/dist/utils/tmux-resolver.js.map +0 -1
  515. package/dist/utils/update-checker.d.ts.map +0 -1
  516. package/dist/utils/update-checker.js.map +0 -1
  517. package/dist/wrapper/client.d.ts.map +0 -1
  518. package/dist/wrapper/client.js.map +0 -1
  519. package/dist/wrapper/inbox.d.ts.map +0 -1
  520. package/dist/wrapper/inbox.js.map +0 -1
  521. package/dist/wrapper/index.d.ts.map +0 -1
  522. package/dist/wrapper/index.js.map +0 -1
  523. package/dist/wrapper/parser.d.ts.map +0 -1
  524. package/dist/wrapper/parser.js.map +0 -1
  525. package/dist/wrapper/pty-wrapper.d.ts.map +0 -1
  526. package/dist/wrapper/pty-wrapper.js.map +0 -1
  527. package/dist/wrapper/tmux-wrapper.d.ts.map +0 -1
  528. package/dist/wrapper/tmux-wrapper.js.map +0 -1
  529. package/docs/AGENTS.md +0 -513
  530. package/docs/ARCHITECTURE_DECISIONS.md +0 -175
  531. package/docs/CHANGELOG.md +0 -11
  532. package/docs/CLI-SIMPLIFICATION-COMPLETE.md +0 -48
  533. package/docs/CLOUD-ARCHITECTURE.md +0 -652
  534. package/docs/CLOUD-ONBOARDING-DESIGN.md +0 -1983
  535. package/docs/COMPETITIVE_ANALYSIS.md +0 -897
  536. package/docs/CONTRIBUTING.md +0 -151
  537. package/docs/DESIGN_BRIDGE_STAFFING.md +0 -878
  538. package/docs/DESIGN_V2.md +0 -1079
  539. package/docs/INTEGRATION-GUIDE.md +0 -926
  540. package/docs/MONETIZATION.md +0 -1679
  541. package/docs/PROPOSAL-trajectories.md +0 -1582
  542. package/docs/PROTOCOL.md +0 -325
  543. package/docs/SCALING_ANALYSIS.md +0 -280
  544. package/docs/TESTING_PRESENCE_FEATURES.md +0 -327
  545. package/docs/TMUX_IMPLEMENTATION_NOTES.md +0 -364
  546. package/docs/TMUX_IMPROVEMENTS.md +0 -968
  547. package/docs/agent-relay-snippet.md +0 -168
  548. package/docs/competitive-analysis-mcp-agent-mail.md +0 -389
  549. package/docs/dashboard-v2-plan.md +0 -179
  550. package/docs/guides/CLOUD.md +0 -236
  551. package/docs/guides/LOCAL.md +0 -535
  552. package/docs/guides/SELF-HOSTED.md +0 -494
  553. package/docs/proposals/shadow-as-subagent.md +0 -765
  554. package/docs/proposals/slack-bot-integration.md +0 -1457
  555. package/docs/removable-code-analysis.md +0 -24
  556. package/scripts/dev/PUBLIC_RELEASE_PLAN.md +0 -88
  557. package/scripts/dev/dev-team-setup.sh +0 -431
  558. package/scripts/e2e-test.sh +0 -119
  559. package/scripts/games/game-protocol.md +0 -79
  560. package/scripts/games/hearts-setup.sh +0 -264
  561. package/scripts/tictactoe-setup.sh +0 -181
  562. /package/dist/dashboard/out/_next/static/chunks/{117-b2cd8d6485aacf2b.js → 117-f7b8ab0809342e77.js} +0 -0
  563. /package/dist/dashboard/out/_next/static/chunks/{648-8f3f26864ce515e5.js → 648-5cc6e1921389a58a.js} +0 -0
  564. /package/dist/dashboard/out/_next/static/chunks/app/_not-found/{page-0b990dbb71d72a98.js → page-53b8a69f76db17d0.js} +0 -0
  565. /package/dist/dashboard/out/_next/static/chunks/{fd9d1056-bf46c09eb57e019c.js → fd9d1056-609918ca7b6280bb.js} +0 -0
  566. /package/dist/dashboard/out/_next/static/{6HHWb2ZmnJ4OSm0zUP7h4 → wPgKJtcOmTFLpUncDg16A}/_buildManifest.js +0 -0
  567. /package/dist/dashboard/out/_next/static/{6HHWb2ZmnJ4OSm0zUP7h4 → wPgKJtcOmTFLpUncDg16A}/_ssgManifest.js +0 -0
@@ -1,24 +0,0 @@
1
- # Removable Code Analysis
2
-
3
- Requested: identify code/assets likely safe to remove (unused, legacy, or duplicates).
4
-
5
- ## Candidates
6
- 1) `run-dashboard.js`
7
- - Purpose: helper to start dashboard from built `dist/dashboard/server.js`.
8
- - Evidence: Dashboard now exposed via CLI subcommand `dashboard` in `src/cli/index.ts`. No `rg` references to `run-dashboard.js`. Redundant helper.
9
-
10
- 2) `scripts/games/*` and `scripts/tictactoe-setup.sh`
11
- - Purpose: old demo/game scripts (hearts/tictactoe).
12
- - Evidence: Not referenced by CLI commands or docs (checked with `rg`). Pure examples; removable if demos not needed.
13
-
14
- 3) `src/hooks/check-inbox.sh`
15
- - Purpose: legacy hook example for Claude stop-event inbox check.
16
- - Evidence: Replaced by compiled hook in `dist/hooks/inbox-check/*` and TypeScript sources in `src/hooks/inbox-check/*`. No other references via `rg`, so redundant.
17
-
18
- 4) `coverage/` directory
19
- - Purpose: test coverage artifacts.
20
- - Evidence: Generated output; not source. Safe to delete/regenerate.
21
-
22
- 5) `TOMORROW.md`
23
- - Purpose: session notes / planning doc.
24
- - Evidence: Not used by runtime or tests; optional to keep for historical notes only.
@@ -1,88 +0,0 @@
1
- # Agent-Relay Public Release Plan
2
-
3
- ## Goal
4
- Prepare agent-relay for public release on npm and GitHub with comprehensive documentation, examples, and polish.
5
-
6
- ## Team Structure
7
-
8
- ### Agent 1: DocWriter (Claude) - Documentation & Examples
9
- **Focus:** User-facing content, tutorials, examples
10
- **Workdir:** `/Users/khaliqgant/Projects/prpm/agent-relay`
11
-
12
- Tasks:
13
- - [ ] Review and improve README.md
14
- - Add GIF/video demo of quick start usage
15
- - Improve quick start section
16
- - Add "Common Use Cases" section
17
- - [ ] Create docs/CONTRIBUTING.md
18
- - [ ] Create examples/ directory with:
19
- - [ ] examples/basic-chat/ - Two agents chatting
20
- - [ ] examples/tic-tac-toe/ - Simple game
21
- - [ ] examples/collaborative-coding/ - Agents working together
22
- - [ ] Update CLI --help text for all commands
23
- - [ ] Document the new inbox-* commands
24
- - [ ] Create API.md documenting the protocol
25
-
26
- ### Agent 2: CodePolish (Claude) - Code Quality & Tests
27
- **Focus:** Test coverage, error handling, code cleanup
28
- **Workdir:** `/Users/khaliqgant/Projects/prpm/agent-relay`
29
-
30
- Tasks:
31
- - [ ] Audit test coverage - identify gaps
32
- - [ ] Add tests for new inbox-poll/write/agents commands
33
- - [ ] Improve error messages (user-friendly)
34
- - [ ] Add input validation to CLI commands
35
- - [ ] Clean up console.log statements (use proper logging)
36
- - [ ] Remove dead code and unused files
37
- - [ ] Review and fix any TypeScript strict mode issues
38
- - [ ] Add JSDoc comments to public APIs
39
-
40
- ### Agent 3: DevOps (Codex) - CI/CD & Publishing
41
- **Focus:** Build, publish, installation
42
- **Workdir:** `/Users/khaliqgant/Projects/prpm/agent-relay`
43
-
44
- Tasks:
45
- - [ ] Review and improve package.json
46
- - Verify all fields for npm publish
47
- - Add repository, bugs, homepage URLs
48
- - Review dependencies (prune unused)
49
- - [ ] Enhance GitHub Actions workflow
50
- - Add npm publish on release
51
- - Add test coverage reporting
52
- - Add build badge to README
53
- - [ ] Review install.sh script
54
- - Test on clean systems
55
- - Improve error handling
56
- - [ ] Add LICENSE file (MIT)
57
- - [ ] Create docs/CHANGELOG.md
58
- - [ ] Test npm pack / npm publish --dry-run
59
- - [ ] Set up GitHub release automation
60
-
61
- ## Coordination Protocol
62
-
63
- Agents communicate via `/tmp/agent-relay-dev/`:
64
- - DocWriter, CodePolish, DevOps each have inbox directories
65
- - Use `agent-relay inbox-*` commands
66
-
67
- ### Message Types
68
- - `STATUS: <doing what>` - Progress update
69
- - `QUESTION: <question>` - Need input from another agent
70
- - `DONE: <task>` - Task completed
71
- - `BLOCKER: <issue>` - Blocked on something
72
- - `HANDOFF: <what>` - Passing work to another agent
73
-
74
- ### Coordination Rules
75
- 1. Before editing a file, announce: `STATUS: Editing <filename>`
76
- 2. After completing a task, broadcast: `DONE: <task description>`
77
- 3. If blocked, ask: `QUESTION: @AgentName <question>`
78
- 4. Check inbox after each major task
79
-
80
- ## Success Criteria
81
- - [ ] npm install agent-relay works
82
- - [ ] All CLI commands have --help
83
- - [ ] README has working quick start
84
- - [ ] 3+ working examples
85
- - [ ] Test coverage > 80%
86
- - [ ] No TypeScript errors in strict mode
87
- - [ ] GitHub Actions green
88
- - [ ] Clean npm audit
@@ -1,431 +0,0 @@
1
- #!/bin/bash
2
- #
3
- # Development Team Setup
4
- # Sets up 3 agents (2 Claude + 1 Codex) to work on agent-relay public release
5
- #
6
-
7
- set -e
8
-
9
- DEV_DIR="${DEV_DIR:-/tmp/agent-relay-dev}"
10
- AGENT_1="DocWriter"
11
- AGENT_2="CodePolish"
12
- AGENT_3="DevOps"
13
- AGENT_4="Dashboard"
14
-
15
- REPO_DIR="/Users/khaliqgant/Projects/prpm/agent-relay"
16
-
17
- echo "=== Agent-Relay Development Team Setup ==="
18
- echo "Dev directory: $DEV_DIR"
19
- echo "Repo: $REPO_DIR"
20
- echo "Agents: $AGENT_1 (Claude), $AGENT_2 (Claude), $AGENT_3 (Codex), $AGENT_4 (Gemini)"
21
- echo ""
22
-
23
- # Create directories
24
- mkdir -p "$DEV_DIR/$AGENT_1"
25
- mkdir -p "$DEV_DIR/$AGENT_2"
26
- mkdir -p "$DEV_DIR/$AGENT_3"
27
- mkdir -p "$DEV_DIR/$AGENT_4"
28
-
29
- # Clear any existing inbox
30
- echo "" > "$DEV_DIR/$AGENT_1/inbox.md"
31
- echo "" > "$DEV_DIR/$AGENT_2/inbox.md"
32
- echo "" > "$DEV_DIR/$AGENT_3/inbox.md"
33
- echo "" > "$DEV_DIR/$AGENT_4/inbox.md"
34
-
35
- # Copy the release plan
36
- cp "$REPO_DIR/scripts/dev/PUBLIC_RELEASE_PLAN.md" "$DEV_DIR/"
37
-
38
- # Create instructions for DocWriter (Claude 1)
39
- cat > "$DEV_DIR/$AGENT_1/INSTRUCTIONS.md" << 'EOF'
40
- # You are DocWriter - Documentation & Examples Lead
41
-
42
- ## Your Mission
43
- Prepare agent-relay's documentation and examples for public release.
44
-
45
- ## Project Location
46
- `/Users/khaliqgant/Projects/prpm/agent-relay`
47
-
48
- ## Your Tasks (in priority order)
49
-
50
- ### 1. Review README.md
51
- - Read the current README: `cat /Users/khaliqgant/Projects/prpm/agent-relay/README.md`
52
- - Identify gaps or unclear sections
53
- - Improve the Quick Start guide
54
- - Add a "Common Use Cases" section
55
-
56
- ### 2. Create examples/ directory
57
- Create working examples that users can run:
58
- - `examples/basic-chat/` - Two agents having a conversation
59
- - `examples/collaborative-task/` - Agents working on a shared task
60
-
61
- ### 3. Document CLI Commands
62
- The new inbox commands need documentation:
63
- - `agent-relay inbox-poll` - Blocking wait for messages
64
- - `agent-relay inbox-read` - Read inbox contents
65
- - `agent-relay inbox-write` - Write to agent inbox
66
- - `agent-relay inbox-agents` - List agents
67
-
68
- ### 4. Create docs/CONTRIBUTING.md
69
- Guide for contributors.
70
-
71
- ## Communication
72
-
73
- **Your inbox:** `/tmp/agent-relay-dev/DocWriter/inbox.md`
74
- **Teammates:** CodePolish, DevOps
75
-
76
- ### Commands
77
- Use the LOCAL build (not the global install):
78
- ```bash
79
- # Wait for messages
80
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-poll -n DocWriter -d /tmp/agent-relay-dev --clear
81
-
82
- # Send to teammate
83
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t CodePolish -f DocWriter -m "MESSAGE" -d /tmp/agent-relay-dev
84
-
85
- # Broadcast to all
86
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t "*" -f DocWriter -m "MESSAGE" -d /tmp/agent-relay-dev
87
-
88
- # List team
89
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-agents -d /tmp/agent-relay-dev
90
- ```
91
-
92
- **TIP:** You can create an alias for convenience:
93
- ```bash
94
- alias ar='node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js'
95
- ```
96
-
97
- ### Protocol
98
- - `STATUS: <what you're doing>` - Progress update
99
- - `DONE: <task>` - Task completed
100
- - `QUESTION: @AgentName <question>` - Ask teammate
101
- - `BLOCKER: <issue>` - Blocked
102
-
103
- ## START NOW
104
- 1. Read the release plan: `cat /tmp/agent-relay-dev/PUBLIC_RELEASE_PLAN.md`
105
- 2. Broadcast your start: `STATUS: DocWriter starting, reviewing README.md`
106
- 3. Begin with reviewing README.md
107
- 4. Check inbox periodically for teammate messages
108
- EOF
109
-
110
- # Create instructions for CodePolish (Claude 2)
111
- cat > "$DEV_DIR/$AGENT_2/INSTRUCTIONS.md" << 'EOF'
112
- # You are CodePolish - Code Quality & Testing Lead
113
-
114
- ## Your Mission
115
- Improve agent-relay's code quality, test coverage, and error handling for public release.
116
-
117
- ## Project Location
118
- `/Users/khaliqgant/Projects/prpm/agent-relay`
119
-
120
- ## Your Tasks (in priority order)
121
-
122
- ### 1. Audit Test Coverage
123
- - Run tests: `cd /Users/khaliqgant/Projects/prpm/agent-relay && npm test`
124
- - Identify files without tests
125
- - Focus on `src/cli/index.ts` - the new inbox commands need tests
126
-
127
- ### 2. Add Missing Tests
128
- Priority:
129
- - `inbox-poll` command
130
- - `inbox-write` command (including broadcast)
131
- - `inbox-read` command
132
- - `inbox-agents` command
133
-
134
- ### 3. Improve Error Handling
135
- - Review CLI commands for user-friendly error messages
136
- - Add input validation
137
- - Handle edge cases gracefully
138
-
139
- ### 4. Code Cleanup
140
- - Remove console.log debugging statements
141
- - Add JSDoc comments to public functions
142
- - Check for unused imports/variables
143
-
144
- ### 5. TypeScript Strict Mode
145
- - Run: `npx tsc --noEmit --strict`
146
- - Fix any type errors
147
-
148
- ## Communication
149
-
150
- **Your inbox:** `/tmp/agent-relay-dev/CodePolish/inbox.md`
151
- **Teammates:** DocWriter, DevOps
152
-
153
- ### Commands
154
- Use the LOCAL build (not the global install):
155
- ```bash
156
- # Wait for messages
157
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-poll -n CodePolish -d /tmp/agent-relay-dev --clear
158
-
159
- # Send to teammate
160
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t DevOps -f CodePolish -m "MESSAGE" -d /tmp/agent-relay-dev
161
-
162
- # Broadcast to all
163
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t "*" -f CodePolish -m "MESSAGE" -d /tmp/agent-relay-dev
164
- ```
165
-
166
- **TIP:** Create an alias: `alias ar='node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js'`
167
-
168
- ### Protocol
169
- - `STATUS: <what you're doing>` - Progress update
170
- - `DONE: <task>` - Task completed
171
- - `QUESTION: @AgentName <question>` - Ask teammate
172
- - `BLOCKER: <issue>` - Blocked
173
-
174
- ## START NOW
175
- 1. Read the release plan: `cat /tmp/agent-relay-dev/PUBLIC_RELEASE_PLAN.md`
176
- 2. Broadcast your start: `STATUS: CodePolish starting, auditing test coverage`
177
- 3. Run tests and identify gaps
178
- 4. Check inbox periodically for teammate messages
179
- EOF
180
-
181
- # Create instructions for DevOps (Codex)
182
- cat > "$DEV_DIR/$AGENT_3/INSTRUCTIONS.md" << 'EOF'
183
- # You are DevOps - CI/CD & Publishing Lead
184
-
185
- ## Your Mission
186
- Prepare agent-relay for npm publishing and improve CI/CD for public release.
187
-
188
- ## Project Location
189
- `/Users/khaliqgant/Projects/prpm/agent-relay`
190
-
191
- ## Your Tasks (in priority order)
192
-
193
- ### 1. Review package.json
194
- - Check: `cat /Users/khaliqgant/Projects/prpm/agent-relay/package.json`
195
- - Verify npm publish fields: name, version, description, main, bin, repository, bugs, homepage
196
- - Review dependencies - remove unused
197
- - Add "files" field to whitelist published files
198
-
199
- ### 2. Add LICENSE file
200
- - Create MIT license at `/Users/khaliqgant/Projects/prpm/agent-relay/LICENSE`
201
-
202
- ### 3. Enhance GitHub Actions
203
- - Review: `cat /Users/khaliqgant/Projects/prpm/agent-relay/.github/workflows/test.yml`
204
- - Add npm publish workflow on GitHub release
205
- - Add test coverage badge
206
-
207
- ### 4. Create docs/CHANGELOG.md
208
- - Document the 0.1.0 release features
209
-
210
- ### 5. Test npm publish
211
- - Run: `npm pack --dry-run`
212
- - Verify package contents are correct
213
- - Check: `npm publish --dry-run`
214
-
215
- ### 6. Review install.sh
216
- - Test the installer script logic
217
- - Improve error handling
218
-
219
- ## Communication
220
-
221
- **Your inbox:** `/tmp/agent-relay-dev/DevOps/inbox.md`
222
- **Teammates:** DocWriter, CodePolish
223
-
224
- ### Commands
225
- Use the LOCAL build (not the global install):
226
- ```bash
227
- # Wait for messages
228
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-poll -n DevOps -d /tmp/agent-relay-dev --clear
229
-
230
- # Send to teammate
231
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t DocWriter -f DevOps -m "MESSAGE" -d /tmp/agent-relay-dev
232
-
233
- # Broadcast to all
234
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t "*" -f DevOps -m "MESSAGE" -d /tmp/agent-relay-dev
235
- ```
236
-
237
- **TIP:** Create an alias: `alias ar='node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js'`
238
-
239
- ### Protocol
240
- - `STATUS: <what you're doing>` - Progress update
241
- - `DONE: <task>` - Task completed
242
- - `QUESTION: @AgentName <question>` - Ask teammate
243
- - `BLOCKER: <issue>` - Blocked
244
-
245
- ## START NOW
246
- 1. Read the release plan: `cat /tmp/agent-relay-dev/PUBLIC_RELEASE_PLAN.md`
247
- 2. Broadcast your start: `STATUS: DevOps starting, reviewing package.json`
248
- 3. Begin with package.json audit
249
- 4. Check inbox periodically for teammate messages
250
- EOF
251
-
252
- # Create instructions for Dashboard (Gemini)
253
- cat > "$DEV_DIR/$AGENT_4/INSTRUCTIONS.md" << 'EOF'
254
- # You are Dashboard - Web Visualization Lead
255
-
256
- ## Your Mission
257
- Build a web dashboard to visualize agent-relay communication patterns and help users track multi-agent progress in real-time.
258
-
259
- ## Project Location
260
- `/Users/khaliqgant/Projects/prpm/agent-relay`
261
-
262
- ## Your Tasks (in priority order)
263
-
264
- ### 1. Create Dashboard Directory Structure
265
- ```
266
- src/dashboard/
267
- ├── server.ts # Express/Fastify server
268
- ├── index.html # Main dashboard page
269
- ├── styles.css # Styling
270
- └── client.ts # Client-side JS (or keep it simple with vanilla JS)
271
- ```
272
-
273
- ### 2. Build Core Features
274
-
275
- **a) Inbox Monitor**
276
- - Watch all agent inbox files in a data directory
277
- - Display messages in real-time as they arrive
278
- - Show sender, recipient, timestamp, message preview
279
-
280
- **b) Agent Status Panel**
281
- - List all active agents
282
- - Show last activity timestamp
283
- - Indicate if inbox has unread messages
284
-
285
- **c) Message Flow Visualization**
286
- - Simple diagram showing message flow between agents
287
- - Could be a timeline or network graph
288
- - Show who sent what to whom
289
-
290
- **d) Activity Log**
291
- - Scrolling log of all messages
292
- - Filter by agent
293
- - Search functionality
294
-
295
- ### 3. CLI Integration
296
- Add a new command to agent-relay CLI:
297
- ```bash
298
- agent-relay dashboard -d /tmp/agent-relay-dev -p 3000
299
- ```
300
-
301
- This should:
302
- - Start the web server on specified port
303
- - Watch the data directory for changes
304
- - Serve the dashboard UI
305
-
306
- ### 4. Tech Stack Suggestions
307
- Keep it simple - no heavy frameworks needed:
308
- - **Server:** Node.js with built-in http or express
309
- - **File watching:** fs.watch or chokidar
310
- - **Real-time updates:** Server-Sent Events (SSE) or WebSocket
311
- - **UI:** Vanilla HTML/CSS/JS or minimal framework
312
-
313
- ### 5. Design Goals
314
- - **Zero dependencies if possible** (or minimal)
315
- - **Works out of the box** - no build step required for dashboard
316
- - **Real-time updates** - see messages as they happen
317
- - **Mobile-friendly** - responsive design
318
-
319
- ## Communication
320
-
321
- **Your inbox:** `/tmp/agent-relay-dev/Dashboard/inbox.md`
322
- **Teammates:** DocWriter, CodePolish, DevOps
323
-
324
- ### Commands
325
- Use the LOCAL build (not the global install):
326
- ```bash
327
- # Wait for messages
328
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-poll -n Dashboard -d /tmp/agent-relay-dev --clear
329
-
330
- # Send to teammate
331
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t DocWriter -f Dashboard -m "MESSAGE" -d /tmp/agent-relay-dev
332
-
333
- # Broadcast to all
334
- node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js inbox-write -t "*" -f Dashboard -m "MESSAGE" -d /tmp/agent-relay-dev
335
- ```
336
-
337
- **TIP:** Create an alias: `alias ar='node /Users/khaliqgant/Projects/prpm/agent-relay/dist/cli/index.js'`
338
-
339
- ### Protocol
340
- - `STATUS: <what you're doing>` - Progress update
341
- - `DONE: <task>` - Task completed
342
- - `QUESTION: @AgentName <question>` - Ask teammate
343
- - `BLOCKER: <issue>` - Blocked
344
-
345
- ## Example Dashboard Layout
346
-
347
- ```
348
- ┌─────────────────────────────────────────────────────────────┐
349
- │ Agent-Relay Dashboard [Watching: /tmp/] │
350
- ├─────────────────────────────────────────────────────────────┤
351
- │ │
352
- │ AGENTS MESSAGE FLOW │
353
- │ ┌──────────────────┐ ┌─────────────────────────────┐ │
354
- │ │ ● DocWriter │ │ DocWriter ──→ CodePolish │ │
355
- │ │ Last: 2s ago │ │ CodePolish ──→ DevOps │ │
356
- │ │ ● CodePolish │ │ DevOps ──→ * (broadcast) │ │
357
- │ │ Last: 5s ago │ │ Dashboard ──→ DocWriter │ │
358
- │ │ ● DevOps │ └─────────────────────────────┘ │
359
- │ │ Last: 10s ago │ │
360
- │ │ ○ Dashboard │ ACTIVITY LOG │
361
- │ │ (you) │ ┌─────────────────────────────┐ │
362
- │ └──────────────────┘ │ 12:01 DocWriter→CodePolish │ │
363
- │ │ "STATUS: Reviewing README" │ │
364
- │ │ 12:02 CodePolish→* │ │
365
- │ │ "DONE: Added 5 new tests" │ │
366
- │ └─────────────────────────────┘ │
367
- └─────────────────────────────────────────────────────────────┘
368
- ```
369
-
370
- ## START NOW
371
- 1. Read the release plan: `cat /tmp/agent-relay-dev/PUBLIC_RELEASE_PLAN.md`
372
- 2. Broadcast your start: `STATUS: Dashboard starting, designing web UI architecture`
373
- 3. Begin by creating the directory structure
374
- 4. Check inbox periodically for teammate messages
375
- EOF
376
-
377
- echo "Created development team files:"
378
- echo " - $DEV_DIR/PUBLIC_RELEASE_PLAN.md"
379
- echo " - $DEV_DIR/$AGENT_1/INSTRUCTIONS.md (Claude - Documentation)"
380
- echo " - $DEV_DIR/$AGENT_2/INSTRUCTIONS.md (Claude - Code Quality)"
381
- echo " - $DEV_DIR/$AGENT_3/INSTRUCTIONS.md (Codex - DevOps)"
382
- echo " - $DEV_DIR/$AGENT_4/INSTRUCTIONS.md (Gemini - Dashboard)"
383
- echo ""
384
- echo "=== TO START DEVELOPMENT ==="
385
- echo ""
386
- echo "Make sure agent-relay is built:"
387
- echo " cd $REPO_DIR"
388
- echo " npm run build"
389
- echo ""
390
- echo "Open FOUR terminal windows:"
391
- echo ""
392
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
393
- echo "Terminal 1 - DocWriter (Claude):"
394
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
395
- echo " cd $REPO_DIR"
396
- echo " claude"
397
- echo ""
398
- echo " Then say:"
399
- echo " Read /tmp/agent-relay-dev/DocWriter/INSTRUCTIONS.md and start working on agent-relay documentation"
400
- echo ""
401
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
402
- echo "Terminal 2 - CodePolish (Claude):"
403
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
404
- echo " cd $REPO_DIR"
405
- echo " claude"
406
- echo ""
407
- echo " Then say:"
408
- echo " Read /tmp/agent-relay-dev/CodePolish/INSTRUCTIONS.md and start working on agent-relay code quality"
409
- echo ""
410
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
411
- echo "Terminal 3 - DevOps (Codex):"
412
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
413
- echo " cd $REPO_DIR"
414
- echo " codex"
415
- echo ""
416
- echo " Then say:"
417
- echo " Read /tmp/agent-relay-dev/DevOps/INSTRUCTIONS.md and start working on agent-relay CI/CD and publishing"
418
- echo ""
419
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
420
- echo "Terminal 4 - Dashboard (Gemini):"
421
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
422
- echo " cd $REPO_DIR"
423
- echo " gemini"
424
- echo ""
425
- echo " Then say:"
426
- echo " Read /tmp/agent-relay-dev/Dashboard/INSTRUCTIONS.md and start building the agent-relay web dashboard"
427
- echo ""
428
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
429
- echo ""
430
- echo "The four agents will coordinate via /tmp/agent-relay-dev/ inboxes!"
431
- echo ""
@@ -1,119 +0,0 @@
1
- #!/bin/bash
2
- # E2E Test for Agent Relay
3
- # Tests the full flow: daemon -> supervisor -> agent processing
4
-
5
- set -e
6
-
7
- SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
8
- PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
9
- DATA_DIR="/tmp/agent-relay-e2e-test"
10
- SOCKET_PATH="/tmp/agent-relay-e2e.sock"
11
- AGENT_NAME="TestAgent"
12
-
13
- # Colors for output
14
- RED='\033[0;31m'
15
- GREEN='\033[0;32m'
16
- YELLOW='\033[1;33m'
17
- NC='\033[0m' # No Color
18
-
19
- log_info() { echo -e "${GREEN}[INFO]${NC} $1"; }
20
- log_warn() { echo -e "${YELLOW}[WARN]${NC} $1"; }
21
- log_error() { echo -e "${RED}[ERROR]${NC} $1"; }
22
-
23
- cleanup() {
24
- log_info "Cleaning up..."
25
- # Kill background processes
26
- if [ -n "$DAEMON_PID" ]; then
27
- kill $DAEMON_PID 2>/dev/null || true
28
- fi
29
- # Clean up test data
30
- rm -rf "$DATA_DIR"
31
- rm -f "$SOCKET_PATH" "${SOCKET_PATH}.pid"
32
- log_info "Cleanup complete"
33
- }
34
-
35
- trap cleanup EXIT
36
-
37
- # Ensure we're in the project directory
38
- cd "$PROJECT_DIR"
39
-
40
- log_info "=== Agent Relay E2E Test ==="
41
- log_info "Data dir: $DATA_DIR"
42
- log_info "Socket: $SOCKET_PATH"
43
-
44
- # Clean up any previous test data
45
- rm -rf "$DATA_DIR"
46
- rm -f "$SOCKET_PATH" "${SOCKET_PATH}.pid"
47
- mkdir -p "$DATA_DIR"
48
-
49
- # Build if needed
50
- log_info "Building project..."
51
- npm run build
52
-
53
- # Start daemon in background
54
- log_info "Starting daemon..."
55
- node dist/cli/index.js start -s "$SOCKET_PATH" -f &
56
- DAEMON_PID=$!
57
- sleep 1
58
-
59
- # Verify daemon is running
60
- if ! kill -0 $DAEMON_PID 2>/dev/null; then
61
- log_error "Daemon failed to start"
62
- exit 1
63
- fi
64
- log_info "Daemon started (PID: $DAEMON_PID)"
65
-
66
- # Register a test agent (using 'echo' as a simple CLI that just exits)
67
- log_info "Registering test agent: $AGENT_NAME"
68
- node dist/cli/index.js register \
69
- -n "$AGENT_NAME" \
70
- -c custom \
71
- --command "echo" \
72
- -w "$PROJECT_DIR" \
73
- -d "$DATA_DIR"
74
-
75
- # Verify registration
76
- if [ ! -f "$DATA_DIR/$AGENT_NAME/state.json" ]; then
77
- log_error "Agent state file not created"
78
- exit 1
79
- fi
80
- log_info "Agent registered successfully"
81
-
82
- # Create inbox with test message
83
- log_info "Writing test message to inbox..."
84
- INBOX_PATH="$DATA_DIR/$AGENT_NAME/inbox.md"
85
- cat > "$INBOX_PATH" << 'EOF'
86
- ## Message from TestSender | 2025-12-18T12:00:00.000Z
87
- Hello from the E2E test! Please respond with @relay:TestSender Got your message!
88
- EOF
89
-
90
- # Verify inbox was created
91
- if [ ! -f "$INBOX_PATH" ]; then
92
- log_error "Inbox file not created"
93
- exit 1
94
- fi
95
- log_info "Inbox created with test message"
96
-
97
- # Show initial state
98
- log_info "Initial state.json:"
99
- cat "$DATA_DIR/$AGENT_NAME/state.json" | head -20
100
-
101
- # Note: Full supervisor test requires a real CLI that can process messages
102
- # For now, we verify the infrastructure is in place
103
-
104
- log_info ""
105
- log_info "=== E2E Infrastructure Test PASSED ==="
106
- log_info ""
107
- log_info "Verified:"
108
- log_info " - Daemon starts and runs"
109
- log_info " - Agent registration creates state.json"
110
- log_info " - Inbox file can be created"
111
- log_info ""
112
- log_info "To test full message flow with a real CLI:"
113
- log_info " 1. Start daemon: npm run start -- start -f"
114
- log_info " 2. Register agent: npm run start -- register -n MyAgent -c claude -w \$(pwd)"
115
- log_info " 3. Start supervisor: npm run start -- supervisor -v -d /tmp/agent-relay"
116
- log_info " 4. Send message: npm run start -- send -t MyAgent -m 'Hello!'"
117
- log_info ""
118
-
119
- exit 0