@jsonstudio/rcc 0.90.252 → 0.90.352

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 (335) hide show
  1. package/README.md +16 -16
  2. package/config/providers/ali-coding-plan.json +73 -0
  3. package/dist/build-info.js +2 -2
  4. package/dist/cli/commands/camoufox.js +2 -2
  5. package/dist/cli/commands/camoufox.js.map +1 -1
  6. package/dist/cli/commands/clean.js +4 -3
  7. package/dist/cli/commands/clean.js.map +1 -1
  8. package/dist/cli/commands/config.js +2 -1
  9. package/dist/cli/commands/config.js.map +1 -1
  10. package/dist/cli/commands/env.js +2 -1
  11. package/dist/cli/commands/env.js.map +1 -1
  12. package/dist/cli/commands/init/basic.js +2 -1
  13. package/dist/cli/commands/init/basic.js.map +1 -1
  14. package/dist/cli/commands/init.js +4 -3
  15. package/dist/cli/commands/init.js.map +1 -1
  16. package/dist/cli/commands/launcher-kernel.js +34 -8
  17. package/dist/cli/commands/launcher-kernel.js.map +1 -1
  18. package/dist/cli/commands/port.js +1 -1
  19. package/dist/cli/commands/port.js.map +1 -1
  20. package/dist/cli/commands/restart.js +3 -2
  21. package/dist/cli/commands/restart.js.map +1 -1
  22. package/dist/cli/commands/session-admin.js +46 -8
  23. package/dist/cli/commands/session-admin.js.map +1 -1
  24. package/dist/cli/commands/session-inject.js +43 -4
  25. package/dist/cli/commands/session-inject.js.map +1 -1
  26. package/dist/cli/commands/start.js +4 -3
  27. package/dist/cli/commands/start.js.map +1 -1
  28. package/dist/cli/commands/stop.js +3 -2
  29. package/dist/cli/commands/stop.js.map +1 -1
  30. package/dist/cli/config/bundled-docs.js +2 -6
  31. package/dist/cli/config/bundled-docs.js.map +1 -1
  32. package/dist/cli/config/init-config.d.ts +1 -0
  33. package/dist/cli/config/init-config.js +6 -3
  34. package/dist/cli/config/init-config.js.map +1 -1
  35. package/dist/cli/config/init-provider-catalog.js +4 -4
  36. package/dist/cli/config/init-provider-catalog.js.map +1 -1
  37. package/dist/cli/config/precommand-default-script.js +3 -9
  38. package/dist/cli/config/precommand-default-script.js.map +1 -1
  39. package/dist/cli/guardian/paths.js +2 -3
  40. package/dist/cli/guardian/paths.js.map +1 -1
  41. package/dist/cli.js +10 -2
  42. package/dist/cli.js.map +1 -1
  43. package/dist/commands/camoufox-fp.js +2 -3
  44. package/dist/commands/camoufox-fp.js.map +1 -1
  45. package/dist/commands/migrate-user-config.d.ts +6 -0
  46. package/dist/commands/migrate-user-config.js +53 -0
  47. package/dist/commands/migrate-user-config.js.map +1 -0
  48. package/dist/commands/provider-update.js +9 -9
  49. package/dist/commands/provider-update.js.map +1 -1
  50. package/dist/commands/quota-daemon.js +3 -3
  51. package/dist/commands/quota-daemon.js.map +1 -1
  52. package/dist/commands/quota-status.js +2 -2
  53. package/dist/commands/quota-status.js.map +1 -1
  54. package/dist/commands/token-daemon.js +2 -2
  55. package/dist/commands/token-daemon.js.map +1 -1
  56. package/dist/commands/validate.js +2 -3
  57. package/dist/commands/validate.js.map +1 -1
  58. package/dist/config/auth-file-resolver.js +2 -2
  59. package/dist/config/auth-file-resolver.js.map +1 -1
  60. package/dist/config/provider-v2-loader.js +9 -6
  61. package/dist/config/provider-v2-loader.js.map +1 -1
  62. package/dist/config/routecodex-config-loader.js +2 -2
  63. package/dist/config/routecodex-config-loader.js.map +1 -1
  64. package/dist/config/unified-config-paths.js +33 -11
  65. package/dist/config/unified-config-paths.js.map +1 -1
  66. package/dist/config/user-config-migration.d.ts +42 -0
  67. package/dist/config/user-config-migration.js +188 -0
  68. package/dist/config/user-config-migration.js.map +1 -0
  69. package/dist/config/user-data-paths.d.ts +59 -0
  70. package/dist/config/user-data-paths.js +174 -0
  71. package/dist/config/user-data-paths.js.map +1 -0
  72. package/dist/config/virtual-router-builder.d.ts +1 -1
  73. package/dist/config/virtual-router-builder.js +1 -1
  74. package/dist/daemon-admin-ui/assets/index-Bnx13Byl.js +15 -0
  75. package/dist/daemon-admin-ui/index.html +1 -1
  76. package/dist/docs/daemon-admin-ui.html +9 -9
  77. package/dist/index.js +66 -13
  78. package/dist/index.js.map +1 -1
  79. package/dist/manager/modules/health/index.js +2 -2
  80. package/dist/manager/modules/health/index.js.map +1 -1
  81. package/dist/manager/modules/quota/antigravity-quota-persistence.d.ts +2 -1
  82. package/dist/manager/modules/quota/antigravity-quota-persistence.js +11 -22
  83. package/dist/manager/modules/quota/antigravity-quota-persistence.js.map +1 -1
  84. package/dist/manager/quota/provider-quota-center.js +33 -25
  85. package/dist/manager/quota/provider-quota-center.js.map +1 -1
  86. package/dist/manager/quota/provider-quota-store.js +11 -4
  87. package/dist/manager/quota/provider-quota-store.js.map +1 -1
  88. package/dist/modules/config/pipeline-config-path.js +3 -3
  89. package/dist/modules/config/pipeline-config-path.js.map +1 -1
  90. package/dist/modules/llmswitch/bridge/index.d.ts +1 -1
  91. package/dist/modules/llmswitch/bridge/index.js +1 -1
  92. package/dist/modules/llmswitch/bridge/index.js.map +1 -1
  93. package/dist/modules/llmswitch/bridge/native-exports.d.ts +1 -0
  94. package/dist/modules/llmswitch/bridge/native-exports.js +27 -0
  95. package/dist/modules/llmswitch/bridge/native-exports.js.map +1 -1
  96. package/dist/modules/llmswitch/bridge/snapshot-recorder.js +95 -24
  97. package/dist/modules/llmswitch/bridge/snapshot-recorder.js.map +1 -1
  98. package/dist/modules/llmswitch/bridge/state-integrations.d.ts +18 -0
  99. package/dist/modules/llmswitch/bridge/state-integrations.js +28 -0
  100. package/dist/modules/llmswitch/bridge/state-integrations.js.map +1 -1
  101. package/dist/modules/llmswitch/bridge.d.ts +2 -2
  102. package/dist/modules/llmswitch/bridge.js +2 -2
  103. package/dist/modules/llmswitch/bridge.js.map +1 -1
  104. package/dist/modules/pipeline/utils/colored-logger.d.ts +1 -0
  105. package/dist/modules/pipeline/utils/colored-logger.js +13 -9
  106. package/dist/modules/pipeline/utils/colored-logger.js.map +1 -1
  107. package/dist/providers/auth/antigravity-fingerprint.js +2 -3
  108. package/dist/providers/auth/antigravity-fingerprint.js.map +1 -1
  109. package/dist/providers/auth/antigravity-reauth-state.js +2 -3
  110. package/dist/providers/auth/antigravity-reauth-state.js.map +1 -1
  111. package/dist/providers/auth/antigravity-user-agent.js +2 -2
  112. package/dist/providers/auth/antigravity-user-agent.js.map +1 -1
  113. package/dist/providers/auth/antigravity-warmup.js +2 -3
  114. package/dist/providers/auth/antigravity-warmup.js.map +1 -1
  115. package/dist/providers/auth/deepseek-account-auth.js +4 -3
  116. package/dist/providers/auth/deepseek-account-auth.js.map +1 -1
  117. package/dist/providers/auth/deepseek-account-token-acquirer.js +3 -2
  118. package/dist/providers/auth/deepseek-account-token-acquirer.js.map +1 -1
  119. package/dist/providers/auth/oauth-auth.js +2 -3
  120. package/dist/providers/auth/oauth-auth.js.map +1 -1
  121. package/dist/providers/auth/oauth-lifecycle/path-resolver.js +6 -7
  122. package/dist/providers/auth/oauth-lifecycle/path-resolver.js.map +1 -1
  123. package/dist/providers/auth/oauth-lifecycle.js +4 -4
  124. package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
  125. package/dist/providers/auth/oauth-repair-cooldown.js +2 -3
  126. package/dist/providers/auth/oauth-repair-cooldown.js.map +1 -1
  127. package/dist/providers/auth/token-scanner/index.js +2 -3
  128. package/dist/providers/auth/token-scanner/index.js.map +1 -1
  129. package/dist/providers/auth/token-storage/token-file-resolver.js +8 -7
  130. package/dist/providers/auth/token-storage/token-file-resolver.js.map +1 -1
  131. package/dist/providers/auth/tokenfile-auth.js +5 -6
  132. package/dist/providers/auth/tokenfile-auth.js.map +1 -1
  133. package/dist/providers/core/config/camoufox-launcher.js +3 -4
  134. package/dist/providers/core/config/camoufox-launcher.js.map +1 -1
  135. package/dist/providers/core/config/provider-oauth-configs.js +2 -2
  136. package/dist/providers/core/config/provider-oauth-configs.js.map +1 -1
  137. package/dist/providers/core/hooks/hooks-integration.js +1 -1
  138. package/dist/providers/core/hooks/hooks-integration.js.map +1 -1
  139. package/dist/providers/core/runtime/deepseek-http-provider.js +2 -1
  140. package/dist/providers/core/runtime/deepseek-http-provider.js.map +1 -1
  141. package/dist/providers/core/utils/snapshot-writer.js +2 -1
  142. package/dist/providers/core/utils/snapshot-writer.js.map +1 -1
  143. package/dist/providers/profile/families/anthropic-profile.js +32 -0
  144. package/dist/providers/profile/families/anthropic-profile.js.map +1 -1
  145. package/dist/server/handlers/config-admin-handler.d.ts +1 -1
  146. package/dist/server/handlers/config-admin-handler.js +6 -6
  147. package/dist/server/handlers/config-admin-handler.js.map +1 -1
  148. package/dist/server/handlers/handler-response-utils.js +9 -4
  149. package/dist/server/handlers/handler-response-utils.js.map +1 -1
  150. package/dist/server/runtime/http-server/clock-runtime-hooks.d.ts +2 -0
  151. package/dist/server/runtime/http-server/clock-runtime-hooks.js +91 -0
  152. package/dist/server/runtime/http-server/clock-runtime-hooks.js.map +1 -0
  153. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js +51 -13
  154. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js.map +1 -1
  155. package/dist/server/runtime/http-server/daemon-admin/auth-store.d.ts +1 -9
  156. package/dist/server/runtime/http-server/daemon-admin/auth-store.js +2 -18
  157. package/dist/server/runtime/http-server/daemon-admin/auth-store.js.map +1 -1
  158. package/dist/server/runtime/http-server/daemon-admin/control-handler.js +3 -3
  159. package/dist/server/runtime/http-server/daemon-admin/control-handler.js.map +1 -1
  160. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js +2 -2
  161. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js.map +1 -1
  162. package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.js +5 -4
  163. package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.js.map +1 -1
  164. package/dist/server/runtime/http-server/daemon-admin/providers-handler.js +3 -3
  165. package/dist/server/runtime/http-server/daemon-admin/providers-handler.js.map +1 -1
  166. package/dist/server/runtime/http-server/daemon-admin-routes.d.ts +2 -0
  167. package/dist/server/runtime/http-server/daemon-admin-routes.js +11 -8
  168. package/dist/server/runtime/http-server/daemon-admin-routes.js.map +1 -1
  169. package/dist/server/runtime/http-server/executor/client-injection-flow.js +9 -1
  170. package/dist/server/runtime/http-server/executor/client-injection-flow.js.map +1 -1
  171. package/dist/server/runtime/http-server/executor/provider-response-converter.js +119 -26
  172. package/dist/server/runtime/http-server/executor/provider-response-converter.js.map +1 -1
  173. package/dist/server/runtime/http-server/executor/request-retry-helpers.d.ts +1 -0
  174. package/dist/server/runtime/http-server/executor/request-retry-helpers.js +26 -0
  175. package/dist/server/runtime/http-server/executor/request-retry-helpers.js.map +1 -1
  176. package/dist/server/runtime/http-server/http-server-bootstrap.js +2 -3
  177. package/dist/server/runtime/http-server/http-server-bootstrap.js.map +1 -1
  178. package/dist/server/runtime/http-server/http-server-lifecycle.js +2 -0
  179. package/dist/server/runtime/http-server/http-server-lifecycle.js.map +1 -1
  180. package/dist/server/runtime/http-server/http-server-runtime-setup.js +2 -0
  181. package/dist/server/runtime/http-server/http-server-runtime-setup.js.map +1 -1
  182. package/dist/server/runtime/http-server/http-server-session-daemon.js +9 -299
  183. package/dist/server/runtime/http-server/http-server-session-daemon.js.map +1 -1
  184. package/dist/server/runtime/http-server/middleware.d.ts +7 -0
  185. package/dist/server/runtime/http-server/middleware.js +1 -1
  186. package/dist/server/runtime/http-server/middleware.js.map +1 -1
  187. package/dist/server/runtime/http-server/request-executor.js +36 -51
  188. package/dist/server/runtime/http-server/request-executor.js.map +1 -1
  189. package/dist/server/runtime/http-server/routes.js +10 -3
  190. package/dist/server/runtime/http-server/routes.js.map +1 -1
  191. package/dist/server/runtime/http-server/servertool-admin-state.d.ts +1 -0
  192. package/dist/server/runtime/http-server/servertool-admin-state.js +7 -2
  193. package/dist/server/runtime/http-server/servertool-admin-state.js.map +1 -1
  194. package/dist/server/runtime/http-server/session-client-route-utils.d.ts +1 -0
  195. package/dist/server/runtime/http-server/session-client-route-utils.js +49 -4
  196. package/dist/server/runtime/http-server/session-client-route-utils.js.map +1 -1
  197. package/dist/server/runtime/http-server/session-client-routes.d.ts +5 -1
  198. package/dist/server/runtime/http-server/session-client-routes.js +60 -30
  199. package/dist/server/runtime/http-server/session-client-routes.js.map +1 -1
  200. package/dist/server/runtime/http-server/session-dir.js +6 -12
  201. package/dist/server/runtime/http-server/session-dir.js.map +1 -1
  202. package/dist/server/runtime/http-server/stats-manager.js +4 -3
  203. package/dist/server/runtime/http-server/stats-manager.js.map +1 -1
  204. package/dist/server/utils/non-blocking-error-logger.js +2 -1
  205. package/dist/server/utils/non-blocking-error-logger.js.map +1 -1
  206. package/dist/server/utils/request-log-color.js +10 -3
  207. package/dist/server/utils/request-log-color.js.map +1 -1
  208. package/dist/server/utils/stage-logger.js +71 -9
  209. package/dist/server/utils/stage-logger.js.map +1 -1
  210. package/dist/token-daemon/history-store.js +2 -1
  211. package/dist/token-daemon/history-store.js.map +1 -1
  212. package/dist/token-daemon/leader-lock.js +2 -2
  213. package/dist/token-daemon/leader-lock.js.map +1 -1
  214. package/dist/token-daemon/quota-auth-issue.js +2 -4
  215. package/dist/token-daemon/quota-auth-issue.js.map +1 -1
  216. package/dist/token-daemon/server-utils.js +3 -4
  217. package/dist/token-daemon/server-utils.js.map +1 -1
  218. package/dist/token-daemon/token-daemon.js +6 -6
  219. package/dist/token-daemon/token-daemon.js.map +1 -1
  220. package/dist/token-daemon/token-utils.js +2 -1
  221. package/dist/token-daemon/token-utils.js.map +1 -1
  222. package/dist/token-portal/fingerprint-summary.js +2 -3
  223. package/dist/token-portal/fingerprint-summary.js.map +1 -1
  224. package/dist/token-portal/local-token-portal.js +1 -1
  225. package/dist/token-portal/local-token-portal.js.map +1 -1
  226. package/dist/utils/daemon-stop-intent.js +2 -2
  227. package/dist/utils/daemon-stop-intent.js.map +1 -1
  228. package/dist/utils/errorsamples.js +3 -1
  229. package/dist/utils/errorsamples.js.map +1 -1
  230. package/dist/utils/llms-engine-shadow.js +2 -2
  231. package/dist/utils/llms-engine-shadow.js.map +1 -1
  232. package/dist/utils/managed-server-pids.js +2 -2
  233. package/dist/utils/managed-server-pids.js.map +1 -1
  234. package/dist/utils/process-lifecycle-logger.js +2 -1
  235. package/dist/utils/process-lifecycle-logger.js.map +1 -1
  236. package/dist/utils/runtime-exit-forensics.js +2 -2
  237. package/dist/utils/runtime-exit-forensics.js.map +1 -1
  238. package/dist/utils/session-log-color.js +31 -5
  239. package/dist/utils/session-log-color.js.map +1 -1
  240. package/dist/utils/snapshot-writer.js +2 -1
  241. package/dist/utils/snapshot-writer.js.map +1 -1
  242. package/docs/CODEX_AND_CLAUDE_CODE.md +1 -1
  243. package/docs/CONFIG_ARCHITECTURE.md +7 -7
  244. package/docs/DAEMON_CONTROL_PLANE.md +2 -2
  245. package/docs/INSTALLATION_AND_QUICKSTART.md +2 -2
  246. package/docs/INSTRUCTION_MARKUP.md +2 -2
  247. package/docs/OAUTH.md +6 -6
  248. package/docs/PORTS.md +1 -1
  249. package/docs/PROVIDERS_BUILTIN.md +2 -2
  250. package/docs/QUOTA_MANAGER_V3.md +2 -2
  251. package/docs/ROUTING_POLICY_SCHEMA.md +1 -1
  252. package/docs/SERVERTOOL_CLOCK_DESIGN.md +1 -1
  253. package/docs/SERVERTOOL_PRE_COMMAND_HOOKS.md +4 -4
  254. package/docs/anthropic-request-golden-samples.md +4 -4
  255. package/docs/chat-glm-500-analysis.md +2 -2
  256. package/docs/chat-request-golden-samples.md +4 -4
  257. package/docs/codex-samples-replay.md +3 -3
  258. package/docs/daemon-admin-api-design.md +2 -2
  259. package/docs/daemon-admin-ui.html +9 -9
  260. package/docs/design/servertool-stopmessage-lifecycle.md +5 -0
  261. package/docs/golden-ci-library.md +8 -8
  262. package/docs/monitoring/Design.md +2 -2
  263. package/docs/multi-token-auth-guide.md +6 -6
  264. package/docs/oauth-authentication-guide.md +1 -1
  265. package/docs/oauth-iflow-implementation.md +2 -2
  266. package/docs/pipeline-routing-report.md +1 -1
  267. package/docs/plans/manager-daemon/PLAN.md +1 -1
  268. package/docs/plans/provider-config-v2-plan.md +8 -8
  269. package/docs/plans/provider-runtime-manager-plan.md +4 -4
  270. package/docs/provider-analysis.md +5 -5
  271. package/docs/provider-quota-design.md +2 -2
  272. package/docs/providers/antigravity-fingerprint-ua-warmup.md +5 -5
  273. package/docs/providers/antigravity-gemini-provider-compat.md +3 -3
  274. package/docs/providers/deepseek-web-provider-design.md +1 -1
  275. package/docs/providers/gemini-provider.md +1 -1
  276. package/docs/providers/provider-composite-testing.md +2 -2
  277. package/docs/providers/tabglm-claude-code-compat.md +1 -1
  278. package/docs/replay-evidence-iflow-400.txt +3 -3
  279. package/docs/reports/routing-classification-report.json +6 -6
  280. package/docs/reports/routing-classification-report.md +6 -6
  281. package/docs/reports/thinking-keywords-report.json +6 -6
  282. package/docs/responses/README.md +5 -5
  283. package/docs/responses-generic-provider.md +1 -1
  284. package/docs/responses-passthrough-provider-design.md +7 -7
  285. package/docs/routing-instructions.md +1 -1
  286. package/docs/token-daemon-preview.html +3 -3
  287. package/docs/token-refresh-daemon-plan.md +7 -7
  288. package/docs/verification/modelscope-verify.md +2 -2
  289. package/docs/verified-configs/README.md +2 -2
  290. package/docs/verified-configs/v0.45.0/README.md +5 -5
  291. package/docs/verified-configs/v0.45.0/merged-config.5521.json +3 -3
  292. package/docs/verified-configs/v0.45.0/merged-config.qwen-5522.json +3 -3
  293. package/package.json +3 -2
  294. package/scripts/anthropic-four-config-e2e.mjs +5 -5
  295. package/scripts/anthropic-toolcall.mjs +1 -1
  296. package/scripts/batch-toolcall-report.mjs +1 -1
  297. package/scripts/build-core.mjs +2 -7
  298. package/scripts/claude-e2e-listdir-all.sh +1 -1
  299. package/scripts/claude-e2e-listdir-per-config.sh +4 -4
  300. package/scripts/clean-safe.mjs +1 -1
  301. package/scripts/cleanup-beads-oversized-notes.mjs +182 -0
  302. package/scripts/config-core-compare.ts +1 -1
  303. package/scripts/ensure-llmswitch-mode.mjs +7 -1
  304. package/scripts/glm1210-curl-test.sh +1 -1
  305. package/scripts/install-release.sh +1 -1
  306. package/scripts/mock-provider/capture-from-configs.mjs +1 -1
  307. package/scripts/outbound-network-toolcall.mjs +2 -2
  308. package/scripts/outbound-regression-codex-samples.mjs +1 -1
  309. package/scripts/pack-mode.mjs +14 -1
  310. package/scripts/pack-rcc.mjs +9 -4
  311. package/scripts/provider-v2-smoke.mjs +3 -3
  312. package/scripts/publish-rcc.mjs +8 -3
  313. package/scripts/replay-recorded-toolcall.mjs +1 -2
  314. package/scripts/responses-fai-capture.mjs +1 -1
  315. package/scripts/responses-sse-capture.mjs +1 -1
  316. package/scripts/responses-sse-proxy.mjs +1 -1
  317. package/scripts/responses-sse-replay-golden.mjs +252 -111
  318. package/scripts/run-bg.sh +1 -1
  319. package/scripts/run-fg-gtimeout.sh +1 -1
  320. package/scripts/tests/antigravity-codex-sample-pipeline-compare.mjs +1 -1
  321. package/scripts/tests/antigravity-gemini-dryrun-compare.mjs +1 -1
  322. package/scripts/tests/responses-provider-dry-run.mjs +1 -1
  323. package/scripts/tests/virtual-router-health.mjs +1 -1
  324. package/scripts/update-models.mjs +2 -2
  325. package/scripts/v2-simple-monitor.mjs +1 -1
  326. package/scripts/vendor-core.mjs +12 -7
  327. package/scripts/verify-e2e-gemini-followup-sample.mjs +1 -1
  328. package/scripts/verify-e2e-toolcall.mjs +2 -2
  329. package/scripts/verify-health.mjs +2 -2
  330. package/scripts/verify-sse-loop.mjs +1 -1
  331. package/scripts/virtual-router-dryrun.mjs +2 -2
  332. package/scripts/virtual-router-shadow-v2-real.mjs +3 -3
  333. package/dist/daemon-admin-ui/assets/index-C8vP_c5E.js +0 -15
  334. package/docs/rccx-wasm-migration.md +0 -74
  335. package/scripts/compare-codex-rccx.mjs +0 -326
@@ -1,6 +1,7 @@
1
1
  import fs from 'fs';
2
2
  import path from 'path';
3
3
  import { homedir } from 'os';
4
+ import { resolveRccConfigDir, resolveRccUserDir } from './user-data-paths.js';
4
5
  /**
5
6
  * Environment variable precedence order for configuration paths
6
7
  */
@@ -20,12 +21,31 @@ const CONFIG_FILE_PREFERENCES = [
20
21
  'lmstudio.json', // LM Studio configuration
21
22
  'qwen.json', // Qwen provider configuration
22
23
  ];
24
+ function safeProcessCwd(fallback) {
25
+ try {
26
+ const cwd = process.cwd();
27
+ if (typeof cwd === 'string' && cwd.trim()) {
28
+ return cwd;
29
+ }
30
+ }
31
+ catch {
32
+ // current working directory may no longer exist
33
+ }
34
+ const fallbackValue = String(fallback || '').trim();
35
+ if (fallbackValue) {
36
+ return path.resolve(fallbackValue);
37
+ }
38
+ const home = homedir();
39
+ if (typeof home === 'string' && home.trim()) {
40
+ return path.resolve(home);
41
+ }
42
+ return path.dirname(process.execPath);
43
+ }
23
44
  /**
24
45
  * Default configuration directory structure
25
46
  */
26
47
  // const DEFAULT_CONFIG_DIRECTORIES = [
27
- // path.join(homedir(), '.routecodex', 'config'), // Primary config directory
28
- // path.join(homedir(), '.routecodex'), // Legacy directory
48
+ // path.join(homedir(), '.rcc', 'config'), // Primary config directory
29
49
  // path.join(process.cwd(), 'config'), // Current directory config
30
50
  // process.cwd(), // Current directory
31
51
  // ];
@@ -37,7 +57,7 @@ export class UnifiedConfigPathResolver {
37
57
  * Resolve configuration path using unified precedence order
38
58
  */
39
59
  static resolveConfigPath(options = {}) {
40
- const { preferredPath, configName, strict = false, allowDirectoryScan = true, baseDir = process.cwd() } = options;
60
+ const { preferredPath, configName, strict = false, allowDirectoryScan = true, baseDir = safeProcessCwd() } = options;
41
61
  const warnings = [];
42
62
  const candidates = [];
43
63
  const scannedDirectories = [];
@@ -134,7 +154,7 @@ export class UnifiedConfigPathResolver {
134
154
  * Get the default configuration directory
135
155
  */
136
156
  static getDefaultConfigDirectory() {
137
- return path.join(homedir(), '.routecodex', 'config');
157
+ return resolveRccConfigDir();
138
158
  }
139
159
  /**
140
160
  * Scan a directory for configuration files
@@ -221,17 +241,19 @@ export class UnifiedConfigPathResolver {
221
241
  }
222
242
  // 4. Home directory configurations
223
243
  if (configName) {
224
- candidates.push(path.join(homedir(), '.routecodex', configName));
225
- candidates.push(path.join(homedir(), '.routecodex', 'config', configName));
244
+ const primaryHome = resolveRccUserDir();
245
+ candidates.push(path.join(primaryHome, configName));
246
+ candidates.push(path.join(primaryHome, 'config', configName));
226
247
  }
227
248
  else {
228
- candidates.push(path.join(homedir(), '.routecodex', 'config.json'));
229
- candidates.push(path.join(homedir(), '.routecodex', 'routecodex.json'));
249
+ const primaryHome = resolveRccUserDir();
250
+ candidates.push(path.join(primaryHome, 'config.json'));
251
+ candidates.push(path.join(primaryHome, 'routecodex.json'));
230
252
  }
231
253
  // 5. Default configuration directory (with scanning)
232
254
  const defaultConfigDir = this.getDefaultConfigDirectory();
233
255
  if (allowDirectoryScan) {
234
- candidates.push(path.join(homedir(), '.routecodex'));
256
+ candidates.push(resolveRccUserDir());
235
257
  candidates.push(defaultConfigDir);
236
258
  }
237
259
  else if (configName) {
@@ -297,8 +319,8 @@ export class UnifiedConfigPathResolver {
297
319
  const results = [];
298
320
  const directories = [
299
321
  this.getDefaultConfigDirectory(),
300
- path.join(homedir(), '.routecodex'),
301
- path.join(process.cwd(), 'config')
322
+ resolveRccUserDir(),
323
+ path.join(safeProcessCwd(), 'config')
302
324
  ];
303
325
  directories.forEach(dir => {
304
326
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"unified-config-paths.js","sourceRoot":"","sources":["../../src/config/unified-config-paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unified-config-paths.js","sourceRoot":"","sources":["../../src/config/unified-config-paths.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ type MigrationEntry = {
2
+ id: 'config_file' | 'config_dir' | 'provider_dir' | 'auth_dir';
3
+ kind: 'file' | 'dir';
4
+ legacyRelativePath: string;
5
+ targetRelativePath: string;
6
+ skipRelativeSegments?: readonly string[];
7
+ };
8
+ export type UserConfigMigrationAction = 'copy' | 'overwrite' | 'unchanged' | 'conflict';
9
+ export type UserConfigMigrationItem = {
10
+ entryId: MigrationEntry['id'];
11
+ relativePath: string;
12
+ sourcePath: string;
13
+ targetPath: string;
14
+ action: UserConfigMigrationAction;
15
+ bytes: number;
16
+ };
17
+ export type UserConfigMigrationSummary = {
18
+ total: number;
19
+ copy: number;
20
+ overwrite: number;
21
+ unchanged: number;
22
+ conflict: number;
23
+ missingRoots: string[];
24
+ };
25
+ export type UserConfigMigrationPlan = {
26
+ legacyRoot: string;
27
+ targetRoot: string;
28
+ overwrite: boolean;
29
+ items: UserConfigMigrationItem[];
30
+ summary: UserConfigMigrationSummary;
31
+ };
32
+ export type UserConfigMigrationApplyResult = {
33
+ copied: number;
34
+ overwritten: number;
35
+ skippedConflicts: number;
36
+ };
37
+ export declare function collectUserConfigMigrationPlan(options?: {
38
+ homeDir?: string;
39
+ overwrite?: boolean;
40
+ }): Promise<UserConfigMigrationPlan>;
41
+ export declare function applyUserConfigMigrationPlan(plan: UserConfigMigrationPlan): Promise<UserConfigMigrationApplyResult>;
42
+ export {};
@@ -0,0 +1,188 @@
1
+ import fs from 'node:fs';
2
+ import fsAsync from 'node:fs/promises';
3
+ import path from 'node:path';
4
+ import { resolveLegacyRouteCodexUserDir, resolveRccUserDir } from './user-data-paths.js';
5
+ const USER_CONFIG_MIGRATION_ENTRIES = [
6
+ {
7
+ id: 'config_file',
8
+ kind: 'file',
9
+ legacyRelativePath: 'config.json',
10
+ targetRelativePath: 'config.json'
11
+ },
12
+ {
13
+ id: 'config_dir',
14
+ kind: 'dir',
15
+ legacyRelativePath: 'config',
16
+ targetRelativePath: 'config'
17
+ },
18
+ {
19
+ id: 'provider_dir',
20
+ kind: 'dir',
21
+ legacyRelativePath: 'provider',
22
+ targetRelativePath: 'provider',
23
+ skipRelativeSegments: ['samples']
24
+ },
25
+ {
26
+ id: 'auth_dir',
27
+ kind: 'dir',
28
+ legacyRelativePath: 'auth',
29
+ targetRelativePath: 'auth'
30
+ }
31
+ ];
32
+ async function fileExists(targetPath) {
33
+ try {
34
+ await fsAsync.access(targetPath);
35
+ return true;
36
+ }
37
+ catch {
38
+ return false;
39
+ }
40
+ }
41
+ async function areFilesEqual(sourcePath, targetPath) {
42
+ try {
43
+ const [source, target] = await Promise.all([fsAsync.readFile(sourcePath), fsAsync.readFile(targetPath)]);
44
+ return source.equals(target);
45
+ }
46
+ catch {
47
+ return false;
48
+ }
49
+ }
50
+ function collectFilesUnderDir(baseDir, relativePrefix = '') {
51
+ const entries = fs.readdirSync(baseDir, { withFileTypes: true });
52
+ const files = [];
53
+ for (const entry of entries) {
54
+ if (entry.name === '.DS_Store') {
55
+ continue;
56
+ }
57
+ const relativePath = relativePrefix ? path.join(relativePrefix, entry.name) : entry.name;
58
+ const absolutePath = path.join(baseDir, entry.name);
59
+ const stats = fs.lstatSync(absolutePath);
60
+ if (stats.isSymbolicLink()) {
61
+ continue;
62
+ }
63
+ if (stats.isDirectory()) {
64
+ files.push(...collectFilesUnderDir(absolutePath, relativePath));
65
+ continue;
66
+ }
67
+ if (stats.isFile()) {
68
+ files.push(relativePath);
69
+ }
70
+ }
71
+ return files;
72
+ }
73
+ function shouldSkipRelativePath(relativePath, skipRelativeSegments) {
74
+ if (!skipRelativeSegments || skipRelativeSegments.length === 0) {
75
+ return false;
76
+ }
77
+ const normalizedParts = relativePath.split(path.sep).filter(Boolean);
78
+ return normalizedParts.some((part) => skipRelativeSegments.includes(part));
79
+ }
80
+ async function collectEntryItems(entry, legacyRoot, targetRoot, overwrite) {
81
+ const sourceRoot = path.join(legacyRoot, entry.legacyRelativePath);
82
+ if (!fs.existsSync(sourceRoot)) {
83
+ return { missingRoot: entry.legacyRelativePath, items: [] };
84
+ }
85
+ const sourceStats = fs.lstatSync(sourceRoot);
86
+ if (sourceStats.isSymbolicLink()) {
87
+ return { missingRoot: entry.legacyRelativePath, items: [] };
88
+ }
89
+ const relativeFiles = entry.kind === 'file'
90
+ ? sourceStats.isFile()
91
+ ? ['']
92
+ : []
93
+ : sourceStats.isDirectory()
94
+ ? collectFilesUnderDir(sourceRoot)
95
+ : [];
96
+ const items = [];
97
+ for (const relativePath of relativeFiles) {
98
+ if (shouldSkipRelativePath(relativePath, entry.skipRelativeSegments)) {
99
+ continue;
100
+ }
101
+ const sourcePath = relativePath ? path.join(sourceRoot, relativePath) : sourceRoot;
102
+ const targetPath = relativePath
103
+ ? path.join(targetRoot, entry.targetRelativePath, relativePath)
104
+ : path.join(targetRoot, entry.targetRelativePath);
105
+ const sourceFileStats = await fsAsync.stat(sourcePath);
106
+ const targetExists = await fileExists(targetPath);
107
+ let action = 'copy';
108
+ if (targetExists) {
109
+ const same = await areFilesEqual(sourcePath, targetPath);
110
+ if (same) {
111
+ action = 'unchanged';
112
+ }
113
+ else {
114
+ action = overwrite ? 'overwrite' : 'conflict';
115
+ }
116
+ }
117
+ items.push({
118
+ entryId: entry.id,
119
+ relativePath: relativePath || path.basename(entry.targetRelativePath),
120
+ sourcePath,
121
+ targetPath,
122
+ action,
123
+ bytes: sourceFileStats.size
124
+ });
125
+ }
126
+ return { items };
127
+ }
128
+ export async function collectUserConfigMigrationPlan(options) {
129
+ const homeDir = options?.homeDir;
130
+ const overwrite = options?.overwrite === true;
131
+ const legacyRoot = resolveLegacyRouteCodexUserDir(homeDir);
132
+ const targetRoot = resolveRccUserDir(homeDir);
133
+ const items = [];
134
+ const missingRoots = [];
135
+ for (const entry of USER_CONFIG_MIGRATION_ENTRIES) {
136
+ const result = await collectEntryItems(entry, legacyRoot, targetRoot, overwrite);
137
+ if (result.missingRoot) {
138
+ missingRoots.push(result.missingRoot);
139
+ }
140
+ items.push(...result.items);
141
+ }
142
+ items.sort((left, right) => left.targetPath.localeCompare(right.targetPath));
143
+ const summary = {
144
+ total: items.length,
145
+ copy: items.filter((item) => item.action === 'copy').length,
146
+ overwrite: items.filter((item) => item.action === 'overwrite').length,
147
+ unchanged: items.filter((item) => item.action === 'unchanged').length,
148
+ conflict: items.filter((item) => item.action === 'conflict').length,
149
+ missingRoots
150
+ };
151
+ return {
152
+ legacyRoot,
153
+ targetRoot,
154
+ overwrite,
155
+ items,
156
+ summary
157
+ };
158
+ }
159
+ export async function applyUserConfigMigrationPlan(plan) {
160
+ let copied = 0;
161
+ let overwritten = 0;
162
+ let skippedConflicts = 0;
163
+ for (const item of plan.items) {
164
+ if (item.action === 'unchanged') {
165
+ continue;
166
+ }
167
+ if (item.action === 'conflict') {
168
+ skippedConflicts += 1;
169
+ continue;
170
+ }
171
+ await fsAsync.mkdir(path.dirname(item.targetPath), { recursive: true });
172
+ await fsAsync.copyFile(item.sourcePath, item.targetPath);
173
+ const stats = await fsAsync.stat(item.sourcePath);
174
+ await fsAsync.chmod(item.targetPath, stats.mode);
175
+ if (item.action === 'copy') {
176
+ copied += 1;
177
+ }
178
+ else {
179
+ overwritten += 1;
180
+ }
181
+ }
182
+ return {
183
+ copied,
184
+ overwritten,
185
+ skippedConflicts
186
+ };
187
+ }
188
+ //# sourceMappingURL=user-config-migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-config-migration.js","sourceRoot":"","sources":["../../src/config/user-config-migration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ export declare const RCC_SUBDIRS: {
2
+ readonly auth: "auth";
3
+ readonly tokens: "tokens";
4
+ readonly quota: "quota";
5
+ readonly state: "state";
6
+ readonly logs: "logs";
7
+ readonly sessions: "sessions";
8
+ readonly snapshots: "codex-samples";
9
+ readonly provider: "provider";
10
+ readonly config: "config";
11
+ readonly guardian: "guardian";
12
+ readonly login: "login";
13
+ readonly statics: "statics";
14
+ readonly errorsamples: "errorsamples";
15
+ readonly llmsShadow: "llms-shadow";
16
+ readonly camoufoxFingerprint: "camoufox-fp";
17
+ readonly camoufoxProfiles: "camoufox-profiles";
18
+ readonly docs: "docs";
19
+ readonly precommand: "precommand";
20
+ };
21
+ export type RccSubdirKey = keyof typeof RCC_SUBDIRS;
22
+ export declare function resolveRccUserDir(homeDir?: string): string;
23
+ export declare function resolveLegacyRouteCodexUserDir(homeDir?: string): string;
24
+ export declare function resolveRccUserDirForRead(homeDir?: string): string;
25
+ export declare function resolveRccPath(...segments: string[]): string;
26
+ export declare function resolveLegacyRouteCodexPath(...segments: string[]): string;
27
+ export declare function resolveRccPathForRead(...segments: string[]): string;
28
+ export declare function resolveRccSubdir(key: RccSubdirKey, homeDir?: string): string;
29
+ export declare function resolveRccSubdirForRead(key: RccSubdirKey, homeDir?: string): string;
30
+ export declare function resolveRccAuthDir(homeDir?: string): string;
31
+ export declare function resolveRccAuthDirForRead(homeDir?: string): string;
32
+ export declare function resolveRccTokensDir(homeDir?: string): string;
33
+ export declare function resolveRccTokensDirForRead(homeDir?: string): string;
34
+ export declare function resolveRccQuotaDir(homeDir?: string): string;
35
+ export declare function resolveRccQuotaDirForRead(homeDir?: string): string;
36
+ export declare function resolveRccStateDir(homeDir?: string): string;
37
+ export declare function resolveRccStateDirForRead(homeDir?: string): string;
38
+ export declare function resolveRccLogsDir(homeDir?: string): string;
39
+ export declare function resolveRccLogsDirForRead(homeDir?: string): string;
40
+ export declare function resolveRccSessionsDir(homeDir?: string): string;
41
+ export declare function resolveRccSessionsDirForRead(homeDir?: string): string;
42
+ export declare function resolveRccSnapshotsDir(homeDir?: string): string;
43
+ export declare function resolveRccSnapshotsDirForRead(homeDir?: string): string;
44
+ export declare function resolveRccProviderDir(homeDir?: string): string;
45
+ export declare function resolveRccProviderDirForRead(homeDir?: string): string;
46
+ export declare function resolveRccConfigDir(homeDir?: string): string;
47
+ export declare function resolveRccConfigDirForRead(homeDir?: string): string;
48
+ export declare function resolveRccGuardianDir(homeDir?: string): string;
49
+ export declare function resolveRccLoginDir(homeDir?: string): string;
50
+ export declare function resolveRccStaticsDir(homeDir?: string): string;
51
+ export declare function resolveRccErrorsamplesDir(homeDir?: string): string;
52
+ export declare function resolveRccLlmsShadowDir(homeDir?: string): string;
53
+ export declare function resolveRccCamoufoxFingerprintDir(homeDir?: string): string;
54
+ export declare function resolveRccCamoufoxProfilesDir(homeDir?: string): string;
55
+ export declare function resolveRccDocsDir(homeDir?: string): string;
56
+ export declare function resolveRccPrecommandDir(homeDir?: string): string;
57
+ export declare function resolveRccConfigFile(homeDir?: string): string;
58
+ export declare function resolveRccConfigFileForRead(homeDir?: string): string;
59
+ export declare function ensureRccUserDirEnvironment(homeDir?: string): string;
@@ -0,0 +1,174 @@
1
+ import path from 'node:path';
2
+ import { homedir } from 'node:os';
3
+ const PRIMARY_DIR_NAME = '.rcc';
4
+ const LEGACY_DIR_NAME = '.routecodex';
5
+ const USER_DIR_ENV_KEYS = ['RCC_HOME', 'ROUTECODEX_USER_DIR', 'ROUTECODEX_HOME'];
6
+ export const RCC_SUBDIRS = {
7
+ auth: 'auth',
8
+ tokens: 'tokens',
9
+ quota: 'quota',
10
+ state: 'state',
11
+ logs: 'logs',
12
+ sessions: 'sessions',
13
+ snapshots: 'codex-samples',
14
+ provider: 'provider',
15
+ config: 'config',
16
+ guardian: 'guardian',
17
+ login: 'login',
18
+ statics: 'statics',
19
+ errorsamples: 'errorsamples',
20
+ llmsShadow: 'llms-shadow',
21
+ camoufoxFingerprint: 'camoufox-fp',
22
+ camoufoxProfiles: 'camoufox-profiles',
23
+ docs: 'docs',
24
+ precommand: 'precommand'
25
+ };
26
+ function resolveHomeDir(homeDir) {
27
+ const explicit = String(homeDir || '').trim();
28
+ if (explicit) {
29
+ return path.resolve(explicit);
30
+ }
31
+ const envHome = String(process.env.HOME || '').trim();
32
+ if (envHome) {
33
+ return path.resolve(envHome);
34
+ }
35
+ const resolved = homedir();
36
+ return path.resolve(resolved);
37
+ }
38
+ function expandHome(value, homeDir) {
39
+ if (!value.startsWith('~/')) {
40
+ return value;
41
+ }
42
+ return path.join(resolveHomeDir(homeDir), value.slice(2));
43
+ }
44
+ export function resolveRccUserDir(homeDir) {
45
+ for (const key of USER_DIR_ENV_KEYS) {
46
+ const raw = String(process.env[key] || '').trim();
47
+ if (raw) {
48
+ return path.resolve(expandHome(raw, homeDir));
49
+ }
50
+ }
51
+ return path.join(resolveHomeDir(homeDir), PRIMARY_DIR_NAME);
52
+ }
53
+ export function resolveLegacyRouteCodexUserDir(homeDir) {
54
+ return path.join(resolveHomeDir(homeDir), LEGACY_DIR_NAME);
55
+ }
56
+ export function resolveRccUserDirForRead(homeDir) {
57
+ return resolveRccUserDir(homeDir);
58
+ }
59
+ export function resolveRccPath(...segments) {
60
+ return path.join(resolveRccUserDir(), ...segments);
61
+ }
62
+ export function resolveLegacyRouteCodexPath(...segments) {
63
+ return path.join(resolveLegacyRouteCodexUserDir(), ...segments);
64
+ }
65
+ export function resolveRccPathForRead(...segments) {
66
+ return resolveRccPath(...segments);
67
+ }
68
+ export function resolveRccSubdir(key, homeDir) {
69
+ return path.join(resolveRccUserDir(homeDir), RCC_SUBDIRS[key]);
70
+ }
71
+ export function resolveRccSubdirForRead(key, homeDir) {
72
+ return resolveRccSubdir(key, homeDir);
73
+ }
74
+ export function resolveRccAuthDir(homeDir) {
75
+ return resolveRccSubdir('auth', homeDir);
76
+ }
77
+ export function resolveRccAuthDirForRead(homeDir) {
78
+ return resolveRccSubdirForRead('auth', homeDir);
79
+ }
80
+ export function resolveRccTokensDir(homeDir) {
81
+ return resolveRccSubdir('tokens', homeDir);
82
+ }
83
+ export function resolveRccTokensDirForRead(homeDir) {
84
+ return resolveRccSubdirForRead('tokens', homeDir);
85
+ }
86
+ export function resolveRccQuotaDir(homeDir) {
87
+ return resolveRccSubdir('quota', homeDir);
88
+ }
89
+ export function resolveRccQuotaDirForRead(homeDir) {
90
+ return resolveRccSubdirForRead('quota', homeDir);
91
+ }
92
+ export function resolveRccStateDir(homeDir) {
93
+ return resolveRccSubdir('state', homeDir);
94
+ }
95
+ export function resolveRccStateDirForRead(homeDir) {
96
+ return resolveRccSubdirForRead('state', homeDir);
97
+ }
98
+ export function resolveRccLogsDir(homeDir) {
99
+ return resolveRccSubdir('logs', homeDir);
100
+ }
101
+ export function resolveRccLogsDirForRead(homeDir) {
102
+ return resolveRccSubdirForRead('logs', homeDir);
103
+ }
104
+ export function resolveRccSessionsDir(homeDir) {
105
+ return resolveRccSubdir('sessions', homeDir);
106
+ }
107
+ export function resolveRccSessionsDirForRead(homeDir) {
108
+ return resolveRccSubdirForRead('sessions', homeDir);
109
+ }
110
+ export function resolveRccSnapshotsDir(homeDir) {
111
+ return resolveRccSubdir('snapshots', homeDir);
112
+ }
113
+ export function resolveRccSnapshotsDirForRead(homeDir) {
114
+ return resolveRccSubdirForRead('snapshots', homeDir);
115
+ }
116
+ export function resolveRccProviderDir(homeDir) {
117
+ return resolveRccSubdir('provider', homeDir);
118
+ }
119
+ export function resolveRccProviderDirForRead(homeDir) {
120
+ return resolveRccSubdirForRead('provider', homeDir);
121
+ }
122
+ export function resolveRccConfigDir(homeDir) {
123
+ return resolveRccSubdir('config', homeDir);
124
+ }
125
+ export function resolveRccConfigDirForRead(homeDir) {
126
+ return resolveRccSubdirForRead('config', homeDir);
127
+ }
128
+ export function resolveRccGuardianDir(homeDir) {
129
+ return resolveRccSubdir('guardian', homeDir);
130
+ }
131
+ export function resolveRccLoginDir(homeDir) {
132
+ return resolveRccSubdir('login', homeDir);
133
+ }
134
+ export function resolveRccStaticsDir(homeDir) {
135
+ return resolveRccSubdir('statics', homeDir);
136
+ }
137
+ export function resolveRccErrorsamplesDir(homeDir) {
138
+ return resolveRccSubdir('errorsamples', homeDir);
139
+ }
140
+ export function resolveRccLlmsShadowDir(homeDir) {
141
+ return resolveRccSubdir('llmsShadow', homeDir);
142
+ }
143
+ export function resolveRccCamoufoxFingerprintDir(homeDir) {
144
+ return resolveRccSubdir('camoufoxFingerprint', homeDir);
145
+ }
146
+ export function resolveRccCamoufoxProfilesDir(homeDir) {
147
+ return resolveRccSubdir('camoufoxProfiles', homeDir);
148
+ }
149
+ export function resolveRccDocsDir(homeDir) {
150
+ return resolveRccSubdir('docs', homeDir);
151
+ }
152
+ export function resolveRccPrecommandDir(homeDir) {
153
+ return resolveRccSubdir('precommand', homeDir);
154
+ }
155
+ export function resolveRccConfigFile(homeDir) {
156
+ return path.join(resolveRccUserDir(homeDir), 'config.json');
157
+ }
158
+ export function resolveRccConfigFileForRead(homeDir) {
159
+ return resolveRccConfigFile(homeDir);
160
+ }
161
+ export function ensureRccUserDirEnvironment(homeDir) {
162
+ const userDir = resolveRccUserDir(homeDir);
163
+ if (!String(process.env.RCC_HOME || '').trim()) {
164
+ process.env.RCC_HOME = userDir;
165
+ }
166
+ if (!String(process.env.ROUTECODEX_USER_DIR || '').trim()) {
167
+ process.env.ROUTECODEX_USER_DIR = userDir;
168
+ }
169
+ if (!String(process.env.ROUTECODEX_HOME || '').trim()) {
170
+ process.env.ROUTECODEX_HOME = userDir;
171
+ }
172
+ return userDir;
173
+ }
174
+ //# sourceMappingURL=user-data-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-data-paths.js","sourceRoot":"","sources":["../../src/config/user-data-paths.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { UnknownRecord, VirtualRouterInput } from './virtual-router-types.js';
2
2
  /**
3
3
  * Build a VirtualRouterInput in "v2" mode by combining:
4
- * - Provider v2 configs loaded from ~/.routecodex/provider (or a custom root)
4
+ * - Provider v2 configs loaded from ~/.rcc/provider (or a custom root)
5
5
  * - Routing configuration from the user config (virtualrouter.routing 或旧式 routing 字段)
6
6
  *
7
7
  * 当前函数仅用于迁移与测试,尚未接入 HTTP server 运行路径。
@@ -26,7 +26,7 @@ function extractRoutingFromUserConfig(userConfig) {
26
26
  }
27
27
  /**
28
28
  * Build a VirtualRouterInput in "v2" mode by combining:
29
- * - Provider v2 configs loaded from ~/.routecodex/provider (or a custom root)
29
+ * - Provider v2 configs loaded from ~/.rcc/provider (or a custom root)
30
30
  * - Routing configuration from the user config (virtualrouter.routing 或旧式 routing 字段)
31
31
  *
32
32
  * 当前函数仅用于迁移与测试,尚未接入 HTTP server 运行路径。