@cloudbase/cli 2.11.6 → 2.11.7

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/.augment-guidelines +119 -0
  2. package/.claude/settings.local.json +6 -0
  3. package/.clinerules/cloudbase-rules.mdc +119 -0
  4. package/.cursor/rules/cloudbase-rules.mdc +119 -0
  5. package/.editorconfig +10 -0
  6. package/.eslintignore +8 -0
  7. package/.eslintrc +35 -0
  8. package/.mcp.json +11 -0
  9. package/.prettierignore +1 -0
  10. package/.prettierrc.js +29 -0
  11. package/.vscode/launch.json +26 -0
  12. package/.yarnrc.yml +1 -0
  13. package/CLAUDE.md +119 -0
  14. package/LICENSE +6 -0
  15. package/bin/ccr.js +3 -0
  16. package/bin/cloudbase.js +7 -0
  17. package/bin/tcb.js +339 -0
  18. package/changelog.md +6 -0
  19. package/cloudbaserc.json +13 -0
  20. package/jest.config.js +17 -0
  21. package/lib/auth/index.js +18 -0
  22. package/lib/auth/login.js +111 -0
  23. package/lib/auth/logout.js +20 -0
  24. package/lib/commands/account/index.js +18 -0
  25. package/lib/commands/account/login.js +269 -0
  26. package/lib/commands/account/logout.js +56 -0
  27. package/lib/commands/ai/index.js +200 -0
  28. package/lib/commands/cloudfunction/base.js +369 -0
  29. package/lib/commands/cloudfunction/index.js +17 -0
  30. package/lib/commands/cloudrun/base.js +1040 -0
  31. package/lib/commands/cloudrun/cloudrun-run-ui/index.html +193 -0
  32. package/lib/commands/cloudrun/index.js +17 -0
  33. package/lib/commands/common.js +225 -0
  34. package/lib/commands/config/delete.js +72 -0
  35. package/lib/commands/config/get.js +69 -0
  36. package/lib/commands/config/index.js +21 -0
  37. package/lib/commands/config/interface.js +25 -0
  38. package/lib/commands/config/list.js +72 -0
  39. package/lib/commands/config/set.js +89 -0
  40. package/lib/commands/constants.js +11 -0
  41. package/lib/commands/db/base.js +399 -0
  42. package/lib/commands/db/index.js +17 -0
  43. package/lib/commands/env/base.js +129 -0
  44. package/lib/commands/env/domain.js +222 -0
  45. package/lib/commands/env/index.js +19 -0
  46. package/lib/commands/env/login.js +271 -0
  47. package/lib/commands/framework/index.js +196 -0
  48. package/lib/commands/fun/base.js +434 -0
  49. package/lib/commands/fun/index.js +17 -0
  50. package/lib/commands/functions/alias/getRoute.js +99 -0
  51. package/lib/commands/functions/alias/index.js +18 -0
  52. package/lib/commands/functions/alias/setRoute.js +101 -0
  53. package/lib/commands/functions/code-download.js +123 -0
  54. package/lib/commands/functions/code-update.js +96 -0
  55. package/lib/commands/functions/concurrency/delete.js +71 -0
  56. package/lib/commands/functions/concurrency/index.js +19 -0
  57. package/lib/commands/functions/concurrency/list.js +82 -0
  58. package/lib/commands/functions/concurrency/set.js +73 -0
  59. package/lib/commands/functions/config-update.js +103 -0
  60. package/lib/commands/functions/copy.js +82 -0
  61. package/lib/commands/functions/delete.js +102 -0
  62. package/lib/commands/functions/deploy.js +331 -0
  63. package/lib/commands/functions/detail.js +166 -0
  64. package/lib/commands/functions/index.js +33 -0
  65. package/lib/commands/functions/invoke.js +140 -0
  66. package/lib/commands/functions/layer/bind.js +191 -0
  67. package/lib/commands/functions/layer/common.js +13 -0
  68. package/lib/commands/functions/layer/create.js +88 -0
  69. package/lib/commands/functions/layer/delete.js +92 -0
  70. package/lib/commands/functions/layer/download.js +112 -0
  71. package/lib/commands/functions/layer/index.js +23 -0
  72. package/lib/commands/functions/layer/list.js +105 -0
  73. package/lib/commands/functions/layer/sort.js +98 -0
  74. package/lib/commands/functions/list.js +92 -0
  75. package/lib/commands/functions/log.js +156 -0
  76. package/lib/commands/functions/run.js +245 -0
  77. package/lib/commands/functions/trigger-create.js +99 -0
  78. package/lib/commands/functions/trigger-delete.js +121 -0
  79. package/lib/commands/functions/version/index.js +18 -0
  80. package/lib/commands/functions/version/list.js +97 -0
  81. package/lib/commands/functions/version/publish.js +71 -0
  82. package/lib/commands/gateway/create.js +125 -0
  83. package/lib/commands/gateway/delete.js +111 -0
  84. package/lib/commands/gateway/domain.js +202 -0
  85. package/lib/commands/gateway/index.js +21 -0
  86. package/lib/commands/gateway/list.js +107 -0
  87. package/lib/commands/gateway/switch.js +144 -0
  88. package/lib/commands/helpers/index.js +19 -0
  89. package/lib/commands/helpers/init.js +395 -0
  90. package/lib/commands/helpers/new.js +130 -0
  91. package/lib/commands/helpers/open.js +90 -0
  92. package/lib/commands/hosting/hosting.js +378 -0
  93. package/lib/commands/hosting/index.js +17 -0
  94. package/lib/commands/index.js +38 -0
  95. package/lib/commands/lowcode/app.js +400 -0
  96. package/lib/commands/lowcode/comps.js +384 -0
  97. package/lib/commands/lowcode/deps.js +85 -0
  98. package/lib/commands/lowcode/index.js +19 -0
  99. package/lib/commands/lowcode/utils.js +308 -0
  100. package/lib/commands/pull/index.js +17 -0
  101. package/lib/commands/pull/pull.js +107 -0
  102. package/lib/commands/run/delete.js +102 -0
  103. package/lib/commands/run/image/common.js +13 -0
  104. package/lib/commands/run/image/delete.js +91 -0
  105. package/lib/commands/run/image/download.js +86 -0
  106. package/lib/commands/run/image/index.js +21 -0
  107. package/lib/commands/run/image/list.js +104 -0
  108. package/lib/commands/run/image/upload.js +114 -0
  109. package/lib/commands/run/index.js +21 -0
  110. package/lib/commands/run/list.js +104 -0
  111. package/lib/commands/run/service/config.js +113 -0
  112. package/lib/commands/run/service/deploy.js +155 -0
  113. package/lib/commands/run/service/index.js +20 -0
  114. package/lib/commands/run/service/list.js +116 -0
  115. package/lib/commands/run/service/update.js +141 -0
  116. package/lib/commands/run/standalonegateway/common.js +13 -0
  117. package/lib/commands/run/standalonegateway/create.js +106 -0
  118. package/lib/commands/run/standalonegateway/destroy.js +82 -0
  119. package/lib/commands/run/standalonegateway/index.js +21 -0
  120. package/lib/commands/run/standalonegateway/list.js +78 -0
  121. package/lib/commands/run/standalonegateway/package.js +87 -0
  122. package/lib/commands/run/standalonegateway/turn.js +87 -0
  123. package/lib/commands/run/version/common.js +13 -0
  124. package/lib/commands/run/version/create.js +329 -0
  125. package/lib/commands/run/version/delete.js +90 -0
  126. package/lib/commands/run/version/index.js +21 -0
  127. package/lib/commands/run/version/list.js +109 -0
  128. package/lib/commands/run/version/modify.js +142 -0
  129. package/lib/commands/run/version/update.js +353 -0
  130. package/lib/commands/runf/base.js +453 -0
  131. package/lib/commands/runf/index.js +17 -0
  132. package/lib/commands/self-update.js +134 -0
  133. package/lib/commands/smart.js +124 -0
  134. package/lib/commands/storage/index.js +17 -0
  135. package/lib/commands/storage/storage.js +515 -0
  136. package/lib/commands/third/index.js +17 -0
  137. package/lib/commands/third/thirdAttach.js +78 -0
  138. package/lib/commands/utils.js +197 -0
  139. package/lib/completion/index.js +15 -0
  140. package/lib/constant.js +142 -0
  141. package/lib/db/index.js +85 -0
  142. package/lib/decorators/captureError.js +30 -0
  143. package/lib/decorators/constants.js +15 -0
  144. package/lib/decorators/deprecate.js +18 -0
  145. package/lib/decorators/guard.js +35 -0
  146. package/lib/decorators/index.js +25 -0
  147. package/lib/decorators/injectParams.js +58 -0
  148. package/lib/decorators/params/common.js +16 -0
  149. package/lib/decorators/params/index.js +34 -0
  150. package/lib/env/domain.js +42 -0
  151. package/lib/env/index.js +80 -0
  152. package/lib/env/login.js +78 -0
  153. package/lib/error.js +17 -0
  154. package/lib/function/alias.js +54 -0
  155. package/lib/function/base.js +266 -0
  156. package/lib/function/code.js +28 -0
  157. package/lib/function/concurrency.js +70 -0
  158. package/lib/function/create.js +72 -0
  159. package/lib/function/delete.js +53 -0
  160. package/lib/function/index.js +27 -0
  161. package/lib/function/layer/attach.js +63 -0
  162. package/lib/function/layer/create.js +63 -0
  163. package/lib/function/layer/delete.js +24 -0
  164. package/lib/function/layer/download.js +37 -0
  165. package/lib/function/layer/index.js +23 -0
  166. package/lib/function/layer/list.js +36 -0
  167. package/lib/function/layer/sort.js +25 -0
  168. package/lib/function/trigger.js +106 -0
  169. package/lib/function/update.js +41 -0
  170. package/lib/function/version.js +52 -0
  171. package/lib/function/vpc.js +35 -0
  172. package/lib/gateway/index.js +136 -0
  173. package/lib/help.js +44 -0
  174. package/lib/hosting.js +244 -0
  175. package/lib/i18n/index.js +73 -0
  176. package/lib/index.js +13 -0
  177. package/lib/logger.js +19 -0
  178. package/lib/run/delete.js +22 -0
  179. package/lib/run/image/build.js +37 -0
  180. package/lib/run/image/delete.js +22 -0
  181. package/lib/run/image/index.js +20 -0
  182. package/lib/run/image/info.js +29 -0
  183. package/lib/run/image/list.js +30 -0
  184. package/lib/run/index.js +23 -0
  185. package/lib/run/list.js +39 -0
  186. package/lib/run/repo.js +31 -0
  187. package/lib/run/service/common.js +271 -0
  188. package/lib/run/service/config.js +70 -0
  189. package/lib/run/service/deployPackage.js +83 -0
  190. package/lib/run/service/index.js +22 -0
  191. package/lib/run/service/list.js +31 -0
  192. package/lib/run/service/showLogs.js +117 -0
  193. package/lib/run/service/update.js +84 -0
  194. package/lib/run/standalonegateway/create.js +32 -0
  195. package/lib/run/standalonegateway/destroy.js +28 -0
  196. package/lib/run/standalonegateway/index.js +21 -0
  197. package/lib/run/standalonegateway/list.js +48 -0
  198. package/lib/run/standalonegateway/package/index.js +17 -0
  199. package/lib/run/standalonegateway/package/list.js +32 -0
  200. package/lib/run/standalonegateway/turn/index.js +18 -0
  201. package/lib/run/standalonegateway/turn/off.js +28 -0
  202. package/lib/run/standalonegateway/turn/on.js +28 -0
  203. package/lib/run/version/create.js +50 -0
  204. package/lib/run/version/delete.js +23 -0
  205. package/lib/run/version/index.js +22 -0
  206. package/lib/run/version/list.js +24 -0
  207. package/lib/run/version/modify.js +24 -0
  208. package/lib/run/version/repo.js +33 -0
  209. package/lib/run/version/update.js +39 -0
  210. package/lib/storage.js +125 -0
  211. package/lib/third/index.js +25 -0
  212. package/lib/types.js +12 -0
  213. package/lib/utils/ai/banner.js +106 -0
  214. package/lib/utils/ai/claudeWindows.js +64 -0
  215. package/lib/utils/ai/config.js +290 -0
  216. package/lib/utils/ai/const.js +178 -0
  217. package/lib/utils/ai/ensureFiles.js +27 -0
  218. package/lib/utils/ai/env.js +37 -0
  219. package/lib/utils/ai/envLocalManager.js +145 -0
  220. package/lib/utils/ai/nodeVersion.js +19 -0
  221. package/lib/utils/ai/router.js +1315 -0
  222. package/lib/utils/ai/setup.js +705 -0
  223. package/lib/utils/auth.js +28 -0
  224. package/lib/utils/checkTcbrEnv.js +76 -0
  225. package/lib/utils/cli-table.js +19 -0
  226. package/lib/utils/commonParamsCheck.js +49 -0
  227. package/lib/utils/config.js +59 -0
  228. package/lib/utils/debug-logger.js +31 -0
  229. package/lib/utils/dts.js +154 -0
  230. package/lib/utils/env.js +222 -0
  231. package/lib/utils/fs/del.js +11 -0
  232. package/lib/utils/fs/index.js +94 -0
  233. package/lib/utils/function-packer.js +87 -0
  234. package/lib/utils/index.js +38 -0
  235. package/lib/utils/log.js +85 -0
  236. package/lib/utils/mcp-config-modifier.js +205 -0
  237. package/lib/utils/net/cloud-api-request.js +64 -0
  238. package/lib/utils/net/credential.js +61 -0
  239. package/lib/utils/net/http-request.js +108 -0
  240. package/lib/utils/net/index.js +21 -0
  241. package/lib/utils/net/manager-service.js +51 -0
  242. package/lib/utils/net/proxy.js +9 -0
  243. package/lib/utils/notice.js +37 -0
  244. package/lib/utils/output/highlight.js +11 -0
  245. package/lib/utils/output/index.js +19 -0
  246. package/lib/utils/output/link.js +16 -0
  247. package/lib/utils/output/loading.js +68 -0
  248. package/lib/utils/parallel.js +65 -0
  249. package/lib/utils/platform/index.js +19 -0
  250. package/lib/utils/platform/mac.js +37 -0
  251. package/lib/utils/platform/os.js +59 -0
  252. package/lib/utils/platform/port.js +26 -0
  253. package/lib/utils/progress-bar.js +44 -0
  254. package/lib/utils/prompt/index.js +17 -0
  255. package/lib/utils/prompt/select.js +54 -0
  256. package/lib/utils/report.js +78 -0
  257. package/lib/utils/reporter/agree.js +31 -0
  258. package/lib/utils/reporter/download.js +37 -0
  259. package/lib/utils/reporter/index.js +19 -0
  260. package/lib/utils/reporter/usage.js +32 -0
  261. package/lib/utils/store/auth.js +59 -0
  262. package/lib/utils/store/common.js +8 -0
  263. package/lib/utils/store/config.js +49 -0
  264. package/lib/utils/store/db.js +84 -0
  265. package/lib/utils/store/index.js +21 -0
  266. package/lib/utils/store/usage.js +9 -0
  267. package/lib/utils/tcbrApi/callTcbrApi.js +39 -0
  268. package/lib/utils/tcbrApi/index.js +17 -0
  269. package/lib/utils/template-manager.js +458 -0
  270. package/lib/utils/template.js +131 -0
  271. package/lib/utils/tools/common.js +74 -0
  272. package/lib/utils/tools/encoding.js +13 -0
  273. package/lib/utils/tools/index.js +20 -0
  274. package/lib/utils/tools/object.js +28 -0
  275. package/lib/utils/tools/time.js +49 -0
  276. package/lib/utils/tools/uid.js +25 -0
  277. package/lib/utils/url.js +19 -0
  278. package/lib/utils/validator.js +72 -0
  279. package/locales/README.md +160 -0
  280. package/locales/i18next-scanner.config.js +211 -0
  281. package/locales/index.js +5 -0
  282. package/locales/langs/en.json +1236 -0
  283. package/locales/langs/zh.json +1236 -0
  284. package/locales/mapping.json +1242 -0
  285. package/package.json +133 -16
  286. package/patches/@musistudio+claude-code-router+1.0.36.patch +40 -0
  287. package/post-install.js +63 -0
  288. package/rules/cloudbase-platform.mdc +44 -0
  289. package/rules/database.mdc +25 -0
  290. package/rules/miniprogram-development.mdc +61 -0
  291. package/rules/ui-design.mdc +24 -0
  292. package/rules/web-development.mdc +44 -0
  293. package/rules/workflows.mdc +30 -0
  294. package/runtime/nodejs/bootstrap.js +255 -0
  295. package/runtime/nodejs/runtime.js +183 -0
  296. package/specs/ai-cli-bootstrap/QWEN.md +196 -0
  297. package/specs/ai-cli-bootstrap/design.md +185 -0
  298. package/specs/ai-cli-bootstrap/requirements.md +51 -0
  299. package/specs/ai-cli-bootstrap/tasks.md +70 -0
  300. package/specs/ai-cli-bootstrap/technical-docs.md +421 -0
  301. package/specs/cli-install-upgrade/design.md +207 -0
  302. package/specs/cli-install-upgrade/requirements.md +315 -0
  303. package/specs/cli-install-upgrade/tasks.md +120 -0
  304. package/specs/codebuddy-integration/design.md +152 -0
  305. package/specs/codebuddy-integration/requirements.md +85 -0
  306. package/specs/codebuddy-integration/tasks.md +159 -0
  307. package/specs/mcp-global-bin/design.md +57 -0
  308. package/specs/mcp-global-bin/requirements.md +43 -0
  309. package/specs/mcp-global-bin/tasks.md +54 -0
  310. package/specs/ssl-fix/design.md +93 -0
  311. package/specs/ssl-fix/requirements.md +47 -0
  312. package/specs/ssl-fix/tasks.md +65 -0
  313. package/specs/tcb-pull-cnb-support/design.md +137 -0
  314. package/specs/tcb-pull-cnb-support/requirements.md +56 -0
  315. package/specs/tcb-pull-cnb-support/tasks.md +101 -0
  316. package/specs/tcb-pull-mcp-integration/design.md +153 -0
  317. package/specs/tcb-pull-mcp-integration/implementation-summary.md +127 -0
  318. package/specs/tcb-pull-mcp-integration/requirements.md +68 -0
  319. package/specs/tcb-pull-mcp-integration/tasks.md +125 -0
  320. package/specs/template-pull-command/design.md +135 -0
  321. package/specs/template-pull-command/implementation-summary.md +160 -0
  322. package/specs/template-pull-command/requirements.md +73 -0
  323. package/specs/template-pull-command/tasks.md +101 -0
  324. package/templates/html/loginFail.html +90 -0
  325. package/templates/html/loginSuccess.html +86 -0
  326. package/templates/server/node/_gitignore +54 -0
  327. package/templates/server/node/cloudbaserc.json +10 -0
  328. package/templates/server/node/index.js +6 -0
  329. package/templates/server/node/package.json +9 -0
  330. package/test-mcp-integration.js +68 -0
  331. package/tsconfig.json +20 -0
  332. package/tsconfig.test.json +13 -0
  333. package/types/auth/index.d.ts +2 -0
  334. package/types/auth/login.d.ts +25 -0
  335. package/types/auth/logout.d.ts +1 -0
  336. package/types/commands/account/index.d.ts +2 -0
  337. package/types/commands/account/login.d.ts +15 -0
  338. package/types/commands/account/logout.d.ts +12 -0
  339. package/types/commands/ai/index.d.ts +23 -0
  340. package/types/commands/cloudfunction/base.d.ts +43 -0
  341. package/types/commands/cloudfunction/index.d.ts +1 -0
  342. package/types/commands/cloudrun/base.d.ts +160 -0
  343. package/types/commands/cloudrun/index.d.ts +1 -0
  344. package/types/commands/common.d.ts +38 -0
  345. package/types/commands/config/delete.d.ts +13 -0
  346. package/types/commands/config/get.d.ts +13 -0
  347. package/types/commands/config/index.d.ts +5 -0
  348. package/types/commands/config/interface.d.ts +17 -0
  349. package/types/commands/config/list.d.ts +13 -0
  350. package/types/commands/config/set.d.ts +13 -0
  351. package/types/commands/constants.d.ts +8 -0
  352. package/types/commands/db/base.d.ts +44 -0
  353. package/types/commands/db/index.d.ts +1 -0
  354. package/types/commands/env/base.d.ts +27 -0
  355. package/types/commands/env/domain.d.ts +53 -0
  356. package/types/commands/env/index.d.ts +3 -0
  357. package/types/commands/env/login.d.ts +47 -0
  358. package/types/commands/framework/index.d.ts +42 -0
  359. package/types/commands/fun/base.d.ts +43 -0
  360. package/types/commands/fun/index.d.ts +1 -0
  361. package/types/commands/functions/alias/getRoute.d.ts +13 -0
  362. package/types/commands/functions/alias/index.d.ts +2 -0
  363. package/types/commands/functions/alias/setRoute.d.ts +13 -0
  364. package/types/commands/functions/code-download.d.ts +18 -0
  365. package/types/commands/functions/code-update.d.ts +18 -0
  366. package/types/commands/functions/concurrency/delete.d.ts +13 -0
  367. package/types/commands/functions/concurrency/index.d.ts +3 -0
  368. package/types/commands/functions/concurrency/list.d.ts +13 -0
  369. package/types/commands/functions/concurrency/set.d.ts +13 -0
  370. package/types/commands/functions/config-update.d.ts +19 -0
  371. package/types/commands/functions/copy.d.ts +15 -0
  372. package/types/commands/functions/delete.d.ts +14 -0
  373. package/types/commands/functions/deploy.d.ts +22 -0
  374. package/types/commands/functions/detail.d.ts +16 -0
  375. package/types/commands/functions/index.d.ts +17 -0
  376. package/types/commands/functions/invoke.d.ts +15 -0
  377. package/types/commands/functions/layer/bind.d.ts +35 -0
  378. package/types/commands/functions/layer/common.d.ts +8 -0
  379. package/types/commands/functions/layer/create.d.ts +18 -0
  380. package/types/commands/functions/layer/delete.d.ts +18 -0
  381. package/types/commands/functions/layer/download.d.ts +18 -0
  382. package/types/commands/functions/layer/index.d.ts +7 -0
  383. package/types/commands/functions/layer/list.d.ts +19 -0
  384. package/types/commands/functions/layer/sort.d.ts +18 -0
  385. package/types/commands/functions/list.d.ts +14 -0
  386. package/types/commands/functions/log.d.ts +15 -0
  387. package/types/commands/functions/run.d.ts +17 -0
  388. package/types/commands/functions/trigger-create.d.ts +18 -0
  389. package/types/commands/functions/trigger-delete.d.ts +18 -0
  390. package/types/commands/functions/version/index.d.ts +2 -0
  391. package/types/commands/functions/version/list.d.ts +13 -0
  392. package/types/commands/functions/version/publish.d.ts +13 -0
  393. package/types/commands/gateway/create.d.ts +14 -0
  394. package/types/commands/gateway/delete.d.ts +14 -0
  395. package/types/commands/gateway/domain.d.ts +47 -0
  396. package/types/commands/gateway/index.d.ts +5 -0
  397. package/types/commands/gateway/list.d.ts +15 -0
  398. package/types/commands/gateway/switch.d.ts +31 -0
  399. package/types/commands/helpers/index.d.ts +3 -0
  400. package/types/commands/helpers/init.d.ts +22 -0
  401. package/types/commands/helpers/new.d.ts +17 -0
  402. package/types/commands/helpers/open.d.ts +11 -0
  403. package/types/commands/hosting/hosting.d.ts +66 -0
  404. package/types/commands/hosting/index.d.ts +1 -0
  405. package/types/commands/index.d.ts +22 -0
  406. package/types/commands/lowcode/app.d.ts +81 -0
  407. package/types/commands/lowcode/comps.d.ts +77 -0
  408. package/types/commands/lowcode/deps.d.ts +15 -0
  409. package/types/commands/lowcode/index.d.ts +3 -0
  410. package/types/commands/lowcode/utils.d.ts +23 -0
  411. package/types/commands/pull/index.d.ts +1 -0
  412. package/types/commands/pull/pull.d.ts +16 -0
  413. package/types/commands/run/delete.d.ts +13 -0
  414. package/types/commands/run/image/common.d.ts +8 -0
  415. package/types/commands/run/image/delete.d.ts +17 -0
  416. package/types/commands/run/image/download.d.ts +17 -0
  417. package/types/commands/run/image/index.d.ts +5 -0
  418. package/types/commands/run/image/list.d.ts +17 -0
  419. package/types/commands/run/image/upload.d.ts +17 -0
  420. package/types/commands/run/index.d.ts +5 -0
  421. package/types/commands/run/list.d.ts +13 -0
  422. package/types/commands/run/service/config.d.ts +14 -0
  423. package/types/commands/run/service/deploy.d.ts +13 -0
  424. package/types/commands/run/service/index.d.ts +4 -0
  425. package/types/commands/run/service/list.d.ts +13 -0
  426. package/types/commands/run/service/update.d.ts +13 -0
  427. package/types/commands/run/standalonegateway/common.d.ts +8 -0
  428. package/types/commands/run/standalonegateway/create.d.ts +17 -0
  429. package/types/commands/run/standalonegateway/destroy.d.ts +17 -0
  430. package/types/commands/run/standalonegateway/index.d.ts +5 -0
  431. package/types/commands/run/standalonegateway/list.d.ts +17 -0
  432. package/types/commands/run/standalonegateway/package.d.ts +17 -0
  433. package/types/commands/run/standalonegateway/turn.d.ts +17 -0
  434. package/types/commands/run/version/common.d.ts +8 -0
  435. package/types/commands/run/version/create.d.ts +17 -0
  436. package/types/commands/run/version/delete.d.ts +17 -0
  437. package/types/commands/run/version/index.d.ts +5 -0
  438. package/types/commands/run/version/list.d.ts +17 -0
  439. package/types/commands/run/version/modify.d.ts +17 -0
  440. package/types/commands/run/version/update.d.ts +17 -0
  441. package/types/commands/runf/base.d.ts +43 -0
  442. package/types/commands/runf/index.d.ts +1 -0
  443. package/types/commands/self-update.d.ts +24 -0
  444. package/types/commands/smart.d.ts +1 -0
  445. package/types/commands/storage/index.d.ts +1 -0
  446. package/types/commands/storage/storage.d.ts +106 -0
  447. package/types/commands/third/index.d.ts +1 -0
  448. package/types/commands/third/thirdAttach.d.ts +15 -0
  449. package/types/commands/utils.d.ts +28 -0
  450. package/types/completion/index.d.ts +4 -0
  451. package/types/constant.d.ts +71 -0
  452. package/types/db/index.d.ts +24 -0
  453. package/types/decorators/captureError.d.ts +1 -0
  454. package/types/decorators/constants.d.ts +11 -0
  455. package/types/decorators/deprecate.d.ts +4 -0
  456. package/types/decorators/guard.d.ts +5 -0
  457. package/types/decorators/index.d.ts +7 -0
  458. package/types/decorators/injectParams.d.ts +1 -0
  459. package/types/decorators/params/common.d.ts +4 -0
  460. package/types/decorators/params/index.d.ts +8 -0
  461. package/types/env/domain.d.ts +11 -0
  462. package/types/env/index.d.ts +12 -0
  463. package/types/env/login.d.ts +16 -0
  464. package/types/error.d.ts +20 -0
  465. package/types/function/alias.d.ts +3 -0
  466. package/types/function/base.d.ts +32 -0
  467. package/types/function/code.d.ts +8 -0
  468. package/types/function/concurrency.d.ts +4 -0
  469. package/types/function/create.d.ts +3 -0
  470. package/types/function/delete.d.ts +8 -0
  471. package/types/function/index.d.ts +11 -0
  472. package/types/function/layer/attach.d.ts +9 -0
  473. package/types/function/layer/create.d.ts +8 -0
  474. package/types/function/layer/delete.d.ts +5 -0
  475. package/types/function/layer/download.d.ts +7 -0
  476. package/types/function/layer/index.d.ts +7 -0
  477. package/types/function/layer/list.d.ts +10 -0
  478. package/types/function/layer/sort.d.ts +10 -0
  479. package/types/function/trigger.d.ts +5 -0
  480. package/types/function/update.d.ts +2 -0
  481. package/types/function/version.d.ts +3 -0
  482. package/types/function/vpc.d.ts +2 -0
  483. package/types/gateway/index.d.ts +18 -0
  484. package/types/help.d.ts +1 -0
  485. package/types/hosting.d.ts +35 -0
  486. package/types/i18n/index.d.ts +3 -0
  487. package/types/index.d.ts +4 -0
  488. package/types/logger.d.ts +3 -0
  489. package/types/run/delete.d.ts +2 -0
  490. package/types/run/image/build.d.ts +10 -0
  491. package/types/run/image/delete.d.ts +2 -0
  492. package/types/run/image/index.d.ts +4 -0
  493. package/types/run/image/info.d.ts +1 -0
  494. package/types/run/image/list.d.ts +3 -0
  495. package/types/run/index.d.ts +7 -0
  496. package/types/run/list.d.ts +2 -0
  497. package/types/run/repo.d.ts +5 -0
  498. package/types/run/service/common.d.ts +42 -0
  499. package/types/run/service/config.d.ts +23 -0
  500. package/types/run/service/deployPackage.d.ts +11 -0
  501. package/types/run/service/index.d.ts +6 -0
  502. package/types/run/service/list.d.ts +2 -0
  503. package/types/run/service/showLogs.d.ts +2 -0
  504. package/types/run/service/update.d.ts +3 -0
  505. package/types/run/standalonegateway/create.d.ts +2 -0
  506. package/types/run/standalonegateway/destroy.d.ts +2 -0
  507. package/types/run/standalonegateway/index.d.ts +5 -0
  508. package/types/run/standalonegateway/list.d.ts +2 -0
  509. package/types/run/standalonegateway/package/index.d.ts +1 -0
  510. package/types/run/standalonegateway/package/list.d.ts +2 -0
  511. package/types/run/standalonegateway/turn/index.d.ts +2 -0
  512. package/types/run/standalonegateway/turn/off.d.ts +2 -0
  513. package/types/run/standalonegateway/turn/on.d.ts +2 -0
  514. package/types/run/version/create.d.ts +10 -0
  515. package/types/run/version/delete.d.ts +2 -0
  516. package/types/run/version/index.d.ts +6 -0
  517. package/types/run/version/list.d.ts +2 -0
  518. package/types/run/version/modify.d.ts +2 -0
  519. package/types/run/version/repo.d.ts +10 -0
  520. package/types/run/version/update.d.ts +6 -0
  521. package/types/storage.d.ts +34 -0
  522. package/types/third/index.d.ts +1 -0
  523. package/types/types.d.ts +590 -0
  524. package/types/utils/ai/banner.d.ts +2 -0
  525. package/types/utils/ai/claudeWindows.d.ts +2 -0
  526. package/types/utils/ai/config.d.ts +89 -0
  527. package/types/utils/ai/const.d.ts +401 -0
  528. package/types/utils/ai/ensureFiles.d.ts +1 -0
  529. package/types/utils/ai/env.d.ts +2 -0
  530. package/types/utils/ai/envLocalManager.d.ts +23 -0
  531. package/types/utils/ai/nodeVersion.d.ts +2 -0
  532. package/types/utils/ai/router.d.ts +59 -0
  533. package/types/utils/ai/setup.d.ts +26 -0
  534. package/types/utils/auth.d.ts +3 -0
  535. package/types/utils/checkTcbrEnv.d.ts +3 -0
  536. package/types/utils/cli-table.d.ts +2 -0
  537. package/types/utils/commonParamsCheck.d.ts +3 -0
  538. package/types/utils/config.d.ts +27 -0
  539. package/types/utils/debug-logger.d.ts +1 -0
  540. package/types/utils/dts.d.ts +6 -0
  541. package/types/utils/env.d.ts +5 -0
  542. package/types/utils/fs/del.d.ts +1 -0
  543. package/types/utils/fs/index.d.ts +7 -0
  544. package/types/utils/function-packer.d.ts +18 -0
  545. package/types/utils/index.d.ts +22 -0
  546. package/types/utils/log.d.ts +22 -0
  547. package/types/utils/mcp-config-modifier.d.ts +7 -0
  548. package/types/utils/net/cloud-api-request.d.ts +9 -0
  549. package/types/utils/net/credential.d.ts +5 -0
  550. package/types/utils/net/http-request.d.ts +8 -0
  551. package/types/utils/net/index.d.ts +5 -0
  552. package/types/utils/net/manager-service.d.ts +4 -0
  553. package/types/utils/net/proxy.d.ts +1 -0
  554. package/types/utils/notice.d.ts +1 -0
  555. package/types/utils/output/highlight.d.ts +1 -0
  556. package/types/utils/output/index.d.ts +3 -0
  557. package/types/utils/output/link.d.ts +1 -0
  558. package/types/utils/output/loading.d.ts +18 -0
  559. package/types/utils/parallel.d.ts +11 -0
  560. package/types/utils/platform/index.d.ts +3 -0
  561. package/types/utils/platform/mac.d.ts +2 -0
  562. package/types/utils/platform/os.d.ts +2 -0
  563. package/types/utils/platform/port.d.ts +1 -0
  564. package/types/utils/progress-bar.d.ts +1 -0
  565. package/types/utils/prompt/index.d.ts +1 -0
  566. package/types/utils/prompt/select.d.ts +4 -0
  567. package/types/utils/report.d.ts +16 -0
  568. package/types/utils/reporter/agree.d.ts +1 -0
  569. package/types/utils/reporter/download.d.ts +1 -0
  570. package/types/utils/reporter/index.d.ts +3 -0
  571. package/types/utils/reporter/usage.d.ts +1 -0
  572. package/types/utils/store/auth.d.ts +8 -0
  573. package/types/utils/store/common.d.ts +2 -0
  574. package/types/utils/store/config.d.ts +8 -0
  575. package/types/utils/store/db.d.ts +17 -0
  576. package/types/utils/store/index.d.ts +5 -0
  577. package/types/utils/store/usage.d.ts +2 -0
  578. package/types/utils/tcbrApi/callTcbrApi.d.ts +1 -0
  579. package/types/utils/tcbrApi/index.d.ts +1 -0
  580. package/types/utils/template-manager.d.ts +27 -0
  581. package/types/utils/template.d.ts +8 -0
  582. package/types/utils/tools/common.d.ts +1 -0
  583. package/types/utils/tools/encoding.d.ts +1 -0
  584. package/types/utils/tools/index.d.ts +4 -0
  585. package/types/utils/tools/object.d.ts +1 -0
  586. package/types/utils/tools/time.d.ts +2 -0
  587. package/types/utils/tools/uid.d.ts +2 -0
  588. package/types/utils/url.d.ts +18 -0
  589. package/types/utils/validator.d.ts +9 -0
  590. package/bin/ccr +0 -2
  591. package/bin/cloudbase +0 -2
  592. package/bin/cloudbase-mcp +0 -2
  593. package/bin/tcb +0 -2
  594. package/dist/fonts/Slant.flf +0 -1295
  595. package/dist/standalone/ccr.js +0 -78668
  596. package/dist/standalone/cli.js +0 -627922
@@ -0,0 +1,159 @@
1
+ # 实施计划
2
+
3
+ ## 任务概览
4
+
5
+ 本计划将分阶段实现 Codebuddy Code CLI 在 CloudBase CLI 中的集成,包括基础集成、配置管理、MCP 服务器管理等功能。
6
+
7
+ ## 详细任务
8
+
9
+ ### 阶段 1: 基础架构扩展
10
+
11
+ - [ ] 1. 添加 Codebuddy 常量定义
12
+ - 在 `src/utils/ai/const.ts` 中添加 CODEBUDDY 常量
13
+ - 定义配置验证 Schema
14
+ - 添加默认配置选项
15
+ - _需求: 需求1, 需求4
16
+
17
+ - [ ] 2. 扩展 AI 命令选项
18
+ - 在 `src/commands/ai/index.ts` 中添加 codebuddy 选项
19
+ - 更新命令描述和示例
20
+ - 确保参数透传功能正常工作
21
+ - _需求: 需求1, 需求3
22
+
23
+ - [ ] 3. 添加 Codebuddy 路由逻辑
24
+ - 在 `src/utils/ai/router.ts` 中添加 executeCodebuddyAgent 方法
25
+ - 实现命令执行和参数透传
26
+ - 添加错误处理和日志记录
27
+ - _需求: 需求1, 需求3
28
+
29
+ ### 阶段 2: 配置管理实现
30
+
31
+ - [ ] 4. 扩展现有配置管理器
32
+ - 在 AIConfigManager 中添加 Codebuddy 配置支持
33
+ - 实现配置验证逻辑
34
+ - 复用现有的配置管理机制
35
+ - _需求: 需求4
36
+
37
+ - [ ] 5. 实现配置向导
38
+ - 创建交互式配置向导
39
+ - 支持 API 密钥和模型配置
40
+ - 提供配置验证和错误提示
41
+ - _需求: 需求1, 需求4
42
+
43
+ - [ ] 6. 实现配置显示和重置功能
44
+ - 添加配置信息显示功能
45
+ - 实现配置重置功能
46
+ - 提供配置备份和恢复
47
+ - _需求: 需求1
48
+
49
+ ### 阶段 3: 安装和依赖管理
50
+
51
+ - [ ] 7. 实现 Codebuddy CLI 安装检查
52
+ - 检查 codebuddy 命令是否可用
53
+ - 提供安装指导和自动安装选项
54
+ - 支持不同平台的安装方式
55
+ - _需求: 需求1
56
+
57
+ - [ ] 8. 实现版本兼容性检查
58
+ - 检查 Codebuddy CLI 版本
59
+ - 验证功能兼容性
60
+ - 提供升级建议
61
+ - _需求: 需求1
62
+
63
+ ### 阶段 4: MCP 服务器管理
64
+
65
+ - [ ] 9. 实现 MCP 命令透传
66
+ - 支持 mcp add 命令透传
67
+ - 支持 mcp list 命令透传
68
+ - 支持 mcp get 命令透传
69
+ - 支持 mcp remove 命令透传
70
+ - _需求: 需求2
71
+
72
+ - [ ] 10. 实现 MCP 配置作用域支持
73
+ - 支持 Local 作用域配置
74
+ - 支持 Project 作用域配置
75
+ - 支持 User 作用域配置
76
+ - 实现配置文件自动合并
77
+ - _需求: 需求2
78
+
79
+ ### 阶段 5: 测试和文档
80
+
81
+ - [ ] 11. 编写单元测试
82
+ - 测试配置验证逻辑
83
+ - 测试命令执行流程
84
+ - 测试参数透传功能
85
+ - 测试错误处理机制
86
+ - _需求: 需求1, 需求2, 需求3, 需求4
87
+
88
+ - [ ] 12. 编写集成测试
89
+ - 测试完整命令执行流程
90
+ - 测试配置管理流程
91
+ - 测试 MCP 服务器管理
92
+ - 测试跨平台兼容性
93
+ - _需求: 需求1, 需求2, 需求3, 需求4
94
+
95
+ - [ ] 13. 更新文档
96
+ - 更新 README.md 文档
97
+ - 添加 Codebuddy 使用示例
98
+ - 更新命令行帮助信息
99
+ - 添加故障排除指南
100
+ - _需求: 需求1, 需求2, 需求3, 需求4
101
+
102
+ ### 阶段 6: 优化和发布
103
+
104
+ - [ ] 14. 性能优化
105
+ - 优化命令执行性能
106
+ - 优化配置加载速度
107
+ - 减少内存占用
108
+ - _需求: 需求1, 需求3
109
+
110
+ - [ ] 15. 用户体验优化
111
+ - 改进错误提示信息
112
+ - 优化安装向导流程
113
+ - 添加进度指示器
114
+ - _需求: 需求1, 需求4
115
+
116
+ - [ ] 16. 发布准备
117
+ - 版本号更新
118
+ - 更新 CHANGELOG
119
+ - 发布到 npm
120
+ - _需求: 需求1, 需求2, 需求3, 需求4
121
+
122
+ ## 风险评估
123
+
124
+ ### 技术风险
125
+ - **Codebuddy CLI 版本兼容性**: 需要确保与不同版本的 Codebuddy CLI 兼容
126
+ - **跨平台支持**: 需要测试在不同操作系统上的兼容性
127
+ - **配置冲突**: 需要处理与现有 AI 工具配置的冲突
128
+
129
+ ### 缓解措施
130
+ - 建立版本兼容性测试矩阵
131
+ - 在多个平台上进行充分测试
132
+ - 实现配置隔离和冲突检测机制
133
+
134
+ ## 时间估算
135
+
136
+ - 阶段 1: 2-3 天
137
+ - 阶段 2: 2-3 天
138
+ - 阶段 3: 1-2 天
139
+ - 阶段 4: 2-3 天
140
+ - 阶段 5: 2-3 天
141
+ - 阶段 6: 1-2 天
142
+
143
+ **总计**: 10-16 天
144
+
145
+ ## 验收标准
146
+
147
+ ### 功能验收
148
+ - [ ] 所有需求中的验收标准都已实现
149
+ - [ ] 命令执行正常,参数透传正确
150
+ - [ ] 配置管理功能完整
151
+ - [ ] MCP 服务器管理功能正常
152
+ - [ ] 错误处理机制完善
153
+
154
+ ### 质量验收
155
+ - [ ] 单元测试覆盖率 > 80%
156
+ - [ ] 集成测试通过率 100%
157
+ - [ ] 代码审查通过
158
+ - [ ] 文档完整且准确
159
+ - [ ] 性能指标达标
@@ -0,0 +1,57 @@
1
+ # 技术方案设计
2
+
3
+ ## 架构概述
4
+
5
+ 本方案通过在 CLI 中暴露一个全局的 `cloudbase-mcp` bin 命令,直接调用内置的 `@cloudbase/cloudbase-mcp` 包,并修改模板下载逻辑,使所有 MCP 配置都指向这个全局命令,从而避免用户需要额外安装 MCP 包。
6
+
7
+ ## 技术栈
8
+
9
+ - Node.js CLI 工具
10
+ - `@cloudbase/cloudbase-mcp` 内置依赖
11
+ - 文件系统操作 (fs-extra)
12
+ - 模板下载和解压
13
+
14
+ ## 技术选型
15
+
16
+ ### 1. Bin 文件创建
17
+ - 在 `bin/` 目录下创建 `cloudbase-mcp.js` 文件
18
+ - 在 `package.json` 的 `bin` 字段中注册 `cloudbase-mcp` 命令
19
+ - 直接调用内置的 `@cloudbase/cloudbase-mcp` 包
20
+
21
+ ### 2. 模板配置生成
22
+ - 修改 `router.ts` 中的模板下载逻辑
23
+ - 根据 IDE 类型生成对应的 MCP 配置文件
24
+ - 所有配置都指向 `cloudbase-mcp` 命令
25
+
26
+ ### 3. IDE 配置映射和格式支持
27
+ - 参考 CloudBase-AI-ToolKit 的 IDE 到文件映射关系
28
+ - 支持 Cursor、VSCode、Claude Code、OpenAI Codex、OpenCode、Aider 等多种 IDE
29
+ - 支持 JSON 和 TOML 两种配置文件格式
30
+ - 实现 TOML 解析和修改功能
31
+
32
+ ## 数据库/接口设计
33
+
34
+ 无需数据库设计,主要涉及文件系统操作和命令行接口。
35
+
36
+ ## 测试策略
37
+
38
+ 1. **单元测试**:测试 bin 文件是否正确调用内置包
39
+ 2. **集成测试**:测试模板下载和配置生成功能
40
+ 3. **端到端测试**:测试完整的 MCP 配置流程
41
+
42
+ ## 安全性
43
+
44
+ - 确保 bin 文件有正确的执行权限
45
+ - 验证模板下载源的安全性
46
+ - 防止路径遍历攻击
47
+
48
+ ## 实施计划
49
+
50
+ ```mermaid
51
+ graph TD
52
+ A[创建 cloudbase-mcp.js bin 文件] --> B[在 package.json 中注册命令]
53
+ B --> C[修改 router.ts 模板下载逻辑]
54
+ C --> D[实现 IDE 配置映射]
55
+ D --> E[测试验证]
56
+ E --> F[文档更新]
57
+ ```
@@ -0,0 +1,43 @@
1
+ # 需求文档
2
+
3
+ ## 介绍
4
+
5
+ 当前下载的模板中的 MCP 配置使用 `npx npm-global-exec@latest @cloudbase/cloudbase-mcp@latest` 命令,这会导致用户需要安装 MCP,降低了成功率。CLI 已经内置了 `@cloudbase/cloudbase-mcp@latest` 依赖,需要在 CLI 中直接暴露一个额外的 bin 文件指向到这个依赖,然后修改下载模板的 MCP 配置都指向这个全局命令。
6
+
7
+ ## 需求
8
+
9
+ ### 需求 1 - 创建全局 MCP bin 命令
10
+
11
+ **用户故事:** 作为开发者,我希望 CLI 提供一个全局的 MCP 命令,这样我就不需要额外安装 MCP 包,提高配置成功率。
12
+
13
+ #### 验收标准
14
+
15
+ 1. When CLI 安装后,the 系统 shall 提供一个全局的 `cloudbase-mcp` 命令
16
+ 2. When 执行 `cloudbase-mcp` 命令时,the 系统 shall 直接调用内置的 `@cloudbase/cloudbase-mcp` 包
17
+ 3. When 验证 MCP 配置时,the 配置文件中的命令 shall 指向 `cloudbase-mcp` 而不是 `npx npm-global-exec@latest @cloudbase/cloudbase-mcp@latest`
18
+
19
+ ### 需求 2 - 自动修改模板 MCP 配置
20
+
21
+ **用户故事:** 作为开发者,我希望下载模板后系统自动修改 MCP 配置,将 npx 命令替换为 CLI 提供的全局命令,避免额外的依赖安装。
22
+
23
+ #### 验收标准
24
+
25
+ 1. When 下载模板完成后,the 系统 shall 自动检测并修改所有 MCP 配置文件
26
+ 2. When 发现 `.cursor/mcp.json` 等配置文件时,the 系统 shall 将 `npx npm-global-exec@latest @cloudbase/cloudbase-mcp@latest` 替换为 `cloudbase-mcp`
27
+ 3. When 修改完成后,the 系统 shall 验证配置文件的正确性
28
+ 4. When 用户使用模板时,the MCP 功能 shall 无需额外安装即可正常工作
29
+
30
+ ### 需求 3 - 支持多种 IDE 配置和格式
31
+
32
+ **用户故事:** 作为开发者,我希望模板支持多种 IDE 的 MCP 配置,包括不同格式(JSON、TOML)和各种工具。
33
+
34
+ #### 验收标准
35
+
36
+ 1. When 下载模板时,the 系统 shall 根据 IDE 类型生成对应的配置文件
37
+ 2. When 配置 Cursor 时,the 系统 shall 生成 `.cursor/mcp.json` 和 `.cursor/rules/cloudbase-rules.mdc`
38
+ 3. When 配置 VSCode 时,the 系统 shall 生成 `.vscode/mcp.json` 和 `.vscode/settings.json`
39
+ 4. When 配置 Claude Code 时,the 系统 shall 生成 `CLAUDE.md` 和 `.mcp.json`
40
+ 5. When 配置 OpenAI Codex 时,the 系统 shall 处理 `.codex/config.toml` 文件
41
+ 6. When 配置 OpenCode 时,the 系统 shall 处理 `.opencode.json` 文件
42
+ 7. When 配置 Aider 时,the 系统 shall 处理 `mcp.json` 文件
43
+ 8. When 处理 TOML 格式时,the 系统 shall 正确解析和修改配置
@@ -0,0 +1,54 @@
1
+ # 实施计划
2
+
3
+ - [x] 1. 创建 cloudbase-mcp bin 文件
4
+ - 在 `bin/` 目录下创建 `cloudbase-mcp.js` 文件
5
+ - 实现直接调用内置 `@cloudbase/cloudbase-mcp` 包的逻辑
6
+ - 确保文件有正确的执行权限
7
+ - _需求: 需求 1
8
+
9
+ - [x] 2. 在 package.json 中注册新命令
10
+ - 在 `bin` 字段中添加 `cloudbase-mcp` 命令映射
11
+ - 确保命令指向正确的 bin 文件
12
+ - _需求: 需求 1
13
+
14
+ - [x] 3. 实现 IDE 配置映射常量
15
+ - 在 `router.ts` 中添加 IDE 到文件的映射关系常量
16
+ - 参考 CloudBase-AI-ToolKit 的映射配置
17
+ - 支持 Cursor、VSCode、Claude Code 等多种 IDE
18
+ - _需求: 需求 3
19
+
20
+ - [x] 3.1. 扩展支持更多 IDE 和格式
21
+ - 添加 OpenAI Codex (.codex/config.toml) 支持
22
+ - 添加 OpenCode (.opencode.json) 支持
23
+ - 添加 Aider (mcp.json) 支持
24
+ - 实现 TOML 格式解析和修改功能
25
+ - _需求: 需求 3
26
+
27
+ - [x] 4. 修改模板下载后的处理逻辑
28
+ - 在 `downloadAndExtractTemplate` 方法中添加 MCP 配置修改逻辑
29
+ - 实现自动检测 MCP 配置文件的功能
30
+ - 实现将 npx 命令替换为 cloudbase-mcp 命令的功能
31
+ - _需求: 需求 2
32
+
33
+ - [x] 5. 实现 MCP 配置文件修改函数
34
+ - 创建 `modifyMCPConfigs` 函数
35
+ - 遍历所有 IDE 配置文件并修改命令
36
+ - 验证修改后的配置文件正确性
37
+ - _需求: 需求 2
38
+
39
+ - [x] 6. 添加配置验证功能
40
+ - 实现验证 MCP 配置文件格式的功能
41
+ - 确保修改后的配置仍然有效
42
+ - 添加错误处理和回滚机制
43
+ - _需求: 需求 2
44
+
45
+ - [x] 7. 测试验证
46
+ - 测试 cloudbase-mcp 命令是否正常工作
47
+ - 测试模板下载和配置修改功能
48
+ - 测试不同 IDE 配置文件的生成
49
+ - _需求: 需求 1, 需求 2, 需求 3
50
+
51
+ - [x] 8. 文档更新
52
+ - 更新 README.md 说明新的 cloudbase-mcp 命令
53
+ - 更新模板下载相关的文档
54
+ - _需求: 需求 1, 需求 2
@@ -0,0 +1,93 @@
1
+ # SSL错误修复技术方案设计
2
+
3
+ ## 架构概述
4
+
5
+ 采用多层解决方案架构,从检测到自动修复,提供完整的SSL错误处理流程。
6
+
7
+ ## 技术栈
8
+
9
+ - **错误检测层**:Node.js错误捕获 + SSL协议检测
10
+ - **配置管理层**:环境变量管理 + Node.js配置
11
+ - **网络适配层**:代理配置 + SSL降级处理
12
+ - **用户交互层**:CLI交互 + 自动修复
13
+
14
+ ## 技术选型
15
+
16
+ ### 1. SSL错误检测
17
+ - 使用 `process.on('uncaughtException')` 捕获SSL错误
18
+ - 通过错误信息模式匹配识别SSL协议问题
19
+ - 集成环境信息收集功能
20
+
21
+ ### 2. SSL配置优化
22
+ - 使用 `process.env.NODE_OPTIONS` 设置SSL配置
23
+ - 支持 `--tls-min-v1.2` 和 `--tls-max-v1.3` 参数
24
+ - 提供环境变量配置选项
25
+
26
+ ### 3. 网络适配
27
+ - 集成现有的代理配置系统
28
+ - 支持企业网络环境检测
29
+ - 提供SSL证书验证选项
30
+
31
+ ## 数据库/接口设计
32
+
33
+ ### 配置存储
34
+ ```typescript
35
+ interface SSLConfig {
36
+ tlsMinVersion: string;
37
+ tlsMaxVersion: string;
38
+ secureProtocol: string;
39
+ rejectUnauthorized: boolean;
40
+ proxyEnabled: boolean;
41
+ proxyUrl?: string;
42
+ }
43
+ ```
44
+
45
+ ### 错误诊断接口
46
+ ```typescript
47
+ interface SSLDiagnostic {
48
+ errorType: 'EPROTO' | 'CERTIFICATE' | 'PROXY' | 'UNKNOWN';
49
+ errorMessage: string;
50
+ environment: {
51
+ nodeVersion: string;
52
+ platform: string;
53
+ arch: string;
54
+ sslVersion: string;
55
+ };
56
+ solutions: SSLSolution[];
57
+ }
58
+ ```
59
+
60
+ ## 测试策略
61
+
62
+ 1. **单元测试**:SSL配置函数测试
63
+ 2. **集成测试**:错误检测和修复流程测试
64
+ 3. **环境测试**:Windows 11 PowerShell环境测试
65
+ 4. **兼容性测试**:不同Node.js版本兼容性测试
66
+
67
+ ## 安全性
68
+
69
+ - 保持SSL证书验证的完整性
70
+ - 提供安全的代理配置选项
71
+ - 避免降低安全性的降级方案
72
+
73
+ ## 实施计划
74
+
75
+ ### 阶段1:错误检测与诊断
76
+ - 实现SSL错误自动检测
77
+ - 添加环境信息收集
78
+ - 提供诊断报告功能
79
+
80
+ ### 阶段2:配置优化
81
+ - 实现SSL配置自动优化
82
+ - 添加环境变量配置
83
+ - 提供代理配置选项
84
+
85
+ ### 阶段3:降级处理
86
+ - 实现TLS版本降级
87
+ - 添加兼容性模式
88
+ - 提供自动修复功能
89
+
90
+ ### 阶段4:用户交互
91
+ - 实现CLI交互界面
92
+ - 添加自动修复选项
93
+ - 提供配置管理功能
@@ -0,0 +1,47 @@
1
+ # SSL错误修复需求文档
2
+
3
+ ## 介绍
4
+
5
+ Windows 11 PowerShell环境下运行 `tcb ai` 时出现SSL协议版本不匹配错误,需要提供多种解决方案。
6
+
7
+ ## 需求
8
+
9
+ ### 需求 1 - SSL错误检测与诊断
10
+
11
+ **用户故事:** 当用户遇到SSL错误时,系统应当能够自动检测并提供诊断信息
12
+
13
+ #### 验收标准
14
+
15
+ 1. When 检测到SSL错误时,the 系统 shall 提供详细的错误诊断信息
16
+ 2. When 检测到SSL错误时,the 系统 shall 提供多种解决方案选项
17
+ 3. When 检测到SSL错误时,the 系统 shall 提供环境信息收集功能
18
+
19
+ ### 需求 2 - SSL配置优化
20
+
21
+ **用户故事:** 系统应当提供SSL配置优化选项来解决协议版本不匹配问题
22
+
23
+ #### 验收标准
24
+
25
+ 1. When 用户选择SSL配置优化时,the 系统 shall 提供Node.js SSL配置选项
26
+ 2. When 用户选择SSL配置优化时,the 系统 shall 提供环境变量配置选项
27
+ 3. When 用户选择SSL配置优化时,the 系统 shall 提供代理配置选项
28
+
29
+ ### 需求 3 - 降级兼容性处理
30
+
31
+ **用户故事:** 系统应当提供降级到兼容SSL版本的选项
32
+
33
+ #### 验收标准
34
+
35
+ 1. When 用户选择降级处理时,the 系统 shall 自动设置兼容的SSL协议版本
36
+ 2. When 用户选择降级处理时,the 系统 shall 提供TLS 1.2兼容模式
37
+ 3. When 用户选择降级处理时,the 系统 shall 保持功能完整性
38
+
39
+ ### 需求 4 - 网络环境适配
40
+
41
+ **用户故事:** 系统应当能够适配不同的网络环境配置
42
+
43
+ #### 验收标准
44
+
45
+ 1. When 检测到企业网络环境时,the 系统 shall 提供代理配置指导
46
+ 2. When 检测到防火墙限制时,the 系统 shall 提供绕过方案
47
+ 3. When 检测到SSL证书问题时,the 系统 shall 提供证书验证选项
@@ -0,0 +1,65 @@
1
+ # SSL错误修复实施计划
2
+
3
+ ## 任务拆分
4
+
5
+ - [x] 1. SSL错误检测模块开发
6
+ - 实现SSL错误自动捕获机制
7
+ - 添加错误模式识别功能
8
+ - 集成环境信息收集
9
+ - _需求: 需求1
10
+
11
+ - [x] 2. SSL配置优化模块开发
12
+ - 实现Node.js SSL配置自动设置
13
+ - 添加环境变量配置功能
14
+ - 集成代理配置选项
15
+ - _需求: 需求2
16
+
17
+ - [x] 3. 降级兼容性处理模块开发
18
+ - 实现TLS版本降级功能
19
+ - 添加TLS 1.2兼容模式
20
+ - 确保功能完整性
21
+ - _需求: 需求3
22
+
23
+ - [x] 4. 网络环境适配模块开发
24
+ - 实现企业网络环境检测
25
+ - 添加防火墙绕过方案
26
+ - 提供证书验证选项
27
+ - _需求: 需求4
28
+
29
+ - [x] 5. 用户交互界面开发
30
+ - 实现CLI交互界面
31
+ - 添加自动修复选项
32
+ - 提供配置管理功能
33
+ - _需求: 需求1, 需求2, 需求3, 需求4
34
+
35
+ - [x] 6. 测试与验证
36
+ - 单元测试编写
37
+ - 集成测试执行
38
+ - Windows 11环境测试
39
+ - 兼容性测试验证
40
+ - _需求: 需求1, 需求2, 需求3, 需求4
41
+
42
+ - [x] 7. 文档与部署
43
+ - 用户使用文档编写
44
+ - 故障排除指南更新
45
+ - 部署脚本更新
46
+ - _需求: 需求1, 需求2, 需求3, 需求4
47
+
48
+ ## 优先级排序
49
+
50
+ 1. **高优先级**:任务1、任务2(核心功能)
51
+ 2. **中优先级**:任务3、任务4(兼容性)
52
+ 3. **低优先级**:任务5、任务6、任务7(完善)
53
+
54
+ ## 风险评估
55
+
56
+ - **技术风险**:SSL配置可能影响其他功能
57
+ - **兼容性风险**:不同Node.js版本兼容性
58
+ - **安全风险**:降级方案可能降低安全性
59
+
60
+ ## 成功标准
61
+
62
+ - SSL错误自动检测准确率 > 95%
63
+ - 自动修复成功率 > 90%
64
+ - 用户满意度 > 85%
65
+ - 无安全漏洞引入
@@ -0,0 +1,137 @@
1
+ # 技术方案设计
2
+
3
+ ## 概述
4
+
5
+ 为 `tcb pull` 命令增加 cnb.cool 仓库的支持,使开发者能够直接从 cnb.cool 平台拉取项目模板。
6
+
7
+ ## 技术架构
8
+
9
+ ### 当前架构分析
10
+
11
+ `tcb pull` 命令基于 `TemplateManager` 类实现,支持:
12
+ - 内置模板下载(ZIP 文件)
13
+ - Git 仓库克隆(GitHub, Gitee, SSH)
14
+
15
+ ### 新增功能架构
16
+
17
+ ```
18
+ TemplateManager
19
+ ├── isGitUrl() # 新增 cnb.cool URL 识别
20
+ ├── parseGitUrl() # 新增 cnb.cool URL 解析
21
+ ├── buildGitUrl() # 新增 cnb.cool Git URL 构建
22
+ └── downloadGitTemplateToTemp() # 复用现有 Git 下载逻辑
23
+ ```
24
+
25
+ ## 技术选型
26
+
27
+ ### URL 格式识别
28
+ - 使用正则表达式匹配 cnb.cool URL 格式
29
+ - 支持 HTTP 和 HTTPS 协议
30
+ - 支持带分支和子目录的 URL
31
+
32
+ ### URL 解析逻辑
33
+ - 解析格式:`https://cnb.cool/{owner}/{repo}[/tree/{branch}[/{subpath}]]`
34
+ - 默认分支:main(与 GitHub 保持一致)
35
+ - 支持子目录拉取
36
+
37
+ ### Git URL 构建
38
+ - 构建格式:`https://cnb.cool/{owner}/{repo}.git`
39
+ - 复用现有的 Git 克隆逻辑
40
+
41
+ ## 实现细节
42
+
43
+ ### 1. 接口扩展
44
+
45
+ ```typescript
46
+ interface GitUrlInfo {
47
+ platform: 'github' | 'gitee' | 'git' | 'cnb' // 新增 'cnb'
48
+ owner: string
49
+ repo: string
50
+ branch: string
51
+ subpath?: string
52
+ }
53
+ ```
54
+
55
+ ### 2. URL 解析实现
56
+
57
+ ```typescript
58
+ // 新增 cnb.cool URL 解析
59
+ const cnbMatch = url.match(/https?:\/\/cnb\.cool\/([^\/]+)\/([^\/]+)(?:\/tree\/([^\/]+)\/(.+))?/)
60
+ if (cnbMatch) {
61
+ return {
62
+ platform: 'cnb',
63
+ owner: cnbMatch[1],
64
+ repo: cnbMatch[2],
65
+ branch: cnbMatch[3] || 'main',
66
+ subpath: cnbMatch[4]
67
+ }
68
+ }
69
+ ```
70
+
71
+ ### 3. Git URL 构建
72
+
73
+ ```typescript
74
+ if (gitInfo.platform === 'cnb') {
75
+ return `https://cnb.cool/${gitInfo.owner}/${gitInfo.repo}.git`
76
+ }
77
+ ```
78
+
79
+ ## 安全考虑
80
+
81
+ ### URL 验证
82
+ - 严格的正则表达式匹配,确保只识别合法的 cnb.cool URL
83
+ - 防止恶意 URL 注入
84
+
85
+ ### 网络安全
86
+ - 复用现有的 Git 克隆安全机制
87
+ - 支持 HTTPS 协议,确保传输安全
88
+
89
+ ## 兼容性
90
+
91
+ ### 向后兼容
92
+ - 不影响现有的 GitHub/Gitee/SSH 支持
93
+ - 保持现有的 API 接口不变
94
+
95
+ ### 前向兼容
96
+ - 支持 cnb.cool 的未来 URL 格式变更
97
+ - 预留扩展空间
98
+
99
+ ## 测试策略
100
+
101
+ ### 单元测试
102
+ - URL 解析测试(基础 URL、带分支、带子目录)
103
+ - URL 验证测试
104
+ - Git URL 构建测试
105
+
106
+ ### 集成测试
107
+ - 实际 cnb.cool 仓库拉取测试
108
+ - 错误处理测试
109
+
110
+ ## 部署策略
111
+
112
+ ### 渐进式部署
113
+ 1. 代码合并到主分支
114
+ 2. 在测试环境验证功能
115
+ 3. 生产环境灰度发布
116
+ 4. 全量发布
117
+
118
+ ### 回滚策略
119
+ - 代码层面:可通过条件编译回滚
120
+ - 配置层面:可通过配置开关控制
121
+
122
+ ## 监控和运维
123
+
124
+ ### 错误监控
125
+ - 记录 cnb.cool 拉取失败的错误信息
126
+ - 监控 URL 解析失败的情况
127
+
128
+ ### 性能监控
129
+ - 监控 cnb.cool 仓库的拉取时间
130
+ - 监控网络请求的成功率
131
+
132
+
133
+
134
+
135
+
136
+
137
+