@graychennpm/codebridge 0.0.0-stage → 0.1.0

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 (434) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/LICENSE +21 -0
  3. package/README.md +217 -2
  4. package/README.zh-CN.md +222 -0
  5. package/apps/web/public/brand/agent-logo-carbon.svg +1 -0
  6. package/apps/web/public/brand/agent-logo.svg +1 -0
  7. package/docs/zh-CN/npm-release.md +77 -0
  8. package/node_modules/@codebridge/agent-registry/dist/index.d.ts +32 -0
  9. package/node_modules/@codebridge/agent-registry/dist/index.js +177 -0
  10. package/node_modules/@codebridge/agent-registry/dist/setup.d.ts +9 -0
  11. package/node_modules/@codebridge/agent-registry/dist/setup.js +115 -0
  12. package/node_modules/@codebridge/agent-registry/package.json +17 -0
  13. package/node_modules/@codebridge/backends/dist/acp/acp-active-session.d.ts +12 -0
  14. package/node_modules/@codebridge/backends/dist/acp/acp-active-session.js +57 -0
  15. package/node_modules/@codebridge/backends/dist/acp/acp-claude-activity.d.ts +9 -0
  16. package/node_modules/@codebridge/backends/dist/acp/acp-claude-activity.js +49 -0
  17. package/node_modules/@codebridge/backends/dist/acp/acp-config-options.d.ts +46 -0
  18. package/node_modules/@codebridge/backends/dist/acp/acp-config-options.js +220 -0
  19. package/node_modules/@codebridge/backends/dist/acp/acp-doctor.d.ts +3 -0
  20. package/node_modules/@codebridge/backends/dist/acp/acp-doctor.js +18 -0
  21. package/node_modules/@codebridge/backends/dist/acp/acp-event-mapper.d.ts +5 -0
  22. package/node_modules/@codebridge/backends/dist/acp/acp-event-mapper.js +136 -0
  23. package/node_modules/@codebridge/backends/dist/acp/acp-kill.d.ts +10 -0
  24. package/node_modules/@codebridge/backends/dist/acp/acp-kill.js +24 -0
  25. package/node_modules/@codebridge/backends/dist/acp/acp-race.d.ts +6 -0
  26. package/node_modules/@codebridge/backends/dist/acp/acp-race.js +29 -0
  27. package/node_modules/@codebridge/backends/dist/acp/acp-session-list.d.ts +32 -0
  28. package/node_modules/@codebridge/backends/dist/acp/acp-session-list.js +218 -0
  29. package/node_modules/@codebridge/backends/dist/acp/acp-session-pool.d.ts +85 -0
  30. package/node_modules/@codebridge/backends/dist/acp/acp-session-pool.js +165 -0
  31. package/node_modules/@codebridge/backends/dist/acp/acp-session-runner.d.ts +78 -0
  32. package/node_modules/@codebridge/backends/dist/acp/acp-session-runner.js +550 -0
  33. package/node_modules/@codebridge/backends/dist/acp/acp-spawn-profiles.d.ts +9 -0
  34. package/node_modules/@codebridge/backends/dist/acp/acp-spawn-profiles.js +28 -0
  35. package/node_modules/@codebridge/backends/dist/acp/headless-client.d.ts +19 -0
  36. package/node_modules/@codebridge/backends/dist/acp/headless-client.js +47 -0
  37. package/node_modules/@codebridge/backends/dist/acp/index.d.ts +9 -0
  38. package/node_modules/@codebridge/backends/dist/acp/index.js +9 -0
  39. package/node_modules/@codebridge/backends/dist/agent-setup.d.ts +60 -0
  40. package/node_modules/@codebridge/backends/dist/agent-setup.js +504 -0
  41. package/node_modules/@codebridge/backends/dist/attachment-prompt.d.ts +8 -0
  42. package/node_modules/@codebridge/backends/dist/attachment-prompt.js +28 -0
  43. package/node_modules/@codebridge/backends/dist/auth-error-hints.d.ts +8 -0
  44. package/node_modules/@codebridge/backends/dist/auth-error-hints.js +33 -0
  45. package/node_modules/@codebridge/backends/dist/codex-skill-commands.d.ts +3 -0
  46. package/node_modules/@codebridge/backends/dist/codex-skill-commands.js +88 -0
  47. package/node_modules/@codebridge/backends/dist/index.d.ts +18 -0
  48. package/node_modules/@codebridge/backends/dist/index.js +34 -0
  49. package/node_modules/@codebridge/backends/dist/pi-providers.d.ts +45 -0
  50. package/node_modules/@codebridge/backends/dist/pi-providers.js +148 -0
  51. package/node_modules/@codebridge/backends/dist/pi-session-runner.d.ts +85 -0
  52. package/node_modules/@codebridge/backends/dist/pi-session-runner.js +460 -0
  53. package/node_modules/@codebridge/backends/dist/provider-connection.d.ts +17 -0
  54. package/node_modules/@codebridge/backends/dist/provider-connection.js +99 -0
  55. package/node_modules/@codebridge/backends/dist/session-discovery.d.ts +23 -0
  56. package/node_modules/@codebridge/backends/dist/session-discovery.js +340 -0
  57. package/node_modules/@codebridge/backends/dist/skill-control-plane.d.ts +147 -0
  58. package/node_modules/@codebridge/backends/dist/skill-control-plane.js +832 -0
  59. package/node_modules/@codebridge/backends/package.json +22 -0
  60. package/node_modules/@codebridge/bridge/dist/alert-notification-rules.d.ts +14 -0
  61. package/node_modules/@codebridge/bridge/dist/alert-notification-rules.js +37 -0
  62. package/node_modules/@codebridge/bridge/dist/channel-config.d.ts +4 -0
  63. package/node_modules/@codebridge/bridge/dist/channel-config.js +9 -0
  64. package/node_modules/@codebridge/bridge/dist/channel-ingress.d.ts +5 -0
  65. package/node_modules/@codebridge/bridge/dist/channel-ingress.js +403 -0
  66. package/node_modules/@codebridge/bridge/dist/cli.d.ts +3 -0
  67. package/node_modules/@codebridge/bridge/dist/cli.js +581 -0
  68. package/node_modules/@codebridge/bridge/dist/deployment.d.ts +46 -0
  69. package/node_modules/@codebridge/bridge/dist/deployment.js +174 -0
  70. package/node_modules/@codebridge/bridge/dist/event-loop-lag.d.ts +19 -0
  71. package/node_modules/@codebridge/bridge/dist/event-loop-lag.js +33 -0
  72. package/node_modules/@codebridge/bridge/dist/feishu-alert-monitor.d.ts +70 -0
  73. package/node_modules/@codebridge/bridge/dist/feishu-alert-monitor.js +591 -0
  74. package/node_modules/@codebridge/bridge/dist/init-wizard.d.ts +52 -0
  75. package/node_modules/@codebridge/bridge/dist/init-wizard.js +571 -0
  76. package/node_modules/@codebridge/bridge/dist/mcp-api.d.ts +4 -0
  77. package/node_modules/@codebridge/bridge/dist/mcp-api.js +100 -0
  78. package/node_modules/@codebridge/bridge/dist/outbound-api.d.ts +31 -0
  79. package/node_modules/@codebridge/bridge/dist/outbound-api.js +184 -0
  80. package/node_modules/@codebridge/bridge/dist/outbound-publishers.d.ts +54 -0
  81. package/node_modules/@codebridge/bridge/dist/outbound-publishers.js +213 -0
  82. package/node_modules/@codebridge/bridge/dist/project-api.d.ts +4 -0
  83. package/node_modules/@codebridge/bridge/dist/project-api.js +161 -0
  84. package/node_modules/@codebridge/bridge/dist/secrets-command.d.ts +13 -0
  85. package/node_modules/@codebridge/bridge/dist/secrets-command.js +34 -0
  86. package/node_modules/@codebridge/bridge/dist/session-api.d.ts +26 -0
  87. package/node_modules/@codebridge/bridge/dist/session-api.js +1378 -0
  88. package/node_modules/@codebridge/bridge/dist/session-history-import.d.ts +24 -0
  89. package/node_modules/@codebridge/bridge/dist/session-history-import.js +82 -0
  90. package/node_modules/@codebridge/bridge/dist/session-runtime-api.d.ts +19 -0
  91. package/node_modules/@codebridge/bridge/dist/session-runtime-api.js +453 -0
  92. package/node_modules/@codebridge/bridge/dist/session-runtime-migration.d.ts +21 -0
  93. package/node_modules/@codebridge/bridge/dist/session-runtime-migration.js +43 -0
  94. package/node_modules/@codebridge/bridge/dist/session-runtime-types.d.ts +85 -0
  95. package/node_modules/@codebridge/bridge/dist/session-runtime-types.js +98 -0
  96. package/node_modules/@codebridge/bridge/dist/skill-api.d.ts +28 -0
  97. package/node_modules/@codebridge/bridge/dist/skill-api.js +129 -0
  98. package/node_modules/@codebridge/bridge/dist/startup-surfaces.d.ts +15 -0
  99. package/node_modules/@codebridge/bridge/dist/startup-surfaces.js +13 -0
  100. package/node_modules/@codebridge/bridge/dist/web-frontend.d.ts +8 -0
  101. package/node_modules/@codebridge/bridge/dist/web-frontend.js +76 -0
  102. package/node_modules/@codebridge/bridge/dist/work-item-api.d.ts +6 -0
  103. package/node_modules/@codebridge/bridge/dist/work-item-api.js +414 -0
  104. package/node_modules/@codebridge/bridge/package.json +28 -0
  105. package/node_modules/@codebridge/channel-feishu/dist/alert-reactions.d.ts +6 -0
  106. package/node_modules/@codebridge/channel-feishu/dist/alert-reactions.js +58 -0
  107. package/node_modules/@codebridge/channel-feishu/dist/alert-types.d.ts +35 -0
  108. package/node_modules/@codebridge/channel-feishu/dist/alert-types.js +2 -0
  109. package/node_modules/@codebridge/channel-feishu/dist/bridge.d.ts +130 -0
  110. package/node_modules/@codebridge/channel-feishu/dist/bridge.js +1231 -0
  111. package/node_modules/@codebridge/channel-feishu/dist/cardkit-writer.d.ts +48 -0
  112. package/node_modules/@codebridge/channel-feishu/dist/cardkit-writer.js +153 -0
  113. package/node_modules/@codebridge/channel-feishu/dist/chain-topics.d.ts +20 -0
  114. package/node_modules/@codebridge/channel-feishu/dist/chain-topics.js +35 -0
  115. package/node_modules/@codebridge/channel-feishu/dist/coalescing-card-writer.d.ts +12 -0
  116. package/node_modules/@codebridge/channel-feishu/dist/coalescing-card-writer.js +53 -0
  117. package/node_modules/@codebridge/channel-feishu/dist/delivery-reconciler.d.ts +19 -0
  118. package/node_modules/@codebridge/channel-feishu/dist/delivery-reconciler.js +53 -0
  119. package/node_modules/@codebridge/channel-feishu/dist/durable-markdown-card.d.ts +19 -0
  120. package/node_modules/@codebridge/channel-feishu/dist/durable-markdown-card.js +77 -0
  121. package/node_modules/@codebridge/channel-feishu/dist/feishu-extra-events.d.ts +27 -0
  122. package/node_modules/@codebridge/channel-feishu/dist/feishu-extra-events.js +24 -0
  123. package/node_modules/@codebridge/channel-feishu/dist/feishu-http.d.ts +4 -0
  124. package/node_modules/@codebridge/channel-feishu/dist/feishu-http.js +25 -0
  125. package/node_modules/@codebridge/channel-feishu/dist/feishu-inbound-context.d.ts +13 -0
  126. package/node_modules/@codebridge/channel-feishu/dist/feishu-inbound-context.js +45 -0
  127. package/node_modules/@codebridge/channel-feishu/dist/feishu-inbound-media.d.ts +22 -0
  128. package/node_modules/@codebridge/channel-feishu/dist/feishu-inbound-media.js +273 -0
  129. package/node_modules/@codebridge/channel-feishu/dist/feishu-mention-gate.d.ts +13 -0
  130. package/node_modules/@codebridge/channel-feishu/dist/feishu-mention-gate.js +22 -0
  131. package/node_modules/@codebridge/channel-feishu/dist/feishu-outbound-file.d.ts +12 -0
  132. package/node_modules/@codebridge/channel-feishu/dist/feishu-outbound-file.js +38 -0
  133. package/node_modules/@codebridge/channel-feishu/dist/feishu-quoted-message.d.ts +30 -0
  134. package/node_modules/@codebridge/channel-feishu/dist/feishu-quoted-message.js +183 -0
  135. package/node_modules/@codebridge/channel-feishu/dist/index.d.ts +7 -0
  136. package/node_modules/@codebridge/channel-feishu/dist/index.js +3 -0
  137. package/node_modules/@codebridge/channel-feishu/dist/redacting-logger.d.ts +17 -0
  138. package/node_modules/@codebridge/channel-feishu/dist/redacting-logger.js +41 -0
  139. package/node_modules/@codebridge/channel-feishu/dist/run-status.d.ts +39 -0
  140. package/node_modules/@codebridge/channel-feishu/dist/run-status.js +166 -0
  141. package/node_modules/@codebridge/channel-feishu/dist/session-watcher.d.ts +98 -0
  142. package/node_modules/@codebridge/channel-feishu/dist/session-watcher.js +655 -0
  143. package/node_modules/@codebridge/channel-feishu/package.json +19 -0
  144. package/node_modules/@codebridge/channel-telegram/dist/coalescing-message-writer.d.ts +14 -0
  145. package/node_modules/@codebridge/channel-telegram/dist/coalescing-message-writer.js +56 -0
  146. package/node_modules/@codebridge/channel-telegram/dist/index.d.ts +3 -0
  147. package/node_modules/@codebridge/channel-telegram/dist/index.js +3 -0
  148. package/node_modules/@codebridge/channel-telegram/dist/telegram-api.d.ts +62 -0
  149. package/node_modules/@codebridge/channel-telegram/dist/telegram-api.js +72 -0
  150. package/node_modules/@codebridge/channel-telegram/dist/telegram-bridge.d.ts +64 -0
  151. package/node_modules/@codebridge/channel-telegram/dist/telegram-bridge.js +469 -0
  152. package/node_modules/@codebridge/channel-telegram/dist/telegram-session-watcher.d.ts +41 -0
  153. package/node_modules/@codebridge/channel-telegram/dist/telegram-session-watcher.js +184 -0
  154. package/node_modules/@codebridge/channel-telegram/package.json +18 -0
  155. package/node_modules/@codebridge/core/dist/config-schema.d.ts +1195 -0
  156. package/node_modules/@codebridge/core/dist/config-schema.js +293 -0
  157. package/node_modules/@codebridge/core/dist/config-store.d.ts +48 -0
  158. package/node_modules/@codebridge/core/dist/config-store.js +207 -0
  159. package/node_modules/@codebridge/core/dist/index.d.ts +11 -0
  160. package/node_modules/@codebridge/core/dist/index.js +10 -0
  161. package/node_modules/@codebridge/core/dist/json-file-store.d.ts +16 -0
  162. package/node_modules/@codebridge/core/dist/json-file-store.js +46 -0
  163. package/node_modules/@codebridge/core/dist/mcp-types.d.ts +7 -0
  164. package/node_modules/@codebridge/core/dist/mcp-types.js +2 -0
  165. package/node_modules/@codebridge/core/dist/mentions.d.ts +36 -0
  166. package/node_modules/@codebridge/core/dist/mentions.js +138 -0
  167. package/node_modules/@codebridge/core/dist/secret-migration.d.ts +14 -0
  168. package/node_modules/@codebridge/core/dist/secret-migration.js +55 -0
  169. package/node_modules/@codebridge/core/dist/secret-refs.d.ts +34 -0
  170. package/node_modules/@codebridge/core/dist/secret-refs.js +142 -0
  171. package/node_modules/@codebridge/core/dist/session-event-wire.d.ts +17 -0
  172. package/node_modules/@codebridge/core/dist/session-event-wire.js +28 -0
  173. package/node_modules/@codebridge/core/dist/types.d.ts +363 -0
  174. package/node_modules/@codebridge/core/dist/types.js +22 -0
  175. package/node_modules/@codebridge/core/dist/workspace-key.d.ts +11 -0
  176. package/node_modules/@codebridge/core/dist/workspace-key.js +25 -0
  177. package/node_modules/@codebridge/core/package.json +22 -0
  178. package/node_modules/@codebridge/mcp-runtime/dist/.tsbuildinfo +1 -0
  179. package/node_modules/@codebridge/mcp-runtime/dist/index.d.ts +92 -0
  180. package/node_modules/@codebridge/mcp-runtime/dist/index.js +377 -0
  181. package/node_modules/@codebridge/mcp-runtime/package.json +19 -0
  182. package/node_modules/@codebridge/policy/dist/capability-runtime.d.ts +123 -0
  183. package/node_modules/@codebridge/policy/dist/capability-runtime.js +195 -0
  184. package/node_modules/@codebridge/policy/dist/demo-capabilities.d.ts +4 -0
  185. package/node_modules/@codebridge/policy/dist/demo-capabilities.js +134 -0
  186. package/node_modules/@codebridge/policy/dist/equity-capabilities.d.ts +8 -0
  187. package/node_modules/@codebridge/policy/dist/equity-capabilities.js +35 -0
  188. package/node_modules/@codebridge/policy/dist/index.d.ts +107 -0
  189. package/node_modules/@codebridge/policy/dist/index.js +317 -0
  190. package/node_modules/@codebridge/policy/package.json +17 -0
  191. package/node_modules/@codebridge/project-catalog/dist/index.d.ts +145 -0
  192. package/node_modules/@codebridge/project-catalog/dist/index.js +699 -0
  193. package/node_modules/@codebridge/project-catalog/package.json +18 -0
  194. package/node_modules/@codebridge/router/dist/channel-stream-projector.d.ts +19 -0
  195. package/node_modules/@codebridge/router/dist/channel-stream-projector.js +68 -0
  196. package/node_modules/@codebridge/router/dist/command-help.d.ts +14 -0
  197. package/node_modules/@codebridge/router/dist/command-help.js +151 -0
  198. package/node_modules/@codebridge/router/dist/feishu-stream-presenter.d.ts +18 -0
  199. package/node_modules/@codebridge/router/dist/feishu-stream-presenter.js +193 -0
  200. package/node_modules/@codebridge/router/dist/index.d.ts +9 -0
  201. package/node_modules/@codebridge/router/dist/index.js +9 -0
  202. package/node_modules/@codebridge/router/dist/model-effort.d.ts +5 -0
  203. package/node_modules/@codebridge/router/dist/model-effort.js +33 -0
  204. package/node_modules/@codebridge/router/dist/orchestrator.d.ts +56 -0
  205. package/node_modules/@codebridge/router/dist/orchestrator.js +290 -0
  206. package/node_modules/@codebridge/router/dist/session-list-format.d.ts +19 -0
  207. package/node_modules/@codebridge/router/dist/session-list-format.js +97 -0
  208. package/node_modules/@codebridge/router/dist/session-rotation.d.ts +9 -0
  209. package/node_modules/@codebridge/router/dist/session-rotation.js +31 -0
  210. package/node_modules/@codebridge/router/dist/session-router.d.ts +59 -0
  211. package/node_modules/@codebridge/router/dist/session-router.js +182 -0
  212. package/node_modules/@codebridge/router/dist/slash-commands.d.ts +78 -0
  213. package/node_modules/@codebridge/router/dist/slash-commands.js +874 -0
  214. package/node_modules/@codebridge/router/package.json +18 -0
  215. package/node_modules/@codebridge/run-executor/dist/agent-event-aggregator.d.ts +18 -0
  216. package/node_modules/@codebridge/run-executor/dist/agent-event-aggregator.js +88 -0
  217. package/node_modules/@codebridge/run-executor/dist/index.d.ts +55 -0
  218. package/node_modules/@codebridge/run-executor/dist/index.js +754 -0
  219. package/node_modules/@codebridge/run-executor/dist/run-heartbeat.d.ts +14 -0
  220. package/node_modules/@codebridge/run-executor/dist/run-heartbeat.js +24 -0
  221. package/node_modules/@codebridge/run-executor/package.json +20 -0
  222. package/node_modules/@codebridge/runner-client/dist/index.d.ts +142 -0
  223. package/node_modules/@codebridge/runner-client/dist/index.js +439 -0
  224. package/node_modules/@codebridge/runner-client/package.json +18 -0
  225. package/node_modules/@codebridge/runner-host/dist/cli.d.ts +3 -0
  226. package/node_modules/@codebridge/runner-host/dist/cli.js +58 -0
  227. package/node_modules/@codebridge/runner-host/dist/codex-session-ownership.d.ts +13 -0
  228. package/node_modules/@codebridge/runner-host/dist/codex-session-ownership.js +79 -0
  229. package/node_modules/@codebridge/runner-host/dist/deployment-mcp-server.d.ts +10 -0
  230. package/node_modules/@codebridge/runner-host/dist/deployment-mcp-server.js +54 -0
  231. package/node_modules/@codebridge/runner-host/dist/fcb-script.d.ts +3 -0
  232. package/node_modules/@codebridge/runner-host/dist/fcb-script.js +99 -0
  233. package/node_modules/@codebridge/runner-host/dist/index.d.ts +3 -0
  234. package/node_modules/@codebridge/runner-host/dist/index.js +2 -0
  235. package/node_modules/@codebridge/runner-host/dist/materialize-attachments.d.ts +4 -0
  236. package/node_modules/@codebridge/runner-host/dist/materialize-attachments.js +62 -0
  237. package/node_modules/@codebridge/runner-host/dist/server.d.ts +150 -0
  238. package/node_modules/@codebridge/runner-host/dist/server.js +1295 -0
  239. package/node_modules/@codebridge/runner-host/dist/session-lease.d.ts +12 -0
  240. package/node_modules/@codebridge/runner-host/dist/session-lease.js +146 -0
  241. package/node_modules/@codebridge/runner-host/package.json +26 -0
  242. package/node_modules/@codebridge/session-catalog/dist/index.d.ts +124 -0
  243. package/node_modules/@codebridge/session-catalog/dist/index.js +411 -0
  244. package/node_modules/@codebridge/session-catalog/package.json +17 -0
  245. package/node_modules/@codebridge/session-coordinator/dist/coordinator.d.ts +111 -0
  246. package/node_modules/@codebridge/session-coordinator/dist/coordinator.js +364 -0
  247. package/node_modules/@codebridge/session-coordinator/dist/index.d.ts +5 -0
  248. package/node_modules/@codebridge/session-coordinator/dist/index.js +5 -0
  249. package/node_modules/@codebridge/session-coordinator/dist/lease.d.ts +14 -0
  250. package/node_modules/@codebridge/session-coordinator/dist/lease.js +26 -0
  251. package/node_modules/@codebridge/session-coordinator/dist/queued-claim.d.ts +20 -0
  252. package/node_modules/@codebridge/session-coordinator/dist/queued-claim.js +45 -0
  253. package/node_modules/@codebridge/session-coordinator/dist/recovery.d.ts +31 -0
  254. package/node_modules/@codebridge/session-coordinator/dist/recovery.js +114 -0
  255. package/node_modules/@codebridge/session-coordinator/package.json +17 -0
  256. package/node_modules/@codebridge/web/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  257. package/node_modules/@codebridge/web/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  258. package/node_modules/@codebridge/web/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  259. package/node_modules/@codebridge/web/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  260. package/node_modules/@codebridge/web/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  261. package/node_modules/@codebridge/web/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  262. package/node_modules/@codebridge/web/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  263. package/node_modules/@codebridge/web/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  264. package/node_modules/@codebridge/web/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  265. package/node_modules/@codebridge/web/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  266. package/node_modules/@codebridge/web/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  267. package/node_modules/@codebridge/web/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  268. package/node_modules/@codebridge/web/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  269. package/node_modules/@codebridge/web/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  270. package/node_modules/@codebridge/web/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  271. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  272. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  273. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  274. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  275. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  276. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  277. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  278. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  279. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  280. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  281. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  282. package/node_modules/@codebridge/web/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  283. package/node_modules/@codebridge/web/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  284. package/node_modules/@codebridge/web/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  285. package/node_modules/@codebridge/web/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  286. package/node_modules/@codebridge/web/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  287. package/node_modules/@codebridge/web/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  288. package/node_modules/@codebridge/web/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  289. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  290. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  291. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  292. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  293. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  294. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  295. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  296. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  297. package/node_modules/@codebridge/web/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  298. package/node_modules/@codebridge/web/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  299. package/node_modules/@codebridge/web/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  300. package/node_modules/@codebridge/web/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  301. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  302. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  303. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  304. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  305. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  306. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  307. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  308. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  309. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  310. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  311. package/node_modules/@codebridge/web/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  312. package/node_modules/@codebridge/web/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  313. package/node_modules/@codebridge/web/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  314. package/node_modules/@codebridge/web/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  315. package/node_modules/@codebridge/web/dist/assets/abnfDiagram-N423BO3Z-C-JdFv0U.js +1 -0
  316. package/node_modules/@codebridge/web/dist/assets/arc-DsNROjzU.js +1 -0
  317. package/node_modules/@codebridge/web/dist/assets/architecture-TIHT7OUA-ZEBHG2JZ.js +1 -0
  318. package/node_modules/@codebridge/web/dist/assets/architectureDiagram-T3A2C74G-OsrxcwPM.js +36 -0
  319. package/node_modules/@codebridge/web/dist/assets/array-BifhSqXX.js +1 -0
  320. package/node_modules/@codebridge/web/dist/assets/blockDiagram-VBNYF7ZC-DRgfNeNW.js +132 -0
  321. package/node_modules/@codebridge/web/dist/assets/c4Diagram-5PPSVZJV-BtOGKTh8.js +10 -0
  322. package/node_modules/@codebridge/web/dist/assets/channel-MhXyjxUS.js +1 -0
  323. package/node_modules/@codebridge/web/dist/assets/chunk-2GRJ4B5K-Dy1gJ7sY.js +1 -0
  324. package/node_modules/@codebridge/web/dist/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
  325. package/node_modules/@codebridge/web/dist/assets/chunk-4I5QYGJK-1pOLR_SG.js +1 -0
  326. package/node_modules/@codebridge/web/dist/assets/chunk-5RXB4S5H-CP43rgsO.js +231 -0
  327. package/node_modules/@codebridge/web/dist/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
  328. package/node_modules/@codebridge/web/dist/assets/chunk-6Q2QTUOP-Bi3Xrp6W.js +88 -0
  329. package/node_modules/@codebridge/web/dist/assets/chunk-7BUUIJ7U-Bb538aSH.js +1 -0
  330. package/node_modules/@codebridge/web/dist/assets/chunk-7Z6QIM7H-CILAW2Nk.js +10 -0
  331. package/node_modules/@codebridge/web/dist/assets/chunk-GF5L2VYU-CAp09yhq.js +206 -0
  332. package/node_modules/@codebridge/web/dist/assets/chunk-I66GZJ75-B_rJXmNu.js +128 -0
  333. package/node_modules/@codebridge/web/dist/assets/chunk-JQJVKLGR-OVeOJFCx.js +156 -0
  334. package/node_modules/@codebridge/web/dist/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
  335. package/node_modules/@codebridge/web/dist/assets/chunk-KBJHAD2P-uaupp0k5.js +1 -0
  336. package/node_modules/@codebridge/web/dist/assets/chunk-KEIR6QF5-BICK3FdT.js +161 -0
  337. package/node_modules/@codebridge/web/dist/assets/chunk-NSK5VX7P-fIHF5wwn.js +2 -0
  338. package/node_modules/@codebridge/web/dist/assets/chunk-QR6OTTB3-DxkJuF2b.js +62 -0
  339. package/node_modules/@codebridge/web/dist/assets/chunk-RYQCIY6F-CC5j3u-X.js +1 -0
  340. package/node_modules/@codebridge/web/dist/assets/chunk-UBXNYLIW-DB35O-6R.js +1 -0
  341. package/node_modules/@codebridge/web/dist/assets/chunk-W5SLKNZC-bkRBsbq-.js +1 -0
  342. package/node_modules/@codebridge/web/dist/assets/chunk-WRU74C26-DwvEoD-1.js +70 -0
  343. package/node_modules/@codebridge/web/dist/assets/chunk-XXDRQBXY-DRyYA-HY.js +1 -0
  344. package/node_modules/@codebridge/web/dist/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
  345. package/node_modules/@codebridge/web/dist/assets/classDiagram-JCYQIIEL-B8r7z8ii.js +1 -0
  346. package/node_modules/@codebridge/web/dist/assets/classDiagram-v2-OCEON4UE-B8r7z8ii.js +1 -0
  347. package/node_modules/@codebridge/web/dist/assets/cose-bilkent-JH36ORCC-CLkwlrX7.js +1 -0
  348. package/node_modules/@codebridge/web/dist/assets/cynefin-VYW2F7L2-C3_Llw02.js +1 -0
  349. package/node_modules/@codebridge/web/dist/assets/cynefinDiagram-MW4NZA55-D5v7UnJy.js +62 -0
  350. package/node_modules/@codebridge/web/dist/assets/cytoscape.esm-B-NFISlW.js +321 -0
  351. package/node_modules/@codebridge/web/dist/assets/dagre-Buvkdvvj.js +1 -0
  352. package/node_modules/@codebridge/web/dist/assets/dagre-VZM6K2ZE-Cr0IibwW.js +4 -0
  353. package/node_modules/@codebridge/web/dist/assets/defaultLocale-BFoDCU3G.js +1 -0
  354. package/node_modules/@codebridge/web/dist/assets/diagram-7IWD3JNH-CpQXDIzA.js +30 -0
  355. package/node_modules/@codebridge/web/dist/assets/diagram-B4RE2ZJO-VaOkH0Ya.js +3 -0
  356. package/node_modules/@codebridge/web/dist/assets/diagram-LBJQPF4R-D0iXyNks.js +24 -0
  357. package/node_modules/@codebridge/web/dist/assets/diagram-Q27KOJAE-CtqYk01P.js +24 -0
  358. package/node_modules/@codebridge/web/dist/assets/diagram-UB23O5K3-CFnd3H1_.js +41 -0
  359. package/node_modules/@codebridge/web/dist/assets/dist-D2L7nRdk.js +1 -0
  360. package/node_modules/@codebridge/web/dist/assets/ebnfDiagram-BXEA7PRR-B0GIbJYt.js +1 -0
  361. package/node_modules/@codebridge/web/dist/assets/erDiagram-JOGREHBK-BApaLGVA.js +85 -0
  362. package/node_modules/@codebridge/web/dist/assets/eventmodeling-45OFAUF4-DqGGjcld.js +1 -0
  363. package/node_modules/@codebridge/web/dist/assets/flowDiagram-UKHOOZJN-I_qlizLH.js +1 -0
  364. package/node_modules/@codebridge/web/dist/assets/ganttDiagram-PKOTCBZU-B-QZ-J82.js +292 -0
  365. package/node_modules/@codebridge/web/dist/assets/gitGraph-TEB2WS4Q-DK2SJ2Ne.js +1 -0
  366. package/node_modules/@codebridge/web/dist/assets/gitGraphDiagram-DS77QQ5N-B6Z-pu0D.js +106 -0
  367. package/node_modules/@codebridge/web/dist/assets/graphlib-DS17s2tU.js +1 -0
  368. package/node_modules/@codebridge/web/dist/assets/index-8BzpyygS.js +559 -0
  369. package/node_modules/@codebridge/web/dist/assets/index-Bzaz89LE.css +1 -0
  370. package/node_modules/@codebridge/web/dist/assets/info-DKCQHKI2-CGWxt_Py.js +1 -0
  371. package/node_modules/@codebridge/web/dist/assets/infoDiagram-6WML65LV-77XjrPZs.js +2 -0
  372. package/node_modules/@codebridge/web/dist/assets/init-C-OQMol4.js +1 -0
  373. package/node_modules/@codebridge/web/dist/assets/ishikawaDiagram-WSZJBQD7-P1bZAz2x.js +70 -0
  374. package/node_modules/@codebridge/web/dist/assets/journeyDiagram-NVQOT4AX-C4rwMcBY.js +139 -0
  375. package/node_modules/@codebridge/web/dist/assets/kanban-definition-27J2QSJJ-mtw4a9bc.js +89 -0
  376. package/node_modules/@codebridge/web/dist/assets/line-DP4RkYqm.js +1 -0
  377. package/node_modules/@codebridge/web/dist/assets/linear-DMg3PPio.js +1 -0
  378. package/node_modules/@codebridge/web/dist/assets/map-BaFkSB1l.js +1 -0
  379. package/node_modules/@codebridge/web/dist/assets/mermaid-parser.core-HY84kHw1.js +7 -0
  380. package/node_modules/@codebridge/web/dist/assets/mermaid.core-DdgCdsnM.js +42 -0
  381. package/node_modules/@codebridge/web/dist/assets/mindmap-definition-FAOFIHXS-Cw1EnbhZ.js +96 -0
  382. package/node_modules/@codebridge/web/dist/assets/ordinal-BDEzSJ7C.js +1 -0
  383. package/node_modules/@codebridge/web/dist/assets/packet-7NZHBO7P-CEbrbJH3.js +1 -0
  384. package/node_modules/@codebridge/web/dist/assets/path-fybaL0A-.js +1 -0
  385. package/node_modules/@codebridge/web/dist/assets/pegDiagram-VL7TDLO6-CEc1Gedb.js +1 -0
  386. package/node_modules/@codebridge/web/dist/assets/pie-RZYD4A2V-DPXVs-IW.js +1 -0
  387. package/node_modules/@codebridge/web/dist/assets/pieDiagram-7S7Q4E2Y-hoQeGMFH.js +39 -0
  388. package/node_modules/@codebridge/web/dist/assets/quadrantDiagram-CIZ2JOQS-C-Nmxx0f.js +7 -0
  389. package/node_modules/@codebridge/web/dist/assets/radar-I7S5WNFK-BVd3X3Pd.js +1 -0
  390. package/node_modules/@codebridge/web/dist/assets/railroad-3IZDKUUU-CxLxzr_v.js +1 -0
  391. package/node_modules/@codebridge/web/dist/assets/railroad-abnf-AHOZXSZD-MA1zPI84.js +1 -0
  392. package/node_modules/@codebridge/web/dist/assets/railroad-ebnf-EBAXGLYW-Bqug_umD.js +1 -0
  393. package/node_modules/@codebridge/web/dist/assets/railroad-peg-LSFZ7HO6-DRcRFwpq.js +1 -0
  394. package/node_modules/@codebridge/web/dist/assets/railroadDiagram-AXF67PYL-B007ZkL9.js +1 -0
  395. package/node_modules/@codebridge/web/dist/assets/requirementDiagram-LRYGKXZP-LrTCcEi5.js +84 -0
  396. package/node_modules/@codebridge/web/dist/assets/rough.esm-Dy-Kn_BL.js +1 -0
  397. package/node_modules/@codebridge/web/dist/assets/sankeyDiagram-W5VNT64P-Ch4mzHck.js +40 -0
  398. package/node_modules/@codebridge/web/dist/assets/sequenceDiagram-SI44F4Z6-CHg4OzLX.js +162 -0
  399. package/node_modules/@codebridge/web/dist/assets/sizeCapture-X5ZJPWSS-B0uUizjq.js +1 -0
  400. package/node_modules/@codebridge/web/dist/assets/src-BrO6_odD.js +1 -0
  401. package/node_modules/@codebridge/web/dist/assets/stateDiagram-OKZ733FA-7cVkr5nR.js +1 -0
  402. package/node_modules/@codebridge/web/dist/assets/stateDiagram-v2-UEYNNEHI-CTy_mAXb.js +1 -0
  403. package/node_modules/@codebridge/web/dist/assets/swimlanes-SLNWSIFB-BwSVF5qy.js +2 -0
  404. package/node_modules/@codebridge/web/dist/assets/swimlanesDiagram-ULZ7WXOC-BBQnfZ1j.js +8 -0
  405. package/node_modules/@codebridge/web/dist/assets/timeline-definition-Z64GVDOM-BaHEkVDV.js +120 -0
  406. package/node_modules/@codebridge/web/dist/assets/treeView-QDETBFTQ-CF0kLN62.js +1 -0
  407. package/node_modules/@codebridge/web/dist/assets/treemap-6X3UGDF4-BB8A8uux.js +1 -0
  408. package/node_modules/@codebridge/web/dist/assets/vennDiagram-T6HMQDX7-BFK12Iro.js +34 -0
  409. package/node_modules/@codebridge/web/dist/assets/wardley-OPB4EBWU-C_3y61zk.js +1 -0
  410. package/node_modules/@codebridge/web/dist/assets/wardleyDiagram-T6FBY63Y-W2oGu4WK.js +78 -0
  411. package/node_modules/@codebridge/web/dist/assets/xychartDiagram-ELKLHX3M-BiVRnbvz.js +7 -0
  412. package/node_modules/@codebridge/web/dist/brand/agent-logo-carbon.svg +1 -0
  413. package/node_modules/@codebridge/web/dist/brand/agent-logo.svg +1 -0
  414. package/node_modules/@codebridge/web/dist/brand/agnet-logo-carbon.svg +1 -0
  415. package/node_modules/@codebridge/web/dist/brand/agnet-logo.svg +1 -0
  416. package/node_modules/@codebridge/web/dist/brand/agnet-mark-carbon.svg +1 -0
  417. package/node_modules/@codebridge/web/dist/brand/agnet-mark.svg +1 -0
  418. package/node_modules/@codebridge/web/dist/fonts/CommitMono-400-Regular.otf +0 -0
  419. package/node_modules/@codebridge/web/dist/fonts/CommitMono-700-Regular.otf +0 -0
  420. package/node_modules/@codebridge/web/dist/fonts/CommitMono-OFL.txt +21 -0
  421. package/node_modules/@codebridge/web/dist/fonts/DepartureMono-OFL.txt +21 -0
  422. package/node_modules/@codebridge/web/dist/fonts/DepartureMono-Regular.woff2 +0 -0
  423. package/node_modules/@codebridge/web/dist/index.html +25 -0
  424. package/node_modules/@codebridge/web/package.json +7 -0
  425. package/node_modules/@codebridge/work-items/dist/index.d.ts +371 -0
  426. package/node_modules/@codebridge/work-items/dist/index.js +1784 -0
  427. package/node_modules/@codebridge/work-items/dist/session-projector.d.ts +4 -0
  428. package/node_modules/@codebridge/work-items/dist/session-projector.js +506 -0
  429. package/node_modules/@codebridge/work-items/dist/session-runtime.d.ts +274 -0
  430. package/node_modules/@codebridge/work-items/dist/session-runtime.js +1103 -0
  431. package/node_modules/@codebridge/work-items/dist/session-schema.d.ts +9 -0
  432. package/node_modules/@codebridge/work-items/dist/session-schema.js +292 -0
  433. package/node_modules/@codebridge/work-items/package.json +20 -0
  434. package/package.json +75 -4
@@ -0,0 +1,14 @@
1
+ import type { Run } from "@codebridge/work-items";
2
+ export declare class RunHeartbeat {
3
+ private readonly options;
4
+ private timer;
5
+ constructor(options: {
6
+ runId: string;
7
+ owner: string;
8
+ renew: (runId: string, owner: string) => Run | null;
9
+ onLeaseLost: () => void;
10
+ });
11
+ start(): void;
12
+ close(): void;
13
+ }
14
+ //# sourceMappingURL=run-heartbeat.d.ts.map
@@ -0,0 +1,24 @@
1
+ export class RunHeartbeat {
2
+ options;
3
+ timer = null;
4
+ constructor(options) {
5
+ this.options = options;
6
+ }
7
+ start() {
8
+ if (this.timer)
9
+ return;
10
+ this.timer = setInterval(() => {
11
+ if (!this.options.renew(this.options.runId, this.options.owner)) {
12
+ this.close();
13
+ this.options.onLeaseLost();
14
+ }
15
+ }, 15_000);
16
+ }
17
+ close() {
18
+ if (!this.timer)
19
+ return;
20
+ clearInterval(this.timer);
21
+ this.timer = null;
22
+ }
23
+ }
24
+ //# sourceMappingURL=run-heartbeat.js.map
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "@codebridge/run-executor",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js"
11
+ }
12
+ },
13
+ "license": "MIT",
14
+ "dependencies": {
15
+ "@codebridge/core": "0.1.0",
16
+ "@codebridge/policy": "0.1.0",
17
+ "@codebridge/session-coordinator": "0.1.0",
18
+ "@codebridge/work-items": "0.1.0"
19
+ }
20
+ }
@@ -0,0 +1,142 @@
1
+ import type { AgentAvailableCommand, AgentEvent, BackendConfigOption, RunRequest } from "@codebridge/core";
2
+ import type { AgentSetupInstallResult, AgentSetupRecord, CliSessionSummary, ProviderSessionHistoryEvent, SkillAgentId, SkillCatalogSnapshot, SkillMutationPlan, SkillMutationResult } from "@codebridge/backends";
3
+ export interface RunnerClientOptions {
4
+ baseUrl: string;
5
+ token: string;
6
+ directoryAuthorizationTimeoutMs?: number;
7
+ sessionHistoryTimeoutMs?: number;
8
+ }
9
+ export type { CliSessionSummary, ProviderSessionHistoryEvent, SkillAgentId, SkillCatalogSnapshot, SkillMutationPlan, SkillMutationResult, };
10
+ export interface WorkspaceDirectoryEntry {
11
+ name: string;
12
+ path: string;
13
+ absolutePath: string;
14
+ kind: "directory" | "file";
15
+ }
16
+ export interface WorkspaceDirectoryListing {
17
+ ok: boolean;
18
+ root?: string;
19
+ path?: string;
20
+ relativePath?: string;
21
+ entries?: WorkspaceDirectoryEntry[];
22
+ error?: string;
23
+ }
24
+ export interface AgentSetupListResponse {
25
+ agents: AgentSetupRecord[];
26
+ error?: string;
27
+ message?: string;
28
+ details?: string;
29
+ }
30
+ export declare class RunnerCancellationError extends Error {
31
+ readonly name = "RunnerCancellationError";
32
+ }
33
+ export declare class RunnerApiError extends Error {
34
+ readonly status: number;
35
+ readonly details?: string | undefined;
36
+ readonly code?: string | undefined;
37
+ readonly name = "RunnerApiError";
38
+ constructor(message: string, status: number, details?: string | undefined, code?: string | undefined);
39
+ }
40
+ export declare class RunnerClient {
41
+ private readonly options;
42
+ constructor(options: RunnerClientOptions);
43
+ health(): Promise<{
44
+ ok: boolean;
45
+ version?: string;
46
+ }>;
47
+ doctor(): Promise<unknown>;
48
+ listSessions(backend: string, cwd: string, options?: {
49
+ all?: boolean;
50
+ limit?: number;
51
+ }): Promise<{
52
+ sessions: CliSessionSummary[];
53
+ error?: string;
54
+ }>;
55
+ loadSessionHistory(backend: string, cwd: string, sessionId: string, additionalDirectories?: string[]): Promise<ProviderSessionHistoryEvent[]>;
56
+ listConfigOptions(backend: string, cwd: string, model?: string | null): Promise<{
57
+ options: BackendConfigOption[];
58
+ error?: string;
59
+ }>;
60
+ listPiProviderPresets(): Promise<unknown>;
61
+ listAgentSetup(): Promise<AgentSetupListResponse>;
62
+ detectAgent(agentId: string): Promise<AgentSetupRecord>;
63
+ detectAllAgents(): Promise<AgentSetupListResponse>;
64
+ installAgent(agentId: string, strategyId: string): Promise<AgentSetupInstallResult>;
65
+ listSkills(): Promise<SkillCatalogSnapshot>;
66
+ addSkillSource(sourcePath: string): Promise<SkillCatalogSnapshot>;
67
+ previewSkillAdopt(skillId: string, actorId: string): Promise<SkillMutationPlan>;
68
+ previewSkillAssignment(input: {
69
+ skill_id: string;
70
+ agent_id: SkillAgentId;
71
+ enabled: boolean;
72
+ actor_id: string;
73
+ }): Promise<SkillMutationPlan>;
74
+ previewSkillGlobalState(input: {
75
+ skill_id: string;
76
+ enabled: boolean;
77
+ actor_id: string;
78
+ }): Promise<SkillMutationPlan>;
79
+ previewSkillUnmanage(skillId: string, actorId: string): Promise<SkillMutationPlan>;
80
+ applySkillPlan(kind: "adopt" | "global-state" | "assignment" | "unmanage", planId: string, actorId: string): Promise<SkillMutationResult>;
81
+ listPiProviders(): Promise<unknown>;
82
+ savePiProviders(file: unknown): Promise<{
83
+ ok: boolean;
84
+ }>;
85
+ testPiProvider(provider: {
86
+ baseUrl: string;
87
+ apiKey?: string;
88
+ authHeader?: boolean;
89
+ api?: string;
90
+ model?: string;
91
+ }): Promise<{
92
+ ok: boolean;
93
+ detail: string;
94
+ compatSuggestion?: Record<string, unknown>;
95
+ }>;
96
+ listCommands(backend: string, cwd: string): Promise<{
97
+ commands: AgentAvailableCommand[];
98
+ error?: string;
99
+ }>;
100
+ authorizeDirectory(directory: string): Promise<{
101
+ ok: boolean;
102
+ path?: string;
103
+ error?: string;
104
+ }>;
105
+ listDirectory(root: string, relativePath?: string): Promise<WorkspaceDirectoryListing>;
106
+ pickDirectory(): Promise<{
107
+ ok: boolean;
108
+ path?: string;
109
+ cancelled?: boolean;
110
+ error?: string;
111
+ }>;
112
+ closeSession(backend: string, cwd: string, sessionId: string): Promise<{
113
+ ok: boolean;
114
+ error?: string;
115
+ }>;
116
+ deleteSession(backend: string, cwd: string, sessionId: string): Promise<{
117
+ ok: boolean;
118
+ error?: string;
119
+ }>;
120
+ forkSession(backend: string, cwd: string, sessionId: string, targetCwd: string): Promise<{
121
+ ok: boolean;
122
+ sessionId?: string;
123
+ cwd?: string;
124
+ error?: string;
125
+ }>;
126
+ cancel(runId: string): Promise<void>;
127
+ steer(runId: string, prompt: string): Promise<{
128
+ ok: boolean;
129
+ outcome?: string;
130
+ error?: string;
131
+ }>;
132
+ /** prompt_feishu:回应 run 挂起的权限请求(/approve /deny) */
133
+ resolvePermission(runId: string, approve: boolean): Promise<boolean>;
134
+ run(request: RunRequest, options?: {
135
+ signal?: AbortSignal;
136
+ }): AsyncGenerator<AgentEvent>;
137
+ private mapStreamError;
138
+ private sessionLifecycle;
139
+ private requestSetup;
140
+ private fetch;
141
+ }
142
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,439 @@
1
+ export class RunnerCancellationError extends Error {
2
+ name = "RunnerCancellationError";
3
+ }
4
+ export class RunnerApiError extends Error {
5
+ status;
6
+ details;
7
+ code;
8
+ name = "RunnerApiError";
9
+ constructor(message, status, details, code) {
10
+ super(message);
11
+ this.status = status;
12
+ this.details = details;
13
+ this.code = code;
14
+ }
15
+ }
16
+ export class RunnerClient {
17
+ options;
18
+ constructor(options) {
19
+ this.options = options;
20
+ }
21
+ async health() {
22
+ const res = await this.fetch("/health");
23
+ return res.json();
24
+ }
25
+ async doctor() {
26
+ const res = await this.fetch("/doctor");
27
+ return res.json();
28
+ }
29
+ async listSessions(backend, cwd, options) {
30
+ const params = new URLSearchParams({
31
+ backend,
32
+ cwd,
33
+ limit: String(options?.limit ?? 20),
34
+ });
35
+ if (options?.all)
36
+ params.set("all", "true");
37
+ const res = await this.fetch(`/sessions?${params}`);
38
+ if (!res.ok) {
39
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
40
+ }
41
+ return res.json();
42
+ }
43
+ async loadSessionHistory(backend, cwd, sessionId, additionalDirectories) {
44
+ const params = new URLSearchParams({ backend, cwd });
45
+ if (additionalDirectories?.length) {
46
+ params.set("additional_directories", JSON.stringify(additionalDirectories));
47
+ }
48
+ const controller = new AbortController();
49
+ const timer = setTimeout(() => controller.abort(), this.options.sessionHistoryTimeoutMs ?? 20_000);
50
+ timer.unref?.();
51
+ try {
52
+ const res = await this.fetch(`/sessions/${encodeURIComponent(sessionId)}/history?${params}`, { signal: controller.signal });
53
+ if (!res.ok)
54
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
55
+ const body = (await res.json());
56
+ return body.events ?? [];
57
+ }
58
+ finally {
59
+ clearTimeout(timer);
60
+ }
61
+ }
62
+ async listConfigOptions(backend, cwd, model) {
63
+ const params = new URLSearchParams({ backend, cwd });
64
+ if (model)
65
+ params.set("model", model);
66
+ const res = await this.fetch(`/config-options?${params}`);
67
+ if (!res.ok) {
68
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
69
+ }
70
+ return res.json();
71
+ }
72
+ async listPiProviderPresets() {
73
+ const res = await this.fetch("/pi/providers/presets");
74
+ if (!res.ok)
75
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
76
+ return res.json();
77
+ }
78
+ async listAgentSetup() {
79
+ return this.requestSetup("/agents/setup");
80
+ }
81
+ async detectAgent(agentId) {
82
+ return this.requestSetup(`/agents/${encodeURIComponent(agentId)}/detect`, {
83
+ method: "POST",
84
+ });
85
+ }
86
+ async detectAllAgents() {
87
+ return this.requestSetup("/agents/detect", { method: "POST" });
88
+ }
89
+ async installAgent(agentId, strategyId) {
90
+ return this.requestSetup(`/agents/${encodeURIComponent(agentId)}/install`, {
91
+ method: "POST",
92
+ headers: { "content-type": "application/json" },
93
+ body: JSON.stringify({ strategy_id: strategyId }),
94
+ });
95
+ }
96
+ async listSkills() {
97
+ return this.requestSetup("/skills");
98
+ }
99
+ async addSkillSource(sourcePath) {
100
+ return this.requestSetup("/skills/sources", {
101
+ method: "POST",
102
+ headers: { "content-type": "application/json" },
103
+ body: JSON.stringify({ path: sourcePath }),
104
+ });
105
+ }
106
+ async previewSkillAdopt(skillId, actorId) {
107
+ return this.requestSetup(`/skills/${encodeURIComponent(skillId)}/adopt/preview`, {
108
+ method: "POST",
109
+ headers: { "content-type": "application/json" },
110
+ body: JSON.stringify({ actor_id: actorId }),
111
+ });
112
+ }
113
+ async previewSkillAssignment(input) {
114
+ return this.requestSetup("/skills/assignments/preview", {
115
+ method: "POST",
116
+ headers: { "content-type": "application/json" },
117
+ body: JSON.stringify(input),
118
+ });
119
+ }
120
+ async previewSkillGlobalState(input) {
121
+ return this.requestSetup(`/skills/${encodeURIComponent(input.skill_id)}/global-state/preview`, {
122
+ method: "POST",
123
+ headers: { "content-type": "application/json" },
124
+ body: JSON.stringify({ enabled: input.enabled, actor_id: input.actor_id }),
125
+ });
126
+ }
127
+ async previewSkillUnmanage(skillId, actorId) {
128
+ return this.requestSetup(`/skills/${encodeURIComponent(skillId)}/unmanage/preview`, {
129
+ method: "POST",
130
+ headers: { "content-type": "application/json" },
131
+ body: JSON.stringify({ actor_id: actorId }),
132
+ });
133
+ }
134
+ async applySkillPlan(kind, planId, actorId) {
135
+ return this.requestSetup(`/skills/${kind}-plans/${encodeURIComponent(planId)}/apply`, {
136
+ method: "POST",
137
+ headers: { "content-type": "application/json" },
138
+ body: JSON.stringify({ actor_id: actorId }),
139
+ });
140
+ }
141
+ async listPiProviders() {
142
+ const res = await this.fetch("/pi/providers");
143
+ if (!res.ok)
144
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
145
+ return res.json();
146
+ }
147
+ async savePiProviders(file) {
148
+ const res = await this.fetch("/pi/providers", {
149
+ method: "PUT",
150
+ headers: { "content-type": "application/json" },
151
+ body: JSON.stringify(file),
152
+ });
153
+ const payload = (await res.json().catch(() => ({})));
154
+ if (!res.ok)
155
+ throw new Error(payload.issues?.join("; ") ?? payload.error ?? `Runner error: ${res.status}`);
156
+ return { ok: true };
157
+ }
158
+ async testPiProvider(provider) {
159
+ const res = await this.fetch("/pi/providers/test", {
160
+ method: "POST",
161
+ headers: { "content-type": "application/json" },
162
+ body: JSON.stringify(provider),
163
+ });
164
+ if (!res.ok)
165
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
166
+ return res.json();
167
+ }
168
+ async listCommands(backend, cwd) {
169
+ const params = new URLSearchParams({ backend, cwd });
170
+ const res = await this.fetch(`/commands?${params}`);
171
+ if (!res.ok)
172
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
173
+ return res.json();
174
+ }
175
+ async authorizeDirectory(directory) {
176
+ const controller = new AbortController();
177
+ const timer = setTimeout(() => controller.abort(), this.options.directoryAuthorizationTimeoutMs ?? 45_000);
178
+ timer.unref?.();
179
+ try {
180
+ const res = await this.fetch("/directories/authorize", {
181
+ method: "POST",
182
+ headers: { "Content-Type": "application/json" },
183
+ body: JSON.stringify({ path: directory }),
184
+ signal: controller.signal,
185
+ });
186
+ const body = (await res.json().catch(() => ({})));
187
+ return {
188
+ ok: res.ok && body.ok === true,
189
+ path: body.path,
190
+ error: body.error ?? (res.ok ? undefined : `Runner error: ${res.status}`),
191
+ };
192
+ }
193
+ catch (err) {
194
+ if (controller.signal.aborted) {
195
+ return {
196
+ ok: false,
197
+ path: directory,
198
+ error: "Runner 目录授权请求超时,请检查 macOS 系统弹窗或隐私与安全性设置。",
199
+ };
200
+ }
201
+ throw err;
202
+ }
203
+ finally {
204
+ clearTimeout(timer);
205
+ }
206
+ }
207
+ async listDirectory(root, relativePath = "") {
208
+ const params = new URLSearchParams({ root, path: relativePath });
209
+ const res = await this.fetch(`/directories/list?${params}`);
210
+ const body = await res.json();
211
+ if (!res.ok && !body.error)
212
+ body.error = `Runner error: ${res.status}`;
213
+ return body;
214
+ }
215
+ async pickDirectory() {
216
+ const res = await this.fetch("/directories/pick", { method: "POST" });
217
+ const body = (await res.json().catch(() => ({})));
218
+ return {
219
+ ok: res.ok && body.ok === true,
220
+ path: body.path,
221
+ cancelled: body.cancelled,
222
+ error: body.error ?? (res.ok ? undefined : `Runner error: ${res.status}`),
223
+ };
224
+ }
225
+ async closeSession(backend, cwd, sessionId) {
226
+ return this.sessionLifecycle("close", backend, cwd, sessionId);
227
+ }
228
+ async deleteSession(backend, cwd, sessionId) {
229
+ return this.sessionLifecycle("delete", backend, cwd, sessionId);
230
+ }
231
+ async forkSession(backend, cwd, sessionId, targetCwd) {
232
+ const res = await this.fetch(`/sessions/${encodeURIComponent(sessionId)}/fork`, {
233
+ method: "POST",
234
+ headers: { "Content-Type": "application/json" },
235
+ body: JSON.stringify({ backend, cwd, targetCwd }),
236
+ });
237
+ const body = (await res.json().catch(() => ({})));
238
+ return {
239
+ ok: res.ok && body.ok === true,
240
+ sessionId: body.sessionId,
241
+ cwd: body.cwd,
242
+ error: body.error ?? (res.ok ? undefined : `Runner error: ${res.status}`),
243
+ };
244
+ }
245
+ async cancel(runId) {
246
+ let res;
247
+ try {
248
+ res = await this.fetch(`/runs/${runId}/cancel`, { method: "POST" });
249
+ }
250
+ catch (error) {
251
+ const message = error instanceof Error ? error.message : String(error);
252
+ throw new RunnerCancellationError(`Runner cancellation failed: ${message}`);
253
+ }
254
+ const body = (await res.json().catch(() => ({})));
255
+ if (!res.ok || body.ok !== true) {
256
+ throw new RunnerCancellationError(`Runner cancellation failed: ${res.status}`);
257
+ }
258
+ }
259
+ async steer(runId, prompt) {
260
+ const res = await this.fetch(`/runs/${runId}/steer`, {
261
+ method: "POST",
262
+ headers: { "Content-Type": "application/json" },
263
+ body: JSON.stringify({ prompt }),
264
+ });
265
+ const body = (await res.json().catch(() => ({})));
266
+ return {
267
+ ok: res.ok && body.ok === true,
268
+ outcome: body.outcome,
269
+ error: body.error ?? (res.ok ? undefined : `Runner error: ${res.status}`),
270
+ };
271
+ }
272
+ /** prompt_feishu:回应 run 挂起的权限请求(/approve /deny) */
273
+ async resolvePermission(runId, approve) {
274
+ const res = await this.fetch(`/runs/${runId}/permission`, {
275
+ method: "POST",
276
+ headers: { "Content-Type": "application/json" },
277
+ body: JSON.stringify({ approve }),
278
+ });
279
+ if (!res.ok)
280
+ return false;
281
+ const body = (await res.json());
282
+ return body.resolved === true;
283
+ }
284
+ async *run(request, options) {
285
+ const signal = options?.signal;
286
+ let reader;
287
+ const decoder = new TextDecoder();
288
+ let buffer = "";
289
+ let sawDone = false;
290
+ let cancelPromise;
291
+ const cancelRemote = () => (cancelPromise ??= this.cancel(request.runId));
292
+ const onAbort = () => {
293
+ void cancelRemote().catch(() => { });
294
+ void reader?.cancel().catch(() => { });
295
+ };
296
+ if (signal?.aborted) {
297
+ await cancelRemote();
298
+ return;
299
+ }
300
+ signal?.addEventListener("abort", onAbort, { once: true });
301
+ try {
302
+ let res;
303
+ try {
304
+ res = await this.fetch("/runs", {
305
+ method: "POST",
306
+ headers: { "Content-Type": "application/json" },
307
+ body: JSON.stringify(request),
308
+ signal,
309
+ });
310
+ }
311
+ catch (err) {
312
+ if (signal?.aborted) {
313
+ await cancelRemote();
314
+ return;
315
+ }
316
+ throw err;
317
+ }
318
+ if (!res.ok || !res.body) {
319
+ throw new Error(`Runner error: ${res.status} ${await res.text()}`);
320
+ }
321
+ reader = res.body.getReader();
322
+ if (signal?.aborted) {
323
+ await reader.cancel().catch(() => { });
324
+ await cancelRemote();
325
+ return;
326
+ }
327
+ let yieldedAt = performance.now();
328
+ while (true) {
329
+ if (signal?.aborted) {
330
+ await reader.cancel().catch(() => { });
331
+ break;
332
+ }
333
+ let done = false;
334
+ let value;
335
+ try {
336
+ ({ done, value } = await reader.read());
337
+ }
338
+ catch (err) {
339
+ if (signal?.aborted)
340
+ break;
341
+ throw this.mapStreamError(err, sawDone);
342
+ }
343
+ if (done)
344
+ break;
345
+ buffer += decoder.decode(value, { stream: true });
346
+ const parts = buffer.split("\n\n");
347
+ buffer = parts.pop() ?? "";
348
+ for (const part of parts) {
349
+ const line = part.trim();
350
+ if (!line.startsWith("data:"))
351
+ continue;
352
+ const json = line.slice(5).trim();
353
+ if (!json)
354
+ continue;
355
+ const event = JSON.parse(json);
356
+ if (event.type === "done")
357
+ sawDone = true;
358
+ yield event;
359
+ // A buffered SSE backlog resolves read()/yield through microtasks only.
360
+ // Bound that work so lease heartbeats and cancellation timers can run,
361
+ // including when the consumer performs synchronous persistence work.
362
+ if (performance.now() - yieldedAt >= 16) {
363
+ await new Promise((resolve) => setTimeout(resolve, 0));
364
+ yieldedAt = performance.now();
365
+ }
366
+ if (signal?.aborted)
367
+ break;
368
+ }
369
+ }
370
+ if (!sawDone && !signal?.aborted) {
371
+ throw new Error("Runner 连接意外断开(无完成信号)。请执行 `./scripts/start.sh stop && ./scripts/start.sh start` 重启服务后重试。");
372
+ }
373
+ }
374
+ finally {
375
+ try {
376
+ // Consumer errors (for example lost persistence ownership) invoke return()
377
+ // without aborting the signal. The remote execution still belongs to this
378
+ // stream and must stop before another attempt can reuse the session.
379
+ if (signal?.aborted || (reader && !sawDone)) {
380
+ const cancellation = cancelRemote();
381
+ await reader?.cancel().catch(() => { });
382
+ await cancellation;
383
+ }
384
+ }
385
+ finally {
386
+ signal?.removeEventListener("abort", onAbort);
387
+ reader?.releaseLock();
388
+ }
389
+ }
390
+ }
391
+ mapStreamError(err, sawDone) {
392
+ if (sawDone) {
393
+ return err instanceof Error ? err : new Error(String(err));
394
+ }
395
+ const message = err instanceof Error ? err.message : String(err);
396
+ if (message === "terminated" || message.includes("other side closed")) {
397
+ return new Error("Runner 连接意外断开(常见于 Runner 僵尸进程)。请执行 `./scripts/start.sh restart` 重启后重试。");
398
+ }
399
+ return err instanceof Error ? err : new Error(message);
400
+ }
401
+ async sessionLifecycle(action, backend, cwd, sessionId) {
402
+ const suffix = action === "close" ? "/close" : "";
403
+ const res = await this.fetch(`/sessions/${encodeURIComponent(sessionId)}${suffix}`, {
404
+ method: action === "close" ? "POST" : "DELETE",
405
+ headers: { "Content-Type": "application/json" },
406
+ body: JSON.stringify({ backend, cwd }),
407
+ });
408
+ const body = (await res.json().catch(() => ({})));
409
+ return {
410
+ ok: res.ok && body.ok === true,
411
+ error: body.error ?? (res.ok ? undefined : `Runner error: ${res.status}`),
412
+ };
413
+ }
414
+ async requestSetup(path, init) {
415
+ const res = await this.fetch(path, init);
416
+ const body = await res.json().catch(() => null);
417
+ if (!res.ok) {
418
+ throw setupErrorFromResponse(res.status, body);
419
+ }
420
+ return (body ?? {});
421
+ }
422
+ fetch(path, init) {
423
+ const url = `${this.options.baseUrl.replace(/\/$/, "")}${path}`;
424
+ return fetch(url, {
425
+ ...init,
426
+ headers: {
427
+ Authorization: `Bearer ${this.options.token}`,
428
+ ...init?.headers,
429
+ },
430
+ });
431
+ }
432
+ }
433
+ function setupErrorFromResponse(status, body) {
434
+ const payload = body && typeof body === "object" ? body : null;
435
+ const message = payload?.message ?? payload?.error ?? `Runner error: ${status}`;
436
+ const details = payload?.details;
437
+ return new RunnerApiError(message, status, details, payload?.code ?? payload?.error);
438
+ }
439
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "@codebridge/runner-client",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js"
11
+ }
12
+ },
13
+ "license": "MIT",
14
+ "dependencies": {
15
+ "@codebridge/backends": "0.1.0",
16
+ "@codebridge/core": "0.1.0"
17
+ }
18
+ }
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=cli.d.ts.map