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,208 +1,3 @@
1
- import { spawn } from 'node:child_process';
2
- import { createHash, randomUUID } from 'node:crypto';
3
- import { promises as fs } from 'node:fs';
4
- import path from 'node:path';
5
- import axios from 'axios';
6
- import { schedulerBaseUrl } from '../config.js';
7
- import { getRuntimeAccessToken } from '../services/runtime-binding.js';
8
- const fileLocks = new Map();
9
- export async function ensureDir(targetDir) {
10
- await fs.mkdir(targetDir, { recursive: true });
11
- return targetDir;
12
- }
13
- export async function withFileLock(targetPath, operation) {
14
- const lockKey = path.resolve(targetPath);
15
- const previous = fileLocks.get(lockKey) ?? Promise.resolve();
16
- let release;
17
- const current = new Promise((resolve) => {
18
- release = resolve;
19
- });
20
- const chained = previous.then(() => current);
21
- fileLocks.set(lockKey, chained);
22
- await previous;
23
- try {
24
- return await operation();
25
- }
26
- finally {
27
- release();
28
- if (fileLocks.get(lockKey) === chained) {
29
- fileLocks.delete(lockKey);
30
- }
31
- }
32
- }
33
- function isPlainObject(value) {
34
- if (!value || typeof value !== 'object') {
35
- return false;
36
- }
37
- const prototype = Object.getPrototypeOf(value);
38
- return prototype === Object.prototype || prototype === null;
39
- }
40
- function sortJsonValue(value) {
41
- if (Array.isArray(value)) {
42
- return value.map((item) => sortJsonValue(item));
43
- }
44
- if (isPlainObject(value)) {
45
- return Object.keys(value)
46
- .sort()
47
- .reduce((acc, key) => {
48
- acc[key] = sortJsonValue(value[key]);
49
- return acc;
50
- }, {});
51
- }
52
- return value;
53
- }
54
- export function stringifyStableJson(value) {
55
- return `${JSON.stringify(sortJsonValue(value), null, 2)}\n`;
56
- }
57
- export async function atomicWriteFile(targetPath, content) {
58
- await ensureDir(path.dirname(targetPath));
59
- const targetDir = path.dirname(targetPath);
60
- const targetBase = path.basename(targetPath);
61
- const tmpPath = path.join(targetDir, `.${targetBase}.tmp-${process.pid}-${Date.now()}-${Math.random().toString(16).slice(2)}`);
62
- try {
63
- await fs.writeFile(tmpPath, content, 'utf-8');
64
- await fs.rename(tmpPath, targetPath);
65
- }
66
- catch (error) {
67
- await fs.rm(tmpPath, { force: true }).catch(() => undefined);
68
- throw error;
69
- }
70
- }
71
- export async function atomicWriteJsonFile(targetPath, value) {
72
- await atomicWriteFile(targetPath, stringifyStableJson(value));
73
- }
74
- export async function downloadSkillZip(skillPackage, targetDir) {
75
- if (!skillPackage || !skillPackage.downloadUrl) {
76
- return null;
77
- }
78
- const url = String(skillPackage.downloadUrl).trim();
79
- if (!url) {
80
- return null;
81
- }
82
- let absoluteUrl = url;
83
- if (absoluteUrl.startsWith('/')) {
84
- absoluteUrl = `${schedulerBaseUrl}${absoluteUrl}`;
85
- }
86
- const fileName = skillPackage.fileName && String(skillPackage.fileName).trim()
87
- ? String(skillPackage.fileName).trim()
88
- : 'skill-package.zip';
89
- const outputPath = path.join(targetDir, fileName);
90
- const runtimeAccessToken = getRuntimeAccessToken(schedulerBaseUrl) || getRuntimeAccessToken();
91
- if (!runtimeAccessToken) {
92
- throw new Error('runtime access token is required to download skill package');
93
- }
94
- const response = await axios.get(absoluteUrl, {
95
- responseType: 'arraybuffer',
96
- headers: {
97
- 'X-Runtime-Token': runtimeAccessToken,
98
- },
99
- });
100
- const bytes = Buffer.from(response.data);
101
- await fs.writeFile(outputPath, bytes);
102
- if (skillPackage.sha256) {
103
- const hash = createHash('sha256').update(bytes).digest('hex');
104
- if (hash !== String(skillPackage.sha256).trim().toLowerCase()) {
105
- throw new Error('skill zip checksum mismatch');
106
- }
107
- }
108
- return {
109
- fileName,
110
- outputPath,
111
- bytes: bytes.length,
112
- };
113
- }
114
- export async function runCommand(command, args) {
115
- await new Promise((resolve, reject) => {
116
- const child = spawn(command, args, { stdio: ['ignore', 'pipe', 'pipe'] });
117
- let stderr = '';
118
- child.stderr?.on('data', (chunk) => {
119
- stderr += String(chunk || '');
120
- });
121
- child.on('error', (error) => {
122
- reject(error);
123
- });
124
- child.on('close', (code) => {
125
- if (code !== 0) {
126
- reject(new Error(stderr || `${command} exited with code ${code}`));
127
- return;
128
- }
129
- resolve();
130
- });
131
- });
132
- }
133
- export function escapePowerShellLiteral(text) {
134
- return String(text || '').replace(/'/g, "''");
135
- }
136
- export async function extractSkillZip(zipFilePath, extractRootDir) {
137
- await fs.rm(extractRootDir, { recursive: true, force: true });
138
- await fs.mkdir(extractRootDir, { recursive: true });
139
- if (process.platform === 'win32') {
140
- const zipLiteral = escapePowerShellLiteral(zipFilePath);
141
- const targetLiteral = escapePowerShellLiteral(extractRootDir);
142
- await runCommand('powershell.exe', [
143
- '-NoLogo',
144
- '-NoProfile',
145
- '-Command',
146
- `Expand-Archive -LiteralPath '${zipLiteral}' -DestinationPath '${targetLiteral}' -Force`,
147
- ]);
148
- return;
149
- }
150
- await runCommand('unzip', ['-o', zipFilePath, '-d', extractRootDir]);
151
- }
152
- export async function resolveSkillSourceDirFromExtractRoot(extractRootDir) {
153
- const entries = await fs.readdir(extractRootDir, { withFileTypes: true });
154
- const visible = entries.filter((entry) => !entry.name.startsWith('.'));
155
- if (visible.length === 1 && visible[0].isDirectory()) {
156
- return path.join(extractRootDir, visible[0].name);
157
- }
158
- return extractRootDir;
159
- }
160
- export function toSdkAppsFromEnabledTools(enabledTools) {
161
- const tools = Array.isArray(enabledTools) ? enabledTools : [];
162
- const includes = (name) => tools.includes(name);
163
- return {
164
- acode: includes('acode'),
165
- claude: includes('claude'),
166
- claudecode: includes('claudecode'),
167
- codex: includes('codex'),
168
- gemini: includes('gemini'),
169
- opencode: includes('opencode'),
170
- openclaw: includes('openclaw'),
171
- };
172
- }
173
- export function resolveSkillSourceDir(skill) {
174
- const sourceDirCandidate = String(skill?.sourceDir || skill?.directory || skill?.filePath || '').trim();
175
- if (!sourceDirCandidate) {
176
- throw new Error('skill.sourceDir is required');
177
- }
178
- return path.resolve(sourceDirCandidate);
179
- }
180
- export async function ensureDirectoryExists(directoryPath) {
181
- const stat = await fs.stat(directoryPath);
182
- if (!stat.isDirectory()) {
183
- throw new Error(`not a directory: ${directoryPath}`);
184
- }
185
- }
186
- export async function installSkillPackageToSdk(sdk, skillPackage, skillDir, sdkApps) {
187
- const downloaded = await downloadSkillZip(skillPackage, skillDir);
188
- if (!downloaded) {
189
- return null;
190
- }
191
- const extractRootDir = path.join(skillDir, `${path.parse(downloaded.fileName).name}-${randomUUID()}`);
192
- await extractSkillZip(downloaded.outputPath, extractRootDir);
193
- const sourceDir = await resolveSkillSourceDirFromExtractRoot(extractRootDir);
194
- const desiredName = String(skillPackage?.skillName || downloaded.fileName || '').trim() || downloaded.fileName;
195
- const allSkills = sdk.getAllSkills();
196
- const existing = allSkills.find((item) => String(item?.name || '').trim() === desiredName);
197
- if (existing) {
198
- return sdk.updateSkill(existing.id, {
199
- name: desiredName,
200
- apps: sdkApps,
201
- });
202
- }
203
- return sdk.installSkill({
204
- sourceDir,
205
- name: desiredName,
206
- apps: sdkApps,
207
- });
208
- }
1
+ import{spawn as g}from"node:child_process";import{createHash as x,randomUUID as $}from"node:crypto";import{promises as c}from"node:fs";import a from"node:path";import b from"axios";import{schedulerBaseUrl as d}from"../config.js";import{getRuntimeAccessToken as w}from"../services/runtime-binding.js";const p=new Map;async function N(e){return await c.mkdir(e,{recursive:!0}),e}async function W(e,t){const r=a.resolve(e),i=p.get(r)??Promise.resolve();let n;const s=new Promise(l=>{n=l}),o=i.then(()=>s);p.set(r,o),await i;try{return await t()}finally{n(),p.get(r)===o&&p.delete(r)}}function E(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function f(e){return Array.isArray(e)?e.map(t=>f(t)):E(e)?Object.keys(e).sort().reduce((t,r)=>(t[r]=f(e[r]),t),{}):e}function j(e){return`${JSON.stringify(f(e),null,2)}
2
+ `}async function k(e,t){await N(a.dirname(e));const r=a.dirname(e),i=a.basename(e),n=a.join(r,`.${i}.tmp-${process.pid}-${Date.now()}-${Math.random().toString(16).slice(2)}`);try{await c.writeFile(n,t,"utf-8"),await c.rename(n,e)}catch(s){throw await c.rm(n,{force:!0}).catch(()=>{}),s}}async function z(e,t){await k(e,j(t))}async function A(e,t){if(!e||!e.downloadUrl)return null;const r=String(e.downloadUrl).trim();if(!r)return null;let i=r;i.startsWith("/")&&(i=`${d}${i}`);const n=e.fileName&&String(e.fileName).trim()?String(e.fileName).trim():"skill-package.zip",s=a.join(t,n),o=w(d)||w();if(!o)throw new Error("runtime access token is required to download skill package");const l=await b.get(i,{responseType:"arraybuffer",headers:{"X-Runtime-Token":o}}),u=Buffer.from(l.data);if(await c.writeFile(s,u),e.sha256&&x("sha256").update(u).digest("hex")!==String(e.sha256).trim().toLowerCase())throw new Error("skill zip checksum mismatch");return{fileName:n,outputPath:s,bytes:u.length}}async function h(e,t){await new Promise((r,i)=>{const n=g(e,t,{stdio:["ignore","pipe","pipe"]});let s="";n.stderr?.on("data",o=>{s+=String(o||"")}),n.on("error",o=>{i(o)}),n.on("close",o=>{if(o!==0){i(new Error(s||`${e} exited with code ${o}`));return}r()})})}function y(e){return String(e||"").replace(/'/g,"''")}async function D(e,t){if(await c.rm(t,{recursive:!0,force:!0}),await c.mkdir(t,{recursive:!0}),process.platform==="win32"){const r=y(e),i=y(t);await h("powershell.exe",["-NoLogo","-NoProfile","-Command",`Expand-Archive -LiteralPath '${r}' -DestinationPath '${i}' -Force`]);return}await h("unzip",["-o",e,"-d",t])}async function F(e){const r=(await c.readdir(e,{withFileTypes:!0})).filter(i=>!i.name.startsWith("."));return r.length===1&&r[0].isDirectory()?a.join(e,r[0].name):e}function B(e){const t=Array.isArray(e)?e:[],r=i=>t.includes(i);return{acode:r("acode"),claude:r("claude"),claudecode:r("claudecode"),codex:r("codex"),gemini:r("gemini"),opencode:r("opencode"),openclaw:r("openclaw")}}function q(e){const t=String(e?.sourceDir||e?.directory||e?.filePath||"").trim();if(!t)throw new Error("skill.sourceDir is required");return a.resolve(t)}async function M(e){if(!(await c.stat(e)).isDirectory())throw new Error(`not a directory: ${e}`)}async function Z(e,t,r,i){const n=await A(t,r);if(!n)return null;const s=a.join(r,`${a.parse(n.fileName).name}-${$()}`);await D(n.outputPath,s);const o=await F(s),l=String(t?.skillName||n.fileName||"").trim()||n.fileName,m=e.getAllSkills().find(S=>String(S?.name||"").trim()===l);return m?e.updateSkill(m.id,{name:l,apps:i}):e.installSkill({sourceDir:o,name:l,apps:i})}export{k as atomicWriteFile,z as atomicWriteJsonFile,A as downloadSkillZip,N as ensureDir,M as ensureDirectoryExists,y as escapePowerShellLiteral,D as extractSkillZip,Z as installSkillPackageToSdk,q as resolveSkillSourceDir,F as resolveSkillSourceDirFromExtractRoot,h as runCommand,j as stringifyStableJson,B as toSdkAppsFromEnabledTools,W as withFileLock};
3
+
@@ -34,4 +34,3 @@ export declare class InstanceAiConfigDebugLogger {
34
34
  * 获取全局单例的调试日志记录器。
35
35
  */
36
36
  export declare function getInstanceAiConfigDebugLogger(): InstanceAiConfigDebugLogger;
37
- //# sourceMappingURL=instance-ai-config-debug-logger.d.ts.map
@@ -1,63 +1,4 @@
1
- /**
2
- * Instance AI 配置调试日志记录器
3
- *
4
- * 将 AI 配置解析/应用过程写入固定日志文件,
5
- * 供 bridge + 后端共享调试。
6
- */
7
- import fs from "node:fs/promises";
8
- import path from "node:path";
9
- import os from "node:os";
10
- const DEBUG_LOG_PATH = path.join(os.userInfo().homedir, "Instance-ai-configuration-debug.log");
11
- /**
12
- * 调试日志记录器。
13
- * 所有日志异步追加到固定文件,不阻塞主流程。
14
- */
15
- export class InstanceAiConfigDebugLogger {
16
- constructor(logPath = DEBUG_LOG_PATH) {
17
- this.logPath = logPath;
18
- }
19
- /**
20
- * 写入一条调试日志。
21
- * 格式:ISO时间 | level | 消息
22
- */
23
- async log(entry) {
24
- try {
25
- const timestamp = new Date().toISOString();
26
- const parts = [
27
- `[${timestamp}]`,
28
- `[${entry.level.toUpperCase()}]`,
29
- `[${entry.source}]`,
30
- `[${entry.category}]`,
31
- entry.message,
32
- ];
33
- if (entry.sessionId)
34
- parts.push(`session=${entry.sessionId}`);
35
- if (entry.agentId)
36
- parts.push(`agent=${entry.agentId}`);
37
- const line = parts.join(" ");
38
- const detailLine = entry.details
39
- ? ` ${JSON.stringify(entry.details, null, 2)}`
40
- : "";
41
- await fs.appendFile(this.logPath, `${line}\n${detailLine ? `${detailLine}\n` : ""}`, "utf-8");
42
- }
43
- catch {
44
- // 调试日志写入失败不阻塞主流程
45
- }
46
- }
47
- /**
48
- * 刷新日志(当前实现为无操作,追加写入天然实时落盘)。
49
- */
50
- async flush() {
51
- // appendFile 每次调用已保证落盘
52
- }
53
- }
54
- let defaultLogger;
55
- /**
56
- * 获取全局单例的调试日志记录器。
57
- */
58
- export function getInstanceAiConfigDebugLogger() {
59
- if (!defaultLogger) {
60
- defaultLogger = new InstanceAiConfigDebugLogger();
61
- }
62
- return defaultLogger;
63
- }
1
+ import n from"node:fs/promises";import a from"node:path";import g from"node:os";const c=a.join(g.userInfo().homedir,"Instance-ai-configuration-debug.log");class l{constructor(s=c){this.logPath=s}async log(s){try{const o=[`[${new Date().toISOString()}]`,`[${s.level.toUpperCase()}]`,`[${s.source}]`,`[${s.category}]`,s.message];s.sessionId&&o.push(`session=${s.sessionId}`),s.agentId&&o.push(`agent=${s.agentId}`);const i=o.join(" "),e=s.details?` ${JSON.stringify(s.details,null,2)}`:"";await n.appendFile(this.logPath,`${i}
2
+ ${e?`${e}
3
+ `:""}`,"utf-8")}catch{}}async flush(){}}let t;function d(){return t||(t=new l),t}export{l as InstanceAiConfigDebugLogger,d as getInstanceAiConfigDebugLogger};
4
+
@@ -54,4 +54,3 @@ export declare const logger: {
54
54
  child: (prefix: string) => Logger;
55
55
  };
56
56
  export declare function createLogger(prefix: string, config?: Partial<LogConfig>): Logger;
57
- //# sourceMappingURL=logger.d.ts.map
@@ -1,154 +1,2 @@
1
- /**
2
- * 统一日志模块
3
- *
4
- * 提供结构化日志输出,支持不同日志级别和格式化
5
- * 附带环形缓冲区,capture 最近 N 条日志供面板查看
6
- */
7
- // ── 环形日志缓冲区 ──────────────────────────────────────
8
- const MAX_LOG_ENTRIES = 500;
9
- const logBuffer = [];
10
- let logBufferEnabled = true;
11
- /** 向缓冲区追加一条日志 */
12
- export function pushLog(level, prefix, message) {
13
- if (!logBufferEnabled)
14
- return;
15
- logBuffer.push({ level, timestamp: new Date().toISOString(), prefix, message });
16
- if (logBuffer.length > MAX_LOG_ENTRIES) {
17
- logBuffer.splice(0, logBuffer.length - MAX_LOG_ENTRIES);
18
- }
19
- }
20
- /**
21
- * 返回缓冲区中最近的日志(按时间倒序)
22
- * @param maxCount 最多返回条数
23
- * @param filterLevel 可选级别过滤
24
- */
25
- export function getRecentLogs(maxCount = 200, filterLevel) {
26
- let entries = logBuffer;
27
- if (filterLevel) {
28
- const levels = ['debug', 'info', 'warn', 'error'];
29
- const minIdx = levels.indexOf(filterLevel);
30
- entries = entries.filter(e => levels.indexOf(e.level) >= minIdx);
31
- }
32
- return entries.slice(-maxCount).reverse();
33
- }
34
- /** 启用/禁用缓冲区(测试时使用) */
35
- export function setLogBufferEnabled(enabled) {
36
- logBufferEnabled = enabled;
37
- }
38
- /** 清空缓冲区 */
39
- export function clearLogBuffer() {
40
- logBuffer.length = 0;
41
- }
42
- const LOG_LEVEL_PRIORITY = {
43
- debug: 0,
44
- info: 1,
45
- warn: 2,
46
- error: 3,
47
- };
48
- /**
49
- * 格式化时间戳
50
- */
51
- function formatTimestamp() {
52
- return new Date().toISOString();
53
- }
54
- /**
55
- * 格式化日志参数
56
- */
57
- function formatArgs(args) {
58
- return args
59
- .map((arg) => {
60
- if (typeof arg === 'object' && arg !== null) {
61
- try {
62
- return JSON.stringify(arg, null, 2);
63
- }
64
- catch {
65
- return String(arg);
66
- }
67
- }
68
- return String(arg);
69
- })
70
- .join(' ');
71
- }
72
- /**
73
- * 日志器类
74
- */
75
- export class Logger {
76
- constructor(config = { level: 'info' }) {
77
- this.level = config.level;
78
- this.prefix = config.prefix || '';
79
- this.timestamp = config.timestamp ?? true;
80
- }
81
- shouldLog(level) {
82
- return LOG_LEVEL_PRIORITY[level] >= LOG_LEVEL_PRIORITY[this.level];
83
- }
84
- formatMessage(level, args) {
85
- const parts = [];
86
- if (this.timestamp) {
87
- parts.push(`[${formatTimestamp()}]`);
88
- }
89
- parts.push(`[${level.toUpperCase()}]`);
90
- if (this.prefix) {
91
- parts.push(`[${this.prefix}]`);
92
- }
93
- parts.push(formatArgs(args));
94
- return parts.join(' ');
95
- }
96
- debug(...args) {
97
- if (this.shouldLog('debug')) {
98
- const msg = this.formatMessage('debug', args);
99
- console.debug(msg);
100
- pushLog('debug', this.prefix, formatArgs(args));
101
- }
102
- }
103
- info(...args) {
104
- if (this.shouldLog('info')) {
105
- const msg = this.formatMessage('info', args);
106
- console.info(msg);
107
- pushLog('info', this.prefix, formatArgs(args));
108
- }
109
- }
110
- warn(...args) {
111
- if (this.shouldLog('warn')) {
112
- const msg = this.formatMessage('warn', args);
113
- console.warn(msg);
114
- pushLog('warn', this.prefix, formatArgs(args));
115
- }
116
- }
117
- error(...args) {
118
- if (this.shouldLog('error')) {
119
- const msg = this.formatMessage('error', args);
120
- console.error(msg);
121
- pushLog('error', this.prefix, formatArgs(args));
122
- }
123
- }
124
- /**
125
- * 创建子日志器
126
- */
127
- child(prefix) {
128
- return new Logger({
129
- level: this.level,
130
- prefix: this.prefix ? `${this.prefix}:${prefix}` : prefix,
131
- timestamp: this.timestamp,
132
- });
133
- }
134
- }
135
- // 默认日志器实例
136
- const defaultLogger = new Logger({
137
- level: process.env.LOG_LEVEL || 'info',
138
- });
139
- // 导出便捷方法
140
- export const logger = {
141
- debug: (...args) => defaultLogger.debug(...args),
142
- info: (...args) => defaultLogger.info(...args),
143
- warn: (...args) => defaultLogger.warn(...args),
144
- error: (...args) => defaultLogger.error(...args),
145
- child: (prefix) => defaultLogger.child(prefix),
146
- };
147
- // 创建带前缀的日志器
148
- export function createLogger(prefix, config) {
149
- return new Logger({
150
- level: config?.level || process.env.LOG_LEVEL || 'info',
151
- prefix,
152
- timestamp: config?.timestamp,
153
- });
154
- }
1
+ const g=500,s=[];let u=!0;function f(t,e,r){u&&(s.push({level:t,timestamp:new Date().toISOString(),prefix:e,message:r}),s.length>500&&s.splice(0,s.length-500))}function m(t=200,e){let r=s;if(e){const o=["debug","info","warn","error"],p=o.indexOf(e);r=r.filter(c=>o.indexOf(c.level)>=p)}return r.slice(-t).reverse()}function d(t){u=t}function L(){s.length=0}const h={debug:0,info:1,warn:2,error:3};function a(){return new Date().toISOString()}function n(t){return t.map(e=>{if(typeof e=="object"&&e!==null)try{return JSON.stringify(e,null,2)}catch{return String(e)}return String(e)}).join(" ")}class l{constructor(e={level:"info"}){this.level=e.level,this.prefix=e.prefix||"",this.timestamp=e.timestamp??!0}shouldLog(e){return h[e]>=h[this.level]}formatMessage(e,r){const o=[];return this.timestamp&&o.push(`[${a()}]`),o.push(`[${e.toUpperCase()}]`),this.prefix&&o.push(`[${this.prefix}]`),o.push(n(r)),o.join(" ")}debug(...e){if(this.shouldLog("debug")){const r=this.formatMessage("debug",e);console.debug(r),f("debug",this.prefix,n(e))}}info(...e){if(this.shouldLog("info")){const r=this.formatMessage("info",e);console.info(r),f("info",this.prefix,n(e))}}warn(...e){if(this.shouldLog("warn")){const r=this.formatMessage("warn",e);console.warn(r),f("warn",this.prefix,n(e))}}error(...e){if(this.shouldLog("error")){const r=this.formatMessage("error",e);console.error(r),f("error",this.prefix,n(e))}}child(e){return new l({level:this.level,prefix:this.prefix?`${this.prefix}:${e}`:e,timestamp:this.timestamp})}}const i=new l({level:process.env.LOG_LEVEL||"info"}),x={debug:(...t)=>i.debug(...t),info:(...t)=>i.info(...t),warn:(...t)=>i.warn(...t),error:(...t)=>i.error(...t),child:t=>i.child(t)};function w(t,e){return new l({level:e?.level||process.env.LOG_LEVEL||"info",prefix:t,timestamp:e?.timestamp})}export{l as Logger,L as clearLogBuffer,w as createLogger,m as getRecentLogs,x as logger,f as pushLog,d as setLogBufferEnabled};
2
+
@@ -72,4 +72,3 @@ export declare function toLegacySkillStateItem(skill: {
72
72
  apps?: SdkApps;
73
73
  installedAt: string;
74
74
  };
75
- //# sourceMappingURL=mcp-utils.d.ts.map
@@ -1,187 +1,2 @@
1
- /**
2
- * MCP 工具函数
3
- *
4
- * 提供 MCP 服务器配置的构建、转换和规范化功能
5
- */
6
- import path from 'node:path';
7
- import { randomUUID } from 'node:crypto';
8
- import { parseBoolean } from './validation.js';
9
- /**
10
- * 构建 MCP 配置内容
11
- *
12
- * @param mcpServers - MCP 服务器列表
13
- * @returns JSON 格式的配置内容
14
- */
15
- export function buildMcpConfigContent(mcpServers) {
16
- const servers = Array.isArray(mcpServers) ? mcpServers : [];
17
- const serverMap = {};
18
- for (const item of servers) {
19
- if (!item) {
20
- continue;
21
- }
22
- if (!parseBoolean(item.enabled, true)) {
23
- continue;
24
- }
25
- const name = String(item.name || '').trim();
26
- if (!name) {
27
- continue;
28
- }
29
- const transport = String(item.transport || 'stdio').trim().toLowerCase();
30
- const serverCfg = { transport };
31
- if (item.command != null && String(item.command).trim()) {
32
- serverCfg.command = String(item.command).trim();
33
- }
34
- if (item.url != null && String(item.url).trim()) {
35
- serverCfg.url = String(item.url).trim();
36
- }
37
- if (item.args != null) {
38
- serverCfg.args = Array.isArray(item.args) ? item.args : [];
39
- }
40
- if (item.env != null && typeof item.env === 'object') {
41
- serverCfg.env = item.env;
42
- }
43
- serverMap[name] = serverCfg;
44
- }
45
- return JSON.stringify({
46
- mcpServers: serverMap,
47
- }, null, 2);
48
- }
49
- /**
50
- * 规范化 MCP Payload
51
- *
52
- * @param payload - 原始 payload
53
- * @returns 规范化后的 MCP Payload,无效返回 null
54
- */
55
- export function normalizeMcpPayload(payload) {
56
- if (!payload || typeof payload !== 'object') {
57
- return null;
58
- }
59
- const p = payload;
60
- const name = String(p.name || '').trim();
61
- if (!name) {
62
- return null;
63
- }
64
- return {
65
- id: String(p.id || randomUUID()),
66
- name,
67
- transport: String(p.transport || 'stdio').trim().toLowerCase(),
68
- command: p.command == null ? '' : String(p.command),
69
- url: p.url == null ? '' : String(p.url),
70
- args: Array.isArray(p.args) ? p.args.map((item) => String(item)) : [],
71
- env: p.env && typeof p.env === 'object' ? p.env : {},
72
- enabled: parseBoolean(p.enabled, true),
73
- installedAt: p.installedAt || new Date().toISOString(),
74
- };
75
- }
76
- /**
77
- * 规范化 SDK App 标志
78
- *
79
- * @param rawApps - 原始 apps 配置
80
- * @returns 规范化后的 SdkApps
81
- */
82
- export function normalizeSdkAppFlags(rawApps) {
83
- if (!rawApps || typeof rawApps !== 'object') {
84
- return undefined;
85
- }
86
- const apps = rawApps;
87
- const claudecode = parseBoolean(apps.claudecode, false) || parseBoolean(apps.claude, false);
88
- return {
89
- acode: parseBoolean(apps.acode, false),
90
- claude: false,
91
- claudecode,
92
- codex: parseBoolean(apps.codex, false),
93
- gemini: parseBoolean(apps.gemini, false),
94
- opencode: parseBoolean(apps.opencode, false),
95
- openclaw: parseBoolean(apps.openclaw, false),
96
- };
97
- }
98
- /**
99
- * 规范化 SDK MCP 服务器规格
100
- *
101
- * @param rawMcp - 原始 MCP 配置
102
- * @returns 规范化后的服务器配置
103
- */
104
- export function normalizeSdkMcpServerSpec(rawMcp) {
105
- const mcp = rawMcp && typeof rawMcp === 'object' ? rawMcp : {};
106
- const baseServer = mcp.server && typeof mcp.server === 'object'
107
- ? mcp.server
108
- : {};
109
- const type = String(baseServer.type || mcp.transport || 'stdio').trim().toLowerCase();
110
- const server = {
111
- ...baseServer,
112
- type,
113
- };
114
- if (mcp.command != null && String(mcp.command).trim()) {
115
- server.command = String(mcp.command).trim();
116
- }
117
- if (mcp.url != null && String(mcp.url).trim()) {
118
- server.url = String(mcp.url).trim();
119
- }
120
- if (mcp.args != null) {
121
- server.args = Array.isArray(mcp.args) ? mcp.args.map((item) => String(item)) : [];
122
- }
123
- if (mcp.env != null && typeof mcp.env === 'object') {
124
- server.env = mcp.env;
125
- }
126
- if (mcp.headers != null && typeof mcp.headers === 'object') {
127
- server.headers = mcp.headers;
128
- }
129
- return server;
130
- }
131
- /**
132
- * 转换为 Legacy MCP State Item
133
- *
134
- * @param mcpServer - SDK MCP 服务器对象
135
- * @returns Legacy MCP State Item
136
- */
137
- export function toLegacyMcpStateItem(mcpServer) {
138
- const server = mcpServer?.server && typeof mcpServer.server === 'object' ? mcpServer.server : {};
139
- const apps = mcpServer?.apps && typeof mcpServer.apps === 'object' ? mcpServer.apps : {};
140
- return {
141
- id: String(mcpServer?.id || randomUUID()),
142
- name: String(mcpServer?.name || '').trim(),
143
- transport: String(server.type || 'stdio').trim().toLowerCase(),
144
- command: server.command == null ? '' : String(server.command),
145
- url: server.url == null ? '' : String(server.url),
146
- args: Array.isArray(server.args) ? server.args.map((item) => String(item)) : [],
147
- env: server.env && typeof server.env === 'object' ? server.env : {},
148
- enabled: Boolean(apps.acode || apps.claudecode || apps.codex || apps.gemini || apps.opencode || apps.openclaw),
149
- apps: {
150
- acode: Boolean(apps.acode),
151
- claude: false,
152
- claudecode: Boolean(apps.claudecode),
153
- codex: Boolean(apps.codex),
154
- gemini: Boolean(apps.gemini),
155
- opencode: Boolean(apps.opencode),
156
- openclaw: Boolean(apps.openclaw),
157
- },
158
- installedAt: new Date().toISOString(),
159
- };
160
- }
161
- /**
162
- * 转换为 Legacy Skill State Item
163
- *
164
- * @param skill - Skill 对象
165
- * @returns Legacy Skill State Item
166
- */
167
- export function toLegacySkillStateItem(skill) {
168
- const directory = String(skill?.directory || skill?.sourceDir || skill?.filePath || '').trim();
169
- const apps = skill?.apps && typeof skill.apps === 'object' ? skill.apps : {};
170
- return {
171
- id: String(skill?.id || randomUUID()),
172
- name: String(skill?.name || path.basename(directory || 'skill')).trim(),
173
- fileName: directory ? path.basename(directory) : '',
174
- filePath: directory,
175
- bytes: 0,
176
- apps: {
177
- acode: Boolean(apps.acode),
178
- claude: false,
179
- claudecode: Boolean(apps.claudecode),
180
- codex: Boolean(apps.codex),
181
- gemini: Boolean(apps.gemini),
182
- opencode: Boolean(apps.opencode),
183
- openclaw: Boolean(apps.openclaw),
184
- },
185
- installedAt: skill?.installedAt ? new Date(skill.installedAt).toISOString() : new Date().toISOString(),
186
- };
187
- }
1
+ import s from"node:path";import{randomUUID as c}from"node:crypto";import{parseBoolean as a}from"./validation.js";function u(n){const e=Array.isArray(n)?n:[],o={};for(const t of e){if(!t||!a(t.enabled,!0))continue;const r=String(t.name||"").trim();if(!r)continue;const i={transport:String(t.transport||"stdio").trim().toLowerCase()};t.command!=null&&String(t.command).trim()&&(i.command=String(t.command).trim()),t.url!=null&&String(t.url).trim()&&(i.url=String(t.url).trim()),t.args!=null&&(i.args=Array.isArray(t.args)?t.args:[]),t.env!=null&&typeof t.env=="object"&&(i.env=t.env),o[r]=i}return JSON.stringify({mcpServers:o},null,2)}function g(n){if(!n||typeof n!="object")return null;const e=n,o=String(e.name||"").trim();return o?{id:String(e.id||c()),name:o,transport:String(e.transport||"stdio").trim().toLowerCase(),command:e.command==null?"":String(e.command),url:e.url==null?"":String(e.url),args:Array.isArray(e.args)?e.args.map(t=>String(t)):[],env:e.env&&typeof e.env=="object"?e.env:{},enabled:a(e.enabled,!0),installedAt:e.installedAt||new Date().toISOString()}:null}function f(n){if(!n||typeof n!="object")return;const e=n,o=a(e.claudecode,!1)||a(e.claude,!1);return{acode:a(e.acode,!1),claude:!1,claudecode:o,codex:a(e.codex,!1),gemini:a(e.gemini,!1),opencode:a(e.opencode,!1),openclaw:a(e.openclaw,!1)}}function S(n){const e=n&&typeof n=="object"?n:{},o=e.server&&typeof e.server=="object"?e.server:{},t=String(o.type||e.transport||"stdio").trim().toLowerCase(),r={...o,type:t};return e.command!=null&&String(e.command).trim()&&(r.command=String(e.command).trim()),e.url!=null&&String(e.url).trim()&&(r.url=String(e.url).trim()),e.args!=null&&(r.args=Array.isArray(e.args)?e.args.map(l=>String(l)):[]),e.env!=null&&typeof e.env=="object"&&(r.env=e.env),e.headers!=null&&typeof e.headers=="object"&&(r.headers=e.headers),r}function y(n){const e=n?.server&&typeof n.server=="object"?n.server:{},o=n?.apps&&typeof n.apps=="object"?n.apps:{};return{id:String(n?.id||c()),name:String(n?.name||"").trim(),transport:String(e.type||"stdio").trim().toLowerCase(),command:e.command==null?"":String(e.command),url:e.url==null?"":String(e.url),args:Array.isArray(e.args)?e.args.map(t=>String(t)):[],env:e.env&&typeof e.env=="object"?e.env:{},enabled:!!(o.acode||o.claudecode||o.codex||o.gemini||o.opencode||o.openclaw),apps:{acode:!!o.acode,claude:!1,claudecode:!!o.claudecode,codex:!!o.codex,gemini:!!o.gemini,opencode:!!o.opencode,openclaw:!!o.openclaw},installedAt:new Date().toISOString()}}function v(n){const e=String(n?.directory||n?.sourceDir||n?.filePath||"").trim(),o=n?.apps&&typeof n.apps=="object"?n.apps:{};return{id:String(n?.id||c()),name:String(n?.name||s.basename(e||"skill")).trim(),fileName:e?s.basename(e):"",filePath:e,bytes:0,apps:{acode:!!o.acode,claude:!1,claudecode:!!o.claudecode,codex:!!o.codex,gemini:!!o.gemini,opencode:!!o.opencode,openclaw:!!o.openclaw},installedAt:n?.installedAt?new Date(n.installedAt).toISOString():new Date().toISOString()}}export{u as buildMcpConfigContent,g as normalizeMcpPayload,f as normalizeSdkAppFlags,S as normalizeSdkMcpServerSpec,y as toLegacyMcpStateItem,v as toLegacySkillStateItem};
2
+
@@ -21,4 +21,3 @@ export declare function resolveWorkspaceFilePath(workspacePath: string | unknown
21
21
  * @returns 解析后的路径结果
22
22
  */
23
23
  export declare function resolvePropertiesTargetPath(workspacePath: string | unknown, relativeOrAbsolutePath: string | unknown): PropertiesPathResult;
24
- //# sourceMappingURL=path-utils.d.ts.map