ccjk 15.31.1 → 16.0.1

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 (532) hide show
  1. package/README.md +1 -1
  2. package/bin/ccjk.mjs +2 -0
  3. package/dist/chunks/api-providers.mjs +145 -113
  4. package/dist/chunks/claude-code-config-manager.mjs +731 -0
  5. package/dist/chunks/claude-code-incremental-manager.mjs +126 -286
  6. package/dist/chunks/codex-config-switch.mjs +52 -110
  7. package/dist/chunks/codex-provider-manager.mjs +41 -82
  8. package/dist/chunks/codex-uninstaller.mjs +24 -23
  9. package/dist/chunks/commands.mjs +38 -28
  10. package/dist/chunks/features.mjs +287 -370
  11. package/dist/chunks/simple-config.mjs +8037 -62
  12. package/dist/cli.mjs +2354 -2563
  13. package/dist/i18n/locales/en/api.json +1 -11
  14. package/dist/i18n/locales/en/cli.json +2 -95
  15. package/dist/i18n/locales/en/codex.json +3 -64
  16. package/dist/i18n/locales/en/common.json +1 -49
  17. package/dist/i18n/locales/en/configuration.json +23 -174
  18. package/dist/i18n/locales/en/errors.json +11 -11
  19. package/dist/i18n/locales/en/installation.json +1 -4
  20. package/dist/i18n/locales/en/language.json +1 -1
  21. package/dist/i18n/locales/en/mcp.json +6 -162
  22. package/dist/i18n/locales/en/menu.json +49 -297
  23. package/dist/i18n/locales/en/multi-config.json +1 -1
  24. package/dist/i18n/locales/en/tools.json +1 -28
  25. package/dist/i18n/locales/en/updater.json +2 -6
  26. package/dist/i18n/locales/en/workflow.json +12 -44
  27. package/dist/i18n/locales/zh-CN/api.json +1 -11
  28. package/dist/i18n/locales/zh-CN/cli.json +1 -94
  29. package/dist/i18n/locales/zh-CN/codex.json +3 -64
  30. package/dist/i18n/locales/zh-CN/common.json +1 -49
  31. package/dist/i18n/locales/zh-CN/configuration.json +23 -172
  32. package/dist/i18n/locales/zh-CN/errors.json +11 -11
  33. package/dist/i18n/locales/zh-CN/installation.json +1 -4
  34. package/dist/i18n/locales/zh-CN/language.json +1 -1
  35. package/dist/i18n/locales/zh-CN/mcp.json +6 -162
  36. package/dist/i18n/locales/zh-CN/menu.json +49 -297
  37. package/dist/i18n/locales/zh-CN/multi-config.json +1 -1
  38. package/dist/i18n/locales/zh-CN/tools.json +1 -28
  39. package/dist/i18n/locales/zh-CN/updater.json +1 -5
  40. package/dist/i18n/locales/zh-CN/workflow.json +12 -44
  41. package/dist/index.d.mts +241 -5574
  42. package/dist/index.d.ts +241 -5574
  43. package/dist/index.mjs +17 -3730
  44. package/dist/shared/ccjk.DGjQxTq_.mjs +34 -0
  45. package/package.json +34 -14
  46. package/templates/CLAUDE.md +221 -0
  47. package/templates/claude-code/CLAUDE.md +250 -0
  48. package/templates/claude-code/common/settings.json +48 -0
  49. package/templates/claude-code/en/workflow/bmad/commands/bmad-init.md +275 -0
  50. package/templates/claude-code/en/workflow/common/agents/get-current-datetime.md +29 -0
  51. package/templates/claude-code/en/workflow/common/agents/init-architect.md +114 -0
  52. package/templates/claude-code/en/workflow/common/commands/init-project.md +53 -0
  53. package/templates/claude-code/en/workflow/plan/agents/planner.md +116 -0
  54. package/templates/claude-code/en/workflow/plan/agents/ui-ux-designer.md +91 -0
  55. package/templates/claude-code/en/workflow/plan/commands/feat.md +105 -0
  56. package/templates/claude-code/zh-CN/workflow/bmad/commands/bmad-init.md +275 -0
  57. package/{dist/templates/common/workflow/essential/en → templates/claude-code/zh-CN/workflow/common}/agents/init-architect.md +0 -1
  58. package/templates/claude-code/zh-CN/workflow/plan/agents/planner.md +116 -0
  59. package/templates/claude-code/zh-CN/workflow/plan/commands/feat.md +105 -0
  60. package/templates/codex/common/config.toml +0 -0
  61. package/templates/common/output-styles/en/engineer-professional.md +88 -0
  62. package/templates/common/output-styles/en/laowang-engineer.md +127 -0
  63. package/templates/common/output-styles/en/leibus-engineer.md +251 -0
  64. package/templates/common/output-styles/en/nekomata-engineer.md +120 -0
  65. package/templates/common/output-styles/en/ojousama-engineer.md +121 -0
  66. package/templates/common/output-styles/en/rem-engineer.md +173 -0
  67. package/templates/common/output-styles/zh-CN/engineer-professional.md +89 -0
  68. package/templates/common/output-styles/zh-CN/laowang-engineer.md +127 -0
  69. package/templates/common/output-styles/zh-CN/leibus-engineer.md +251 -0
  70. package/templates/common/output-styles/zh-CN/nekomata-engineer.md +120 -0
  71. package/templates/common/output-styles/zh-CN/ojousama-engineer.md +121 -0
  72. package/templates/common/output-styles/zh-CN/rem-engineer.md +179 -0
  73. package/templates/common/workflow/git/en/git-cleanBranches.md +102 -0
  74. package/templates/common/workflow/git/en/git-commit.md +205 -0
  75. package/templates/common/workflow/git/en/git-rollback.md +90 -0
  76. package/templates/common/workflow/git/en/git-worktree.md +276 -0
  77. package/templates/common/workflow/sixStep/en/workflow.md +251 -0
  78. package/{dist/templates → templates}/common/workflow/sixStep/zh-CN/workflow.md +10 -154
  79. package/dist/chunks/agent-teams.mjs +0 -145
  80. package/dist/chunks/agent.mjs +0 -1439
  81. package/dist/chunks/agents.mjs +0 -3783
  82. package/dist/chunks/api-cli.mjs +0 -135
  83. package/dist/chunks/api-config-selector.mjs +0 -159
  84. package/dist/chunks/api.mjs +0 -115
  85. package/dist/chunks/auto-bootstrap.mjs +0 -358
  86. package/dist/chunks/auto-fixer.mjs +0 -95
  87. package/dist/chunks/auto-updater.mjs +0 -507
  88. package/dist/chunks/banner.mjs +0 -173
  89. package/dist/chunks/bash.mjs +0 -187
  90. package/dist/chunks/boost.mjs +0 -474
  91. package/dist/chunks/brain-config.mjs +0 -75
  92. package/dist/chunks/brain-status.mjs +0 -89
  93. package/dist/chunks/ccjk-agents.mjs +0 -416
  94. package/dist/chunks/ccjk-all.mjs +0 -1046
  95. package/dist/chunks/ccjk-config.mjs +0 -445
  96. package/dist/chunks/ccjk-hooks.mjs +0 -1074
  97. package/dist/chunks/ccjk-mcp.mjs +0 -763
  98. package/dist/chunks/ccjk-setup.mjs +0 -765
  99. package/dist/chunks/ccjk-skills.mjs +0 -518
  100. package/dist/chunks/ccr.mjs +0 -109
  101. package/dist/chunks/ccu.mjs +0 -40
  102. package/dist/chunks/check-updates.mjs +0 -117
  103. package/dist/chunks/claude-config.mjs +0 -606
  104. package/dist/chunks/claude-config2.mjs +0 -62
  105. package/dist/chunks/claude-wrapper.mjs +0 -85
  106. package/dist/chunks/clavue-config.mjs +0 -1454
  107. package/dist/chunks/cleanup-migration.mjs +0 -20
  108. package/dist/chunks/cli-hook.mjs +0 -4096
  109. package/dist/chunks/cloud-sync.mjs +0 -29
  110. package/dist/chunks/code-type-resolver.mjs +0 -880
  111. package/dist/chunks/codex.mjs +0 -2141
  112. package/dist/chunks/commands2.mjs +0 -421
  113. package/dist/chunks/commit.mjs +0 -140
  114. package/dist/chunks/completion.mjs +0 -517
  115. package/dist/chunks/config-consolidator.mjs +0 -172
  116. package/dist/chunks/config-switch.mjs +0 -334
  117. package/dist/chunks/config.mjs +0 -558
  118. package/dist/chunks/config2.mjs +0 -484
  119. package/dist/chunks/config3.mjs +0 -486
  120. package/dist/chunks/constants.mjs +0 -323
  121. package/dist/chunks/context-opt.mjs +0 -444
  122. package/dist/chunks/context.mjs +0 -974
  123. package/dist/chunks/dashboard.mjs +0 -481
  124. package/dist/chunks/doctor.mjs +0 -1301
  125. package/dist/chunks/eval.mjs +0 -502
  126. package/dist/chunks/evolution.mjs +0 -322
  127. package/dist/chunks/fish.mjs +0 -181
  128. package/dist/chunks/fs-operations.mjs +0 -180
  129. package/dist/chunks/health-alerts.mjs +0 -830
  130. package/dist/chunks/help.mjs +0 -341
  131. package/dist/chunks/hook-installer.mjs +0 -48
  132. package/dist/chunks/impact.mjs +0 -651
  133. package/dist/chunks/index.mjs +0 -23
  134. package/dist/chunks/index10.mjs +0 -19
  135. package/dist/chunks/index11.mjs +0 -1171
  136. package/dist/chunks/index12.mjs +0 -218
  137. package/dist/chunks/index13.mjs +0 -679
  138. package/dist/chunks/index14.mjs +0 -1009
  139. package/dist/chunks/index15.mjs +0 -194
  140. package/dist/chunks/index2.mjs +0 -7637
  141. package/dist/chunks/index3.mjs +0 -171
  142. package/dist/chunks/index4.mjs +0 -26
  143. package/dist/chunks/index5.mjs +0 -19
  144. package/dist/chunks/index6.mjs +0 -19092
  145. package/dist/chunks/index7.mjs +0 -616
  146. package/dist/chunks/index8.mjs +0 -1602
  147. package/dist/chunks/index9.mjs +0 -5384
  148. package/dist/chunks/init.mjs +0 -1911
  149. package/dist/chunks/installer.mjs +0 -757
  150. package/dist/chunks/installer2.mjs +0 -103
  151. package/dist/chunks/interview.mjs +0 -2927
  152. package/dist/chunks/json-config.mjs +0 -60
  153. package/dist/chunks/linux.mjs +0 -3863
  154. package/dist/chunks/macos.mjs +0 -69
  155. package/dist/chunks/main.mjs +0 -635
  156. package/dist/chunks/manager.mjs +0 -1048
  157. package/dist/chunks/marketplace.mjs +0 -265
  158. package/dist/chunks/mcp-cli.mjs +0 -205
  159. package/dist/chunks/mcp-performance.mjs +0 -187
  160. package/dist/chunks/mcp.mjs +0 -667
  161. package/dist/chunks/memory-check.mjs +0 -2973
  162. package/dist/chunks/memory-paths.mjs +0 -259
  163. package/dist/chunks/memory-sync.mjs +0 -209
  164. package/dist/chunks/memory.mjs +0 -354
  165. package/dist/chunks/metrics-display.mjs +0 -153
  166. package/dist/chunks/monitor.mjs +0 -1856
  167. package/dist/chunks/notification.mjs +0 -1864
  168. package/dist/chunks/onboarding.mjs +0 -386
  169. package/dist/chunks/package.mjs +0 -3
  170. package/dist/chunks/paradigm.mjs +0 -74
  171. package/dist/chunks/permission-manager.mjs +0 -250
  172. package/dist/chunks/permissions.mjs +0 -265
  173. package/dist/chunks/persistence-manager.mjs +0 -801
  174. package/dist/chunks/persistence.mjs +0 -707
  175. package/dist/chunks/platform.mjs +0 -395
  176. package/dist/chunks/plugin.mjs +0 -1936
  177. package/dist/chunks/powershell.mjs +0 -213
  178. package/dist/chunks/prompts.mjs +0 -244
  179. package/dist/chunks/providers.mjs +0 -263
  180. package/dist/chunks/quick-actions.mjs +0 -335
  181. package/dist/chunks/quick-provider.mjs +0 -755
  182. package/dist/chunks/quick-setup.mjs +0 -421
  183. package/dist/chunks/remote.mjs +0 -497
  184. package/dist/chunks/research.mjs +0 -1904
  185. package/dist/chunks/rollback.mjs +0 -38
  186. package/dist/chunks/session-manager.mjs +0 -1371
  187. package/dist/chunks/session.mjs +0 -878
  188. package/dist/chunks/sessions.mjs +0 -106
  189. package/dist/chunks/silent-updater.mjs +0 -396
  190. package/dist/chunks/skill.mjs +0 -117
  191. package/dist/chunks/skill2.mjs +0 -9052
  192. package/dist/chunks/skills-sync.mjs +0 -1343
  193. package/dist/chunks/skills.mjs +0 -577
  194. package/dist/chunks/slash-commands.mjs +0 -208
  195. package/dist/chunks/smart-guide.mjs +0 -247
  196. package/dist/chunks/snapshot.mjs +0 -58
  197. package/dist/chunks/startup.mjs +0 -487
  198. package/dist/chunks/stats.mjs +0 -191
  199. package/dist/chunks/status.mjs +0 -471
  200. package/dist/chunks/team.mjs +0 -63
  201. package/dist/chunks/thinking.mjs +0 -626
  202. package/dist/chunks/trace.mjs +0 -57
  203. package/dist/chunks/uninstall.mjs +0 -852
  204. package/dist/chunks/update.mjs +0 -174
  205. package/dist/chunks/upgrade-manager.mjs +0 -204
  206. package/dist/chunks/upgrade.mjs +0 -133
  207. package/dist/chunks/version-checker.mjs +0 -891
  208. package/dist/chunks/vim.mjs +0 -903
  209. package/dist/chunks/windows.mjs +0 -14
  210. package/dist/chunks/workflows.mjs +0 -633
  211. package/dist/chunks/wsl.mjs +0 -129
  212. package/dist/chunks/zero-config.mjs +0 -871
  213. package/dist/chunks/zsh.mjs +0 -182
  214. package/dist/cli.js +0 -358
  215. package/dist/cli.js.map +0 -1
  216. package/dist/commands/bench.js +0 -178
  217. package/dist/commands/bench.js.map +0 -1
  218. package/dist/commands/completion.js +0 -183
  219. package/dist/commands/completion.js.map +0 -1
  220. package/dist/commands/detect.js +0 -16
  221. package/dist/commands/detect.js.map +0 -1
  222. package/dist/commands/doctor.js +0 -334
  223. package/dist/commands/doctor.js.map +0 -1
  224. package/dist/commands/edit.js +0 -263
  225. package/dist/commands/edit.js.map +0 -1
  226. package/dist/commands/env-perm.js +0 -197
  227. package/dist/commands/env-perm.js.map +0 -1
  228. package/dist/commands/git-install.js +0 -46
  229. package/dist/commands/git-install.js.map +0 -1
  230. package/dist/commands/grok.js +0 -77
  231. package/dist/commands/grok.js.map +0 -1
  232. package/dist/commands/init.js +0 -477
  233. package/dist/commands/init.js.map +0 -1
  234. package/dist/commands/mcp.js +0 -208
  235. package/dist/commands/mcp.js.map +0 -1
  236. package/dist/commands/menu.js +0 -274
  237. package/dist/commands/menu.js.map +0 -1
  238. package/dist/commands/migrate.js +0 -154
  239. package/dist/commands/migrate.js.map +0 -1
  240. package/dist/commands/mode.js +0 -140
  241. package/dist/commands/mode.js.map +0 -1
  242. package/dist/commands/onboard.js +0 -28
  243. package/dist/commands/onboard.js.map +0 -1
  244. package/dist/commands/perms.js +0 -210
  245. package/dist/commands/perms.js.map +0 -1
  246. package/dist/commands/probe.js +0 -135
  247. package/dist/commands/probe.js.map +0 -1
  248. package/dist/commands/profile-diff.js +0 -78
  249. package/dist/commands/profile-diff.js.map +0 -1
  250. package/dist/commands/profile-pack.js +0 -150
  251. package/dist/commands/profile-pack.js.map +0 -1
  252. package/dist/commands/profile.js +0 -405
  253. package/dist/commands/profile.js.map +0 -1
  254. package/dist/commands/quick.js +0 -251
  255. package/dist/commands/quick.js.map +0 -1
  256. package/dist/commands/rollback.js +0 -103
  257. package/dist/commands/rollback.js.map +0 -1
  258. package/dist/commands/status.js +0 -320
  259. package/dist/commands/status.js.map +0 -1
  260. package/dist/commands/statusline.js +0 -118
  261. package/dist/commands/statusline.js.map +0 -1
  262. package/dist/commands/uninstall.js +0 -160
  263. package/dist/commands/uninstall.js.map +0 -1
  264. package/dist/commands/version.js +0 -316
  265. package/dist/commands/version.js.map +0 -1
  266. package/dist/commands/workflow.js +0 -142
  267. package/dist/commands/workflow.js.map +0 -1
  268. package/dist/core/banner.js +0 -125
  269. package/dist/core/banner.js.map +0 -1
  270. package/dist/core/codex-config.js +0 -208
  271. package/dist/core/codex-config.js.map +0 -1
  272. package/dist/core/detect.js +0 -24
  273. package/dist/core/detect.js.map +0 -1
  274. package/dist/core/env-recommend.js +0 -34
  275. package/dist/core/env-recommend.js.map +0 -1
  276. package/dist/core/grok-config.js +0 -110
  277. package/dist/core/grok-config.js.map +0 -1
  278. package/dist/core/lint.js +0 -245
  279. package/dist/core/lint.js.map +0 -1
  280. package/dist/core/mcp.js +0 -41
  281. package/dist/core/mcp.js.map +0 -1
  282. package/dist/core/modes.js +0 -128
  283. package/dist/core/modes.js.map +0 -1
  284. package/dist/core/paths.js +0 -9
  285. package/dist/core/paths.js.map +0 -1
  286. package/dist/core/perms.js +0 -353
  287. package/dist/core/perms.js.map +0 -1
  288. package/dist/core/profile-pack.js +0 -101
  289. package/dist/core/profile-pack.js.map +0 -1
  290. package/dist/core/profiles.js +0 -238
  291. package/dist/core/profiles.js.map +0 -1
  292. package/dist/core/providers.js +0 -133
  293. package/dist/core/providers.js.map +0 -1
  294. package/dist/core/quick-parse.js +0 -187
  295. package/dist/core/quick-parse.js.map +0 -1
  296. package/dist/core/runtime-env.js +0 -92
  297. package/dist/core/runtime-env.js.map +0 -1
  298. package/dist/core/settings.js +0 -31
  299. package/dist/core/settings.js.map +0 -1
  300. package/dist/core/slash-templates.js +0 -56
  301. package/dist/core/slash-templates.js.map +0 -1
  302. package/dist/core/statusline.js +0 -238
  303. package/dist/core/statusline.js.map +0 -1
  304. package/dist/core/term.js +0 -98
  305. package/dist/core/term.js.map +0 -1
  306. package/dist/core/toml.js +0 -241
  307. package/dist/core/toml.js.map +0 -1
  308. package/dist/core/tools.js +0 -63
  309. package/dist/core/tools.js.map +0 -1
  310. package/dist/core/versions.js +0 -126
  311. package/dist/core/versions.js.map +0 -1
  312. package/dist/core/workflows.js +0 -80
  313. package/dist/core/workflows.js.map +0 -1
  314. package/dist/i18n/locales/en/agent-teams.json +0 -18
  315. package/dist/i18n/locales/en/agentBrowser.json +0 -80
  316. package/dist/i18n/locales/en/agents.json +0 -135
  317. package/dist/i18n/locales/en/ccjk-agents.json +0 -33
  318. package/dist/i18n/locales/en/ccjk-all.json +0 -23
  319. package/dist/i18n/locales/en/ccjk-skills.json +0 -22
  320. package/dist/i18n/locales/en/ccjk.json +0 -276
  321. package/dist/i18n/locales/en/claude-md.json +0 -73
  322. package/dist/i18n/locales/en/cloud-setup.json +0 -31
  323. package/dist/i18n/locales/en/cloud-sync.json +0 -147
  324. package/dist/i18n/locales/en/cloud.json +0 -40
  325. package/dist/i18n/locales/en/cloudPlugins.json +0 -118
  326. package/dist/i18n/locales/en/config.json +0 -108
  327. package/dist/i18n/locales/en/context.json +0 -85
  328. package/dist/i18n/locales/en/dashboard.json +0 -78
  329. package/dist/i18n/locales/en/evolution.json +0 -54
  330. package/dist/i18n/locales/en/hooks.json +0 -74
  331. package/dist/i18n/locales/en/hooksSync.json +0 -133
  332. package/dist/i18n/locales/en/interview.json +0 -104
  333. package/dist/i18n/locales/en/lsp.json +0 -78
  334. package/dist/i18n/locales/en/marketplace.json +0 -116
  335. package/dist/i18n/locales/en/memory.json +0 -23
  336. package/dist/i18n/locales/en/notification.json +0 -307
  337. package/dist/i18n/locales/en/permissions.json +0 -95
  338. package/dist/i18n/locales/en/persistence.json +0 -127
  339. package/dist/i18n/locales/en/plugins.json +0 -146
  340. package/dist/i18n/locales/en/quick-actions.json +0 -78
  341. package/dist/i18n/locales/en/registry.json +0 -54
  342. package/dist/i18n/locales/en/remote.json +0 -93
  343. package/dist/i18n/locales/en/sandbox.json +0 -44
  344. package/dist/i18n/locales/en/setup.json +0 -44
  345. package/dist/i18n/locales/en/shencha.json +0 -14
  346. package/dist/i18n/locales/en/skills.json +0 -100
  347. package/dist/i18n/locales/en/skillsSync.json +0 -74
  348. package/dist/i18n/locales/en/smartGuide.json +0 -49
  349. package/dist/i18n/locales/en/stats.json +0 -20
  350. package/dist/i18n/locales/en/subagent.json +0 -69
  351. package/dist/i18n/locales/en/superpowers.json +0 -117
  352. package/dist/i18n/locales/en/team.json +0 -7
  353. package/dist/i18n/locales/en/thinking.json +0 -65
  354. package/dist/i18n/locales/en/vim.json +0 -169
  355. package/dist/i18n/locales/en/workspace.json +0 -108
  356. package/dist/i18n/locales/zh-CN/agent-teams.json +0 -18
  357. package/dist/i18n/locales/zh-CN/agentBrowser.json +0 -80
  358. package/dist/i18n/locales/zh-CN/agents.json +0 -135
  359. package/dist/i18n/locales/zh-CN/ccjk-agents.json +0 -33
  360. package/dist/i18n/locales/zh-CN/ccjk-all.json +0 -23
  361. package/dist/i18n/locales/zh-CN/ccjk-skills.json +0 -22
  362. package/dist/i18n/locales/zh-CN/ccjk.json +0 -276
  363. package/dist/i18n/locales/zh-CN/claude-md.json +0 -73
  364. package/dist/i18n/locales/zh-CN/cloud-setup.json +0 -31
  365. package/dist/i18n/locales/zh-CN/cloud-sync.json +0 -147
  366. package/dist/i18n/locales/zh-CN/cloud.json +0 -40
  367. package/dist/i18n/locales/zh-CN/cloudPlugins.json +0 -118
  368. package/dist/i18n/locales/zh-CN/config.json +0 -108
  369. package/dist/i18n/locales/zh-CN/context.json +0 -85
  370. package/dist/i18n/locales/zh-CN/dashboard.json +0 -78
  371. package/dist/i18n/locales/zh-CN/evolution.json +0 -54
  372. package/dist/i18n/locales/zh-CN/hooks.json +0 -74
  373. package/dist/i18n/locales/zh-CN/hooksSync.json +0 -133
  374. package/dist/i18n/locales/zh-CN/interview.json +0 -104
  375. package/dist/i18n/locales/zh-CN/lsp.json +0 -78
  376. package/dist/i18n/locales/zh-CN/marketplace.json +0 -116
  377. package/dist/i18n/locales/zh-CN/memory.json +0 -23
  378. package/dist/i18n/locales/zh-CN/notification.json +0 -307
  379. package/dist/i18n/locales/zh-CN/permissions.json +0 -95
  380. package/dist/i18n/locales/zh-CN/persistence.json +0 -127
  381. package/dist/i18n/locales/zh-CN/plugins.json +0 -146
  382. package/dist/i18n/locales/zh-CN/quick-actions.json +0 -78
  383. package/dist/i18n/locales/zh-CN/registry.json +0 -54
  384. package/dist/i18n/locales/zh-CN/remote.json +0 -93
  385. package/dist/i18n/locales/zh-CN/sandbox.json +0 -44
  386. package/dist/i18n/locales/zh-CN/setup.json +0 -44
  387. package/dist/i18n/locales/zh-CN/shencha.json +0 -14
  388. package/dist/i18n/locales/zh-CN/skills.json +0 -100
  389. package/dist/i18n/locales/zh-CN/skillsSync.json +0 -74
  390. package/dist/i18n/locales/zh-CN/smartGuide.json +0 -49
  391. package/dist/i18n/locales/zh-CN/stats.json +0 -20
  392. package/dist/i18n/locales/zh-CN/subagent.json +0 -69
  393. package/dist/i18n/locales/zh-CN/superpowers.json +0 -117
  394. package/dist/i18n/locales/zh-CN/team.json +0 -7
  395. package/dist/i18n/locales/zh-CN/thinking.json +0 -65
  396. package/dist/i18n/locales/zh-CN/vim.json +0 -169
  397. package/dist/i18n/locales/zh-CN/workspace.json +0 -108
  398. package/dist/shared/ccjk.5bEolFrk.mjs +0 -254
  399. package/dist/shared/ccjk.8oaxX4iR.mjs +0 -90
  400. package/dist/shared/ccjk.B2U7DsPy.mjs +0 -31
  401. package/dist/shared/ccjk.B2f-cwUP.mjs +0 -468
  402. package/dist/shared/ccjk.BAGoDD49.mjs +0 -36
  403. package/dist/shared/ccjk.BBtCGd_g.mjs +0 -899
  404. package/dist/shared/ccjk.BFQ7yr5S.mjs +0 -16
  405. package/dist/shared/ccjk.BLsIiTqO.mjs +0 -449
  406. package/dist/shared/ccjk.BXv8aYs1.mjs +0 -170
  407. package/dist/shared/ccjk.BnsY5WxD.mjs +0 -171
  408. package/dist/shared/ccjk.BoApaI4j.mjs +0 -28
  409. package/dist/shared/ccjk.Bq8TqZG_.mjs +0 -189
  410. package/dist/shared/ccjk.BtrioX1Z.mjs +0 -25
  411. package/dist/shared/ccjk.Bx_rmYfN.mjs +0 -69
  412. package/dist/shared/ccjk.BzPbSEP2.mjs +0 -115
  413. package/dist/shared/ccjk.C0WLUnFV.mjs +0 -293
  414. package/dist/shared/ccjk.C1hANZTu.mjs +0 -19
  415. package/dist/shared/ccjk.C2jHOZVP.mjs +0 -52
  416. package/dist/shared/ccjk.CNhnT6uQ.mjs +0 -636
  417. package/dist/shared/ccjk.COweQ1RR.mjs +0 -5
  418. package/dist/shared/ccjk.CfKKcvWy.mjs +0 -126
  419. package/dist/shared/ccjk.Cjgrln_h.mjs +0 -297
  420. package/dist/shared/ccjk.CoCHVXl3.mjs +0 -3951
  421. package/dist/shared/ccjk.CwGZSTAK.mjs +0 -319
  422. package/dist/shared/ccjk.CxpGa6MC.mjs +0 -2724
  423. package/dist/shared/ccjk.D-magaEx.mjs +0 -763
  424. package/dist/shared/ccjk.D0g2ABGg.mjs +0 -171
  425. package/dist/shared/ccjk.D6ycHbak.mjs +0 -270
  426. package/dist/shared/ccjk.D75wivnp.mjs +0 -142
  427. package/dist/shared/ccjk.DDL-4C-k.mjs +0 -100
  428. package/dist/shared/ccjk.DFRPtmK_.mjs +0 -75
  429. package/dist/shared/ccjk.DMV3x5Sd.mjs +0 -299
  430. package/dist/shared/ccjk.DZ2LLOa-.mjs +0 -2195
  431. package/dist/shared/ccjk.DbigonEQ.mjs +0 -698
  432. package/dist/shared/ccjk.DcMvE7lf.mjs +0 -618
  433. package/dist/shared/ccjk.DeWpAShp.mjs +0 -1828
  434. package/dist/shared/ccjk.DhJ1kyDR.mjs +0 -30
  435. package/dist/shared/ccjk.DlTXS9rP.mjs +0 -224
  436. package/dist/shared/ccjk.DopKzo3z.mjs +0 -305
  437. package/dist/shared/ccjk.DsZsc4LR.mjs +0 -1280
  438. package/dist/shared/ccjk.DuzJZlgj.mjs +0 -418
  439. package/dist/shared/ccjk.Dxgd2vjc.mjs +0 -444
  440. package/dist/shared/ccjk.J8YiPsOw.mjs +0 -259
  441. package/dist/shared/ccjk.KfSWcGlE.mjs +0 -38
  442. package/dist/shared/ccjk.L7yC58_i.mjs +0 -225
  443. package/dist/shared/ccjk.MwtjAULc.mjs +0 -1447
  444. package/dist/shared/ccjk.OJKHVSOb.mjs +0 -2005
  445. package/dist/shared/ccjk.OTnevPNE.mjs +0 -225
  446. package/dist/shared/ccjk.RyizuzOI.mjs +0 -21
  447. package/dist/shared/ccjk.T_cX87dY.mjs +0 -15
  448. package/dist/shared/ccjk.bQ7Dh1g4.mjs +0 -249
  449. package/dist/shared/ccjk.gDEDGD_t.mjs +0 -38
  450. package/dist/shared/ccjk.hoqrwWdN.mjs +0 -333
  451. package/dist/shared/ccjk.i_vn-9C3.mjs +0 -317
  452. package/dist/shared/ccjk.lG3ccFjm.mjs +0 -885
  453. package/dist/shared/ccjk.wLJHO0Af.mjs +0 -244
  454. package/dist/shared/ccjk.y-a_1vK4.mjs +0 -5127
  455. package/dist/templates/agents/README.md +0 -78
  456. package/dist/templates/agents/fullstack-developer.json +0 -70
  457. package/dist/templates/agents/go-expert.json +0 -69
  458. package/dist/templates/agents/index.json +0 -64
  459. package/dist/templates/agents/python-expert.json +0 -69
  460. package/dist/templates/agents/react-specialist.json +0 -69
  461. package/dist/templates/agents/testing-automation-expert.json +0 -70
  462. package/dist/templates/agents/typescript-architect.json +0 -69
  463. package/dist/templates/claude-code/common/settings.json +0 -109
  464. package/dist/templates/common/error-prevention.md +0 -267
  465. package/dist/templates/common/karpathy-baseline.md +0 -83
  466. package/dist/templates/common/output-styles/zh-CN/carmack-mode.md +0 -381
  467. package/dist/templates/common/output-styles/zh-CN/codex-rigor-mode.md +0 -114
  468. package/dist/templates/common/output-styles/zh-CN/dhh-mode.md +0 -265
  469. package/dist/templates/common/output-styles/zh-CN/evan-you-mode.md +0 -539
  470. package/dist/templates/common/output-styles/zh-CN/jobs-mode.md +0 -369
  471. package/dist/templates/common/output-styles/zh-CN/linus-mode.md +0 -135
  472. package/dist/templates/common/output-styles/zh-CN/uncle-bob-mode.md +0 -221
  473. package/dist/templates/common/workflow/continuousDelivery/en/continuous-delivery.md +0 -628
  474. package/dist/templates/common/workflow/continuousDelivery/zh-CN/continuous-delivery.md +0 -628
  475. package/dist/templates/common/workflow/essential/en/agents/ccjk-config-agent.md +0 -187
  476. package/dist/templates/common/workflow/essential/en/agents/ccjk-mcp-agent.md +0 -191
  477. package/dist/templates/common/workflow/essential/en/agents/ccjk-skill-agent.md +0 -249
  478. package/dist/templates/common/workflow/essential/en/agents/ccjk-workflow-agent.md +0 -277
  479. package/dist/templates/common/workflow/essential/en/feat.md +0 -92
  480. package/dist/templates/common/workflow/essential/en/goal.md +0 -147
  481. package/dist/templates/common/workflow/essential/zh-CN/agents/get-current-datetime.md +0 -29
  482. package/dist/templates/common/workflow/essential/zh-CN/agents/init-architect.md +0 -115
  483. package/dist/templates/common/workflow/essential/zh-CN/agents/ui-ux-designer.md +0 -91
  484. package/dist/templates/common/workflow/essential/zh-CN/feat.md +0 -315
  485. package/dist/templates/common/workflow/essential/zh-CN/goal.md +0 -146
  486. package/dist/templates/common/workflow/essential/zh-CN/init-project.md +0 -53
  487. package/dist/templates/common/workflow/git/zh-CN/git-cleanBranches.md +0 -102
  488. package/dist/templates/common/workflow/git/zh-CN/git-commit.md +0 -205
  489. package/dist/templates/common/workflow/git/zh-CN/git-rollback.md +0 -90
  490. package/dist/templates/common/workflow/git/zh-CN/git-worktree.md +0 -276
  491. package/dist/templates/common/workflow/interview/en/interview.md +0 -67
  492. package/dist/templates/common/workflow/interview/zh-CN/interview.md +0 -67
  493. package/dist/templates/common/workflow/linearMethod/en/linear-method.md +0 -651
  494. package/dist/templates/common/workflow/linearMethod/zh-CN/linear-method.md +0 -752
  495. package/dist/templates/common/workflow/refactoringMaster/en/refactoring-master.md +0 -516
  496. package/dist/templates/common/workflow/refactoringMaster/zh-CN/refactoring-master.md +0 -812
  497. package/dist/templates/common/workflow/sixStep/en/workflow.md +0 -83
  498. package/dist/templates/common/workflow/specFirstTDD/en/spec-first-tdd.md +0 -364
  499. package/dist/templates/common/workflow/specFirstTDD/zh-CN/spec-first-tdd.md +0 -366
  500. package/dist/templates/hooks/README.md +0 -212
  501. package/dist/templates/hooks/git-workflow-hooks.md +0 -551
  502. package/dist/templates/hooks/post-test/coverage.json +0 -21
  503. package/dist/templates/hooks/post-test/summary.json +0 -21
  504. package/dist/templates/hooks/post-test-coverage.md +0 -434
  505. package/dist/templates/hooks/pre-commit/eslint.json +0 -22
  506. package/dist/templates/hooks/pre-commit/prettier.json +0 -22
  507. package/dist/templates/hooks/pre-commit-black.md +0 -274
  508. package/dist/templates/hooks/pre-commit-eslint.md +0 -153
  509. package/dist/templates/hooks/pre-commit-gofmt.md +0 -284
  510. package/dist/templates/hooks/pre-commit-prettier.md +0 -212
  511. package/dist/templates/hooks/pre-commit-type-check.md +0 -377
  512. package/dist/templates/skills/ccjk-init.md +0 -154
  513. package/dist/templates/skills/ccjk-mcp-setup.md +0 -205
  514. package/dist/templates/skills/ccjk-troubleshoot.md +0 -228
  515. package/dist/templates/skills/django-patterns.md +0 -1016
  516. package/dist/templates/skills/git-workflow.md +0 -748
  517. package/dist/templates/skills/go-idioms.md +0 -963
  518. package/dist/templates/skills/index.json +0 -132
  519. package/dist/templates/skills/nextjs-optimization.md +0 -694
  520. package/dist/templates/skills/python-pep8.md +0 -852
  521. package/dist/templates/skills/react-patterns.md +0 -686
  522. package/dist/templates/skills/rust-patterns.md +0 -1057
  523. package/dist/templates/skills/security-best-practices.md +0 -1413
  524. package/dist/templates/skills/testing-best-practices.md +0 -1315
  525. package/dist/templates/skills/ts-best-practices.md +0 -354
  526. /package/{dist/templates/common/workflow/essential/en → templates/claude-code/zh-CN/workflow/common}/agents/get-current-datetime.md +0 -0
  527. /package/{dist/templates/common/workflow/essential/en → templates/claude-code/zh-CN/workflow/common/commands}/init-project.md +0 -0
  528. /package/{dist/templates/common/workflow/essential/en → templates/claude-code/zh-CN/workflow/plan}/agents/ui-ux-designer.md +0 -0
  529. /package/{dist/templates/common/workflow/git/en → templates/common/workflow/git/zh-CN}/git-cleanBranches.md +0 -0
  530. /package/{dist/templates/common/workflow/git/en → templates/common/workflow/git/zh-CN}/git-commit.md +0 -0
  531. /package/{dist/templates/common/workflow/git/en → templates/common/workflow/git/zh-CN}/git-rollback.md +0 -0
  532. /package/{dist/templates/common/workflow/git/en → templates/common/workflow/git/zh-CN}/git-worktree.md +0 -0
@@ -1,885 +0,0 @@
1
- import { exec } from 'node:child_process';
2
- import { promises } from 'node:fs';
3
- import * as os from 'node:os';
4
- import * as path from 'node:path';
5
- import { promisify } from 'node:util';
6
-
7
- const execAsync = promisify(exec);
8
- class BaseCodeTool {
9
- config;
10
- configPath;
11
- constructor(initialConfig) {
12
- this.config = {
13
- name: this.getMetadata().name,
14
- ...initialConfig
15
- };
16
- this.configPath = this.getDefaultConfigPath();
17
- }
18
- /**
19
- * Get the default configuration path for this tool
20
- */
21
- getDefaultConfigPath() {
22
- const homeDir = os.homedir();
23
- const configDir = path.join(homeDir, ".ccjk", "tools");
24
- return path.join(configDir, `${this.getMetadata().name}.json`);
25
- }
26
- /**
27
- * Check if the tool is installed
28
- */
29
- async isInstalled() {
30
- try {
31
- const command = this.getInstallCheckCommand();
32
- const { stdout, stderr } = await execAsync(command);
33
- const version = this.parseVersion(stdout || stderr);
34
- return {
35
- installed: true,
36
- version,
37
- path: await this.findToolPath()
38
- };
39
- } catch (error) {
40
- return {
41
- installed: false,
42
- error: error instanceof Error ? error.message : "Unknown error"
43
- };
44
- }
45
- }
46
- /**
47
- * Install the tool
48
- */
49
- async install() {
50
- try {
51
- const command = this.getInstallCommand();
52
- const { stdout, stderr } = await execAsync(command);
53
- return {
54
- success: true,
55
- output: stdout || stderr,
56
- exitCode: 0
57
- };
58
- } catch (error) {
59
- return {
60
- success: false,
61
- error: error instanceof Error ? error.message : "Installation failed",
62
- exitCode: 1
63
- };
64
- }
65
- }
66
- /**
67
- * Uninstall the tool
68
- */
69
- async uninstall() {
70
- try {
71
- const command = this.getUninstallCommand();
72
- const { stdout, stderr } = await execAsync(command);
73
- await this.removeConfigFile();
74
- return {
75
- success: true,
76
- output: stdout || stderr,
77
- exitCode: 0
78
- };
79
- } catch (error) {
80
- return {
81
- success: false,
82
- error: error instanceof Error ? error.message : "Uninstallation failed",
83
- exitCode: 1
84
- };
85
- }
86
- }
87
- /**
88
- * Get current configuration
89
- */
90
- async getConfig() {
91
- try {
92
- await this.loadConfig();
93
- return { ...this.config };
94
- } catch (_error) {
95
- return { ...this.config };
96
- }
97
- }
98
- /**
99
- * Update configuration
100
- */
101
- async updateConfig(updates) {
102
- this.config = {
103
- ...this.config,
104
- ...updates
105
- };
106
- await this.saveConfig();
107
- }
108
- /**
109
- * Configure the tool with full config
110
- */
111
- async configure(config) {
112
- const isValid = await this.validateConfig(config);
113
- if (!isValid) {
114
- throw new Error("Invalid configuration");
115
- }
116
- this.config = { ...config };
117
- await this.saveConfig();
118
- }
119
- /**
120
- * Validate configuration
121
- */
122
- async validateConfig(config) {
123
- if (!config.name) {
124
- return false;
125
- }
126
- return true;
127
- }
128
- /**
129
- * Execute a command with the tool
130
- */
131
- async execute(command, args = []) {
132
- try {
133
- const fullCommand = this.buildCommand(command, args);
134
- const { stdout, stderr } = await execAsync(fullCommand, {
135
- env: { ...process.env, ...this.config.env }
136
- });
137
- return {
138
- success: true,
139
- output: stdout || stderr,
140
- exitCode: 0
141
- };
142
- } catch (error) {
143
- return {
144
- success: false,
145
- error: error.message || "Execution failed",
146
- exitCode: error.code || 1
147
- };
148
- }
149
- }
150
- /**
151
- * Get tool version
152
- */
153
- async getVersion() {
154
- const status = await this.isInstalled();
155
- return status.version;
156
- }
157
- /**
158
- * Reset tool to default configuration
159
- */
160
- async reset() {
161
- this.config = {
162
- name: this.getMetadata().name
163
- };
164
- await this.removeConfigFile();
165
- }
166
- /**
167
- * Load configuration from file
168
- */
169
- async loadConfig() {
170
- try {
171
- const data = await promises.readFile(this.configPath, "utf-8");
172
- const loadedConfig = JSON.parse(data);
173
- this.config = { ...this.config, ...loadedConfig };
174
- } catch (_error) {
175
- }
176
- }
177
- /**
178
- * Save configuration to file
179
- */
180
- async saveConfig() {
181
- try {
182
- const configDir = path.dirname(this.configPath);
183
- await promises.mkdir(configDir, { recursive: true });
184
- await promises.writeFile(this.configPath, JSON.stringify(this.config, null, 2));
185
- } catch (error) {
186
- throw new Error(`Failed to save configuration: ${error}`);
187
- }
188
- }
189
- /**
190
- * Remove configuration file
191
- */
192
- async removeConfigFile() {
193
- try {
194
- await promises.unlink(this.configPath);
195
- } catch (_error) {
196
- }
197
- }
198
- /**
199
- * Build command string from command and arguments
200
- */
201
- buildCommand(command, args) {
202
- const escapedArgs = args.map((arg) => {
203
- return arg.includes(" ") ? `"${arg}"` : arg;
204
- });
205
- return [command, ...escapedArgs].join(" ");
206
- }
207
- /**
208
- * Parse version from command output
209
- */
210
- parseVersion(output) {
211
- const patterns = [
212
- /version\s+(\d+\.\d+\.\d+)/i,
213
- /v?(\d+\.\d+\.\d+)/,
214
- /(\d+\.\d+\.\d+)/
215
- ];
216
- for (const pattern of patterns) {
217
- const match = output.match(pattern);
218
- if (match) {
219
- return match[1];
220
- }
221
- }
222
- return void 0;
223
- }
224
- /**
225
- * Find the tool's installation path
226
- */
227
- async findToolPath() {
228
- try {
229
- const { stdout } = await execAsync(`which ${this.getMetadata().name}`);
230
- return stdout.trim();
231
- } catch (_error) {
232
- return void 0;
233
- }
234
- }
235
- /**
236
- * Create default capabilities object
237
- */
238
- createDefaultCapabilities() {
239
- return {
240
- supportsChat: false,
241
- supportsFileEdit: false,
242
- supportsCodeGen: false,
243
- supportsReview: false,
244
- supportsTesting: false,
245
- supportsDebugging: false
246
- };
247
- }
248
- }
249
-
250
- class AiderTool extends BaseCodeTool {
251
- getMetadata() {
252
- return {
253
- name: "aider",
254
- displayName: "Aider",
255
- description: "AI pair programming in your terminal",
256
- version: "1.0.0",
257
- homepage: "https://aider.chat",
258
- documentation: "https://aider.chat/docs",
259
- capabilities: {
260
- supportsChat: true,
261
- supportsFileEdit: true,
262
- supportsCodeGen: true,
263
- supportsReview: true,
264
- supportsTesting: false,
265
- supportsDebugging: true
266
- }
267
- };
268
- }
269
- getInstallCheckCommand() {
270
- return "aider --version";
271
- }
272
- getInstallCommand() {
273
- return "pip install aider-chat";
274
- }
275
- getUninstallCommand() {
276
- return "pip uninstall -y aider-chat";
277
- }
278
- /**
279
- * Start a chat session
280
- */
281
- async chat(prompt) {
282
- return this.execute("aider", ["--message", prompt]);
283
- }
284
- /**
285
- * Continue a chat session
286
- */
287
- async continueChat(message) {
288
- return this.execute("aider", ["--message", message]);
289
- }
290
- /**
291
- * End chat session
292
- */
293
- async endChat() {
294
- await this.execute("aider", ["--exit"]);
295
- }
296
- /**
297
- * Edit a file
298
- */
299
- async editFile(filePath, instructions) {
300
- return this.execute("aider", [filePath, "--message", instructions]);
301
- }
302
- /**
303
- * Edit multiple files
304
- */
305
- async editFiles(files, instructions) {
306
- return this.execute("aider", [...files, "--message", instructions]);
307
- }
308
- }
309
-
310
- class ClaudeCodeTool extends BaseCodeTool {
311
- getMetadata() {
312
- return {
313
- name: "claude-code",
314
- displayName: "Claude Code",
315
- description: "Anthropic's official CLI tool for Claude AI",
316
- version: "1.0.0",
317
- homepage: "https://claude.ai",
318
- documentation: "https://docs.anthropic.com/claude/docs",
319
- capabilities: {
320
- supportsChat: true,
321
- supportsFileEdit: true,
322
- supportsCodeGen: true,
323
- supportsReview: true,
324
- supportsTesting: true,
325
- supportsDebugging: true
326
- },
327
- runtime: {
328
- runtime: "claude-code",
329
- ownership: "host-native",
330
- configBackend: "claude-family",
331
- native: {
332
- agentLoop: true,
333
- planTask: true,
334
- subagents: true,
335
- slashCommands: true,
336
- mcp: true,
337
- permissions: true,
338
- memory: true,
339
- ideIntegration: true,
340
- worktree: true,
341
- statusline: true
342
- },
343
- managedByCcjk: {
344
- providerProfiles: false,
345
- modelRouting: true,
346
- configSync: true,
347
- permissionRepair: true,
348
- mcpBundles: true,
349
- doctor: true
350
- }
351
- }
352
- };
353
- }
354
- getInstallCheckCommand() {
355
- return "claude --version";
356
- }
357
- getInstallCommand() {
358
- return "npm install -g @anthropic-ai/claude-code";
359
- }
360
- getUninstallCommand() {
361
- return "npm uninstall -g @anthropic-ai/claude-code";
362
- }
363
- /**
364
- * Start a chat session
365
- */
366
- async chat(prompt) {
367
- return this.execute("claude", ["chat", prompt]);
368
- }
369
- /**
370
- * Continue a chat session
371
- */
372
- async continueChat(message) {
373
- return this.execute("claude", ["continue", message]);
374
- }
375
- /**
376
- * End chat session
377
- */
378
- async endChat() {
379
- await this.execute("claude", ["exit"]);
380
- }
381
- /**
382
- * Edit a file
383
- */
384
- async editFile(filePath, instructions) {
385
- return this.execute("claude", ["edit", filePath, "--instructions", instructions]);
386
- }
387
- /**
388
- * Edit multiple files
389
- */
390
- async editFiles(files, instructions) {
391
- const fileArgs = files.flatMap((f) => ["--file", f]);
392
- return this.execute("claude", ["edit", ...fileArgs, "--instructions", instructions]);
393
- }
394
- /**
395
- * Generate code
396
- */
397
- async generateCode(prompt, outputPath) {
398
- const args = ["generate", prompt];
399
- if (outputPath) {
400
- args.push("--output", outputPath);
401
- }
402
- return this.execute("claude", args);
403
- }
404
- }
405
-
406
- class ClavueTool extends BaseCodeTool {
407
- getMetadata() {
408
- return {
409
- name: "clavue",
410
- displayName: "Clavue",
411
- description: "Execution-first Claude-family CLI with native provider profiles",
412
- version: "1.0.0",
413
- homepage: "https://www.clavue.com",
414
- capabilities: {
415
- supportsChat: true,
416
- supportsFileEdit: true,
417
- supportsCodeGen: true,
418
- supportsReview: true,
419
- supportsTesting: true,
420
- supportsDebugging: true
421
- },
422
- runtime: {
423
- runtime: "clavue",
424
- ownership: "hybrid",
425
- configBackend: "claude-family",
426
- native: {
427
- agentLoop: true,
428
- planTask: true,
429
- subagents: true,
430
- slashCommands: true,
431
- mcp: true,
432
- permissions: true,
433
- memory: true,
434
- ideIntegration: true,
435
- worktree: true,
436
- statusline: true
437
- },
438
- managedByCcjk: {
439
- providerProfiles: true,
440
- modelRouting: true,
441
- configSync: true,
442
- permissionRepair: true,
443
- mcpBundles: true,
444
- doctor: true
445
- }
446
- }
447
- };
448
- }
449
- getInstallCheckCommand() {
450
- return "clavue --version";
451
- }
452
- getInstallCommand() {
453
- return "npm install -g clavue";
454
- }
455
- getUninstallCommand() {
456
- return "npm uninstall -g clavue";
457
- }
458
- async chat(prompt) {
459
- return this.execute("clavue", ["chat", prompt]);
460
- }
461
- async continueChat(message) {
462
- return this.execute("clavue", ["continue", message]);
463
- }
464
- async endChat() {
465
- await this.execute("clavue", ["exit"]);
466
- }
467
- async editFile(filePath, instructions) {
468
- return this.execute("clavue", ["edit", filePath, "--instructions", instructions]);
469
- }
470
- async editFiles(files, instructions) {
471
- const fileArgs = files.flatMap((f) => ["--file", f]);
472
- return this.execute("clavue", ["edit", ...fileArgs, "--instructions", instructions]);
473
- }
474
- async generateCode(prompt, outputPath) {
475
- const args = ["generate", prompt];
476
- if (outputPath) {
477
- args.push("--output", outputPath);
478
- }
479
- return this.execute("clavue", args);
480
- }
481
- }
482
-
483
- class ClineTool extends BaseCodeTool {
484
- getMetadata() {
485
- return {
486
- name: "cline",
487
- displayName: "Cline",
488
- description: "Autonomous coding agent for VS Code",
489
- version: "1.0.0",
490
- homepage: "https://github.com/cline/cline",
491
- documentation: "https://github.com/cline/cline/wiki",
492
- capabilities: {
493
- supportsChat: true,
494
- supportsFileEdit: true,
495
- supportsCodeGen: true,
496
- supportsReview: true,
497
- supportsTesting: true,
498
- supportsDebugging: true
499
- }
500
- };
501
- }
502
- getInstallCheckCommand() {
503
- return "cline --version";
504
- }
505
- getInstallCommand() {
506
- return "npm install -g cline";
507
- }
508
- getUninstallCommand() {
509
- return "npm uninstall -g cline";
510
- }
511
- /**
512
- * Start a chat session
513
- */
514
- async chat(prompt) {
515
- return this.execute("cline", ["chat", prompt]);
516
- }
517
- /**
518
- * Continue a chat session
519
- */
520
- async continueChat(message) {
521
- return this.execute("cline", ["continue", message]);
522
- }
523
- /**
524
- * End chat session
525
- */
526
- async endChat() {
527
- await this.execute("cline", ["exit"]);
528
- }
529
- /**
530
- * Edit a file
531
- */
532
- async editFile(filePath, instructions) {
533
- return this.execute("cline", ["edit", filePath, "--instructions", instructions]);
534
- }
535
- /**
536
- * Edit multiple files
537
- */
538
- async editFiles(files, instructions) {
539
- const fileArgs = files.flatMap((f) => ["--file", f]);
540
- return this.execute("cline", ["edit", ...fileArgs, "--instructions", instructions]);
541
- }
542
- /**
543
- * Generate code
544
- */
545
- async generateCode(prompt, outputPath) {
546
- const args = ["generate", prompt];
547
- if (outputPath) {
548
- args.push("--output", outputPath);
549
- }
550
- return this.execute("cline", args);
551
- }
552
- }
553
-
554
- class CodexTool extends BaseCodeTool {
555
- getMetadata() {
556
- return {
557
- name: "codex",
558
- displayName: "OpenAI Codex",
559
- description: "OpenAI's code generation model",
560
- version: "1.0.0",
561
- homepage: "https://openai.com/codex",
562
- documentation: "https://platform.openai.com/docs",
563
- capabilities: {
564
- supportsChat: true,
565
- supportsFileEdit: false,
566
- supportsCodeGen: true,
567
- supportsReview: false,
568
- supportsTesting: false,
569
- supportsDebugging: false
570
- },
571
- runtime: {
572
- runtime: "codex",
573
- ownership: "host-native",
574
- configBackend: "tool-specific",
575
- native: {
576
- agentLoop: true,
577
- planTask: true,
578
- subagents: true,
579
- slashCommands: true,
580
- mcp: true,
581
- permissions: true,
582
- memory: true,
583
- ideIntegration: true,
584
- worktree: true,
585
- statusline: false
586
- },
587
- managedByCcjk: {
588
- providerProfiles: false,
589
- modelRouting: true,
590
- configSync: true,
591
- permissionRepair: true,
592
- mcpBundles: true,
593
- doctor: true
594
- }
595
- }
596
- };
597
- }
598
- getInstallCheckCommand() {
599
- return "codex --version";
600
- }
601
- getInstallCommand() {
602
- return "pip install openai-codex";
603
- }
604
- getUninstallCommand() {
605
- return "pip uninstall -y openai-codex";
606
- }
607
- /**
608
- * Generate code
609
- */
610
- async generateCode(prompt, outputPath) {
611
- const args = ["generate", prompt];
612
- if (outputPath) {
613
- args.push("--output", outputPath);
614
- }
615
- return this.execute("codex", args);
616
- }
617
- }
618
-
619
- class ContinueTool extends BaseCodeTool {
620
- getMetadata() {
621
- return {
622
- name: "continue",
623
- displayName: "Continue",
624
- description: "Open-source autopilot for software development",
625
- version: "1.0.0",
626
- homepage: "https://continue.dev",
627
- documentation: "https://continue.dev/docs",
628
- capabilities: {
629
- supportsChat: true,
630
- supportsFileEdit: true,
631
- supportsCodeGen: true,
632
- supportsReview: true,
633
- supportsTesting: true,
634
- supportsDebugging: true
635
- }
636
- };
637
- }
638
- getInstallCheckCommand() {
639
- return "continue --version";
640
- }
641
- getInstallCommand() {
642
- return "npm install -g continue";
643
- }
644
- getUninstallCommand() {
645
- return "npm uninstall -g continue";
646
- }
647
- /**
648
- * Start a chat session
649
- */
650
- async chat(prompt) {
651
- return this.execute("continue", ["chat", prompt]);
652
- }
653
- /**
654
- * Continue a chat session
655
- */
656
- async continueChat(message) {
657
- return this.execute("continue", ["chat", message]);
658
- }
659
- /**
660
- * End chat session
661
- */
662
- async endChat() {
663
- await this.execute("continue", ["exit"]);
664
- }
665
- /**
666
- * Generate code
667
- */
668
- async generateCode(prompt, outputPath) {
669
- const args = ["generate", prompt];
670
- if (outputPath) {
671
- args.push("--output", outputPath);
672
- }
673
- return this.execute("continue", args);
674
- }
675
- }
676
-
677
- class CursorTool extends BaseCodeTool {
678
- getMetadata() {
679
- return {
680
- name: "cursor",
681
- displayName: "Cursor",
682
- description: "AI-first code editor",
683
- version: "1.0.0",
684
- homepage: "https://cursor.sh",
685
- documentation: "https://cursor.sh/docs",
686
- capabilities: {
687
- supportsChat: true,
688
- supportsFileEdit: true,
689
- supportsCodeGen: true,
690
- supportsReview: true,
691
- supportsTesting: true,
692
- supportsDebugging: true
693
- }
694
- };
695
- }
696
- getInstallCheckCommand() {
697
- return "cursor --version";
698
- }
699
- getInstallCommand() {
700
- return 'echo "Please download Cursor from https://cursor.sh"';
701
- }
702
- getUninstallCommand() {
703
- return 'echo "Please uninstall Cursor manually"';
704
- }
705
- /**
706
- * Start a chat session
707
- */
708
- async chat(prompt) {
709
- return this.execute("cursor", ["chat", prompt]);
710
- }
711
- /**
712
- * Continue a chat session
713
- */
714
- async continueChat(message) {
715
- return this.execute("cursor", ["chat", message]);
716
- }
717
- /**
718
- * End chat session
719
- */
720
- async endChat() {
721
- await this.execute("cursor", ["exit"]);
722
- }
723
- /**
724
- * Edit a file
725
- */
726
- async editFile(filePath, instructions) {
727
- return this.execute("cursor", ["edit", filePath, "--instructions", instructions]);
728
- }
729
- /**
730
- * Edit multiple files
731
- */
732
- async editFiles(files, instructions) {
733
- const fileArgs = files.flatMap((f) => ["--file", f]);
734
- return this.execute("cursor", ["edit", ...fileArgs, "--instructions", instructions]);
735
- }
736
- /**
737
- * Generate code
738
- */
739
- async generateCode(prompt, outputPath) {
740
- const args = ["generate", prompt];
741
- if (outputPath) {
742
- args.push("--output", outputPath);
743
- }
744
- return this.execute("cursor", args);
745
- }
746
- }
747
-
748
- class ToolRegistry {
749
- static instance;
750
- tools;
751
- toolClasses;
752
- constructor() {
753
- this.tools = /* @__PURE__ */ new Map();
754
- this.toolClasses = /* @__PURE__ */ new Map();
755
- }
756
- /**
757
- * Get singleton instance
758
- */
759
- static getInstance() {
760
- if (!ToolRegistry.instance) {
761
- ToolRegistry.instance = new ToolRegistry();
762
- }
763
- return ToolRegistry.instance;
764
- }
765
- /**
766
- * Register a tool class
767
- */
768
- registerToolClass(name, toolClass) {
769
- this.toolClasses.set(name.toLowerCase(), toolClass);
770
- }
771
- /**
772
- * Register a tool instance
773
- */
774
- registerTool(tool) {
775
- const metadata = tool.getMetadata();
776
- this.tools.set(metadata.name.toLowerCase(), tool);
777
- }
778
- /**
779
- * Get a tool instance by name
780
- */
781
- getTool(name) {
782
- const normalizedName = name.toLowerCase();
783
- if (this.tools.has(normalizedName)) {
784
- return this.tools.get(normalizedName);
785
- }
786
- const ToolClass = this.toolClasses.get(normalizedName);
787
- if (ToolClass) {
788
- const tool = new ToolClass();
789
- this.tools.set(normalizedName, tool);
790
- return tool;
791
- }
792
- return void 0;
793
- }
794
- /**
795
- * Get all registered tool names
796
- */
797
- getToolNames() {
798
- return Array.from(this.toolClasses.keys());
799
- }
800
- /**
801
- * Get all tool instances
802
- */
803
- getAllTools() {
804
- return Array.from(this.tools.values());
805
- }
806
- /**
807
- * Check if a tool is registered
808
- */
809
- hasTool(name) {
810
- return this.toolClasses.has(name.toLowerCase());
811
- }
812
- /**
813
- * Unregister a tool
814
- */
815
- unregisterTool(name) {
816
- const normalizedName = name.toLowerCase();
817
- this.tools.delete(normalizedName);
818
- this.toolClasses.delete(normalizedName);
819
- }
820
- /**
821
- * Clear all registered tools
822
- */
823
- clear() {
824
- this.tools.clear();
825
- this.toolClasses.clear();
826
- }
827
- /**
828
- * Get metadata for all registered tools
829
- */
830
- async getAllMetadata() {
831
- const metadata = [];
832
- for (const name of this.toolClasses.keys()) {
833
- const tool = this.getTool(name);
834
- if (tool) {
835
- metadata.push(tool.getMetadata());
836
- }
837
- }
838
- return metadata;
839
- }
840
- }
841
- function getRegistry() {
842
- return ToolRegistry.getInstance();
843
- }
844
-
845
- const RUNTIME_CAPABILITY_FALLBACKS = {
846
- clavue: {
847
- runtime: "clavue",
848
- ownership: "hybrid",
849
- configBackend: "claude-family",
850
- native: {
851
- agentLoop: true,
852
- planTask: true,
853
- subagents: true,
854
- slashCommands: true,
855
- mcp: true,
856
- permissions: true,
857
- memory: true,
858
- ideIntegration: true,
859
- worktree: true,
860
- statusline: true
861
- },
862
- managedByCcjk: {
863
- providerProfiles: true,
864
- modelRouting: true,
865
- configSync: true,
866
- permissionRepair: true,
867
- mcpBundles: true,
868
- doctor: true
869
- }
870
- }
871
- };
872
- const registry = ToolRegistry.getInstance();
873
- registry.registerToolClass("claude-code", ClaudeCodeTool);
874
- registry.registerToolClass("clavue", ClavueTool);
875
- registry.registerToolClass("codex", CodexTool);
876
- registry.registerToolClass("aider", AiderTool);
877
- registry.registerToolClass("continue", ContinueTool);
878
- registry.registerToolClass("cline", ClineTool);
879
- registry.registerToolClass("cursor", CursorTool);
880
- function getRuntimeCapabilityDescriptor(name) {
881
- const normalizedName = name.toLowerCase();
882
- return registry.getTool(normalizedName)?.getMetadata().runtime || RUNTIME_CAPABILITY_FALLBACKS[normalizedName];
883
- }
884
-
885
- export { AiderTool as A, BaseCodeTool as B, ClaudeCodeTool as C, ToolRegistry as T, getRegistry as a, ClavueTool as b, ClineTool as c, CodexTool as d, ContinueTool as e, CursorTool as f, getRuntimeCapabilityDescriptor as g };