aws-runtime-bridge 1.9.78 → 1.9.80

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 (596) hide show
  1. package/dist/adapter/AcodeSdkAdapter.d.ts +0 -1
  2. package/dist/adapter/AcodeSdkAdapter.js +11 -1986
  3. package/dist/adapter/AdapterRegistry.d.ts +0 -1
  4. package/dist/adapter/AdapterRegistry.js +2 -100
  5. package/dist/adapter/ClaudeSdkAdapter.d.ts +0 -1
  6. package/dist/adapter/ClaudeSdkAdapter.js +4 -1300
  7. package/dist/adapter/CodexSdkAdapter.d.ts +0 -1
  8. package/dist/adapter/CodexSdkAdapter.js +4 -836
  9. package/dist/adapter/OpencodeSdkAdapter.d.ts +0 -1
  10. package/dist/adapter/OpencodeSdkAdapter.js +4 -879
  11. package/dist/adapter/SdkProviderSpi.d.ts +0 -1
  12. package/dist/adapter/SdkProviderSpi.js +2 -55
  13. package/dist/adapter/acode-tool-names.d.ts +0 -1
  14. package/dist/adapter/acode-tool-names.js +2 -37
  15. package/dist/adapter/idle-poll-loop.d.ts +0 -1
  16. package/dist/adapter/idle-poll-loop.js +2 -59
  17. package/dist/adapter/index.d.ts +0 -1
  18. package/dist/adapter/index.js +2 -11
  19. package/dist/adapter/instance-ai-config-resolver.d.ts +0 -1
  20. package/dist/adapter/instance-ai-config-resolver.js +2 -46
  21. package/dist/adapter/types.d.ts +0 -1
  22. package/dist/adapter/types.js +2 -443
  23. package/dist/adapters/cc-switch/common.d.ts +0 -1
  24. package/dist/adapters/cc-switch/common.js +2 -61
  25. package/dist/adapters/cc-switch/index.d.ts +0 -1
  26. package/dist/adapters/cc-switch/index.js +2 -57
  27. package/dist/adapters/cc-switch/mcp-acode.d.ts +0 -1
  28. package/dist/adapters/cc-switch/mcp-acode.js +2 -71
  29. package/dist/adapters/cc-switch/mcp-claude.d.ts +0 -1
  30. package/dist/adapters/cc-switch/mcp-claude.js +2 -89
  31. package/dist/adapters/cc-switch/mcp-claudecode.d.ts +0 -1
  32. package/dist/adapters/cc-switch/mcp-claudecode.js +2 -77
  33. package/dist/adapters/cc-switch/mcp-codex.d.ts +0 -1
  34. package/dist/adapters/cc-switch/mcp-codex.js +11 -249
  35. package/dist/adapters/cc-switch/mcp-opencode.d.ts +0 -1
  36. package/dist/adapters/cc-switch/mcp-opencode.js +2 -97
  37. package/dist/adapters/cc-switch/mcp-placeholder.d.ts +0 -1
  38. package/dist/adapters/cc-switch/mcp-placeholder.js +2 -19
  39. package/dist/adapters/cc-switch/skill-acode.d.ts +0 -1
  40. package/dist/adapters/cc-switch/skill-acode.js +2 -12
  41. package/dist/adapters/cc-switch/skill-claude.d.ts +0 -1
  42. package/dist/adapters/cc-switch/skill-claude.js +2 -11
  43. package/dist/adapters/cc-switch/skill-claudecode.d.ts +0 -1
  44. package/dist/adapters/cc-switch/skill-claudecode.js +2 -11
  45. package/dist/adapters/cc-switch/skill-codex.d.ts +0 -1
  46. package/dist/adapters/cc-switch/skill-codex.js +2 -6
  47. package/dist/adapters/cc-switch/skill-directory.d.ts +0 -1
  48. package/dist/adapters/cc-switch/skill-directory.js +3 -137
  49. package/dist/adapters/cc-switch/skill-opencode.d.ts +0 -1
  50. package/dist/adapters/cc-switch/skill-opencode.js +2 -11
  51. package/dist/adapters/cc-switch/skill-placeholder.d.ts +0 -1
  52. package/dist/adapters/cc-switch/skill-placeholder.js +2 -19
  53. package/dist/config.d.ts +0 -1
  54. package/dist/config.js +2 -290
  55. package/dist/index.d.ts +0 -1
  56. package/dist/index.js +2 -573
  57. package/dist/middleware/auth.d.ts +0 -1
  58. package/dist/middleware/auth.js +2 -98
  59. package/dist/routes/acode-todos.d.ts +0 -1
  60. package/dist/routes/acode-todos.js +2 -75
  61. package/dist/routes/ai-sources.d.ts +0 -1
  62. package/dist/routes/ai-sources.js +2 -132
  63. package/dist/routes/dashboard.d.ts +0 -1
  64. package/dist/routes/dashboard.js +182 -649
  65. package/dist/routes/events.d.ts +0 -1
  66. package/dist/routes/events.js +2 -22
  67. package/dist/routes/file-browser.d.ts +0 -1
  68. package/dist/routes/file-browser.js +2 -781
  69. package/dist/routes/file-diff-rollback.d.ts +0 -1
  70. package/dist/routes/file-diff-rollback.js +2 -301
  71. package/dist/routes/file-snapshot.d.ts +0 -1
  72. package/dist/routes/file-snapshot.js +2 -156
  73. package/dist/routes/git.d.ts +0 -1
  74. package/dist/routes/git.js +28 -1900
  75. package/dist/routes/instance.d.ts +0 -1
  76. package/dist/routes/instance.js +3 -748
  77. package/dist/routes/mcp.d.ts +0 -1
  78. package/dist/routes/mcp.js +2 -196
  79. package/dist/routes/processes.d.ts +0 -1
  80. package/dist/routes/processes.js +2 -252
  81. package/dist/routes/properties.d.ts +0 -1
  82. package/dist/routes/properties.js +2 -72
  83. package/dist/routes/pty.d.ts +0 -1
  84. package/dist/routes/pty.js +6 -560
  85. package/dist/routes/runtime-binding.d.ts +0 -1
  86. package/dist/routes/runtime-binding.js +2 -263
  87. package/dist/routes/sessions.d.ts +0 -1
  88. package/dist/routes/sessions.js +2 -758
  89. package/dist/routes/skills.d.ts +0 -1
  90. package/dist/routes/skills.js +2 -187
  91. package/dist/routes/sub-agents.d.ts +0 -1
  92. package/dist/routes/sub-agents.js +20 -279
  93. package/dist/routes/system-metrics.d.ts +0 -1
  94. package/dist/routes/system-metrics.js +2 -20
  95. package/dist/routes/task-context.d.ts +0 -1
  96. package/dist/routes/task-context.js +2 -78
  97. package/dist/routes/terminal.d.ts +0 -1
  98. package/dist/routes/terminal.js +54 -2882
  99. package/dist/routes/yml.d.ts +0 -1
  100. package/dist/routes/yml.js +2 -223
  101. package/dist/services/acode-package.d.ts +0 -1
  102. package/dist/services/acode-package.js +2 -111
  103. package/dist/services/agent-event-store.d.ts +0 -1
  104. package/dist/services/agent-event-store.js +2 -81
  105. package/dist/services/agent-process-manager.d.ts +0 -1
  106. package/dist/services/agent-process-manager.js +2 -796
  107. package/dist/services/ai-source-apply.d.ts +0 -1
  108. package/dist/services/ai-source-apply.js +2 -83
  109. package/dist/services/auto-register.d.ts +0 -1
  110. package/dist/services/auto-register.js +2 -1053
  111. package/dist/services/aws-client-agent-mcp.d.ts +0 -1
  112. package/dist/services/aws-client-agent-mcp.js +3 -337
  113. package/dist/services/bridge-package-publish-hooks.d.ts +0 -1
  114. package/dist/services/bridge-package-publish-hooks.js +2 -115
  115. package/dist/services/cc-switch-sdk.d.ts +0 -1
  116. package/dist/services/cc-switch-sdk.js +2 -135
  117. package/dist/services/cli-commands.d.ts +6 -1
  118. package/dist/services/cli-commands.js +6 -645
  119. package/dist/services/event-delta-pusher.d.ts +0 -1
  120. package/dist/services/event-delta-pusher.js +2 -95
  121. package/dist/services/fileSnapshotStore.d.ts +0 -1
  122. package/dist/services/fileSnapshotStore.js +2 -500
  123. package/dist/services/instance-ai-config-service.d.ts +0 -1
  124. package/dist/services/instance-ai-config-service.js +2 -174
  125. package/dist/services/instance-init-service.d.ts +0 -1
  126. package/dist/services/instance-init-service.js +2 -193
  127. package/dist/services/instance-service.d.ts +0 -1
  128. package/dist/services/instance-service.js +2 -237
  129. package/dist/services/instance-state.d.ts +0 -1
  130. package/dist/services/instance-state.js +2 -94
  131. package/dist/services/legacy-path-migration.d.ts +0 -1
  132. package/dist/services/legacy-path-migration.js +2 -66
  133. package/dist/services/lifecycle-state.d.ts +0 -1
  134. package/dist/services/lifecycle-state.js +3 -110
  135. package/dist/services/mcp-launch-binding-queue.d.ts +0 -1
  136. package/dist/services/mcp-launch-binding-queue.js +2 -175
  137. package/dist/services/orphan-monitor.d.ts +0 -1
  138. package/dist/services/orphan-monitor.js +2 -382
  139. package/dist/services/panel-auth.d.ts +0 -1
  140. package/dist/services/panel-auth.js +2 -168
  141. package/dist/services/process-detector.d.ts +0 -1
  142. package/dist/services/process-detector.js +18 -1019
  143. package/dist/services/process-registry.d.ts +0 -1
  144. package/dist/services/process-registry.js +2 -375
  145. package/dist/services/ring-buffer.d.ts +0 -1
  146. package/dist/services/ring-buffer.js +2 -103
  147. package/dist/services/runtime-binding.d.ts +0 -1
  148. package/dist/services/runtime-binding.js +6 -363
  149. package/dist/services/runtime-lifecycle-policy.d.ts +0 -1
  150. package/dist/services/runtime-lifecycle-policy.js +2 -35
  151. package/dist/services/session-output.d.ts +0 -1
  152. package/dist/services/session-output.js +5 -539
  153. package/dist/services/startup-config-wizard.d.ts +0 -1
  154. package/dist/services/startup-config-wizard.js +14 -258
  155. package/dist/services/sub-agent-manager-instance.d.ts +0 -1
  156. package/dist/services/sub-agent-manager-instance.js +2 -12
  157. package/dist/services/system-metrics.d.ts +0 -1
  158. package/dist/services/system-metrics.js +2 -252
  159. package/dist/services/terminal-persistence.d.ts +0 -1
  160. package/dist/services/terminal-persistence.js +2 -176
  161. package/dist/services/tool-installer.d.ts +0 -1
  162. package/dist/services/tool-installer.js +5 -751
  163. package/dist/services/tunnel-client.d.ts +0 -1
  164. package/dist/services/tunnel-client.js +2 -402
  165. package/dist/services/windows-service-manager.d.ts +3 -2
  166. package/dist/services/windows-service-manager.js +2 -54
  167. package/dist/services/workspace-files.d.ts +0 -1
  168. package/dist/services/workspace-files.js +2 -1275
  169. package/dist/services/workspace-watch.d.ts +0 -1
  170. package/dist/services/workspace-watch.js +2 -123
  171. package/dist/services/workspaceTaskChangeWatcher.d.ts +0 -1
  172. package/dist/services/workspaceTaskChangeWatcher.js +2 -483
  173. package/dist/types.d.ts +0 -1
  174. package/dist/types.js +1 -1
  175. package/dist/utils/file-utils.d.ts +0 -1
  176. package/dist/utils/file-utils.js +3 -208
  177. package/dist/utils/instance-ai-config-debug-logger.d.ts +0 -1
  178. package/dist/utils/instance-ai-config-debug-logger.js +4 -63
  179. package/dist/utils/logger.d.ts +0 -1
  180. package/dist/utils/logger.js +2 -154
  181. package/dist/utils/mcp-utils.d.ts +0 -1
  182. package/dist/utils/mcp-utils.js +2 -187
  183. package/dist/utils/path-utils.d.ts +0 -1
  184. package/dist/utils/path-utils.js +2 -44
  185. package/dist/utils/sdk-package-loader.d.ts +0 -1
  186. package/dist/utils/sdk-package-loader.js +2 -78
  187. package/dist/utils/validation.d.ts +0 -1
  188. package/dist/utils/validation.js +2 -53
  189. package/dist/utils/yaml-utils.d.ts +0 -1
  190. package/dist/utils/yaml-utils.js +2 -312
  191. package/node_modules/@cc-switch/sdk/dist/constants.d.ts +0 -1
  192. package/node_modules/@cc-switch/sdk/dist/constants.js +2 -63
  193. package/node_modules/@cc-switch/sdk/dist/errors.d.ts +0 -1
  194. package/node_modules/@cc-switch/sdk/dist/errors.js +2 -8
  195. package/node_modules/@cc-switch/sdk/dist/index.d.ts +0 -1
  196. package/node_modules/@cc-switch/sdk/dist/index.js +2 -9
  197. package/node_modules/@cc-switch/sdk/dist/schemas.d.ts +0 -1
  198. package/node_modules/@cc-switch/sdk/dist/schemas.js +2 -38
  199. package/node_modules/@cc-switch/sdk/dist/sdk.d.ts +0 -1
  200. package/node_modules/@cc-switch/sdk/dist/sdk.js +2 -470
  201. package/node_modules/@cc-switch/sdk/dist/services/ai-config-service.d.ts +0 -1
  202. package/node_modules/@cc-switch/sdk/dist/services/ai-config-service.js +4 -307
  203. package/node_modules/@cc-switch/sdk/dist/services/mcp-model.d.ts +0 -1
  204. package/node_modules/@cc-switch/sdk/dist/services/mcp-model.js +2 -37
  205. package/node_modules/@cc-switch/sdk/dist/services/mcp-service.d.ts +0 -1
  206. package/node_modules/@cc-switch/sdk/dist/services/mcp-service.js +2 -9
  207. package/node_modules/@cc-switch/sdk/dist/services/skill-model.d.ts +0 -1
  208. package/node_modules/@cc-switch/sdk/dist/services/skill-model.js +2 -41
  209. package/node_modules/@cc-switch/sdk/dist/services/skill-service.d.ts +0 -1
  210. package/node_modules/@cc-switch/sdk/dist/services/skill-service.js +2 -9
  211. package/node_modules/@cc-switch/sdk/dist/state.d.ts +0 -1
  212. package/node_modules/@cc-switch/sdk/dist/state.js +2 -19
  213. package/node_modules/@cc-switch/sdk/dist/types.d.ts +0 -1
  214. package/node_modules/@cc-switch/sdk/dist/types.js +1 -1
  215. package/node_modules/@cc-switch/sdk/dist/utils/fs.d.ts +0 -1
  216. package/node_modules/@cc-switch/sdk/dist/utils/fs.js +3 -114
  217. package/node_modules/@cc-switch/sdk/dist/utils/id.d.ts +0 -1
  218. package/node_modules/@cc-switch/sdk/dist/utils/id.js +2 -12
  219. package/node_modules/@cc-switch/sdk/package.json +1 -1
  220. package/package/acode/dist/ask-user-question-tool.d.ts +0 -1
  221. package/package/acode/dist/ask-user-question-tool.js +4 -233
  222. package/package/acode/dist/built-in-file-tools.d.ts +0 -1
  223. package/package/acode/dist/built-in-file-tools.js +4 -966
  224. package/package/acode/dist/built-in-symbols-tool.d.ts +0 -1
  225. package/package/acode/dist/built-in-symbols-tool.js +2 -117
  226. package/package/acode/dist/builtins/commandArtifacts.d.ts +0 -1
  227. package/package/acode/dist/builtins/commandArtifacts.js +9 -97
  228. package/package/acode/dist/builtins/commandOutputEvents.d.ts +0 -1
  229. package/package/acode/dist/builtins/commandOutputEvents.js +2 -56
  230. package/package/acode/dist/builtins/shellCommandPreparation.d.ts +0 -1
  231. package/package/acode/dist/builtins/shellCommandPreparation.js +5 -44
  232. package/package/acode/dist/builtins/shellCommandResult.d.ts +0 -1
  233. package/package/acode/dist/builtins/shellCommandResult.js +2 -71
  234. package/package/acode/dist/builtins/shellCommandRunner.d.ts +0 -1
  235. package/package/acode/dist/builtins/shellCommandRunner.js +2 -115
  236. package/package/acode/dist/builtins/shellOutputDecoder.d.ts +0 -1
  237. package/package/acode/dist/builtins/shellOutputDecoder.js +2 -94
  238. package/package/acode/dist/cli.d.ts +0 -1
  239. package/package/acode/dist/cli.js +4 -38
  240. package/package/acode/dist/commands/commandLoader.d.ts +0 -1
  241. package/package/acode/dist/commands/commandLoader.js +2 -33
  242. package/package/acode/dist/commands/commandParser.d.ts +0 -1
  243. package/package/acode/dist/commands/commandParser.js +3 -77
  244. package/package/acode/dist/commands/commandRegistry.d.ts +0 -1
  245. package/package/acode/dist/commands/commandRegistry.js +2 -30
  246. package/package/acode/dist/compaction.d.ts +0 -1
  247. package/package/acode/dist/compaction.js +7 -919
  248. package/package/acode/dist/config.d.ts +0 -1
  249. package/package/acode/dist/config.js +5 -105
  250. package/package/acode/dist/fs-utils.d.ts +0 -1
  251. package/package/acode/dist/fs-utils.js +2 -79
  252. package/package/acode/dist/hooks/hookBus.d.ts +0 -1
  253. package/package/acode/dist/hooks/hookBus.js +2 -40
  254. package/package/acode/dist/index.d.ts +0 -1
  255. package/package/acode/dist/index.js +2 -19
  256. package/package/acode/dist/mcpToolNames.d.ts +0 -1
  257. package/package/acode/dist/mcpToolNames.js +2 -17
  258. package/package/acode/dist/parsers/ast-cache.d.ts +0 -1
  259. package/package/acode/dist/parsers/ast-cache.js +2 -76
  260. package/package/acode/dist/parsers/language-detector.d.ts +0 -1
  261. package/package/acode/dist/parsers/language-detector.js +2 -44
  262. package/package/acode/dist/parsers/language-queries.d.ts +0 -1
  263. package/package/acode/dist/parsers/language-queries.js +12 -602
  264. package/package/acode/dist/parsers/symbol-extractor.d.ts +0 -1
  265. package/package/acode/dist/parsers/symbol-extractor.js +3 -164
  266. package/package/acode/dist/parsers/tree-sitter-loader.d.ts +0 -1
  267. package/package/acode/dist/parsers/tree-sitter-loader.js +2 -64
  268. package/package/acode/dist/parsers/types.d.ts +0 -1
  269. package/package/acode/dist/parsers/types.js +1 -7
  270. package/package/acode/dist/runtime.d.ts +0 -1
  271. package/package/acode/dist/runtime.js +86 -3771
  272. package/package/acode/dist/skill-tool.d.ts +0 -1
  273. package/package/acode/dist/skill-tool.js +5 -174
  274. package/package/acode/dist/sub-agent-manager.d.ts +0 -1
  275. package/package/acode/dist/sub-agent-manager.js +2 -1159
  276. package/package/acode/dist/sub-agent-store.d.ts +0 -1
  277. package/package/acode/dist/sub-agent-store.js +4 -236
  278. package/package/acode/dist/sub-agent-tools.d.ts +0 -1
  279. package/package/acode/dist/sub-agent-tools.js +15 -369
  280. package/package/acode/dist/sub-agent-types.d.ts +0 -1
  281. package/package/acode/dist/sub-agent-types.js +1 -8
  282. package/package/acode/dist/todo-store.d.ts +0 -1
  283. package/package/acode/dist/todo-store.js +2 -73
  284. package/package/acode/dist/todo-tool.d.ts +0 -1
  285. package/package/acode/dist/todo-tool.js +5 -121
  286. package/package/acode/dist/types.d.ts +0 -1
  287. package/package/acode/dist/types.js +1 -1
  288. package/package/acode/package.json +2 -2
  289. package/package/aws-client-agent-mcp/dist/agent-client.d.ts +0 -1
  290. package/package/aws-client-agent-mcp/dist/agent-client.js +2 -890
  291. package/package/aws-client-agent-mcp/dist/agent-client.test.d.ts +0 -1
  292. package/package/aws-client-agent-mcp/dist/agent-client.test.js +0 -1
  293. package/package/aws-client-agent-mcp/dist/config.d.ts +0 -1
  294. package/package/aws-client-agent-mcp/dist/config.js +2 -243
  295. package/package/aws-client-agent-mcp/dist/config.test.d.ts +0 -1
  296. package/package/aws-client-agent-mcp/dist/config.test.js +0 -1
  297. package/package/aws-client-agent-mcp/dist/constants.d.ts +0 -1
  298. package/package/aws-client-agent-mcp/dist/constants.js +2 -24
  299. package/package/aws-client-agent-mcp/dist/context-manager.d.ts +0 -1
  300. package/package/aws-client-agent-mcp/dist/context-manager.js +2 -477
  301. package/package/aws-client-agent-mcp/dist/context-manager.test.d.ts +0 -1
  302. package/package/aws-client-agent-mcp/dist/context-manager.test.js +0 -1
  303. package/package/aws-client-agent-mcp/dist/http-client.d.ts +0 -1
  304. package/package/aws-client-agent-mcp/dist/http-client.js +2 -446
  305. package/package/aws-client-agent-mcp/dist/http-client.test.d.ts +0 -1
  306. package/package/aws-client-agent-mcp/dist/http-client.test.js +0 -1
  307. package/package/aws-client-agent-mcp/dist/index.d.ts +0 -1
  308. package/package/aws-client-agent-mcp/dist/index.js +2 -34
  309. package/package/aws-client-agent-mcp/dist/logger.d.ts +0 -1
  310. package/package/aws-client-agent-mcp/dist/logger.js +3 -178
  311. package/package/aws-client-agent-mcp/dist/logger.test.d.ts +0 -1
  312. package/package/aws-client-agent-mcp/dist/logger.test.js +0 -1
  313. package/package/aws-client-agent-mcp/dist/mcp-server.d.ts +0 -1
  314. package/package/aws-client-agent-mcp/dist/mcp-server.js +38 -2709
  315. package/package/aws-client-agent-mcp/dist/mcp-server.test.d.ts +0 -1
  316. package/package/aws-client-agent-mcp/dist/mcp-server.test.js +0 -1
  317. package/package/aws-client-agent-mcp/dist/mcp-tools.d.ts +0 -1
  318. package/package/aws-client-agent-mcp/dist/mcp-tools.js +22 -562
  319. package/package/aws-client-agent-mcp/dist/mcp-tools.test.d.ts +0 -1
  320. package/package/aws-client-agent-mcp/dist/mcp-tools.test.js +0 -1
  321. package/package/aws-client-agent-mcp/dist/memory-store.d.ts +0 -1
  322. package/package/aws-client-agent-mcp/dist/memory-store.js +4 -826
  323. package/package/aws-client-agent-mcp/dist/memory-store.test.d.ts +0 -1
  324. package/package/aws-client-agent-mcp/dist/memory-store.test.js +0 -1
  325. package/package/aws-client-agent-mcp/dist/memory-tools.d.ts +0 -1
  326. package/package/aws-client-agent-mcp/dist/memory-tools.js +31 -294
  327. package/package/aws-client-agent-mcp/dist/message-buffer.d.ts +0 -1
  328. package/package/aws-client-agent-mcp/dist/message-buffer.js +2 -288
  329. package/package/aws-client-agent-mcp/dist/message-buffer.test.d.ts +0 -1
  330. package/package/aws-client-agent-mcp/dist/message-buffer.test.js +0 -1
  331. package/package/aws-client-agent-mcp/dist/messageContent.d.ts +0 -1
  332. package/package/aws-client-agent-mcp/dist/messageContent.js +2 -125
  333. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.d.ts +0 -1
  334. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.js +2 -103
  335. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.test.d.ts +0 -1
  336. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.test.js +0 -1
  337. package/package/aws-client-agent-mcp/dist/server-memory-store.d.ts +0 -1
  338. package/package/aws-client-agent-mcp/dist/server-memory-store.js +2 -96
  339. package/package/aws-client-agent-mcp/dist/status-reporter.d.ts +0 -1
  340. package/package/aws-client-agent-mcp/dist/status-reporter.js +3 -327
  341. package/package/aws-client-agent-mcp/dist/status-reporter.test.d.ts +0 -1
  342. package/package/aws-client-agent-mcp/dist/status-reporter.test.js +0 -1
  343. package/package/aws-client-agent-mcp/dist/types.d.ts +0 -1
  344. package/package/aws-client-agent-mcp/dist/types.js +2 -9
  345. package/package/aws-client-agent-mcp/dist/websocket-client.d.ts +0 -1
  346. package/package/aws-client-agent-mcp/dist/websocket-client.js +2 -677
  347. package/package/aws-client-agent-mcp/dist/websocket-client.test.d.ts +0 -1
  348. package/package/aws-client-agent-mcp/dist/websocket-client.test.js +0 -1
  349. package/package/aws-client-agent-mcp/package.json +1 -1
  350. package/package/cc-switch-sdk/dist/constants.d.ts +0 -1
  351. package/package/cc-switch-sdk/dist/constants.js +2 -63
  352. package/package/cc-switch-sdk/dist/errors.d.ts +0 -1
  353. package/package/cc-switch-sdk/dist/errors.js +2 -8
  354. package/package/cc-switch-sdk/dist/index.d.ts +0 -1
  355. package/package/cc-switch-sdk/dist/index.js +2 -9
  356. package/package/cc-switch-sdk/dist/schemas.d.ts +0 -1
  357. package/package/cc-switch-sdk/dist/schemas.js +2 -38
  358. package/package/cc-switch-sdk/dist/sdk.d.ts +0 -1
  359. package/package/cc-switch-sdk/dist/sdk.js +2 -470
  360. package/package/cc-switch-sdk/dist/services/ai-config-service.d.ts +0 -1
  361. package/package/cc-switch-sdk/dist/services/ai-config-service.js +4 -307
  362. package/package/cc-switch-sdk/dist/services/mcp-model.d.ts +0 -1
  363. package/package/cc-switch-sdk/dist/services/mcp-model.js +2 -37
  364. package/package/cc-switch-sdk/dist/services/mcp-service.d.ts +0 -1
  365. package/package/cc-switch-sdk/dist/services/mcp-service.js +2 -9
  366. package/package/cc-switch-sdk/dist/services/skill-model.d.ts +0 -1
  367. package/package/cc-switch-sdk/dist/services/skill-model.js +2 -41
  368. package/package/cc-switch-sdk/dist/services/skill-service.d.ts +0 -1
  369. package/package/cc-switch-sdk/dist/services/skill-service.js +2 -9
  370. package/package/cc-switch-sdk/dist/state.d.ts +0 -1
  371. package/package/cc-switch-sdk/dist/state.js +2 -19
  372. package/package/cc-switch-sdk/dist/types.d.ts +0 -1
  373. package/package/cc-switch-sdk/dist/types.js +1 -1
  374. package/package/cc-switch-sdk/dist/utils/fs.d.ts +0 -1
  375. package/package/cc-switch-sdk/dist/utils/fs.js +3 -114
  376. package/package/cc-switch-sdk/dist/utils/id.d.ts +0 -1
  377. package/package/cc-switch-sdk/dist/utils/id.js +2 -12
  378. package/package/cc-switch-sdk/package.json +1 -1
  379. package/package.json +4 -2
  380. package/dist/adapter/AcodeSdkAdapter.d.ts.map +0 -1
  381. package/dist/adapter/AdapterRegistry.d.ts.map +0 -1
  382. package/dist/adapter/ClaudeSdkAdapter.d.ts.map +0 -1
  383. package/dist/adapter/CodexSdkAdapter.d.ts.map +0 -1
  384. package/dist/adapter/OpencodeSdkAdapter.d.ts.map +0 -1
  385. package/dist/adapter/SdkProviderSpi.d.ts.map +0 -1
  386. package/dist/adapter/acode-tool-names.d.ts.map +0 -1
  387. package/dist/adapter/idle-poll-loop.d.ts.map +0 -1
  388. package/dist/adapter/index.d.ts.map +0 -1
  389. package/dist/adapter/instance-ai-config-resolver.d.ts.map +0 -1
  390. package/dist/adapter/types.d.ts.map +0 -1
  391. package/dist/adapters/cc-switch/common.d.ts.map +0 -1
  392. package/dist/adapters/cc-switch/index.d.ts.map +0 -1
  393. package/dist/adapters/cc-switch/mcp-acode.d.ts.map +0 -1
  394. package/dist/adapters/cc-switch/mcp-claude.d.ts.map +0 -1
  395. package/dist/adapters/cc-switch/mcp-claudecode.d.ts.map +0 -1
  396. package/dist/adapters/cc-switch/mcp-codex.d.ts.map +0 -1
  397. package/dist/adapters/cc-switch/mcp-opencode.d.ts.map +0 -1
  398. package/dist/adapters/cc-switch/mcp-placeholder.d.ts.map +0 -1
  399. package/dist/adapters/cc-switch/skill-acode.d.ts.map +0 -1
  400. package/dist/adapters/cc-switch/skill-claude.d.ts.map +0 -1
  401. package/dist/adapters/cc-switch/skill-claudecode.d.ts.map +0 -1
  402. package/dist/adapters/cc-switch/skill-codex.d.ts.map +0 -1
  403. package/dist/adapters/cc-switch/skill-directory.d.ts.map +0 -1
  404. package/dist/adapters/cc-switch/skill-opencode.d.ts.map +0 -1
  405. package/dist/adapters/cc-switch/skill-placeholder.d.ts.map +0 -1
  406. package/dist/config.d.ts.map +0 -1
  407. package/dist/index.d.ts.map +0 -1
  408. package/dist/middleware/auth.d.ts.map +0 -1
  409. package/dist/routes/acode-todos.d.ts.map +0 -1
  410. package/dist/routes/ai-sources.d.ts.map +0 -1
  411. package/dist/routes/dashboard.d.ts.map +0 -1
  412. package/dist/routes/events.d.ts.map +0 -1
  413. package/dist/routes/file-browser.d.ts.map +0 -1
  414. package/dist/routes/file-diff-rollback.d.ts.map +0 -1
  415. package/dist/routes/file-snapshot.d.ts.map +0 -1
  416. package/dist/routes/git.d.ts.map +0 -1
  417. package/dist/routes/instance.d.ts.map +0 -1
  418. package/dist/routes/mcp.d.ts.map +0 -1
  419. package/dist/routes/processes.d.ts.map +0 -1
  420. package/dist/routes/properties.d.ts.map +0 -1
  421. package/dist/routes/pty.d.ts.map +0 -1
  422. package/dist/routes/runtime-binding.d.ts.map +0 -1
  423. package/dist/routes/sessions.d.ts.map +0 -1
  424. package/dist/routes/skills.d.ts.map +0 -1
  425. package/dist/routes/sub-agents.d.ts.map +0 -1
  426. package/dist/routes/system-metrics.d.ts.map +0 -1
  427. package/dist/routes/task-context.d.ts.map +0 -1
  428. package/dist/routes/terminal.d.ts.map +0 -1
  429. package/dist/routes/yml.d.ts.map +0 -1
  430. package/dist/services/acode-package.d.ts.map +0 -1
  431. package/dist/services/agent-event-store.d.ts.map +0 -1
  432. package/dist/services/agent-process-manager.d.ts.map +0 -1
  433. package/dist/services/ai-source-apply.d.ts.map +0 -1
  434. package/dist/services/auto-register.d.ts.map +0 -1
  435. package/dist/services/aws-client-agent-mcp.d.ts.map +0 -1
  436. package/dist/services/bridge-package-publish-hooks.d.ts.map +0 -1
  437. package/dist/services/cc-switch-sdk.d.ts.map +0 -1
  438. package/dist/services/cli-commands.d.ts.map +0 -1
  439. package/dist/services/event-delta-pusher.d.ts.map +0 -1
  440. package/dist/services/fileSnapshotStore.d.ts.map +0 -1
  441. package/dist/services/instance-ai-config-service.d.ts.map +0 -1
  442. package/dist/services/instance-init-service.d.ts.map +0 -1
  443. package/dist/services/instance-service.d.ts.map +0 -1
  444. package/dist/services/instance-state.d.ts.map +0 -1
  445. package/dist/services/legacy-path-migration.d.ts.map +0 -1
  446. package/dist/services/lifecycle-state.d.ts.map +0 -1
  447. package/dist/services/mcp-launch-binding-queue.d.ts.map +0 -1
  448. package/dist/services/orphan-monitor.d.ts.map +0 -1
  449. package/dist/services/panel-auth.d.ts.map +0 -1
  450. package/dist/services/process-detector.d.ts.map +0 -1
  451. package/dist/services/process-registry.d.ts.map +0 -1
  452. package/dist/services/ring-buffer.d.ts.map +0 -1
  453. package/dist/services/runtime-binding.d.ts.map +0 -1
  454. package/dist/services/runtime-lifecycle-policy.d.ts.map +0 -1
  455. package/dist/services/session-output.d.ts.map +0 -1
  456. package/dist/services/startup-config-wizard.d.ts.map +0 -1
  457. package/dist/services/sub-agent-manager-instance.d.ts.map +0 -1
  458. package/dist/services/system-metrics.d.ts.map +0 -1
  459. package/dist/services/terminal-persistence.d.ts.map +0 -1
  460. package/dist/services/tool-installer.d.ts.map +0 -1
  461. package/dist/services/tunnel-client.d.ts.map +0 -1
  462. package/dist/services/windows-service-manager.d.ts.map +0 -1
  463. package/dist/services/workspace-files.d.ts.map +0 -1
  464. package/dist/services/workspace-watch.d.ts.map +0 -1
  465. package/dist/services/workspaceTaskChangeWatcher.d.ts.map +0 -1
  466. package/dist/types.d.ts.map +0 -1
  467. package/dist/utils/file-utils.d.ts.map +0 -1
  468. package/dist/utils/instance-ai-config-debug-logger.d.ts.map +0 -1
  469. package/dist/utils/logger.d.ts.map +0 -1
  470. package/dist/utils/mcp-utils.d.ts.map +0 -1
  471. package/dist/utils/path-utils.d.ts.map +0 -1
  472. package/dist/utils/sdk-package-loader.d.ts.map +0 -1
  473. package/dist/utils/validation.d.ts.map +0 -1
  474. package/dist/utils/yaml-utils.d.ts.map +0 -1
  475. package/node_modules/@cc-switch/sdk/dist/constants.d.ts.map +0 -1
  476. package/node_modules/@cc-switch/sdk/dist/errors.d.ts.map +0 -1
  477. package/node_modules/@cc-switch/sdk/dist/index.d.ts.map +0 -1
  478. package/node_modules/@cc-switch/sdk/dist/schemas.d.ts.map +0 -1
  479. package/node_modules/@cc-switch/sdk/dist/sdk.d.ts.map +0 -1
  480. package/node_modules/@cc-switch/sdk/dist/services/ai-config-service.d.ts.map +0 -1
  481. package/node_modules/@cc-switch/sdk/dist/services/mcp-model.d.ts.map +0 -1
  482. package/node_modules/@cc-switch/sdk/dist/services/mcp-service.d.ts.map +0 -1
  483. package/node_modules/@cc-switch/sdk/dist/services/skill-model.d.ts.map +0 -1
  484. package/node_modules/@cc-switch/sdk/dist/services/skill-service.d.ts.map +0 -1
  485. package/node_modules/@cc-switch/sdk/dist/state.d.ts.map +0 -1
  486. package/node_modules/@cc-switch/sdk/dist/types.d.ts.map +0 -1
  487. package/node_modules/@cc-switch/sdk/dist/utils/fs.d.ts.map +0 -1
  488. package/node_modules/@cc-switch/sdk/dist/utils/id.d.ts.map +0 -1
  489. package/package/acode/dist/ask-user-question-tool.d.ts.map +0 -1
  490. package/package/acode/dist/built-in-file-tools.d.ts.map +0 -1
  491. package/package/acode/dist/built-in-symbols-tool.d.ts.map +0 -1
  492. package/package/acode/dist/builtins/commandArtifacts.d.ts.map +0 -1
  493. package/package/acode/dist/builtins/commandOutputEvents.d.ts.map +0 -1
  494. package/package/acode/dist/builtins/shellCommandPreparation.d.ts.map +0 -1
  495. package/package/acode/dist/builtins/shellCommandResult.d.ts.map +0 -1
  496. package/package/acode/dist/builtins/shellCommandRunner.d.ts.map +0 -1
  497. package/package/acode/dist/builtins/shellOutputDecoder.d.ts.map +0 -1
  498. package/package/acode/dist/cli.d.ts.map +0 -1
  499. package/package/acode/dist/commands/commandLoader.d.ts.map +0 -1
  500. package/package/acode/dist/commands/commandParser.d.ts.map +0 -1
  501. package/package/acode/dist/commands/commandRegistry.d.ts.map +0 -1
  502. package/package/acode/dist/compaction.d.ts.map +0 -1
  503. package/package/acode/dist/config.d.ts.map +0 -1
  504. package/package/acode/dist/fs-utils.d.ts.map +0 -1
  505. package/package/acode/dist/hooks/hookBus.d.ts.map +0 -1
  506. package/package/acode/dist/index.d.ts.map +0 -1
  507. package/package/acode/dist/mcpToolNames.d.ts.map +0 -1
  508. package/package/acode/dist/parsers/ast-cache.d.ts.map +0 -1
  509. package/package/acode/dist/parsers/language-detector.d.ts.map +0 -1
  510. package/package/acode/dist/parsers/language-queries.d.ts.map +0 -1
  511. package/package/acode/dist/parsers/symbol-extractor.d.ts.map +0 -1
  512. package/package/acode/dist/parsers/tree-sitter-loader.d.ts.map +0 -1
  513. package/package/acode/dist/parsers/types.d.ts.map +0 -1
  514. package/package/acode/dist/runtime.d.ts.map +0 -1
  515. package/package/acode/dist/skill-tool.d.ts.map +0 -1
  516. package/package/acode/dist/sub-agent-manager.d.ts.map +0 -1
  517. package/package/acode/dist/sub-agent-store.d.ts.map +0 -1
  518. package/package/acode/dist/sub-agent-tools.d.ts.map +0 -1
  519. package/package/acode/dist/sub-agent-types.d.ts.map +0 -1
  520. package/package/acode/dist/todo-store.d.ts.map +0 -1
  521. package/package/acode/dist/todo-tool.d.ts.map +0 -1
  522. package/package/acode/dist/types.d.ts.map +0 -1
  523. package/package/aws-client-agent-mcp/dist/agent-client.d.ts.map +0 -1
  524. package/package/aws-client-agent-mcp/dist/agent-client.js.map +0 -1
  525. package/package/aws-client-agent-mcp/dist/agent-client.test.d.ts.map +0 -1
  526. package/package/aws-client-agent-mcp/dist/agent-client.test.js.map +0 -1
  527. package/package/aws-client-agent-mcp/dist/config.d.ts.map +0 -1
  528. package/package/aws-client-agent-mcp/dist/config.js.map +0 -1
  529. package/package/aws-client-agent-mcp/dist/config.test.d.ts.map +0 -1
  530. package/package/aws-client-agent-mcp/dist/config.test.js.map +0 -1
  531. package/package/aws-client-agent-mcp/dist/constants.d.ts.map +0 -1
  532. package/package/aws-client-agent-mcp/dist/constants.js.map +0 -1
  533. package/package/aws-client-agent-mcp/dist/context-manager.d.ts.map +0 -1
  534. package/package/aws-client-agent-mcp/dist/context-manager.js.map +0 -1
  535. package/package/aws-client-agent-mcp/dist/context-manager.test.d.ts.map +0 -1
  536. package/package/aws-client-agent-mcp/dist/context-manager.test.js.map +0 -1
  537. package/package/aws-client-agent-mcp/dist/http-client.d.ts.map +0 -1
  538. package/package/aws-client-agent-mcp/dist/http-client.js.map +0 -1
  539. package/package/aws-client-agent-mcp/dist/http-client.test.d.ts.map +0 -1
  540. package/package/aws-client-agent-mcp/dist/http-client.test.js.map +0 -1
  541. package/package/aws-client-agent-mcp/dist/index.d.ts.map +0 -1
  542. package/package/aws-client-agent-mcp/dist/index.js.map +0 -1
  543. package/package/aws-client-agent-mcp/dist/logger.d.ts.map +0 -1
  544. package/package/aws-client-agent-mcp/dist/logger.js.map +0 -1
  545. package/package/aws-client-agent-mcp/dist/logger.test.d.ts.map +0 -1
  546. package/package/aws-client-agent-mcp/dist/logger.test.js.map +0 -1
  547. package/package/aws-client-agent-mcp/dist/mcp-server.d.ts.map +0 -1
  548. package/package/aws-client-agent-mcp/dist/mcp-server.js.map +0 -1
  549. package/package/aws-client-agent-mcp/dist/mcp-server.test.d.ts.map +0 -1
  550. package/package/aws-client-agent-mcp/dist/mcp-server.test.js.map +0 -1
  551. package/package/aws-client-agent-mcp/dist/mcp-tools.d.ts.map +0 -1
  552. package/package/aws-client-agent-mcp/dist/mcp-tools.js.map +0 -1
  553. package/package/aws-client-agent-mcp/dist/mcp-tools.test.d.ts.map +0 -1
  554. package/package/aws-client-agent-mcp/dist/mcp-tools.test.js.map +0 -1
  555. package/package/aws-client-agent-mcp/dist/memory-store.d.ts.map +0 -1
  556. package/package/aws-client-agent-mcp/dist/memory-store.js.map +0 -1
  557. package/package/aws-client-agent-mcp/dist/memory-store.test.d.ts.map +0 -1
  558. package/package/aws-client-agent-mcp/dist/memory-store.test.js.map +0 -1
  559. package/package/aws-client-agent-mcp/dist/memory-tools.d.ts.map +0 -1
  560. package/package/aws-client-agent-mcp/dist/memory-tools.js.map +0 -1
  561. package/package/aws-client-agent-mcp/dist/message-buffer.d.ts.map +0 -1
  562. package/package/aws-client-agent-mcp/dist/message-buffer.js.map +0 -1
  563. package/package/aws-client-agent-mcp/dist/message-buffer.test.d.ts.map +0 -1
  564. package/package/aws-client-agent-mcp/dist/message-buffer.test.js.map +0 -1
  565. package/package/aws-client-agent-mcp/dist/messageContent.d.ts.map +0 -1
  566. package/package/aws-client-agent-mcp/dist/messageContent.js.map +0 -1
  567. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.d.ts.map +0 -1
  568. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.js.map +0 -1
  569. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.test.d.ts.map +0 -1
  570. package/package/aws-client-agent-mcp/dist/runtime-launch-binding.test.js.map +0 -1
  571. package/package/aws-client-agent-mcp/dist/server-memory-store.d.ts.map +0 -1
  572. package/package/aws-client-agent-mcp/dist/server-memory-store.js.map +0 -1
  573. package/package/aws-client-agent-mcp/dist/status-reporter.d.ts.map +0 -1
  574. package/package/aws-client-agent-mcp/dist/status-reporter.js.map +0 -1
  575. package/package/aws-client-agent-mcp/dist/status-reporter.test.d.ts.map +0 -1
  576. package/package/aws-client-agent-mcp/dist/status-reporter.test.js.map +0 -1
  577. package/package/aws-client-agent-mcp/dist/types.d.ts.map +0 -1
  578. package/package/aws-client-agent-mcp/dist/types.js.map +0 -1
  579. package/package/aws-client-agent-mcp/dist/websocket-client.d.ts.map +0 -1
  580. package/package/aws-client-agent-mcp/dist/websocket-client.js.map +0 -1
  581. package/package/aws-client-agent-mcp/dist/websocket-client.test.d.ts.map +0 -1
  582. package/package/aws-client-agent-mcp/dist/websocket-client.test.js.map +0 -1
  583. package/package/cc-switch-sdk/dist/constants.d.ts.map +0 -1
  584. package/package/cc-switch-sdk/dist/errors.d.ts.map +0 -1
  585. package/package/cc-switch-sdk/dist/index.d.ts.map +0 -1
  586. package/package/cc-switch-sdk/dist/schemas.d.ts.map +0 -1
  587. package/package/cc-switch-sdk/dist/sdk.d.ts.map +0 -1
  588. package/package/cc-switch-sdk/dist/services/ai-config-service.d.ts.map +0 -1
  589. package/package/cc-switch-sdk/dist/services/mcp-model.d.ts.map +0 -1
  590. package/package/cc-switch-sdk/dist/services/mcp-service.d.ts.map +0 -1
  591. package/package/cc-switch-sdk/dist/services/skill-model.d.ts.map +0 -1
  592. package/package/cc-switch-sdk/dist/services/skill-service.d.ts.map +0 -1
  593. package/package/cc-switch-sdk/dist/state.d.ts.map +0 -1
  594. package/package/cc-switch-sdk/dist/types.d.ts.map +0 -1
  595. package/package/cc-switch-sdk/dist/utils/fs.d.ts.map +0 -1
  596. package/package/cc-switch-sdk/dist/utils/id.d.ts.map +0 -1
@@ -1,539 +1,5 @@
1
- /**
2
- * 会话输出缓冲服务
3
- *
4
- * 管理终端会话的输出缓冲和刷新机制
5
- */
6
- import axios from "axios";
7
- import { resolveSchedulerBaseUrlFrom } from "../config.js";
8
- import { requestRuntimeAccessTokenRefreshForServer } from "../services/auto-register.js";
9
- import { logger } from "../utils/logger.js";
10
- import { agentEventStore } from "./agent-event-store.js";
11
- import { scheduleEventPush } from "./event-delta-pusher.js";
12
- import { RingBuffer } from "./ring-buffer.js";
13
- import { getRuntimeAccessToken } from "./runtime-binding.js";
14
- /**
15
- * 全局桥接侧事件环状缓冲区。
16
- *
17
- * 容量 2000 条,适用于记录非关键状态/输出事件。
18
- * 通过 sendStatus/sendOutput 自动写入,同时保留原有的 server 回调路径。
19
- */
20
- export const bridgeEventBuffer = new RingBuffer(2000);
21
- function runtimeAuthHeaders(options, callbackBaseUrl = resolveRuntimeCallbackBaseUrl(options)) {
22
- const token = options?.runtimeAccessToken ||
23
- getRuntimeAccessToken(callbackBaseUrl) ||
24
- getRuntimeAccessToken();
25
- return token ? { "X-Runtime-Token": token } : undefined;
26
- }
27
- /**
28
- * 构造重试鉴权选项:丢弃 session pinning 的 runtimeAccessToken,仅保留 schedulerBaseUrl。
29
- *
30
- * 401 触发 tryRefreshRuntimeToken 后,scoped store 已写入刷新后的新实例 token。
31
- * 但常规调用传入的 authOptions.runtimeAccessToken 是启动时 pinning 的 per-launch token,
32
- * 若该 token 已被 server 端 revoke/rotate,retry 仍用它会持续 401(runtimeAuthHeaders 优先
33
- * options.runtimeAccessToken)。丢弃后 runtimeAuthHeaders 会回退到 getRuntimeAccessToken
34
- * 读取刷新后的实例 token,使重试有机会成功。
35
- */
36
- function retryAuthOptions(options) {
37
- if (!options) {
38
- return undefined;
39
- }
40
- return { schedulerBaseUrl: options.schedulerBaseUrl };
41
- }
42
- /**
43
- * 解析 Runtime 回调的调度中心地址。
44
- * 主流程:优先使用启动请求携带的 scheduler 地址;否则按环境变量、单自动注册目标、默认值依次回退。
45
- */
46
- function resolveRuntimeCallbackBaseUrl(options) {
47
- return resolveSchedulerBaseUrlFrom(options?.schedulerBaseUrl).url;
48
- }
49
- /** 输出刷新防抖时间:合并启动期高频小块输出,降低 HTTP/WebSocket 压力。 */
50
- const OUTPUT_FLUSH_DEBOUNCE_MS = 100;
51
- function getAxiosStatusCode(error) {
52
- if (typeof error !== "object" || error === null)
53
- return undefined;
54
- const response = error.response;
55
- if (typeof response !== "object" || response === null)
56
- return undefined;
57
- const status = response.status;
58
- return typeof status === "number" ? status : undefined;
59
- }
60
- /** 防止并发回调同时触发多次 token 刷新。 */
61
- let tokenRefreshPromise = null;
62
- async function tryRefreshRuntimeToken(serverBaseUrl) {
63
- if (tokenRefreshPromise)
64
- return tokenRefreshPromise;
65
- tokenRefreshPromise = (async () => {
66
- try {
67
- const result = await requestRuntimeAccessTokenRefreshForServer(serverBaseUrl);
68
- if (result.success && result.runtimeAccessToken) {
69
- logger.info("[session-output] Runtime token refreshed after 401");
70
- return true;
71
- }
72
- logger.warn("[session-output] Runtime token refresh failed", { error: result.error });
73
- return false;
74
- }
75
- catch (error) {
76
- logger.warn("[session-output] Runtime token refresh threw", { error });
77
- return false;
78
- }
79
- })();
80
- try {
81
- return await tokenRefreshPromise;
82
- }
83
- finally {
84
- tokenRefreshPromise = null;
85
- }
86
- }
87
- /**
88
- * 单条 output 事件的文本长度上限(需求 4.1.3 #1),超过则截断。
89
- * ★ 必须与 agent-event-store.ts 的 MAX_OUTPUT_MERGE_CHARS 保持一致,修改时必须同步两处。
90
- */
91
- const MAX_SINGLE_OUTPUT_CHARS = 8000;
92
- /** 单个会话待发送输出上限,避免调度器不可达时内存无限增长。 */
93
- const MAX_PENDING_OUTPUT_CHARS = 64 * 1024;
94
- /** 单次回调最大发送量,避免一次 POST 携带过大的终端噪声。 */
95
- const MAX_OUTPUT_FLUSH_CHARS = 32 * 1024;
96
- /**
97
- * sendOutput HTTP POST 超时(毫秒)。
98
- * ★ 修复 BUG:原实现未设置 timeout,TCP keep-alive 失效或对端半挂时永久阻塞,
99
- * 导致 per-session 串行队列(sdkOutputQueueBySession)后续所有 chunk 全部排队等待,
100
- * 思考与实时输出在该 session 上全部断流。
101
- * 取 15s 与 sendStatus 一致,足够覆盖正常网络延迟,避免长尾挂起。
102
- */
103
- const OUTPUT_CALLBACK_TIMEOUT_MS = 15_000;
104
- /** 活跃会话存储 */
105
- export const sessions = new Map();
106
- /**
107
- * 发送状态更新到调度器
108
- *
109
- * @param agentId - Agent ID
110
- * @param sessionId - 会话 ID
111
- * @param status - 状态
112
- * @param actionInfo - 可选的动作详情
113
- */
114
- export async function sendStatus(agentId, sessionId, status, actionInfo, usage, authOptions, timestamp, sourceEventType) {
115
- const payload = { agentId, sessionId, status };
116
- // 添加时间戳(仅当提供了有效时间戳时才传递,保持原始事件时间顺序)
117
- if (timestamp !== undefined) {
118
- payload.timestamp = timestamp;
119
- }
120
- // 添加细粒度动作信息
121
- if (actionInfo) {
122
- if (actionInfo.actionType)
123
- payload.actionType = actionInfo.actionType;
124
- if (actionInfo.actionLabel)
125
- payload.actionLabel = actionInfo.actionLabel;
126
- if (actionInfo.actionDetail)
127
- payload.actionDetail = actionInfo.actionDetail;
128
- if (actionInfo.actionInput)
129
- payload.actionInput = actionInfo.actionInput;
130
- if (actionInfo.actionResult)
131
- payload.actionResult = actionInfo.actionResult;
132
- if (actionInfo.actionId)
133
- payload.actionId = actionInfo.actionId;
134
- if (actionInfo.parentId)
135
- payload.parentId = actionInfo.parentId;
136
- }
137
- // 添加 token 用量信息
138
- if (usage) {
139
- payload.inputTokens = usage.inputTokens;
140
- payload.outputTokens = usage.outputTokens;
141
- if (usage.contextLimit) {
142
- payload.contextLimit = usage.contextLimit;
143
- }
144
- // ★ 补传 maxOutput/inputLimit/compactionThreshold,前端 AgentContextPanel 直接用
145
- // compactionThreshold 显示压缩点竖线(消除前端自算公式脱节)。
146
- if (usage.maxOutput) {
147
- payload.maxOutput = usage.maxOutput;
148
- }
149
- if (usage.inputLimit) {
150
- payload.inputLimit = usage.inputLimit;
151
- }
152
- if (usage.compactionThreshold) {
153
- payload.compactionThreshold = usage.compactionThreshold;
154
- }
155
- }
156
- // 添加来源事件类型(用于前端时间线灰度区分,如 thinking / ai_request)
157
- if (sourceEventType) {
158
- payload.sourceEventType = sourceEventType;
159
- }
160
- const callbackBaseUrl = resolveRuntimeCallbackBaseUrl(authOptions);
161
- const headers = runtimeAuthHeaders(authOptions, callbackBaseUrl);
162
- if (!headers) {
163
- logger.warn("Skip runtime status callback because runtime token is missing", { agentId, sessionId, status, schedulerBaseUrl: callbackBaseUrl });
164
- return undefined;
165
- }
166
- // ★ 诊断日志:为 context_compaction 事件记录发送过程,排查间歇性丢失
167
- const isCompactionEvent = actionInfo?.actionType === "context_compaction";
168
- if (isCompactionEvent) {
169
- logger.info("[compaction-diag] sendStatus enter", {
170
- agentId, sessionId, status,
171
- actionId: actionInfo?.actionId,
172
- parentId: actionInfo?.parentId,
173
- actionLabel: actionInfo?.actionLabel,
174
- });
175
- }
176
- try {
177
- const response = await axios.post(`${callbackBaseUrl}/api/runtime/callback/status`, payload, { headers, timeout: 15000 });
178
- if (isCompactionEvent) {
179
- const data = response?.data;
180
- logger.info("[compaction-diag] sendStatus success", {
181
- agentId, actionId: actionInfo?.actionId,
182
- actionLabel: actionInfo?.actionLabel,
183
- httpStatus: response?.status,
184
- ignored: data?.ignored,
185
- responseBody: data,
186
- });
187
- }
188
- return response;
189
- }
190
- catch (error) {
191
- if (getAxiosStatusCode(error) === 401) {
192
- const refreshed = await tryRefreshRuntimeToken(callbackBaseUrl);
193
- if (refreshed) {
194
- const retryHeaders = runtimeAuthHeaders(retryAuthOptions(authOptions), callbackBaseUrl);
195
- if (retryHeaders) {
196
- try {
197
- const retryResponse = await axios.post(`${callbackBaseUrl}/api/runtime/callback/status`, payload, { headers: retryHeaders, timeout: 15000 });
198
- if (isCompactionEvent) {
199
- const data = retryResponse?.data;
200
- logger.info("[compaction-diag] sendStatus retry success", {
201
- agentId, actionId: actionInfo?.actionId,
202
- actionLabel: actionInfo?.actionLabel,
203
- httpStatus: retryResponse?.status,
204
- ignored: data?.ignored,
205
- });
206
- }
207
- return retryResponse;
208
- }
209
- catch (retryError) {
210
- logger.warn("Runtime status callback retry failed after token refresh", {
211
- agentId, sessionId, status, error: retryError,
212
- });
213
- return undefined;
214
- }
215
- }
216
- }
217
- }
218
- logger.warn("Runtime status callback failed", {
219
- agentId,
220
- sessionId,
221
- status,
222
- schedulerBaseUrl: callbackBaseUrl,
223
- error,
224
- });
225
- return undefined;
226
- }
227
- finally {
228
- // 不论 server 回调成功或失败,都在桥接侧本地记录状态事件
229
- const eventPayload = {
230
- category: "status",
231
- agentId,
232
- sessionId,
233
- status,
234
- actionType: actionInfo?.actionType,
235
- actionLabel: actionInfo?.actionLabel,
236
- actionDetail: actionInfo?.actionDetail,
237
- actionInput: actionInfo?.actionInput,
238
- actionResult: actionInfo?.actionResult,
239
- actionId: actionInfo?.actionId,
240
- // ★ 必须写入 parentId,否则子事件(如压缩 phase/end 子事件)在前端
241
- // buildEventTreeFromFlat 中找不到父事件,会作为孤儿子事件扁平化渲染。
242
- parentId: actionInfo?.parentId,
243
- inputTokens: usage?.inputTokens,
244
- outputTokens: usage?.outputTokens,
245
- sourceEventType,
246
- };
247
- bridgeEventBuffer.append(eventPayload);
248
- // 同步写入 per-agent 事件存储并调度差量推送
249
- const entry = agentEventStore.append(agentId, eventPayload);
250
- scheduleEventPush(agentId, entry, authOptions);
251
- }
252
- }
253
- /**
254
- * 发送输出到调度器
255
- *
256
- * @param agentId - Agent ID
257
- * @param output - 输出内容
258
- * @param sessionId - 会话 ID
259
- * @param seq - 序列号
260
- */
261
- export async function sendOutput(agentId, output, sessionId, seq, metadata, authOptions, signal) {
262
- const callbackBaseUrl = resolveRuntimeCallbackBaseUrl(authOptions);
263
- try {
264
- const headers = runtimeAuthHeaders(authOptions, callbackBaseUrl);
265
- if (!headers) {
266
- logger.warn("Skip runtime output callback because runtime token is missing", {
267
- agentId,
268
- sessionId,
269
- schedulerBaseUrl: callbackBaseUrl,
270
- });
271
- return;
272
- }
273
- // ★ 仅在 signal 存在时传入,避免无 signal 调用改变 axios config 形状影响测试断言
274
- const axiosConfig = {
275
- headers,
276
- timeout: OUTPUT_CALLBACK_TIMEOUT_MS,
277
- };
278
- if (signal)
279
- axiosConfig.signal = signal;
280
- await axios.post(`${callbackBaseUrl}/api/runtime/callback/output`, { agentId, output, sessionId, seq, ...metadata }, axiosConfig);
281
- }
282
- catch (error) {
283
- // ★ 被 AbortController 取消的请求直接抛出,不触发 401 重试(重试由 raceSendOutputWithRetry 负责)
284
- if (signal?.aborted || error?.name === "AbortError" || error?.code === "ERR_CANCELED") {
285
- throw error;
286
- }
287
- if (getAxiosStatusCode(error) === 401) {
288
- const refreshed = await tryRefreshRuntimeToken(callbackBaseUrl);
289
- if (refreshed) {
290
- const retryHeaders = runtimeAuthHeaders(retryAuthOptions(authOptions), callbackBaseUrl);
291
- if (retryHeaders) {
292
- try {
293
- const retryConfig = {
294
- headers: retryHeaders,
295
- timeout: OUTPUT_CALLBACK_TIMEOUT_MS,
296
- };
297
- if (signal)
298
- retryConfig.signal = signal;
299
- await axios.post(`${callbackBaseUrl}/api/runtime/callback/output`, { agentId, output, sessionId, seq, ...metadata }, retryConfig);
300
- return;
301
- }
302
- catch {
303
- // retry also failed — 落入下面的 rethrow,由 raceSendOutputWithRetry 重试
304
- }
305
- }
306
- }
307
- }
308
- logger.warn("Runtime output callback failed", {
309
- agentId,
310
- sessionId,
311
- error,
312
- });
313
- // ★ 非 abort、非 401(或 401 refresh/retry 失败)错误必须 rethrow,
314
- // 让 raceSendOutputWithRetry 统一重试,覆盖瞬时网络问题 / 服务端 5xx / axios 超时等。
315
- // 401 错误也 rethrow:外层重试时 tryRefreshRuntimeToken 会从缓存返回已刷新的 token,
316
- // retry 可能成功;若 refresh 真失败,外层重试 2 次后放弃,本地 buffer 已在 finally 记录。
317
- throw error;
318
- }
319
- finally {
320
- // 不论 server 回调成功或失败,都在桥接侧本地记录输出事件
321
- // 需求 4.1.3 #1:截断超长 output,确保单条事件体积可控
322
- // ★ 修复 BUG:原实现截断头部,长输出尾部丢失。改为保留尾部(用户更关心最新内容)。
323
- const truncatedOutput = output.length > MAX_SINGLE_OUTPUT_CHARS
324
- ? `...(truncated)\n${output.slice(-MAX_SINGLE_OUTPUT_CHARS)}`
325
- : output;
326
- const eventPayload = {
327
- category: "output",
328
- agentId,
329
- sessionId,
330
- output: truncatedOutput,
331
- seq,
332
- sourceEventType: metadata?.sourceEventType,
333
- logLevel: metadata?.logLevel,
334
- logCategory: metadata?.logCategory,
335
- };
336
- // output 事件合并写入:同 session + 同 sourceEventType + 10s 窗口内追加到同一条
337
- // ★ 修复 BUG:原实现合并到 8000 上限后无脑截断头部,导致后续同窗口 chunk 持续丢失。
338
- // 新策略:若合并后会超限,condition 返回 false 让调用方开新条目,
339
- // 避免长输出尾部持续被丢弃。截断时保留尾部(用户更关心最新内容)。
340
- bridgeEventBuffer.appendOrMerge(eventPayload, (lastEntry) => {
341
- const last = lastEntry.data;
342
- if (last.category !== "output" ||
343
- last.sessionId !== sessionId ||
344
- last.sourceEventType !== metadata?.sourceEventType ||
345
- Date.now() - lastEntry.timestamp > 10_000) {
346
- return false;
347
- }
348
- // 预估合并后长度,超上限则开新条目,避免截断丢内容
349
- const existingLen = (last.output || "").length;
350
- const newLen = (eventPayload.output || "").length;
351
- return existingLen + newLen <= MAX_SINGLE_OUTPUT_CHARS;
352
- }, (lastData, newData) => {
353
- // 内容去重:如果新内容已包含在已合并内容中,跳过拼接防止重复
354
- const existingOutput = lastData.output || "";
355
- const newOutput = newData.output || "";
356
- if (existingOutput.includes(newOutput)) {
357
- return lastData;
358
- }
359
- return {
360
- ...lastData,
361
- output: `${existingOutput}${newOutput}`,
362
- };
363
- });
364
- // 同步写入 per-agent 事件存储(同样合并)并调度差量推送
365
- const entry = agentEventStore.appendOrMergeOutput(agentId, eventPayload);
366
- scheduleEventPush(agentId, entry, authOptions);
367
- }
368
- }
369
- /**
370
- * 发送 AskUserQuestion 事件到调度器。
371
- *
372
- * @param agentId - Agent ID
373
- * @param sessionId - SDK 会话 ID
374
- * @param questions - 结构化问题列表
375
- * @param authOptions - 运行时鉴权选项
376
- * @param toolCallId - 提问实例的唯一标识,用于前端区分同一会话内连续多次提问
377
- */
378
- export async function sendQuestionRequest(agentId, sessionId, questions, authOptions, toolCallId) {
379
- const callbackBaseUrl = resolveRuntimeCallbackBaseUrl(authOptions);
380
- const payload = { agentId, sessionId, questions, ...(toolCallId ? { toolCallId } : {}) };
381
- try {
382
- const headers = runtimeAuthHeaders(authOptions, callbackBaseUrl);
383
- if (!headers) {
384
- return;
385
- }
386
- await axios.post(`${callbackBaseUrl}/api/runtime/callback/question`, payload, { headers });
387
- }
388
- catch (error) {
389
- if (getAxiosStatusCode(error) === 401) {
390
- const refreshed = await tryRefreshRuntimeToken(callbackBaseUrl);
391
- if (refreshed) {
392
- const retryHeaders = runtimeAuthHeaders(retryAuthOptions(authOptions), callbackBaseUrl);
393
- if (retryHeaders) {
394
- try {
395
- await axios.post(`${callbackBaseUrl}/api/runtime/callback/question`, payload, { headers: retryHeaders });
396
- return;
397
- }
398
- catch {
399
- // retry also failed
400
- }
401
- }
402
- }
403
- }
404
- // ignore transient callback failures
405
- }
406
- finally {
407
- // 记录 question 事件到 per-agent 存储
408
- const eventPayload = {
409
- category: "question",
410
- agentId,
411
- sessionId,
412
- ...(toolCallId ? { toolCallId } : {}),
413
- questions,
414
- };
415
- bridgeEventBuffer.append(eventPayload);
416
- const entry = agentEventStore.append(agentId, eventPayload);
417
- scheduleEventPush(agentId, entry, authOptions);
418
- }
419
- }
420
- /**
421
- * 发送工作区文件变更事件到调度器,由调度器通过 WebSocket 通知前端刷新预览。
422
- */
423
- export async function sendFileChanged(payload) {
424
- const callbackBaseUrl = resolveRuntimeCallbackBaseUrl();
425
- try {
426
- const headers = runtimeAuthHeaders(undefined, callbackBaseUrl);
427
- if (!headers) {
428
- return;
429
- }
430
- await axios.post(`${callbackBaseUrl}/api/runtime/callback/file-changed`, payload, { headers });
431
- }
432
- catch (error) {
433
- if (getAxiosStatusCode(error) === 401) {
434
- const refreshed = await tryRefreshRuntimeToken(callbackBaseUrl);
435
- if (refreshed) {
436
- const retryHeaders = runtimeAuthHeaders(undefined, callbackBaseUrl);
437
- if (retryHeaders) {
438
- try {
439
- await axios.post(`${callbackBaseUrl}/api/runtime/callback/file-changed`, payload, { headers: retryHeaders });
440
- return;
441
- }
442
- catch {
443
- // retry also failed
444
- }
445
- }
446
- }
447
- }
448
- // ignore transient callback failures
449
- }
450
- finally {
451
- // 记录 file_changed 事件到 per-agent 存储
452
- const eventPayload = {
453
- category: "file_changed",
454
- agentId: "",
455
- sessionId: null,
456
- workspacePath: payload.workspacePath,
457
- filePath: payload.filePath,
458
- eventType: payload.eventType,
459
- size: payload.size,
460
- };
461
- bridgeEventBuffer.append(eventPayload);
462
- }
463
- }
464
- /**
465
- * 追加会话输出到有界缓冲区。
466
- *
467
- * 主流程:拼接新输出 -> 超过上限时丢弃最旧终端噪声并保留截断提示 -> 等待 flush pump 批量发送。
468
- */
469
- export function appendSessionOutput(sessionId, data) {
470
- const session = sessions.get(sessionId);
471
- if (!session || !data) {
472
- return;
473
- }
474
- const combinedOutput = `${session.outputBuffer}${data}`;
475
- if (combinedOutput.length <= MAX_PENDING_OUTPUT_CHARS) {
476
- session.outputBuffer = combinedOutput;
477
- return;
478
- }
479
- const omittedChars = combinedOutput.length - MAX_PENDING_OUTPUT_CHARS;
480
- const marker = `\r\n[AgentsWorkStudio: omitted ${omittedChars} chars of old terminal output]\r\n`;
481
- const retainedLength = Math.max(0, MAX_PENDING_OUTPUT_CHARS - marker.length);
482
- session.outputBuffer = `${marker}${combinedOutput.slice(-retainedLength)}`;
483
- }
484
- /**
485
- * 调度输出刷新
486
- *
487
- * @param sessionId - 会话 ID
488
- */
489
- export function scheduleOutputFlush(sessionId) {
490
- const session = sessions.get(sessionId);
491
- if (!session) {
492
- return;
493
- }
494
- if (session.flushTimer) {
495
- return;
496
- }
497
- session.flushTimer = setTimeout(() => {
498
- session.flushTimer = null;
499
- flushSessionOutput(sessionId).catch(() => undefined);
500
- }, OUTPUT_FLUSH_DEBOUNCE_MS);
501
- }
502
- /**
503
- * 刷新会话输出
504
- *
505
- * @param sessionId - 会话 ID
506
- */
507
- export async function flushSessionOutput(sessionId) {
508
- const session = sessions.get(sessionId);
509
- if (!session) {
510
- return;
511
- }
512
- if (session.flushInFlight) {
513
- return;
514
- }
515
- if (!session.outputBuffer) {
516
- return;
517
- }
518
- const output = session.outputBuffer.slice(0, MAX_OUTPUT_FLUSH_CHARS);
519
- session.outputBuffer = session.outputBuffer.slice(MAX_OUTPUT_FLUSH_CHARS);
520
- const running = (async () => {
521
- const seq = session.seq + 1;
522
- session.seq = seq;
523
- await sendOutput(session.agentId, output, sessionId, seq);
524
- const latest = sessions.get(sessionId);
525
- if (latest?.outputBuffer) {
526
- scheduleOutputFlush(sessionId);
527
- }
528
- })();
529
- session.flushInFlight = running;
530
- try {
531
- await running;
532
- }
533
- finally {
534
- const latest = sessions.get(sessionId);
535
- if (latest) {
536
- latest.flushInFlight = null;
537
- }
538
- }
539
- }
1
+ import h from"axios";import{resolveSchedulerBaseUrlFrom as C}from"../config.js";import{requestRuntimeAccessTokenRefreshForServer as O}from"../services/auto-register.js";import{logger as p}from"../utils/logger.js";import{agentEventStore as g}from"./agent-event-store.js";import{scheduleEventPush as S}from"./event-delta-pusher.js";import{RingBuffer as H}from"./ring-buffer.js";import{getRuntimeAccessToken as A}from"./runtime-binding.js";const R=new H(2e3);function m(t,e=b(t)){const n=t?.runtimeAccessToken||A(e)||A();return n?{"X-Runtime-Token":n}:void 0}function x(t){if(t)return{schedulerBaseUrl:t.schedulerBaseUrl}}function b(t){return C(t?.schedulerBaseUrl).url}const M=100;function U(t){if(typeof t!="object"||t===null)return;const e=t.response;if(typeof e!="object"||e===null)return;const n=e.status;return typeof n=="number"?n:void 0}let w=null;async function B(t){if(w)return w;w=(async()=>{try{const e=await O(t);return e.success&&e.runtimeAccessToken?(p.info("[session-output] Runtime token refreshed after 401"),!0):(p.warn("[session-output] Runtime token refresh failed",{error:e.error}),!1)}catch(e){return p.warn("[session-output] Runtime token refresh threw",{error:e}),!1}})();try{return await w}finally{w=null}}const _=8e3,v=64*1024,E=32*1024,P=15e3,L=new Map;async function J(t,e,n,r,i,c,l,o){const u={agentId:t,sessionId:e,status:n};l!==void 0&&(u.timestamp=l),r&&(r.actionType&&(u.actionType=r.actionType),r.actionLabel&&(u.actionLabel=r.actionLabel),r.actionDetail&&(u.actionDetail=r.actionDetail),r.actionInput&&(u.actionInput=r.actionInput),r.actionResult&&(u.actionResult=r.actionResult),r.actionId&&(u.actionId=r.actionId),r.parentId&&(u.parentId=r.parentId)),i&&(u.inputTokens=i.inputTokens,u.outputTokens=i.outputTokens,i.contextLimit&&(u.contextLimit=i.contextLimit),i.maxOutput&&(u.maxOutput=i.maxOutput),i.inputLimit&&(u.inputLimit=i.inputLimit),i.compactionThreshold&&(u.compactionThreshold=i.compactionThreshold)),o&&(u.sourceEventType=o);const s=b(c),y=m(c,s);if(!y){p.warn("Skip runtime status callback because runtime token is missing",{agentId:t,sessionId:e,status:n,schedulerBaseUrl:s});return}const f=r?.actionType==="context_compaction";f&&p.info("[compaction-diag] sendStatus enter",{agentId:t,sessionId:e,status:n,actionId:r?.actionId,parentId:r?.parentId,actionLabel:r?.actionLabel});try{const a=await h.post(`${s}/api/runtime/callback/status`,u,{headers:y,timeout:15e3});if(f){const d=a?.data;p.info("[compaction-diag] sendStatus success",{agentId:t,actionId:r?.actionId,actionLabel:r?.actionLabel,httpStatus:a?.status,ignored:d?.ignored,responseBody:d})}return a}catch(a){if(U(a)===401&&await B(s)){const k=m(x(c),s);if(k)try{const T=await h.post(`${s}/api/runtime/callback/status`,u,{headers:k,timeout:15e3});if(f){const $=T?.data;p.info("[compaction-diag] sendStatus retry success",{agentId:t,actionId:r?.actionId,actionLabel:r?.actionLabel,httpStatus:T?.status,ignored:$?.ignored})}return T}catch(T){p.warn("Runtime status callback retry failed after token refresh",{agentId:t,sessionId:e,status:n,error:T});return}}p.warn("Runtime status callback failed",{agentId:t,sessionId:e,status:n,schedulerBaseUrl:s,error:a});return}finally{const a={category:"status",agentId:t,sessionId:e,status:n,actionType:r?.actionType,actionLabel:r?.actionLabel,actionDetail:r?.actionDetail,actionInput:r?.actionInput,actionResult:r?.actionResult,actionId:r?.actionId,parentId:r?.parentId,inputTokens:i?.inputTokens,outputTokens:i?.outputTokens,sourceEventType:o};R.append(a);const d=g.append(t,a);S(t,d,c)}}async function F(t,e,n,r,i,c,l){const o=b(c);try{const u=m(c,o);if(!u){p.warn("Skip runtime output callback because runtime token is missing",{agentId:t,sessionId:n,schedulerBaseUrl:o});return}const s={headers:u,timeout:P};l&&(s.signal=l),await h.post(`${o}/api/runtime/callback/output`,{agentId:t,output:e,sessionId:n,seq:r,...i},s)}catch(u){if(l?.aborted||u?.name==="AbortError"||u?.code==="ERR_CANCELED")throw u;if(U(u)===401&&await B(o)){const y=m(x(c),o);if(y)try{const f={headers:y,timeout:P};l&&(f.signal=l),await h.post(`${o}/api/runtime/callback/output`,{agentId:t,output:e,sessionId:n,seq:r,...i},f);return}catch{}}throw p.warn("Runtime output callback failed",{agentId:t,sessionId:n,error:u}),u}finally{const u=e.length>_?`...(truncated)
2
+ ${e.slice(-_)}`:e,s={category:"output",agentId:t,sessionId:n,output:u,seq:r,sourceEventType:i?.sourceEventType,logLevel:i?.logLevel,logCategory:i?.logCategory};R.appendOrMerge(s,f=>{const a=f.data;if(a.category!=="output"||a.sessionId!==n||a.sourceEventType!==i?.sourceEventType||Date.now()-f.timestamp>1e4)return!1;const d=(a.output||"").length,k=(s.output||"").length;return d+k<=_},(f,a)=>{const d=f.output||"",k=a.output||"";return d.includes(k)?f:{...f,output:`${d}${k}`}});const y=g.appendOrMergeOutput(t,s);S(t,y,c)}}async function V(t,e,n,r,i){const c=b(r),l={agentId:t,sessionId:e,questions:n,...i?{toolCallId:i}:{}};try{const o=m(r,c);if(!o)return;await h.post(`${c}/api/runtime/callback/question`,l,{headers:o})}catch(o){if(U(o)===401&&await B(c)){const s=m(x(r),c);if(s)try{await h.post(`${c}/api/runtime/callback/question`,l,{headers:s});return}catch{}}}finally{const o={category:"question",agentId:t,sessionId:e,...i?{toolCallId:i}:{},questions:n};R.append(o);const u=g.append(t,o);S(t,u,r)}}async function Y(t){const e=b();try{const n=m(void 0,e);if(!n)return;await h.post(`${e}/api/runtime/callback/file-changed`,t,{headers:n})}catch(n){if(U(n)===401&&await B(e)){const i=m(void 0,e);if(i)try{await h.post(`${e}/api/runtime/callback/file-changed`,t,{headers:i});return}catch{}}}finally{const n={category:"file_changed",agentId:"",sessionId:null,workspacePath:t.workspacePath,filePath:t.filePath,eventType:t.eventType,size:t.size};R.append(n)}}function Z(t,e){const n=L.get(t);if(!n||!e)return;const r=`${n.outputBuffer}${e}`;if(r.length<=v){n.outputBuffer=r;return}const c=`\r
3
+ [AgentsWorkStudio: omitted ${r.length-v} chars of old terminal output]\r
4
+ `,l=Math.max(0,v-c.length);n.outputBuffer=`${c}${r.slice(-l)}`}function D(t){const e=L.get(t);e&&(e.flushTimer||(e.flushTimer=setTimeout(()=>{e.flushTimer=null,q(t).catch(()=>{})},M)))}async function q(t){const e=L.get(t);if(!e||e.flushInFlight||!e.outputBuffer)return;const n=e.outputBuffer.slice(0,E);e.outputBuffer=e.outputBuffer.slice(E);const r=(async()=>{const i=e.seq+1;e.seq=i,await F(e.agentId,n,t,i),L.get(t)?.outputBuffer&&D(t)})();e.flushInFlight=r;try{await r}finally{const i=L.get(t);i&&(i.flushInFlight=null)}}export{Z as appendSessionOutput,R as bridgeEventBuffer,q as flushSessionOutput,D as scheduleOutputFlush,Y as sendFileChanged,F as sendOutput,V as sendQuestionRequest,J as sendStatus,L as sessions};
5
+
@@ -38,4 +38,3 @@ export declare function configureStartupConfig(options?: EnsureStartupConfigOpti
38
38
  */
39
39
  export declare function printConfigExampleCommand(options?: EnsureStartupConfigOptions): Promise<StartupConfigWizardResult>;
40
40
  export {};
41
- //# sourceMappingURL=startup-config-wizard.d.ts.map