aws-runtime-bridge 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/README.md +56 -0
  2. package/dist/adapter/AdapterRegistry.d.ts +53 -0
  3. package/dist/adapter/AdapterRegistry.d.ts.map +1 -0
  4. package/dist/adapter/AdapterRegistry.js +100 -0
  5. package/dist/adapter/AdapterRegistry.test.d.ts +5 -0
  6. package/dist/adapter/AdapterRegistry.test.d.ts.map +1 -0
  7. package/dist/adapter/AdapterRegistry.test.js +109 -0
  8. package/dist/adapter/ClaudeSdkAdapter.d.ts +120 -0
  9. package/dist/adapter/ClaudeSdkAdapter.d.ts.map +1 -0
  10. package/dist/adapter/ClaudeSdkAdapter.js +1140 -0
  11. package/dist/adapter/ClaudeSdkAdapter.test.d.ts +2 -0
  12. package/dist/adapter/ClaudeSdkAdapter.test.d.ts.map +1 -0
  13. package/dist/adapter/ClaudeSdkAdapter.test.js +95 -0
  14. package/dist/adapter/CodexSdkAdapter.d.ts +48 -0
  15. package/dist/adapter/CodexSdkAdapter.d.ts.map +1 -0
  16. package/dist/adapter/CodexSdkAdapter.js +750 -0
  17. package/dist/adapter/CodexSdkAdapter.test.d.ts +2 -0
  18. package/dist/adapter/CodexSdkAdapter.test.d.ts.map +1 -0
  19. package/dist/adapter/CodexSdkAdapter.test.js +245 -0
  20. package/dist/adapter/OpencodeSdkAdapter.d.ts +45 -0
  21. package/dist/adapter/OpencodeSdkAdapter.d.ts.map +1 -0
  22. package/dist/adapter/OpencodeSdkAdapter.js +622 -0
  23. package/dist/adapter/OpencodeSdkAdapter.test.d.ts +2 -0
  24. package/dist/adapter/OpencodeSdkAdapter.test.d.ts.map +1 -0
  25. package/dist/adapter/OpencodeSdkAdapter.test.js +14 -0
  26. package/dist/adapter/SdkProviderSpi.d.ts +15 -0
  27. package/dist/adapter/SdkProviderSpi.d.ts.map +1 -0
  28. package/dist/adapter/SdkProviderSpi.js +46 -0
  29. package/dist/adapter/adapter.test.d.ts +5 -0
  30. package/dist/adapter/adapter.test.d.ts.map +1 -0
  31. package/dist/adapter/adapter.test.js +180 -0
  32. package/dist/adapter/index.d.ts +11 -0
  33. package/dist/adapter/index.d.ts.map +1 -0
  34. package/dist/adapter/index.js +10 -0
  35. package/dist/adapter/types.d.ts +278 -0
  36. package/dist/adapter/types.d.ts.map +1 -0
  37. package/dist/adapter/types.js +278 -0
  38. package/dist/adapter/types.test.d.ts +2 -0
  39. package/dist/adapter/types.test.d.ts.map +1 -0
  40. package/dist/adapter/types.test.js +59 -0
  41. package/dist/adapters/cc-switch/common.d.ts +52 -0
  42. package/dist/adapters/cc-switch/common.d.ts.map +1 -0
  43. package/dist/adapters/cc-switch/common.js +61 -0
  44. package/dist/adapters/cc-switch/index.d.ts +25 -0
  45. package/dist/adapters/cc-switch/index.d.ts.map +1 -0
  46. package/dist/adapters/cc-switch/index.js +51 -0
  47. package/dist/adapters/cc-switch/mcp-claude.d.ts +15 -0
  48. package/dist/adapters/cc-switch/mcp-claude.d.ts.map +1 -0
  49. package/dist/adapters/cc-switch/mcp-claude.js +88 -0
  50. package/dist/adapters/cc-switch/mcp-claudecode.d.ts +15 -0
  51. package/dist/adapters/cc-switch/mcp-claudecode.d.ts.map +1 -0
  52. package/dist/adapters/cc-switch/mcp-claudecode.js +77 -0
  53. package/dist/adapters/cc-switch/mcp-codex.d.ts +17 -0
  54. package/dist/adapters/cc-switch/mcp-codex.d.ts.map +1 -0
  55. package/dist/adapters/cc-switch/mcp-codex.js +248 -0
  56. package/dist/adapters/cc-switch/mcp-codex.test.d.ts +2 -0
  57. package/dist/adapters/cc-switch/mcp-codex.test.d.ts.map +1 -0
  58. package/dist/adapters/cc-switch/mcp-codex.test.js +125 -0
  59. package/dist/adapters/cc-switch/mcp-opencode.d.ts +23 -0
  60. package/dist/adapters/cc-switch/mcp-opencode.d.ts.map +1 -0
  61. package/dist/adapters/cc-switch/mcp-opencode.js +100 -0
  62. package/dist/adapters/cc-switch/mcp-placeholder.d.ts +14 -0
  63. package/dist/adapters/cc-switch/mcp-placeholder.d.ts.map +1 -0
  64. package/dist/adapters/cc-switch/mcp-placeholder.js +19 -0
  65. package/dist/adapters/cc-switch/skill-claude.d.ts +15 -0
  66. package/dist/adapters/cc-switch/skill-claude.d.ts.map +1 -0
  67. package/dist/adapters/cc-switch/skill-claude.js +91 -0
  68. package/dist/adapters/cc-switch/skill-claudecode.d.ts +15 -0
  69. package/dist/adapters/cc-switch/skill-claudecode.d.ts.map +1 -0
  70. package/dist/adapters/cc-switch/skill-claudecode.js +91 -0
  71. package/dist/adapters/cc-switch/skill-opencode.d.ts +15 -0
  72. package/dist/adapters/cc-switch/skill-opencode.d.ts.map +1 -0
  73. package/dist/adapters/cc-switch/skill-opencode.js +95 -0
  74. package/dist/adapters/cc-switch/skill-placeholder.d.ts +14 -0
  75. package/dist/adapters/cc-switch/skill-placeholder.d.ts.map +1 -0
  76. package/dist/adapters/cc-switch/skill-placeholder.js +19 -0
  77. package/dist/config.d.ts +76 -0
  78. package/dist/config.d.ts.map +1 -0
  79. package/dist/config.js +109 -0
  80. package/dist/index.d.ts +8 -0
  81. package/dist/index.d.ts.map +1 -0
  82. package/dist/index.js +503 -0
  83. package/dist/middleware/auth.d.ts +12 -0
  84. package/dist/middleware/auth.d.ts.map +1 -0
  85. package/dist/middleware/auth.js +18 -0
  86. package/dist/routes/ai-sources.d.ts +2 -0
  87. package/dist/routes/ai-sources.d.ts.map +1 -0
  88. package/dist/routes/ai-sources.js +136 -0
  89. package/dist/routes/ai-sources.test.d.ts +2 -0
  90. package/dist/routes/ai-sources.test.d.ts.map +1 -0
  91. package/dist/routes/ai-sources.test.js +148 -0
  92. package/dist/routes/aws-mcp.d.ts +10 -0
  93. package/dist/routes/aws-mcp.d.ts.map +1 -0
  94. package/dist/routes/aws-mcp.js +74 -0
  95. package/dist/routes/aws-mcp.test.d.ts +2 -0
  96. package/dist/routes/aws-mcp.test.d.ts.map +1 -0
  97. package/dist/routes/aws-mcp.test.js +42 -0
  98. package/dist/routes/file-browser.d.ts +7 -0
  99. package/dist/routes/file-browser.d.ts.map +1 -0
  100. package/dist/routes/file-browser.js +227 -0
  101. package/dist/routes/file-browser.test.d.ts +5 -0
  102. package/dist/routes/file-browser.test.d.ts.map +1 -0
  103. package/dist/routes/file-browser.test.js +88 -0
  104. package/dist/routes/git.d.ts +7 -0
  105. package/dist/routes/git.d.ts.map +1 -0
  106. package/dist/routes/git.js +470 -0
  107. package/dist/routes/git.test.d.ts +5 -0
  108. package/dist/routes/git.test.d.ts.map +1 -0
  109. package/dist/routes/git.test.js +87 -0
  110. package/dist/routes/instance.d.ts +3 -0
  111. package/dist/routes/instance.d.ts.map +1 -0
  112. package/dist/routes/instance.js +170 -0
  113. package/dist/routes/instance.test.d.ts +5 -0
  114. package/dist/routes/instance.test.d.ts.map +1 -0
  115. package/dist/routes/instance.test.js +64 -0
  116. package/dist/routes/mcp.d.ts +2 -0
  117. package/dist/routes/mcp.d.ts.map +1 -0
  118. package/dist/routes/mcp.js +171 -0
  119. package/dist/routes/mcp.test.d.ts +5 -0
  120. package/dist/routes/mcp.test.d.ts.map +1 -0
  121. package/dist/routes/mcp.test.js +84 -0
  122. package/dist/routes/memory.d.ts +13 -0
  123. package/dist/routes/memory.d.ts.map +1 -0
  124. package/dist/routes/memory.js +429 -0
  125. package/dist/routes/processes.d.ts +7 -0
  126. package/dist/routes/processes.d.ts.map +1 -0
  127. package/dist/routes/processes.js +245 -0
  128. package/dist/routes/properties.d.ts +7 -0
  129. package/dist/routes/properties.d.ts.map +1 -0
  130. package/dist/routes/properties.js +72 -0
  131. package/dist/routes/properties.test.d.ts +5 -0
  132. package/dist/routes/properties.test.d.ts.map +1 -0
  133. package/dist/routes/properties.test.js +72 -0
  134. package/dist/routes/sessions.d.ts +7 -0
  135. package/dist/routes/sessions.d.ts.map +1 -0
  136. package/dist/routes/sessions.js +808 -0
  137. package/dist/routes/sessions.test.d.ts +5 -0
  138. package/dist/routes/sessions.test.d.ts.map +1 -0
  139. package/dist/routes/sessions.test.js +70 -0
  140. package/dist/routes/skills.d.ts +2 -0
  141. package/dist/routes/skills.d.ts.map +1 -0
  142. package/dist/routes/skills.js +162 -0
  143. package/dist/routes/skills.test.d.ts +5 -0
  144. package/dist/routes/skills.test.d.ts.map +1 -0
  145. package/dist/routes/skills.test.js +42 -0
  146. package/dist/routes/terminal.d.ts +18 -0
  147. package/dist/routes/terminal.d.ts.map +1 -0
  148. package/dist/routes/terminal.js +663 -0
  149. package/dist/routes/terminal.test.d.ts +2 -0
  150. package/dist/routes/terminal.test.d.ts.map +1 -0
  151. package/dist/routes/terminal.test.js +91 -0
  152. package/dist/routes/yml.d.ts +7 -0
  153. package/dist/routes/yml.d.ts.map +1 -0
  154. package/dist/routes/yml.js +223 -0
  155. package/dist/routes/yml.test.d.ts +5 -0
  156. package/dist/routes/yml.test.d.ts.map +1 -0
  157. package/dist/routes/yml.test.js +58 -0
  158. package/dist/services/agent-process-manager.d.ts +241 -0
  159. package/dist/services/agent-process-manager.d.ts.map +1 -0
  160. package/dist/services/agent-process-manager.js +762 -0
  161. package/dist/services/auto-register.d.ts +94 -0
  162. package/dist/services/auto-register.d.ts.map +1 -0
  163. package/dist/services/auto-register.js +510 -0
  164. package/dist/services/aws-client-agent-mcp.d.ts +26 -0
  165. package/dist/services/aws-client-agent-mcp.d.ts.map +1 -0
  166. package/dist/services/aws-client-agent-mcp.js +142 -0
  167. package/dist/services/aws-client-agent-mcp.test.d.ts +2 -0
  168. package/dist/services/aws-client-agent-mcp.test.d.ts.map +1 -0
  169. package/dist/services/aws-client-agent-mcp.test.js +89 -0
  170. package/dist/services/aws-mcp-http.d.ts +11 -0
  171. package/dist/services/aws-mcp-http.d.ts.map +1 -0
  172. package/dist/services/aws-mcp-http.js +225 -0
  173. package/dist/services/aws-mcp-http.test.d.ts +2 -0
  174. package/dist/services/aws-mcp-http.test.d.ts.map +1 -0
  175. package/dist/services/aws-mcp-http.test.js +27 -0
  176. package/dist/services/cc-switch-sdk.d.ts +18 -0
  177. package/dist/services/cc-switch-sdk.d.ts.map +1 -0
  178. package/dist/services/cc-switch-sdk.js +117 -0
  179. package/dist/services/easytier-manager.d.ts +106 -0
  180. package/dist/services/easytier-manager.d.ts.map +1 -0
  181. package/dist/services/easytier-manager.js +331 -0
  182. package/dist/services/easytier-manager.test.d.ts +5 -0
  183. package/dist/services/easytier-manager.test.d.ts.map +1 -0
  184. package/dist/services/easytier-manager.test.js +98 -0
  185. package/dist/services/instance-init-service.d.ts +35 -0
  186. package/dist/services/instance-init-service.d.ts.map +1 -0
  187. package/dist/services/instance-init-service.js +190 -0
  188. package/dist/services/instance-service.d.ts +88 -0
  189. package/dist/services/instance-service.d.ts.map +1 -0
  190. package/dist/services/instance-service.js +236 -0
  191. package/dist/services/instance-state.d.ts +36 -0
  192. package/dist/services/instance-state.d.ts.map +1 -0
  193. package/dist/services/instance-state.js +79 -0
  194. package/dist/services/instance-state.test.d.ts +2 -0
  195. package/dist/services/instance-state.test.d.ts.map +1 -0
  196. package/dist/services/instance-state.test.js +213 -0
  197. package/dist/services/memory-service.d.ts +195 -0
  198. package/dist/services/memory-service.d.ts.map +1 -0
  199. package/dist/services/memory-service.js +650 -0
  200. package/dist/services/orphan-monitor.d.ts +94 -0
  201. package/dist/services/orphan-monitor.d.ts.map +1 -0
  202. package/dist/services/orphan-monitor.js +321 -0
  203. package/dist/services/process-detector.d.ts +175 -0
  204. package/dist/services/process-detector.d.ts.map +1 -0
  205. package/dist/services/process-detector.js +992 -0
  206. package/dist/services/process-registry.d.ts +208 -0
  207. package/dist/services/process-registry.d.ts.map +1 -0
  208. package/dist/services/process-registry.js +354 -0
  209. package/dist/services/session-lookup.d.ts +20 -0
  210. package/dist/services/session-lookup.d.ts.map +1 -0
  211. package/dist/services/session-lookup.js +43 -0
  212. package/dist/services/session-output.d.ts +56 -0
  213. package/dist/services/session-output.d.ts.map +1 -0
  214. package/dist/services/session-output.js +122 -0
  215. package/dist/services/session-output.test.d.ts +5 -0
  216. package/dist/services/session-output.test.d.ts.map +1 -0
  217. package/dist/services/session-output.test.js +68 -0
  218. package/dist/services/terminal-persistence.d.ts +51 -0
  219. package/dist/services/terminal-persistence.d.ts.map +1 -0
  220. package/dist/services/terminal-persistence.js +125 -0
  221. package/dist/services/terminal-persistence.test.d.ts +5 -0
  222. package/dist/services/terminal-persistence.test.d.ts.map +1 -0
  223. package/dist/services/terminal-persistence.test.js +88 -0
  224. package/dist/services/tool-installer.d.ts +15 -0
  225. package/dist/services/tool-installer.d.ts.map +1 -0
  226. package/dist/services/tool-installer.js +297 -0
  227. package/dist/services/tool-installer.test.d.ts +2 -0
  228. package/dist/services/tool-installer.test.d.ts.map +1 -0
  229. package/dist/services/tool-installer.test.js +102 -0
  230. package/dist/services/user-api-key-service.d.ts +28 -0
  231. package/dist/services/user-api-key-service.d.ts.map +1 -0
  232. package/dist/services/user-api-key-service.js +75 -0
  233. package/dist/services/workspace-files.d.ts +85 -0
  234. package/dist/services/workspace-files.d.ts.map +1 -0
  235. package/dist/services/workspace-files.js +224 -0
  236. package/dist/services/workspace-files.test.d.ts +2 -0
  237. package/dist/services/workspace-files.test.d.ts.map +1 -0
  238. package/dist/services/workspace-files.test.js +117 -0
  239. package/dist/types.d.ts +233 -0
  240. package/dist/types.d.ts.map +1 -0
  241. package/dist/types.js +1 -0
  242. package/dist/utils/file-utils.d.ts +13 -0
  243. package/dist/utils/file-utils.d.ts.map +1 -0
  244. package/dist/utils/file-utils.js +140 -0
  245. package/dist/utils/file-utils.test.d.ts +2 -0
  246. package/dist/utils/file-utils.test.d.ts.map +1 -0
  247. package/dist/utils/file-utils.test.js +201 -0
  248. package/dist/utils/logger.d.ts +39 -0
  249. package/dist/utils/logger.d.ts.map +1 -0
  250. package/dist/utils/logger.js +110 -0
  251. package/dist/utils/logger.test.d.ts +2 -0
  252. package/dist/utils/logger.test.d.ts.map +1 -0
  253. package/dist/utils/logger.test.js +93 -0
  254. package/dist/utils/mcp-utils.d.ts +73 -0
  255. package/dist/utils/mcp-utils.d.ts.map +1 -0
  256. package/dist/utils/mcp-utils.js +165 -0
  257. package/dist/utils/path-utils.d.ts +24 -0
  258. package/dist/utils/path-utils.d.ts.map +1 -0
  259. package/dist/utils/path-utils.js +44 -0
  260. package/dist/utils/validation.d.ts +23 -0
  261. package/dist/utils/validation.d.ts.map +1 -0
  262. package/dist/utils/validation.js +53 -0
  263. package/dist/utils/validation.test.d.ts +2 -0
  264. package/dist/utils/validation.test.d.ts.map +1 -0
  265. package/dist/utils/validation.test.js +88 -0
  266. package/dist/utils/yaml-utils.d.ts +73 -0
  267. package/dist/utils/yaml-utils.d.ts.map +1 -0
  268. package/dist/utils/yaml-utils.js +309 -0
  269. package/dist/utils/yaml-utils.test.d.ts +2 -0
  270. package/dist/utils/yaml-utils.test.d.ts.map +1 -0
  271. package/dist/utils/yaml-utils.test.js +363 -0
  272. package/package/aws-client-agent-mcp/README.md +288 -0
  273. package/package/aws-client-agent-mcp/dist/activity-reporter.d.ts +150 -0
  274. package/package/aws-client-agent-mcp/dist/activity-reporter.d.ts.map +1 -0
  275. package/package/aws-client-agent-mcp/dist/activity-reporter.js +353 -0
  276. package/package/aws-client-agent-mcp/dist/activity-reporter.js.map +1 -0
  277. package/package/aws-client-agent-mcp/dist/activity-reporter.test.d.ts +2 -0
  278. package/package/aws-client-agent-mcp/dist/activity-reporter.test.d.ts.map +1 -0
  279. package/package/aws-client-agent-mcp/dist/activity-reporter.test.js +75 -0
  280. package/package/aws-client-agent-mcp/dist/activity-reporter.test.js.map +1 -0
  281. package/package/aws-client-agent-mcp/dist/activity-types.d.ts +96 -0
  282. package/package/aws-client-agent-mcp/dist/activity-types.d.ts.map +1 -0
  283. package/package/aws-client-agent-mcp/dist/activity-types.js +141 -0
  284. package/package/aws-client-agent-mcp/dist/activity-types.js.map +1 -0
  285. package/package/aws-client-agent-mcp/dist/agent-client.d.ts +165 -0
  286. package/package/aws-client-agent-mcp/dist/agent-client.d.ts.map +1 -0
  287. package/package/aws-client-agent-mcp/dist/agent-client.js +588 -0
  288. package/package/aws-client-agent-mcp/dist/agent-client.js.map +1 -0
  289. package/package/aws-client-agent-mcp/dist/agent-client.test.d.ts +2 -0
  290. package/package/aws-client-agent-mcp/dist/agent-client.test.d.ts.map +1 -0
  291. package/package/aws-client-agent-mcp/dist/agent-client.test.js +534 -0
  292. package/package/aws-client-agent-mcp/dist/agent-client.test.js.map +1 -0
  293. package/package/aws-client-agent-mcp/dist/config.d.ts +21 -0
  294. package/package/aws-client-agent-mcp/dist/config.d.ts.map +1 -0
  295. package/package/aws-client-agent-mcp/dist/config.js +67 -0
  296. package/package/aws-client-agent-mcp/dist/config.js.map +1 -0
  297. package/package/aws-client-agent-mcp/dist/config.test.d.ts +2 -0
  298. package/package/aws-client-agent-mcp/dist/config.test.d.ts.map +1 -0
  299. package/package/aws-client-agent-mcp/dist/config.test.js +139 -0
  300. package/package/aws-client-agent-mcp/dist/config.test.js.map +1 -0
  301. package/package/aws-client-agent-mcp/dist/constants.d.ts +15 -0
  302. package/package/aws-client-agent-mcp/dist/constants.d.ts.map +1 -0
  303. package/package/aws-client-agent-mcp/dist/constants.js +19 -0
  304. package/package/aws-client-agent-mcp/dist/constants.js.map +1 -0
  305. package/package/aws-client-agent-mcp/dist/http-client.d.ts +27 -0
  306. package/package/aws-client-agent-mcp/dist/http-client.d.ts.map +1 -0
  307. package/package/aws-client-agent-mcp/dist/http-client.js +65 -0
  308. package/package/aws-client-agent-mcp/dist/http-client.js.map +1 -0
  309. package/package/aws-client-agent-mcp/dist/http-client.test.d.ts +2 -0
  310. package/package/aws-client-agent-mcp/dist/http-client.test.d.ts.map +1 -0
  311. package/package/aws-client-agent-mcp/dist/http-client.test.js +228 -0
  312. package/package/aws-client-agent-mcp/dist/http-client.test.js.map +1 -0
  313. package/package/aws-client-agent-mcp/dist/index.d.ts +14 -0
  314. package/package/aws-client-agent-mcp/dist/index.d.ts.map +1 -0
  315. package/package/aws-client-agent-mcp/dist/index.js +30 -0
  316. package/package/aws-client-agent-mcp/dist/index.js.map +1 -0
  317. package/package/aws-client-agent-mcp/dist/logger.d.ts +7 -0
  318. package/package/aws-client-agent-mcp/dist/logger.d.ts.map +1 -0
  319. package/package/aws-client-agent-mcp/dist/logger.js +19 -0
  320. package/package/aws-client-agent-mcp/dist/logger.js.map +1 -0
  321. package/package/aws-client-agent-mcp/dist/mcp-server.d.ts +77 -0
  322. package/package/aws-client-agent-mcp/dist/mcp-server.d.ts.map +1 -0
  323. package/package/aws-client-agent-mcp/dist/mcp-server.js +427 -0
  324. package/package/aws-client-agent-mcp/dist/mcp-server.js.map +1 -0
  325. package/package/aws-client-agent-mcp/dist/mcp-server.test.d.ts +2 -0
  326. package/package/aws-client-agent-mcp/dist/mcp-server.test.d.ts.map +1 -0
  327. package/package/aws-client-agent-mcp/dist/mcp-server.test.js +624 -0
  328. package/package/aws-client-agent-mcp/dist/mcp-server.test.js.map +1 -0
  329. package/package/aws-client-agent-mcp/dist/mcp-tools.d.ts +78 -0
  330. package/package/aws-client-agent-mcp/dist/mcp-tools.d.ts.map +1 -0
  331. package/package/aws-client-agent-mcp/dist/mcp-tools.js +420 -0
  332. package/package/aws-client-agent-mcp/dist/mcp-tools.js.map +1 -0
  333. package/package/aws-client-agent-mcp/dist/memory-store.d.ts +61 -0
  334. package/package/aws-client-agent-mcp/dist/memory-store.d.ts.map +1 -0
  335. package/package/aws-client-agent-mcp/dist/memory-store.js +268 -0
  336. package/package/aws-client-agent-mcp/dist/memory-store.js.map +1 -0
  337. package/package/aws-client-agent-mcp/dist/memory-store.test.d.ts +2 -0
  338. package/package/aws-client-agent-mcp/dist/memory-store.test.d.ts.map +1 -0
  339. package/package/aws-client-agent-mcp/dist/memory-store.test.js +164 -0
  340. package/package/aws-client-agent-mcp/dist/memory-store.test.js.map +1 -0
  341. package/package/aws-client-agent-mcp/dist/message-buffer.d.ts +74 -0
  342. package/package/aws-client-agent-mcp/dist/message-buffer.d.ts.map +1 -0
  343. package/package/aws-client-agent-mcp/dist/message-buffer.js +159 -0
  344. package/package/aws-client-agent-mcp/dist/message-buffer.js.map +1 -0
  345. package/package/aws-client-agent-mcp/dist/message-buffer.test.d.ts +2 -0
  346. package/package/aws-client-agent-mcp/dist/message-buffer.test.d.ts.map +1 -0
  347. package/package/aws-client-agent-mcp/dist/message-buffer.test.js +44 -0
  348. package/package/aws-client-agent-mcp/dist/message-buffer.test.js.map +1 -0
  349. package/package/aws-client-agent-mcp/dist/messageContent.d.ts +53 -0
  350. package/package/aws-client-agent-mcp/dist/messageContent.d.ts.map +1 -0
  351. package/package/aws-client-agent-mcp/dist/messageContent.js +125 -0
  352. package/package/aws-client-agent-mcp/dist/messageContent.js.map +1 -0
  353. package/package/aws-client-agent-mcp/dist/orchestration-tools.d.ts +19 -0
  354. package/package/aws-client-agent-mcp/dist/orchestration-tools.d.ts.map +1 -0
  355. package/package/aws-client-agent-mcp/dist/orchestration-tools.js +317 -0
  356. package/package/aws-client-agent-mcp/dist/orchestration-tools.js.map +1 -0
  357. package/package/aws-client-agent-mcp/dist/status-reporter.d.ts +66 -0
  358. package/package/aws-client-agent-mcp/dist/status-reporter.d.ts.map +1 -0
  359. package/package/aws-client-agent-mcp/dist/status-reporter.js +220 -0
  360. package/package/aws-client-agent-mcp/dist/status-reporter.js.map +1 -0
  361. package/package/aws-client-agent-mcp/dist/status-reporter.test.d.ts +2 -0
  362. package/package/aws-client-agent-mcp/dist/status-reporter.test.d.ts.map +1 -0
  363. package/package/aws-client-agent-mcp/dist/status-reporter.test.js +45 -0
  364. package/package/aws-client-agent-mcp/dist/status-reporter.test.js.map +1 -0
  365. package/package/aws-client-agent-mcp/dist/types.d.ts +286 -0
  366. package/package/aws-client-agent-mcp/dist/types.d.ts.map +1 -0
  367. package/package/aws-client-agent-mcp/dist/types.js +9 -0
  368. package/package/aws-client-agent-mcp/dist/types.js.map +1 -0
  369. package/package/aws-client-agent-mcp/dist/user-config-reader.d.ts +63 -0
  370. package/package/aws-client-agent-mcp/dist/user-config-reader.d.ts.map +1 -0
  371. package/package/aws-client-agent-mcp/dist/user-config-reader.js +161 -0
  372. package/package/aws-client-agent-mcp/dist/user-config-reader.js.map +1 -0
  373. package/package/aws-client-agent-mcp/dist/websocket-client.d.ts +94 -0
  374. package/package/aws-client-agent-mcp/dist/websocket-client.d.ts.map +1 -0
  375. package/package/aws-client-agent-mcp/dist/websocket-client.js +316 -0
  376. package/package/aws-client-agent-mcp/dist/websocket-client.js.map +1 -0
  377. package/package/aws-client-agent-mcp/dist/websocket-client.test.d.ts +2 -0
  378. package/package/aws-client-agent-mcp/dist/websocket-client.test.d.ts.map +1 -0
  379. package/package/aws-client-agent-mcp/dist/websocket-client.test.js +191 -0
  380. package/package/aws-client-agent-mcp/dist/websocket-client.test.js.map +1 -0
  381. package/package/aws-client-agent-mcp/package.json +51 -0
  382. package/package/cc-switch-sdk/README.md +541 -0
  383. package/package/cc-switch-sdk/dist/adapters/common.d.ts +38 -0
  384. package/package/cc-switch-sdk/dist/adapters/common.d.ts.map +1 -0
  385. package/package/cc-switch-sdk/dist/adapters/common.js +47 -0
  386. package/package/cc-switch-sdk/dist/adapters/index.d.ts +5 -0
  387. package/package/cc-switch-sdk/dist/adapters/index.d.ts.map +1 -0
  388. package/package/cc-switch-sdk/dist/adapters/index.js +28 -0
  389. package/package/cc-switch-sdk/dist/adapters/mcp-claude.d.ts +10 -0
  390. package/package/cc-switch-sdk/dist/adapters/mcp-claude.d.ts.map +1 -0
  391. package/package/cc-switch-sdk/dist/adapters/mcp-claude.js +39 -0
  392. package/package/cc-switch-sdk/dist/adapters/mcp-claudecode.d.ts +10 -0
  393. package/package/cc-switch-sdk/dist/adapters/mcp-claudecode.d.ts.map +1 -0
  394. package/package/cc-switch-sdk/dist/adapters/mcp-claudecode.js +40 -0
  395. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.d.ts +18 -0
  396. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.d.ts.map +1 -0
  397. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.js +63 -0
  398. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.test.d.ts +2 -0
  399. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.test.d.ts.map +1 -0
  400. package/package/cc-switch-sdk/dist/adapters/mcp-opencode.test.js +86 -0
  401. package/package/cc-switch-sdk/dist/adapters/mcp-placeholder.d.ts +9 -0
  402. package/package/cc-switch-sdk/dist/adapters/mcp-placeholder.d.ts.map +1 -0
  403. package/package/cc-switch-sdk/dist/adapters/mcp-placeholder.js +14 -0
  404. package/package/cc-switch-sdk/dist/adapters/skill-claude.d.ts +10 -0
  405. package/package/cc-switch-sdk/dist/adapters/skill-claude.d.ts.map +1 -0
  406. package/package/cc-switch-sdk/dist/adapters/skill-claude.js +51 -0
  407. package/package/cc-switch-sdk/dist/adapters/skill-claudecode.d.ts +10 -0
  408. package/package/cc-switch-sdk/dist/adapters/skill-claudecode.d.ts.map +1 -0
  409. package/package/cc-switch-sdk/dist/adapters/skill-claudecode.js +51 -0
  410. package/package/cc-switch-sdk/dist/adapters/skill-opencode.d.ts +10 -0
  411. package/package/cc-switch-sdk/dist/adapters/skill-opencode.d.ts.map +1 -0
  412. package/package/cc-switch-sdk/dist/adapters/skill-opencode.js +51 -0
  413. package/package/cc-switch-sdk/dist/adapters/skill-placeholder.d.ts +9 -0
  414. package/package/cc-switch-sdk/dist/adapters/skill-placeholder.d.ts.map +1 -0
  415. package/package/cc-switch-sdk/dist/adapters/skill-placeholder.js +14 -0
  416. package/package/cc-switch-sdk/dist/constants.d.ts +9 -0
  417. package/package/cc-switch-sdk/dist/constants.d.ts.map +1 -0
  418. package/package/cc-switch-sdk/dist/constants.js +54 -0
  419. package/package/cc-switch-sdk/dist/errors.d.ts +6 -0
  420. package/package/cc-switch-sdk/dist/errors.d.ts.map +1 -0
  421. package/package/cc-switch-sdk/dist/errors.js +8 -0
  422. package/package/cc-switch-sdk/dist/index.d.ts +11 -0
  423. package/package/cc-switch-sdk/dist/index.d.ts.map +1 -0
  424. package/package/cc-switch-sdk/dist/index.js +9 -0
  425. package/package/cc-switch-sdk/dist/schemas.d.ts +8 -0
  426. package/package/cc-switch-sdk/dist/schemas.d.ts.map +1 -0
  427. package/package/cc-switch-sdk/dist/schemas.js +37 -0
  428. package/package/cc-switch-sdk/dist/sdk.d.ts +91 -0
  429. package/package/cc-switch-sdk/dist/sdk.d.ts.map +1 -0
  430. package/package/cc-switch-sdk/dist/sdk.js +427 -0
  431. package/package/cc-switch-sdk/dist/services/ai-config-service.d.ts +75 -0
  432. package/package/cc-switch-sdk/dist/services/ai-config-service.d.ts.map +1 -0
  433. package/package/cc-switch-sdk/dist/services/ai-config-service.js +280 -0
  434. package/package/cc-switch-sdk/dist/services/instance-service.d.ts +78 -0
  435. package/package/cc-switch-sdk/dist/services/instance-service.d.ts.map +1 -0
  436. package/package/cc-switch-sdk/dist/services/instance-service.js +180 -0
  437. package/package/cc-switch-sdk/dist/services/mcp-model.d.ts +17 -0
  438. package/package/cc-switch-sdk/dist/services/mcp-model.d.ts.map +1 -0
  439. package/package/cc-switch-sdk/dist/services/mcp-model.js +34 -0
  440. package/package/cc-switch-sdk/dist/services/mcp-service.d.ts +18 -0
  441. package/package/cc-switch-sdk/dist/services/mcp-service.d.ts.map +1 -0
  442. package/package/cc-switch-sdk/dist/services/mcp-service.js +9 -0
  443. package/package/cc-switch-sdk/dist/services/skill-model.d.ts +17 -0
  444. package/package/cc-switch-sdk/dist/services/skill-model.d.ts.map +1 -0
  445. package/package/cc-switch-sdk/dist/services/skill-model.js +38 -0
  446. package/package/cc-switch-sdk/dist/services/skill-service.d.ts +17 -0
  447. package/package/cc-switch-sdk/dist/services/skill-service.d.ts.map +1 -0
  448. package/package/cc-switch-sdk/dist/services/skill-service.js +9 -0
  449. package/package/cc-switch-sdk/dist/state.d.ts +4 -0
  450. package/package/cc-switch-sdk/dist/state.d.ts.map +1 -0
  451. package/package/cc-switch-sdk/dist/state.js +19 -0
  452. package/package/cc-switch-sdk/dist/types.d.ts +75 -0
  453. package/package/cc-switch-sdk/dist/types.d.ts.map +1 -0
  454. package/package/cc-switch-sdk/dist/types.js +1 -0
  455. package/package/cc-switch-sdk/dist/utils/fs.d.ts +10 -0
  456. package/package/cc-switch-sdk/dist/utils/fs.d.ts.map +1 -0
  457. package/package/cc-switch-sdk/dist/utils/fs.js +91 -0
  458. package/package/cc-switch-sdk/dist/utils/id.d.ts +4 -0
  459. package/package/cc-switch-sdk/dist/utils/id.d.ts.map +1 -0
  460. package/package/cc-switch-sdk/dist/utils/id.js +12 -0
  461. package/package/cc-switch-sdk/package.json +31 -0
  462. package/package.json +73 -0
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Claude Skill Adapter
3
+ *
4
+ * 实现 ISkillAdapter 接口,负责 Claude Desktop 的 Skill 目录管理
5
+ */
6
+ async function ensureDir(dir) {
7
+ const fs = await import('node:fs/promises');
8
+ await fs.mkdir(dir, { recursive: true });
9
+ }
10
+ async function removeIfExists(target) {
11
+ const fs = await import('node:fs/promises');
12
+ try {
13
+ await fs.rm(target, { recursive: true, force: true });
14
+ }
15
+ catch {
16
+ // ignore
17
+ }
18
+ }
19
+ async function copyDir(source, target) {
20
+ const fs = await import('node:fs/promises');
21
+ const path = await import('node:path');
22
+ await ensureDir(target);
23
+ const entries = await fs.readdir(source, { withFileTypes: true });
24
+ for (const entry of entries) {
25
+ const srcPath = path.join(source, entry.name);
26
+ const tgtPath = path.join(target, entry.name);
27
+ if (entry.isDirectory()) {
28
+ await copyDir(srcPath, tgtPath);
29
+ }
30
+ else {
31
+ await fs.copyFile(srcPath, tgtPath);
32
+ }
33
+ }
34
+ }
35
+ function toNameFromPath(pathStr) {
36
+ const base = pathStr.split(/[/\\]/).pop() || pathStr;
37
+ return base.replace(/\.skill$/, '').replace(/[-_]/g, ' ');
38
+ }
39
+ async function materializeSkillDir(sourceDir, targetDir, method) {
40
+ const fs = await import('node:fs/promises');
41
+ const path = await import('node:path');
42
+ await removeIfExists(targetDir);
43
+ await ensureDir(path.dirname(targetDir));
44
+ if (method === "copy") {
45
+ await copyDir(sourceDir, targetDir);
46
+ return;
47
+ }
48
+ if (method === "symlink") {
49
+ await fs.symlink(sourceDir, targetDir, "junction");
50
+ return;
51
+ }
52
+ try {
53
+ await fs.symlink(sourceDir, targetDir, "junction");
54
+ }
55
+ catch {
56
+ await copyDir(sourceDir, targetDir);
57
+ }
58
+ }
59
+ export class ClaudeSkillAdapter {
60
+ constructor(skillsDir) {
61
+ this.skillsDir = skillsDir;
62
+ this.appId = "claude";
63
+ }
64
+ async importSkills() {
65
+ const fs = await import('node:fs/promises');
66
+ const path = await import('node:path');
67
+ await ensureDir(this.skillsDir);
68
+ const entries = await fs.readdir(this.skillsDir, { withFileTypes: true });
69
+ return entries
70
+ .filter((entry) => entry.isDirectory() || entry.isSymbolicLink())
71
+ .map((entry) => {
72
+ const directory = path.join(this.skillsDir, entry.name);
73
+ return {
74
+ id: `skill_import_${entry.name}`,
75
+ name: toNameFromPath(entry.name),
76
+ directory,
77
+ description: undefined,
78
+ };
79
+ });
80
+ }
81
+ async syncSkill(skill, sourceDir, method) {
82
+ const path = await import('node:path');
83
+ const targetDir = path.join(this.skillsDir, skill.name);
84
+ await materializeSkillDir(sourceDir, targetDir, method);
85
+ }
86
+ async removeSkill(skill) {
87
+ const path = await import('node:path');
88
+ const targetDir = path.join(this.skillsDir, skill.name);
89
+ await removeIfExists(targetDir);
90
+ }
91
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * ClaudeCode Skill Adapter
3
+ *
4
+ * 实现 ISkillAdapter 接口,负责 ClaudeCode 的 Skill 目录管理
5
+ */
6
+ import type { ISkillAdapter, InstalledSkill, SkillSyncMethod } from '@cc-switch/sdk';
7
+ export declare class ClaudecodeSkillAdapter implements ISkillAdapter {
8
+ private readonly skillsDir;
9
+ readonly appId: "claudecode";
10
+ constructor(skillsDir: string);
11
+ importSkills(): Promise<Array<Pick<InstalledSkill, "id" | "name" | "directory" | "description">>>;
12
+ syncSkill(skill: InstalledSkill, sourceDir: string, method: SkillSyncMethod): Promise<void>;
13
+ removeSkill(skill: InstalledSkill): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=skill-claudecode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-claudecode.d.ts","sourceRoot":"","sources":["../../../src/adapters/cc-switch/skill-claudecode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAoErF,qBAAa,sBAAuB,YAAW,aAAa;IAG9C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAFtC,SAAgB,KAAK,EAAG,YAAY,CAAU;gBAEjB,SAAS,EAAE,MAAM;IAExC,YAAY,IAAI,OAAO,CAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,WAAW,GAAG,aAAa,CAAC,CAAC,CACzE;IAmBK,SAAS,CACb,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,IAAI,CAAC;IAMV,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAKxD"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * ClaudeCode Skill Adapter
3
+ *
4
+ * 实现 ISkillAdapter 接口,负责 ClaudeCode 的 Skill 目录管理
5
+ */
6
+ async function ensureDir(dir) {
7
+ const fs = await import('node:fs/promises');
8
+ await fs.mkdir(dir, { recursive: true });
9
+ }
10
+ async function removeIfExists(target) {
11
+ const fs = await import('node:fs/promises');
12
+ try {
13
+ await fs.rm(target, { recursive: true, force: true });
14
+ }
15
+ catch {
16
+ // ignore
17
+ }
18
+ }
19
+ async function copyDir(source, target) {
20
+ const fs = await import('node:fs/promises');
21
+ const path = await import('node:path');
22
+ await ensureDir(target);
23
+ const entries = await fs.readdir(source, { withFileTypes: true });
24
+ for (const entry of entries) {
25
+ const srcPath = path.join(source, entry.name);
26
+ const tgtPath = path.join(target, entry.name);
27
+ if (entry.isDirectory()) {
28
+ await copyDir(srcPath, tgtPath);
29
+ }
30
+ else {
31
+ await fs.copyFile(srcPath, tgtPath);
32
+ }
33
+ }
34
+ }
35
+ function toNameFromPath(pathStr) {
36
+ const base = pathStr.split(/[/\\]/).pop() || pathStr;
37
+ return base.replace(/\.skill$/, '').replace(/[-_]/g, ' ');
38
+ }
39
+ async function materializeSkillDir(sourceDir, targetDir, method) {
40
+ const fs = await import('node:fs/promises');
41
+ const path = await import('node:path');
42
+ await removeIfExists(targetDir);
43
+ await ensureDir(path.dirname(targetDir));
44
+ if (method === "copy") {
45
+ await copyDir(sourceDir, targetDir);
46
+ return;
47
+ }
48
+ if (method === "symlink") {
49
+ await fs.symlink(sourceDir, targetDir, "junction");
50
+ return;
51
+ }
52
+ try {
53
+ await fs.symlink(sourceDir, targetDir, "junction");
54
+ }
55
+ catch {
56
+ await copyDir(sourceDir, targetDir);
57
+ }
58
+ }
59
+ export class ClaudecodeSkillAdapter {
60
+ constructor(skillsDir) {
61
+ this.skillsDir = skillsDir;
62
+ this.appId = "claudecode";
63
+ }
64
+ async importSkills() {
65
+ const fs = await import('node:fs/promises');
66
+ const path = await import('node:path');
67
+ await ensureDir(this.skillsDir);
68
+ const entries = await fs.readdir(this.skillsDir, { withFileTypes: true });
69
+ return entries
70
+ .filter((entry) => entry.isDirectory() || entry.isSymbolicLink())
71
+ .map((entry) => {
72
+ const directory = path.join(this.skillsDir, entry.name);
73
+ return {
74
+ id: `skill_import_${entry.name}`,
75
+ name: toNameFromPath(entry.name),
76
+ directory,
77
+ description: undefined,
78
+ };
79
+ });
80
+ }
81
+ async syncSkill(skill, sourceDir, method) {
82
+ const path = await import('node:path');
83
+ const targetDir = path.join(this.skillsDir, skill.name);
84
+ await materializeSkillDir(sourceDir, targetDir, method);
85
+ }
86
+ async removeSkill(skill) {
87
+ const path = await import('node:path');
88
+ const targetDir = path.join(this.skillsDir, skill.name);
89
+ await removeIfExists(targetDir);
90
+ }
91
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * OpenCode Skill Adapter
3
+ *
4
+ * 实现 ISkillAdapter 接口,负责 OpenCode 的 Skill 目录管理
5
+ */
6
+ import type { ISkillAdapter, InstalledSkill, SkillSyncMethod } from '@cc-switch/sdk';
7
+ export declare class OpenCodeSkillAdapter implements ISkillAdapter {
8
+ private readonly skillsDir;
9
+ readonly appId: "opencode";
10
+ constructor(skillsDir: string);
11
+ importSkills(): Promise<Array<Pick<InstalledSkill, "id" | "name" | "directory" | "description">>>;
12
+ syncSkill(skill: InstalledSkill, sourceDir: string, method: SkillSyncMethod): Promise<void>;
13
+ removeSkill(skill: InstalledSkill): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=skill-opencode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-opencode.d.ts","sourceRoot":"","sources":["../../../src/adapters/cc-switch/skill-opencode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAwErF,qBAAa,oBAAqB,YAAW,aAAa;IAG5C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAFtC,SAAgB,KAAK,EAAG,UAAU,CAAU;gBAEf,SAAS,EAAE,MAAM;IAExC,YAAY,IAAI,OAAO,CAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,WAAW,GAAG,aAAa,CAAC,CAAC,CACzE;IAmBK,SAAS,CACb,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,IAAI,CAAC;IAMV,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAKxD"}
@@ -0,0 +1,95 @@
1
+ /**
2
+ * OpenCode Skill Adapter
3
+ *
4
+ * 实现 ISkillAdapter 接口,负责 OpenCode 的 Skill 目录管理
5
+ */
6
+ async function ensureDir(dir) {
7
+ const fs = await import('node:fs/promises');
8
+ await fs.mkdir(dir, { recursive: true });
9
+ }
10
+ async function removeIfExists(target) {
11
+ const fs = await import('node:fs/promises');
12
+ try {
13
+ await fs.rm(target, { recursive: true, force: true });
14
+ }
15
+ catch {
16
+ // ignore
17
+ }
18
+ }
19
+ async function copyDir(source, target) {
20
+ const fs = await import('node:fs/promises');
21
+ const path = await import('node:path');
22
+ await ensureDir(target);
23
+ const entries = await fs.readdir(source, { withFileTypes: true });
24
+ for (const entry of entries) {
25
+ const srcPath = path.join(source, entry.name);
26
+ const tgtPath = path.join(target, entry.name);
27
+ if (entry.isDirectory()) {
28
+ await copyDir(srcPath, tgtPath);
29
+ }
30
+ else {
31
+ await fs.copyFile(srcPath, tgtPath);
32
+ }
33
+ }
34
+ }
35
+ /**
36
+ * 从路径提取 skill 名称
37
+ */
38
+ function toNameFromPath(pathStr) {
39
+ const base = pathStr.split(/[/\\]/).pop() || pathStr;
40
+ return base.replace(/\.skill$/, '').replace(/[-_]/g, ' ');
41
+ }
42
+ async function materializeSkillDir(sourceDir, targetDir, method) {
43
+ const fs = await import('node:fs/promises');
44
+ const path = await import('node:path');
45
+ await removeIfExists(targetDir);
46
+ await ensureDir(path.dirname(targetDir));
47
+ if (method === "copy") {
48
+ await copyDir(sourceDir, targetDir);
49
+ return;
50
+ }
51
+ if (method === "symlink") {
52
+ await fs.symlink(sourceDir, targetDir, "junction");
53
+ return;
54
+ }
55
+ // auto: 先尝试 symlink,失败则 copy
56
+ try {
57
+ await fs.symlink(sourceDir, targetDir, "junction");
58
+ }
59
+ catch {
60
+ await copyDir(sourceDir, targetDir);
61
+ }
62
+ }
63
+ export class OpenCodeSkillAdapter {
64
+ constructor(skillsDir) {
65
+ this.skillsDir = skillsDir;
66
+ this.appId = "opencode";
67
+ }
68
+ async importSkills() {
69
+ const fs = await import('node:fs/promises');
70
+ const path = await import('node:path');
71
+ await ensureDir(this.skillsDir);
72
+ const entries = await fs.readdir(this.skillsDir, { withFileTypes: true });
73
+ return entries
74
+ .filter((entry) => entry.isDirectory() || entry.isSymbolicLink())
75
+ .map((entry) => {
76
+ const directory = path.join(this.skillsDir, entry.name);
77
+ return {
78
+ id: `skill_import_${entry.name}`,
79
+ name: toNameFromPath(entry.name),
80
+ directory,
81
+ description: undefined,
82
+ };
83
+ });
84
+ }
85
+ async syncSkill(skill, sourceDir, method) {
86
+ const path = await import('node:path');
87
+ const targetDir = path.join(this.skillsDir, skill.name);
88
+ await materializeSkillDir(sourceDir, targetDir, method);
89
+ }
90
+ async removeSkill(skill) {
91
+ const path = await import('node:path');
92
+ const targetDir = path.join(this.skillsDir, skill.name);
93
+ await removeIfExists(targetDir);
94
+ }
95
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Placeholder Skill Adapter
3
+ *
4
+ * 用于尚未实现的 AI 工具(Codex、Gemini、OpenClaw)
5
+ */
6
+ import type { AppId, ISkillAdapter, InstalledSkill } from '@cc-switch/sdk';
7
+ export declare class PlaceholderSkillAdapter implements ISkillAdapter {
8
+ readonly appId: AppId;
9
+ constructor(appId: AppId);
10
+ importSkills(): Promise<Array<Pick<InstalledSkill, "id" | "name" | "directory" | "description">>>;
11
+ syncSkill(): Promise<void>;
12
+ removeSkill(): Promise<void>;
13
+ }
14
+ //# sourceMappingURL=skill-placeholder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-placeholder.d.ts","sourceRoot":"","sources":["../../../src/adapters/cc-switch/skill-placeholder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,EAAmB,MAAM,gBAAgB,CAAC;AAE5F,qBAAa,uBAAwB,YAAW,aAAa;aAC/B,KAAK,EAAE,KAAK;gBAAZ,KAAK,EAAE,KAAK;IAElC,YAAY,IAAI,OAAO,CAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,WAAW,GAAG,aAAa,CAAC,CAAC,CACzE;IAIK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Placeholder Skill Adapter
3
+ *
4
+ * 用于尚未实现的 AI 工具(Codex、Gemini、OpenClaw)
5
+ */
6
+ export class PlaceholderSkillAdapter {
7
+ constructor(appId) {
8
+ this.appId = appId;
9
+ }
10
+ async importSkills() {
11
+ return [];
12
+ }
13
+ async syncSkill() {
14
+ return;
15
+ }
16
+ async removeSkill() {
17
+ return;
18
+ }
19
+ }
@@ -0,0 +1,76 @@
1
+ /**
2
+ * 运行时桥接服务配置
3
+ *
4
+ * 集中管理所有环境变量和配置常量
5
+ */
6
+ /** 服务端口 */
7
+ export declare const port: number;
8
+ /** 调度器基础 URL */
9
+ export declare const schedulerBaseUrl: string;
10
+ /** 默认运行时回调 Token */
11
+ export declare const DEFAULT_RUNTIME_CALLBACK_TOKEN = "agentswork-runtime-callback";
12
+ /** Node 环境 */
13
+ export declare const nodeEnv: string;
14
+ /** 运行时回调 Token */
15
+ export declare const runtimeToken: string;
16
+ /** 是否显式允许本地开发使用默认 Token */
17
+ export declare const allowDefaultRuntimeToken: boolean;
18
+ /** 是否允许浏览宿主机任意目录(默认关闭,仅建议本地排障启用) */
19
+ export declare const allowHostFileBrowser: boolean;
20
+ /** CORS 允许来源列表,默认仅允许本机开发前端 */
21
+ export declare const allowedCorsOrigins: string[];
22
+ /** 验证生产环境必须设置 Token */
23
+ export declare function validateProductionToken(): void;
24
+ /** 获取运行时主目录 */
25
+ export declare function getRuntimeHomeDir(): string;
26
+ /** 获取 Claude 配置文件路径(AI 配置写入 settings.json) */
27
+ export declare function getClaudeConfigFile(runtimeHome: string): string;
28
+ /** 获取 Claude MCP 配置文件路径 */
29
+ export declare function getClaudeMcpConfigFile(runtimeHome: string): string;
30
+ /** 获取 Claude Skills 目录 */
31
+ export declare function getClaudeSkillsDir(runtimeHome: string): string;
32
+ /** 获取 OpenCode 配置文件路径 */
33
+ export declare function getOpencodeConfigFile(runtimeHome: string): string;
34
+ /** 获取 Codex 配置文件路径 */
35
+ export declare function getCodexConfigFile(runtimeHome: string): string;
36
+ /** 获取 OpenCode Skills 目录 */
37
+ export declare function getOpencodeSkillsDir(runtimeHome: string): string;
38
+ /**
39
+ * 孤儿进程监控配置
40
+ */
41
+ /** 定期扫描间隔(毫秒),默认 30 秒 */
42
+ export declare const ORPHAN_SCAN_INTERVAL: number;
43
+ /** 自动清理模式: 'auto' | 'alert' | 'manual' */
44
+ export declare const ORPHAN_AUTO_CLEAN_MODE: "auto" | "alert" | "manual";
45
+ /** 是否启用定期扫描 */
46
+ export declare const ORPHAN_SCAN_ENABLED: boolean;
47
+ /** 健康检测:进程最大无响应时间(毫秒),默认 5 分钟 */
48
+ export declare const ORPHAN_UNRESPONSIVE_TIMEOUT: number;
49
+ /** 健康检测:CPU 使用率阈值(百分比),超过则认为卡死,默认 100% */
50
+ export declare const ORPHAN_CPU_THRESHOLD: number;
51
+ /** 健康检测:内存使用阈值(MB),超过则认为异常,默认 2GB */
52
+ export declare const ORPHAN_MEMORY_THRESHOLD: number;
53
+ /**
54
+ * 自动注册配置
55
+ */
56
+ /** 是否启用自动注册 */
57
+ export declare const AUTO_REGISTER_ENABLED: boolean;
58
+ /** 租户 ID */
59
+ export declare const AUTO_REGISTER_TENANT_ID: string;
60
+ /** 用户 API Key */
61
+ export declare const AUTO_REGISTER_USER_KEY: string;
62
+ /** 实例名称(默认使用主机名) */
63
+ export declare const AUTO_REGISTER_INSTANCE_NAME: string;
64
+ /** 项目名称 */
65
+ export declare const AUTO_REGISTER_PROJECT_NAME: string;
66
+ /** 角色名称 */
67
+ export declare const AUTO_REGISTER_ROLE_NAME: string;
68
+ /** 工作空间路径 */
69
+ export declare const AUTO_REGISTER_WORKSPACE_PATH: string;
70
+ /** 虚拟 IP(EasyTier) */
71
+ export declare const AUTO_REGISTER_VIRTUAL_IP: string;
72
+ /** 注册重试次数 */
73
+ export declare const AUTO_REGISTER_MAX_RETRIES: number;
74
+ /** 注册重试间隔(毫秒) */
75
+ export declare const AUTO_REGISTER_RETRY_INTERVAL: number;
76
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,WAAW;AACX,eAAO,MAAM,IAAI,EAAE,MAA6D,CAAC;AAEjF,gBAAgB;AAChB,eAAO,MAAM,gBAAgB,EAAE,MAA8E,CAAC;AAE9G,oBAAoB;AACpB,eAAO,MAAM,8BAA8B,gCAAgC,CAAC;AAE5E,cAAc;AACd,eAAO,MAAM,OAAO,EAAE,MAA8C,CAAC;AAErE,kBAAkB;AAClB,eAAO,MAAM,YAAY,EAAE,MAAiF,CAAC;AAE7G,2BAA2B;AAC3B,eAAO,MAAM,wBAAwB,EAAE,OAAgE,CAAC;AAExG,oCAAoC;AACpC,eAAO,MAAM,oBAAoB,EAAE,OAA4D,CAAC;AAEhG,8BAA8B;AAC9B,eAAO,MAAM,kBAAkB,EAAE,MAAM,EAKC,CAAC;AAEzC,uBAAuB;AACvB,wBAAgB,uBAAuB,IAAI,IAAI,CAU9C;AAED,eAAe;AACf,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,8CAA8C;AAC9C,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAG/D;AAED,2BAA2B;AAC3B,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED,0BAA0B;AAC1B,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAG9D;AAED,yBAAyB;AACzB,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED,sBAAsB;AACtB,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAG9D;AAED,4BAA4B;AAC5B,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGhE;AAED;;GAEG;AAEH,yBAAyB;AACzB,eAAO,MAAM,oBAAoB,QAAwD,CAAC;AAE1F,0CAA0C;AAC1C,eAAO,MAAM,sBAAsB,EAA0D,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEzH,eAAe;AACf,eAAO,MAAM,mBAAmB,SAAkD,CAAC;AAEnF,iCAAiC;AACjC,eAAO,MAAM,2BAA2B,QAAgE,CAAC;AAEzG,0CAA0C;AAC1C,eAAO,MAAM,oBAAoB,QAAsD,CAAC;AAExF,qCAAqC;AACrC,eAAO,MAAM,uBAAuB,QAA0D,CAAC;AAE/F;;GAEG;AAEH,eAAe;AACf,eAAO,MAAM,qBAAqB,SAA2C,CAAC;AAE9E,YAAY;AACZ,eAAO,MAAM,uBAAuB,QAAkC,CAAC;AAEvE,iBAAiB;AACjB,eAAO,MAAM,sBAAsB,QAAiC,CAAC;AAErE,oBAAoB;AACpB,eAAO,MAAM,2BAA2B,QAAsC,CAAC;AAE/E,WAAW;AACX,eAAO,MAAM,0BAA0B,QAAqC,CAAC;AAE7E,WAAW;AACX,eAAO,MAAM,uBAAuB,QAAkC,CAAC;AAEvE,aAAa;AACb,eAAO,MAAM,4BAA4B,QAAuC,CAAC;AAEjF,sBAAsB;AACtB,eAAO,MAAM,wBAAwB,QAAmC,CAAC;AAEzE,aAAa;AACb,eAAO,MAAM,yBAAyB,QAAoD,CAAC;AAE3F,iBAAiB;AACjB,eAAO,MAAM,4BAA4B,QAA0D,CAAC"}
package/dist/config.js ADDED
@@ -0,0 +1,109 @@
1
+ /**
2
+ * 运行时桥接服务配置
3
+ *
4
+ * 集中管理所有环境变量和配置常量
5
+ */
6
+ import os from 'node:os';
7
+ import path from 'node:path';
8
+ import { logger } from './utils/logger.js';
9
+ /** 服务端口 */
10
+ export const port = Number(process.env.AWS_RUNTIME_BRIDGE_PORT || 18081);
11
+ /** 调度器基础 URL */
12
+ export const schedulerBaseUrl = process.env.AWS_RUNTIME_SCHEDULER_BASE_URL || 'http://localhost:8080';
13
+ /** 默认运行时回调 Token */
14
+ export const DEFAULT_RUNTIME_CALLBACK_TOKEN = 'agentswork-runtime-callback';
15
+ /** Node 环境 */
16
+ export const nodeEnv = process.env.NODE_ENV || 'development';
17
+ /** 运行时回调 Token */
18
+ export const runtimeToken = process.env.AWS_RUNTIME_CALLBACK_TOKEN || DEFAULT_RUNTIME_CALLBACK_TOKEN;
19
+ /** 是否显式允许本地开发使用默认 Token */
20
+ export const allowDefaultRuntimeToken = process.env.AWS_ALLOW_DEFAULT_RUNTIME_TOKEN === 'true';
21
+ /** 是否允许浏览宿主机任意目录(默认关闭,仅建议本地排障启用) */
22
+ export const allowHostFileBrowser = process.env.AWS_ALLOW_HOST_FILE_BROWSER === 'true';
23
+ /** CORS 允许来源列表,默认仅允许本机开发前端 */
24
+ export const allowedCorsOrigins = String(process.env.AWS_RUNTIME_CORS_ORIGINS || 'http://localhost:3000,http://127.0.0.1:3000,http://localhost:5173,http://127.0.0.1:5173')
25
+ .split(',')
26
+ .map((origin) => origin.trim())
27
+ .filter((origin) => origin.length > 0);
28
+ /** 验证生产环境必须设置 Token */
29
+ export function validateProductionToken() {
30
+ if (!process.env.AWS_RUNTIME_CALLBACK_TOKEN) {
31
+ if (nodeEnv === 'production' || !allowDefaultRuntimeToken) {
32
+ throw new Error('[runtime-bridge] AWS_RUNTIME_CALLBACK_TOKEN must be set. ' +
33
+ 'For isolated local development only, set AWS_ALLOW_DEFAULT_RUNTIME_TOKEN=true.');
34
+ }
35
+ logger.warn('[runtime-bridge] AWS_RUNTIME_CALLBACK_TOKEN not set, using default development token');
36
+ }
37
+ }
38
+ /** 获取运行时主目录 */
39
+ export function getRuntimeHomeDir() {
40
+ return String(process.env.AWS_RUNTIME_HOME_DIR || '').trim() || os.homedir();
41
+ }
42
+ /** 获取 Claude 配置文件路径(AI 配置写入 settings.json) */
43
+ export function getClaudeConfigFile(runtimeHome) {
44
+ return String(process.env.AWS_RUNTIME_CLAUDE_CONFIG_FILE || '').trim()
45
+ || path.join(runtimeHome, '.claude', 'settings.json');
46
+ }
47
+ /** 获取 Claude MCP 配置文件路径 */
48
+ export function getClaudeMcpConfigFile(runtimeHome) {
49
+ return String(process.env.AWS_RUNTIME_CLAUDE_MCP_CONFIG_FILE || '').trim()
50
+ || path.join(runtimeHome, '.claude.json');
51
+ }
52
+ /** 获取 Claude Skills 目录 */
53
+ export function getClaudeSkillsDir(runtimeHome) {
54
+ return String(process.env.AWS_RUNTIME_CLAUDE_SKILLS_DIR || '').trim()
55
+ || path.join(runtimeHome, '.claude', 'skills');
56
+ }
57
+ /** 获取 OpenCode 配置文件路径 */
58
+ export function getOpencodeConfigFile(runtimeHome) {
59
+ return String(process.env.AWS_RUNTIME_OPENCODE_CONFIG_FILE || '').trim()
60
+ || path.join(runtimeHome, '.config', 'opencode', 'opencode.json');
61
+ }
62
+ /** 获取 Codex 配置文件路径 */
63
+ export function getCodexConfigFile(runtimeHome) {
64
+ return String(process.env.AWS_RUNTIME_CODEX_CONFIG_FILE || '').trim()
65
+ || path.join(runtimeHome, '.codex', 'config.toml');
66
+ }
67
+ /** 获取 OpenCode Skills 目录 */
68
+ export function getOpencodeSkillsDir(runtimeHome) {
69
+ return String(process.env.AWS_RUNTIME_OPENCODE_SKILLS_DIR || '').trim()
70
+ || path.join(runtimeHome, '.opencode', 'skills');
71
+ }
72
+ /**
73
+ * 孤儿进程监控配置
74
+ */
75
+ /** 定期扫描间隔(毫秒),默认 30 秒 */
76
+ export const ORPHAN_SCAN_INTERVAL = Number(process.env.AWS_ORPHAN_SCAN_INTERVAL || 30000);
77
+ /** 自动清理模式: 'auto' | 'alert' | 'manual' */
78
+ export const ORPHAN_AUTO_CLEAN_MODE = (process.env.AWS_ORPHAN_AUTO_CLEAN_MODE || 'alert');
79
+ /** 是否启用定期扫描 */
80
+ export const ORPHAN_SCAN_ENABLED = process.env.AWS_ORPHAN_SCAN_ENABLED !== 'false';
81
+ /** 健康检测:进程最大无响应时间(毫秒),默认 5 分钟 */
82
+ export const ORPHAN_UNRESPONSIVE_TIMEOUT = Number(process.env.AWS_ORPHAN_UNRESPONSIVE_TIMEOUT || 300000);
83
+ /** 健康检测:CPU 使用率阈值(百分比),超过则认为卡死,默认 100% */
84
+ export const ORPHAN_CPU_THRESHOLD = Number(process.env.AWS_ORPHAN_CPU_THRESHOLD || 100);
85
+ /** 健康检测:内存使用阈值(MB),超过则认为异常,默认 2GB */
86
+ export const ORPHAN_MEMORY_THRESHOLD = Number(process.env.AWS_ORPHAN_MEMORY_THRESHOLD || 2048);
87
+ /**
88
+ * 自动注册配置
89
+ */
90
+ /** 是否启用自动注册 */
91
+ export const AUTO_REGISTER_ENABLED = process.env.AWS_AUTO_REGISTER === 'true';
92
+ /** 租户 ID */
93
+ export const AUTO_REGISTER_TENANT_ID = process.env.AWS_TENANT_ID || '';
94
+ /** 用户 API Key */
95
+ export const AUTO_REGISTER_USER_KEY = process.env.AWS_USER_KEY || '';
96
+ /** 实例名称(默认使用主机名) */
97
+ export const AUTO_REGISTER_INSTANCE_NAME = process.env.AWS_INSTANCE_NAME || '';
98
+ /** 项目名称 */
99
+ export const AUTO_REGISTER_PROJECT_NAME = process.env.AWS_PROJECT_NAME || '';
100
+ /** 角色名称 */
101
+ export const AUTO_REGISTER_ROLE_NAME = process.env.AWS_ROLE_NAME || '';
102
+ /** 工作空间路径 */
103
+ export const AUTO_REGISTER_WORKSPACE_PATH = process.env.AWS_WORKSPACE_PATH || '';
104
+ /** 虚拟 IP(EasyTier) */
105
+ export const AUTO_REGISTER_VIRTUAL_IP = process.env.AWS_VIRTUAL_IP || '';
106
+ /** 注册重试次数 */
107
+ export const AUTO_REGISTER_MAX_RETRIES = Number(process.env.AWS_REGISTER_MAX_RETRIES || 5);
108
+ /** 注册重试间隔(毫秒) */
109
+ export const AUTO_REGISTER_RETRY_INTERVAL = Number(process.env.AWS_REGISTER_RETRY_INTERVAL || 5000);
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Runtime Bridge 服务主入口
4
+ *
5
+ * 提供 Agent 运行时与调度器之间的桥接功能
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;GAIG"}