autohand-cli 0.7.9 → 0.7.10

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 (254) hide show
  1. package/README.md +19 -0
  2. package/dist/{AutomodeManager-YVCJXOMQ.js → AutomodeManager-NGRAO2MH.js} +35 -8
  3. package/dist/{AutomodeManager-HV6M7EAX.cjs → AutomodeManager-ZKQMBM4T.cjs} +35 -8
  4. package/dist/{CommunitySkillsCache-YWDFZBKP.js → CommunitySkillsCache-ILWHWE5P.js} +2 -2
  5. package/dist/CommunitySkillsCache-KHC6RUJW.cjs +7 -0
  6. package/dist/MemoryManager-6ZT7IDO5.cjs +7 -0
  7. package/dist/MemoryManager-AJGS5AKB.js +7 -0
  8. package/dist/PermissionManager-HG6W2DGU.cjs +10 -0
  9. package/dist/{PermissionManager-WYP5JPCQ.js → PermissionManager-U5OMGR3L.js} +3 -3
  10. package/dist/SessionManager-BJ2G6VV4.cjs +9 -0
  11. package/dist/{SessionManager-SFBDIBGA.js → SessionManager-ENPGYK5J.js} +2 -2
  12. package/dist/SkillsRegistry-6ZFOCT25.cjs +8 -0
  13. package/dist/{SkillsRegistry-E437FFJV.js → SkillsRegistry-C2SHOZ5D.js} +2 -2
  14. package/dist/about-RGUM5QQ4.cjs +11 -0
  15. package/dist/about-VDR3SIHS.js +11 -0
  16. package/dist/add-dir-3BMVJ5H3.cjs +9 -0
  17. package/dist/{add-dir-PNU7AGKO.js → add-dir-RP2BL3JW.js} +2 -1
  18. package/dist/agents-JQ2PHCQB.js +10 -0
  19. package/dist/agents-RGSZ2BM3.cjs +10 -0
  20. package/dist/agents-new-LSJN2L2T.cjs +13 -0
  21. package/dist/agents-new-MZUEVKSK.js +13 -0
  22. package/dist/automode-DP3BMYJB.cjs +9 -0
  23. package/dist/{automode-QCRJSBRT.js → automode-XOF3U3OB.js} +2 -1
  24. package/dist/{chunk-A5KU3JZW.cjs → chunk-34OGUMRO.cjs} +9 -5
  25. package/dist/{chunk-NTFNUTY2.js → chunk-3652ROFD.js} +2 -2
  26. package/dist/{chunk-KNLBEUAV.cjs → chunk-3DQSBW4B.cjs} +10 -6
  27. package/dist/{chunk-32R47CAQ.cjs → chunk-3S4DEIJP.cjs} +2 -2
  28. package/dist/{chunk-DRXFJR7F.cjs → chunk-3UNX56GC.cjs} +17 -16
  29. package/dist/chunk-46WX5IO2.cjs +499 -0
  30. package/dist/{chunk-IYZBLUEJ.js → chunk-4ULBAYME.js} +8 -6
  31. package/dist/{chunk-JRV4SOJU.cjs → chunk-5BQ57AZC.cjs} +9 -9
  32. package/dist/{chunk-7WKEDH3E.cjs → chunk-5FZM7KLB.cjs} +13 -10
  33. package/dist/{chunk-FN5S5OE7.cjs → chunk-5NZA4UB4.cjs} +3 -3
  34. package/dist/{chunk-PFS5ZOCO.js → chunk-5Q3W4DEU.js} +18 -10
  35. package/dist/{chunk-VMMGT42E.cjs → chunk-65GTO4QM.cjs} +7 -3
  36. package/dist/{chunk-CXZEPTRI.js → chunk-6P3K4YUW.js} +6 -2
  37. package/dist/chunk-73XIKTZL.js +124 -0
  38. package/dist/{chunk-P6EGMTK4.js → chunk-7QNW24ZT.js} +8 -4
  39. package/dist/{chunk-XT4OSHSB.cjs → chunk-AEYOIPHD.cjs} +6 -2
  40. package/dist/{chunk-KXNAGJE6.cjs → chunk-ANUQFV43.cjs} +6 -6
  41. package/dist/chunk-ATR3RORT.js +499 -0
  42. package/dist/{chunk-XOSFZHSS.js → chunk-B72CC4O6.js} +2 -2
  43. package/dist/{chunk-TAZJSKFD.js → chunk-BBIKQW66.js} +9 -5
  44. package/dist/{chunk-FFA4LDAO.cjs → chunk-BDIZGBDA.cjs} +8 -3
  45. package/dist/{chunk-YDJA5ETO.js → chunk-BG4OQUKP.js} +1 -1
  46. package/dist/{chunk-3DVEGFBZ.js → chunk-BODVOW7B.js} +64 -13
  47. package/dist/{chunk-HUA44A35.cjs → chunk-BZ73ZQTE.cjs} +17 -11
  48. package/dist/{chunk-6DSJ7XST.cjs → chunk-C22G4UE4.cjs} +13 -10
  49. package/dist/{chunk-T7HQBZZB.cjs → chunk-C2E3GJEE.cjs} +12 -9
  50. package/dist/{chunk-UP6YRP44.js → chunk-C5SVIQG3.js} +10 -5
  51. package/dist/{chunk-7GJR65DQ.js → chunk-CUBYCLNL.js} +2 -1
  52. package/dist/{chunk-4YQ2OJAL.js → chunk-D2XFTCRP.js} +1 -1
  53. package/dist/{chunk-R5PZPF55.js → chunk-DEAEO7RI.js} +1 -1
  54. package/dist/chunk-DMPVI3YK.cjs +400 -0
  55. package/dist/{chunk-C26EN22G.cjs → chunk-DUDDZRCS.cjs} +9 -5
  56. package/dist/{chunk-WT367RVU.js → chunk-E7YL3AHT.js} +15 -9
  57. package/dist/{chunk-5UC3VAJ2.cjs → chunk-EAOEAQGF.cjs} +2 -1
  58. package/dist/{chunk-CHVXUA3O.cjs → chunk-EV53SLSB.cjs} +4 -4
  59. package/dist/{chunk-PVSYZXS7.js → chunk-F3EIOVSQ.js} +11 -10
  60. package/dist/{chunk-VQDWNDP5.js → chunk-GD4AFYJ3.js} +1 -1
  61. package/dist/{chunk-AQNY2M6Q.cjs → chunk-GIZL57FE.cjs} +3 -1
  62. package/dist/{chunk-I4HVBWYF.js → chunk-GLAE5K5W.js} +7 -2
  63. package/dist/{chunk-4AMTDSQ3.cjs → chunk-HDSEJMWI.cjs} +6 -3
  64. package/dist/chunk-HLFZPN65.js +94 -0
  65. package/dist/{chunk-ZWS3KSMK.js → chunk-HQQ4NKER.js} +5 -2
  66. package/dist/{chunk-WBDPILKI.cjs → chunk-HVOBMOZ2.cjs} +6 -2
  67. package/dist/{chunk-RDGYHJ52.js → chunk-IPI3JXKP.js} +9 -6
  68. package/dist/{chunk-OO7EKEJH.cjs → chunk-IXFOH4OC.cjs} +17 -14
  69. package/dist/chunk-JS7IPR7P.js +249 -0
  70. package/dist/{chunk-CPO5KEQS.cjs → chunk-KC5FPUOF.cjs} +2 -2
  71. package/dist/{chunk-TUO5SZRD.cjs → chunk-L42HTMMR.cjs} +2 -2
  72. package/dist/chunk-LGGZQTLM.cjs +209 -0
  73. package/dist/chunk-LOXOD4IS.cjs +8630 -0
  74. package/dist/{chunk-LJCSSR5V.cjs → chunk-MNCWB5F7.cjs} +5 -5
  75. package/dist/{chunk-BTVNRLSE.js → chunk-MYNHJHDZ.js} +1 -1
  76. package/dist/{chunk-O3EX3SAD.cjs → chunk-N4ZSG6JJ.cjs} +2 -2
  77. package/dist/chunk-NF7RIHJK.js +45 -0
  78. package/dist/{chunk-KJAZ4YAR.cjs → chunk-NGBN2NGH.cjs} +76 -25
  79. package/dist/{chunk-MRDZHNCF.cjs → chunk-NRORJRD4.cjs} +4 -4
  80. package/dist/{chunk-OTS4YFSZ.cjs → chunk-OKABWSWA.cjs} +7 -3
  81. package/dist/{chunk-4BZ65NIH.js → chunk-OLG7LZBD.js} +1 -1
  82. package/dist/{chunk-KZ7VMQTC.js → chunk-OMEH2EVE.js} +5 -1
  83. package/dist/{chunk-LCBOOA7S.js → chunk-P5VDZ6PV.js} +1 -1
  84. package/dist/{chunk-V5MTBGM4.cjs → chunk-PA2H2263.cjs} +6 -2
  85. package/dist/chunk-PGRH5Q77.cjs +249 -0
  86. package/dist/{chunk-CMNQAF6C.js → chunk-PM62ZYXA.js} +12 -9
  87. package/dist/chunk-PNSRJT46.js +380 -0
  88. package/dist/{chunk-UL5T2XIY.cjs → chunk-PSED4Z4X.cjs} +13 -11
  89. package/dist/{chunk-PGH3MHPP.js → chunk-PWLLLJHU.js} +3 -1
  90. package/dist/{chunk-DOTAX65F.js → chunk-PYLR4J2D.js} +8 -4
  91. package/dist/{chunk-3SDEZTZD.js → chunk-QC6IUDDJ.js} +1 -1
  92. package/dist/{chunk-WJICM4SK.cjs → chunk-QM7HZCQW.cjs} +11 -6
  93. package/dist/chunk-QRQ5EX7I.cjs +380 -0
  94. package/dist/{chunk-RX4KPL6H.js → chunk-QU64XI5X.js} +9 -6
  95. package/dist/{chunk-FSTLJIR5.cjs → chunk-R7SDL3DJ.cjs} +16 -13
  96. package/dist/{chunk-LY5VN3B3.cjs → chunk-RJP3SZ7Q.cjs} +41 -253
  97. package/dist/{chunk-KS45GREN.js → chunk-RJXNNIFW.js} +7 -4
  98. package/dist/{chunk-LYMZDJX5.cjs → chunk-S5G7OEN2.cjs} +26 -18
  99. package/dist/{chunk-3DGR4GNN.cjs → chunk-SA4JOV4F.cjs} +10 -8
  100. package/dist/chunk-SAG6IY5Z.cjs +94 -0
  101. package/dist/{chunk-WCN5WDOI.cjs → chunk-TSY7JHIV.cjs} +2 -2
  102. package/dist/chunk-U23U52ZN.cjs +124 -0
  103. package/dist/chunk-UET7BDX2.js +8630 -0
  104. package/dist/{chunk-J7VV7JAB.js → chunk-UM4QEO36.js} +6 -4
  105. package/dist/{chunk-NCLCL7JK.js → chunk-WD5ZF6HE.js} +1 -1
  106. package/dist/{chunk-HF65HHDU.cjs → chunk-WH5RW7DV.cjs} +24 -22
  107. package/dist/{chunk-GSOEIEOU.js → chunk-WJ276BIP.js} +5 -1
  108. package/dist/{chunk-OXJCLU3X.js → chunk-WLTVF77A.js} +1 -1
  109. package/dist/{chunk-WGO4ACS7.cjs → chunk-WOGJXDBU.cjs} +3 -3
  110. package/dist/{chunk-QJ53OSGF.js → chunk-WRJLBHWB.js} +6 -2
  111. package/dist/{chunk-LKIKNRUP.js → chunk-WYLFLZ42.js} +8 -5
  112. package/dist/{chunk-HWDP4HQO.cjs → chunk-XL77XYI2.cjs} +4 -4
  113. package/dist/{chunk-QAJM6VG5.js → chunk-XLI7SHCH.js} +2 -2
  114. package/dist/chunk-Y27LG4BQ.cjs +45 -0
  115. package/dist/chunk-Y6OWFIUF.js +209 -0
  116. package/dist/chunk-YKSSNFDZ.js +400 -0
  117. package/dist/{chunk-VRI7EXV6.js → chunk-YMDLUTF2.js} +5 -1
  118. package/dist/{chunk-J2RUI7GJ.js → chunk-YVY27BJT.js} +5 -3
  119. package/dist/{chunk-K6CZ2AGI.js → chunk-ZBIBLOZL.js} +35 -247
  120. package/dist/completion-HVSWU5GR.cjs +13 -0
  121. package/dist/completion-WJ2MVNDH.js +13 -0
  122. package/dist/constants-RBQTR32A.cjs +20 -0
  123. package/dist/{constants-OFIAR4E5.js → constants-V6J54N3X.js} +1 -1
  124. package/dist/export-NN7F5ANA.js +11 -0
  125. package/dist/export-UPS3AK2P.cjs +11 -0
  126. package/dist/feedback-ARI7CLVQ.js +14 -0
  127. package/dist/feedback-OZTPYHKJ.cjs +14 -0
  128. package/dist/help-4674IV4D.cjs +58 -0
  129. package/dist/help-ENG5KV2M.js +58 -0
  130. package/dist/history-2KUM6GN4.cjs +13 -0
  131. package/dist/history-RZFT34Q7.js +13 -0
  132. package/dist/hooks-7QSUBHBM.cjs +12 -0
  133. package/dist/hooks-S4MD4QSR.js +12 -0
  134. package/dist/i18n-6NKENUIV.js +32 -0
  135. package/dist/i18n-MXQXQOVE.cjs +32 -0
  136. package/dist/ide-5STDV43A.cjs +11 -0
  137. package/dist/ide-W2NYXOWQ.js +11 -0
  138. package/dist/index.cjs +15320 -12906
  139. package/dist/index.js +15465 -13051
  140. package/dist/init-FG5KEJCZ.cjs +9 -0
  141. package/dist/init-TV4MJDYK.js +9 -0
  142. package/dist/language-52Q7CSAY.cjs +16 -0
  143. package/dist/language-FXFDGOBF.js +16 -0
  144. package/dist/localProjectPermissions-2EATUDZM.cjs +17 -0
  145. package/dist/{localProjectPermissions-FD5AK5FB.js → localProjectPermissions-WQYMGI42.js} +2 -2
  146. package/dist/login-AN42IOBK.js +18 -0
  147. package/dist/login-I65V4TGU.cjs +18 -0
  148. package/dist/logout-KK5UWGNG.js +16 -0
  149. package/dist/logout-VYYNWBHZ.cjs +16 -0
  150. package/dist/mcp-4SKTDECJ.js +15 -0
  151. package/dist/mcp-AGWPTMAX.cjs +15 -0
  152. package/dist/mcp-install-3NN2HAYR.cjs +473 -0
  153. package/dist/mcp-install-KTV52DQK.js +473 -0
  154. package/dist/memory-LG4K6XV6.cjs +9 -0
  155. package/dist/{memory-4GSP7NKV.js → memory-LRDK2SYC.js} +2 -1
  156. package/dist/model-P5D7ATE7.cjs +9 -0
  157. package/dist/{model-HKEFSH5E.js → model-WBFJIGUN.js} +2 -1
  158. package/dist/{new-EEZC4XXV.js → new-5A7RQEKI.js} +2 -1
  159. package/dist/new-EAATWI2G.cjs +9 -0
  160. package/dist/permissions-5URK6C44.js +12 -0
  161. package/dist/permissions-CJUDVG63.cjs +12 -0
  162. package/dist/quit-A33JHDG7.cjs +9 -0
  163. package/dist/quit-IYBLN3DB.js +9 -0
  164. package/dist/resume-OPSJTCH7.cjs +12 -0
  165. package/dist/resume-TOWEEN5D.js +12 -0
  166. package/dist/search-GOLIE5BA.js +14 -0
  167. package/dist/search-H42HGUK5.cjs +14 -0
  168. package/dist/{sessions-4KXIT76T.js → sessions-B5NENDKY.js} +2 -1
  169. package/dist/sessions-YHAVEMWY.cjs +9 -0
  170. package/dist/share-2JD2AKKX.cjs +13 -0
  171. package/dist/share-MYGDOTQE.js +13 -0
  172. package/dist/{skills-PB4HXV4R.js → skills-ICEQ2TNC.js} +2 -1
  173. package/dist/skills-LFVNZOMF.cjs +13 -0
  174. package/dist/{skills-install-UBBNXWD5.js → skills-install-6RN7FVCP.js} +9 -8
  175. package/dist/{skills-install-7SFS24HY.cjs → skills-install-LU6GA2WF.cjs} +14 -13
  176. package/dist/skills-new-5BM5PDFX.cjs +14 -0
  177. package/dist/skills-new-KWBWOX74.js +14 -0
  178. package/dist/status-M3XHJELG.cjs +10 -0
  179. package/dist/status-ZQDUYMKQ.js +10 -0
  180. package/dist/sync-6M3WRKMH.cjs +39 -0
  181. package/dist/sync-73D2MP65.cjs +16 -0
  182. package/dist/{sync-LYKDHRFM.js → sync-EXYX7HXW.js} +2 -2
  183. package/dist/sync-LL6M67CN.js +16 -0
  184. package/dist/theme-IFEI2IBJ.cjs +16 -0
  185. package/dist/theme-U3SKEULY.js +16 -0
  186. package/dist/ui/questionModal.cjs +28 -0
  187. package/dist/ui/questionModal.d.cts +11 -0
  188. package/dist/ui/questionModal.d.ts +11 -0
  189. package/dist/ui/questionModal.js +28 -0
  190. package/dist/undo-4DS67OAW.cjs +9 -0
  191. package/dist/undo-YMALVAPN.js +9 -0
  192. package/package.json +2 -1
  193. package/dist/CommunitySkillsCache-N2RWBCY2.cjs +0 -7
  194. package/dist/MemoryManager-J7APSLZ7.js +0 -7
  195. package/dist/MemoryManager-RLLYVIDY.cjs +0 -7
  196. package/dist/PermissionManager-ISI5OAJK.cjs +0 -10
  197. package/dist/SessionManager-7MF76Q3Q.cjs +0 -9
  198. package/dist/SkillsRegistry-UTK2YT4M.cjs +0 -8
  199. package/dist/add-dir-OMK3Y4DM.cjs +0 -8
  200. package/dist/agents-N2ZB4O2A.cjs +0 -9
  201. package/dist/agents-ZMT7HBRT.js +0 -9
  202. package/dist/agents-new-3EWS2NR3.cjs +0 -11
  203. package/dist/agents-new-TCGUYK5I.js +0 -11
  204. package/dist/automode-BRHUHGXU.cjs +0 -8
  205. package/dist/chunk-6SM6N7DJ.js +0 -2828
  206. package/dist/chunk-BEIG7V7Q.cjs +0 -51
  207. package/dist/chunk-L5QWMGLV.cjs +0 -2828
  208. package/dist/chunk-Z3Q2AFDS.js +0 -51
  209. package/dist/completion-NCSTSKTL.cjs +0 -11
  210. package/dist/completion-NTZERPAZ.js +0 -11
  211. package/dist/constants-B2X7KDIH.cjs +0 -20
  212. package/dist/export-5AJNVX4O.cjs +0 -9
  213. package/dist/export-ZQHTLV4W.js +0 -9
  214. package/dist/feedback-F7BMGSV6.cjs +0 -12
  215. package/dist/feedback-NL7CWTRY.js +0 -12
  216. package/dist/help-PKC6QCNG.js +0 -10
  217. package/dist/help-UEELQRHP.cjs +0 -10
  218. package/dist/hooks-AX5VPCZ3.cjs +0 -10
  219. package/dist/hooks-V22HVLQT.js +0 -10
  220. package/dist/init-DML7AOII.js +0 -8
  221. package/dist/init-SLLSDDJN.cjs +0 -8
  222. package/dist/language-IEKARNQH.js +0 -13
  223. package/dist/language-ULQCKXAD.cjs +0 -13
  224. package/dist/localProjectPermissions-7FI3XF4K.cjs +0 -17
  225. package/dist/login-PD3DFJLM.js +0 -15
  226. package/dist/login-VHGT4YKT.cjs +0 -15
  227. package/dist/logout-2QXNFGDT.js +0 -13
  228. package/dist/logout-A4SMKEFO.cjs +0 -13
  229. package/dist/memory-CFNC7RJH.cjs +0 -8
  230. package/dist/model-TKVEJ5BC.cjs +0 -8
  231. package/dist/new-EB2MBQXA.cjs +0 -8
  232. package/dist/permissions-S7433NQJ.js +0 -10
  233. package/dist/permissions-YZ6WCDBL.cjs +0 -10
  234. package/dist/quit-2RYFGIJP.cjs +0 -8
  235. package/dist/quit-RSYIERO5.js +0 -8
  236. package/dist/resume-54ERVSFM.cjs +0 -10
  237. package/dist/resume-YJ5CVKAP.js +0 -10
  238. package/dist/search-4TEQMUPU.js +0 -11
  239. package/dist/search-QGLS4SV7.cjs +0 -11
  240. package/dist/sessions-7RTCPVNE.cjs +0 -8
  241. package/dist/share-2B2T3AUU.cjs +0 -11
  242. package/dist/share-SZMXZIA3.js +0 -11
  243. package/dist/skills-HVQNCTGK.cjs +0 -12
  244. package/dist/skills-new-5FSDAJWE.js +0 -12
  245. package/dist/skills-new-IOTZYE6F.cjs +0 -12
  246. package/dist/status-AGPSKXSW.js +0 -9
  247. package/dist/status-WOINF556.cjs +0 -9
  248. package/dist/sync-64MZDWGG.js +0 -14
  249. package/dist/sync-F5ECJW25.cjs +0 -39
  250. package/dist/sync-W5UR7BEP.cjs +0 -14
  251. package/dist/theme-CWG3ZLHB.cjs +0 -13
  252. package/dist/theme-HQKV7YAP.js +0 -13
  253. package/dist/undo-2WR2ZIEC.cjs +0 -8
  254. package/dist/undo-7QJBXARS.js +0 -8
@@ -1,242 +1,11 @@
1
+ import {
2
+ Theme,
3
+ detectColorMode,
4
+ setTheme
5
+ } from "./chunk-JS7IPR7P.js";
1
6
  import {
2
7
  AUTOHAND_FILES
3
- } from "./chunk-PGH3MHPP.js";
4
-
5
- // src/ui/theme/Theme.ts
6
- var Theme = class {
7
- constructor(name, colors, colorMode) {
8
- this.ansiCache = /* @__PURE__ */ new Map();
9
- this.name = name;
10
- this.colors = colors;
11
- this.colorMode = colorMode ?? detectColorMode();
12
- }
13
- /**
14
- * Apply foreground color to text.
15
- */
16
- fg(token, text) {
17
- if (this.colorMode === "none") return text;
18
- const color = this.colors[token];
19
- if (!color) return text;
20
- const ansi = this.getAnsiCode(color, "fg");
21
- return `${ansi}${text}\x1B[39m`;
22
- }
23
- /**
24
- * Apply background color to text.
25
- */
26
- bg(token, text) {
27
- if (this.colorMode === "none") return text;
28
- const color = this.colors[token];
29
- if (!color) return text;
30
- const ansi = this.getAnsiCode(color, "bg");
31
- return `${ansi}${text}\x1B[49m`;
32
- }
33
- /**
34
- * Apply both foreground and background colors.
35
- */
36
- fgBg(fgToken, bgToken, text) {
37
- if (this.colorMode === "none") return text;
38
- const fgColor = this.colors[fgToken];
39
- const bgColor = this.colors[bgToken];
40
- const fgAnsi = fgColor ? this.getAnsiCode(fgColor, "fg") : "";
41
- const bgAnsi = bgColor ? this.getAnsiCode(bgColor, "bg") : "";
42
- return `${fgAnsi}${bgAnsi}${text}\x1B[0m`;
43
- }
44
- /**
45
- * Apply bold style.
46
- */
47
- bold(text) {
48
- return `\x1B[1m${text}\x1B[22m`;
49
- }
50
- /**
51
- * Apply italic style.
52
- */
53
- italic(text) {
54
- return `\x1B[3m${text}\x1B[23m`;
55
- }
56
- /**
57
- * Apply underline style.
58
- */
59
- underline(text) {
60
- return `\x1B[4m${text}\x1B[24m`;
61
- }
62
- /**
63
- * Apply dim style.
64
- */
65
- dimStyle(text) {
66
- return `\x1B[2m${text}\x1B[22m`;
67
- }
68
- /**
69
- * Apply strikethrough style.
70
- */
71
- strikethrough(text) {
72
- return `\x1B[9m${text}\x1B[29m`;
73
- }
74
- /**
75
- * Reset all styles.
76
- */
77
- reset(text) {
78
- return `\x1B[0m${text}\x1B[0m`;
79
- }
80
- /**
81
- * Get raw color value for a token.
82
- */
83
- getColor(token) {
84
- return this.colors[token] || "";
85
- }
86
- /**
87
- * Get current color mode.
88
- */
89
- getColorMode() {
90
- return this.colorMode;
91
- }
92
- /**
93
- * Convert color value to ANSI escape code.
94
- */
95
- getAnsiCode(color, type) {
96
- const cacheKey = `${color}:${type}`;
97
- const cached = this.ansiCache.get(cacheKey);
98
- if (cached) return cached;
99
- const code = this.colorToAnsi(color, type);
100
- this.ansiCache.set(cacheKey, code);
101
- return code;
102
- }
103
- /**
104
- * Convert a color value to ANSI code based on color mode.
105
- */
106
- colorToAnsi(color, type) {
107
- if (!color) return "";
108
- if (color.startsWith("#")) {
109
- return this.hexToAnsi(color, type);
110
- }
111
- const numValue = parseInt(color, 10);
112
- if (!isNaN(numValue) && numValue >= 0 && numValue <= 255) {
113
- return this.index256ToAnsi(numValue, type);
114
- }
115
- return "";
116
- }
117
- /**
118
- * Convert hex color to ANSI code.
119
- */
120
- hexToAnsi(hex, type) {
121
- const rgb = hexToRgb(hex);
122
- if (!rgb) return "";
123
- const base = type === "fg" ? 38 : 48;
124
- if (this.colorMode === "truecolor") {
125
- return `\x1B[${base};2;${rgb.r};${rgb.g};${rgb.b}m`;
126
- } else if (this.colorMode === "256") {
127
- const index = rgbTo256(rgb.r, rgb.g, rgb.b);
128
- return `\x1B[${base};5;${index}m`;
129
- } else if (this.colorMode === "16") {
130
- const index = rgbTo16(rgb.r, rgb.g, rgb.b);
131
- const code = type === "fg" ? index < 8 ? 30 + index : 90 + index - 8 : index < 8 ? 40 + index : 100 + index - 8;
132
- return `\x1B[${code}m`;
133
- }
134
- return "";
135
- }
136
- /**
137
- * Convert 256-color index to ANSI code.
138
- */
139
- index256ToAnsi(index, type) {
140
- const base = type === "fg" ? 38 : 48;
141
- if (this.colorMode === "truecolor" || this.colorMode === "256") {
142
- return `\x1B[${base};5;${index}m`;
143
- } else if (this.colorMode === "16") {
144
- const basicIndex = index < 16 ? index : index256To16(index);
145
- const code = type === "fg" ? basicIndex < 8 ? 30 + basicIndex : 90 + basicIndex - 8 : basicIndex < 8 ? 40 + basicIndex : 100 + basicIndex - 8;
146
- return `\x1B[${code}m`;
147
- }
148
- return "";
149
- }
150
- };
151
- function detectColorMode() {
152
- if (process.env.NO_COLOR !== void 0) {
153
- return "none";
154
- }
155
- if (process.env.FORCE_COLOR !== void 0) {
156
- const level = parseInt(process.env.FORCE_COLOR, 10);
157
- if (level === 0) return "none";
158
- if (level === 1) return "16";
159
- if (level === 2) return "256";
160
- if (level >= 3) return "truecolor";
161
- }
162
- const colorterm = process.env.COLORTERM;
163
- if (colorterm === "truecolor" || colorterm === "24bit") {
164
- return "truecolor";
165
- }
166
- const term = process.env.TERM || "";
167
- if (term.includes("256color") || term.includes("256-color")) {
168
- return "256";
169
- }
170
- if (term.includes("color") || term.includes("ansi") || term === "xterm") {
171
- return "16";
172
- }
173
- if (process.stdout.isTTY) {
174
- return "256";
175
- }
176
- return "none";
177
- }
178
- function hexToRgb(hex) {
179
- const match = hex.match(/^#?([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})$/);
180
- if (match) {
181
- return {
182
- r: parseInt(match[1], 16),
183
- g: parseInt(match[2], 16),
184
- b: parseInt(match[3], 16)
185
- };
186
- }
187
- const shortMatch = hex.match(/^#?([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])$/);
188
- if (shortMatch) {
189
- return {
190
- r: parseInt(shortMatch[1] + shortMatch[1], 16),
191
- g: parseInt(shortMatch[2] + shortMatch[2], 16),
192
- b: parseInt(shortMatch[3] + shortMatch[3], 16)
193
- };
194
- }
195
- return null;
196
- }
197
- function rgbTo256(r, g, b) {
198
- if (r === g && g === b) {
199
- if (r < 8) return 16;
200
- if (r > 248) return 231;
201
- return Math.round((r - 8) / 10) + 232;
202
- }
203
- const ri = Math.round(r / 51);
204
- const gi = Math.round(g / 51);
205
- const bi = Math.round(b / 51);
206
- return 16 + 36 * ri + 6 * gi + bi;
207
- }
208
- function rgbTo16(r, g, b) {
209
- const bright = (r + g + b) / 3 > 128 ? 8 : 0;
210
- const ri = r > 128 ? 1 : 0;
211
- const gi = g > 128 ? 2 : 0;
212
- const bi = b > 128 ? 4 : 0;
213
- return bright + ri + gi + bi;
214
- }
215
- function index256To16(index) {
216
- if (index < 16) return index;
217
- if (index >= 232) {
218
- const gray = (index - 232) * 10 + 8;
219
- return gray > 128 ? 15 : 0;
220
- }
221
- const adjusted = index - 16;
222
- const r = Math.floor(adjusted / 36) * 51;
223
- const g = Math.floor(adjusted % 36 / 6) * 51;
224
- const b = adjusted % 6 * 51;
225
- return rgbTo16(r, g, b);
226
- }
227
- var globalTheme = null;
228
- function getTheme() {
229
- if (!globalTheme) {
230
- throw new Error("Theme not initialized. Call initTheme() first.");
231
- }
232
- return globalTheme;
233
- }
234
- function setTheme(theme) {
235
- globalTheme = theme;
236
- }
237
- function isThemeInitialized() {
238
- return globalTheme !== null;
239
- }
8
+ } from "./chunk-PWLLLJHU.js";
240
9
 
241
10
  // src/ui/theme/loader.ts
242
11
  import { readFileSync, existsSync, readdirSync } from "fs";
@@ -335,7 +104,7 @@ var darkTheme = {
335
104
  error: "red",
336
105
  warning: "yellow",
337
106
  muted: "gray500",
338
- dim: "gray700",
107
+ dim: "gray200",
339
108
  text: "gray200",
340
109
  // Backgrounds & Content
341
110
  userMessageBg: "bgMedium",
@@ -408,7 +177,7 @@ var draculaTheme = {
408
177
  error: "red",
409
178
  warning: "orange",
410
179
  muted: "comment",
411
- dim: "currentLine",
180
+ dim: "foreground",
412
181
  text: "foreground",
413
182
  // Backgrounds & Content
414
183
  userMessageBg: "currentLine",
@@ -481,7 +250,7 @@ var sandyTheme = {
481
250
  error: "rust",
482
251
  warning: "dune",
483
252
  muted: "stone",
484
- dim: "gray600",
253
+ dim: "gray100",
485
254
  text: "gray100",
486
255
  // Backgrounds & Content
487
256
  userMessageBg: "gray700",
@@ -565,7 +334,7 @@ var tuiTheme = {
565
334
  error: "pohutukawa",
566
335
  warning: "kowhai",
567
336
  muted: "gray400",
568
- dim: "gray600",
337
+ dim: "snow",
569
338
  text: "snow",
570
339
  // Backgrounds & Content
571
340
  userMessageBg: "gray700",
@@ -638,7 +407,7 @@ var lightTheme = {
638
407
  error: "red",
639
408
  warning: "yellow",
640
409
  muted: "gray400",
641
- dim: "gray500",
410
+ dim: "gray100",
642
411
  text: "gray100",
643
412
  // Backgrounds & Content
644
413
  userMessageBg: "bgMedium",
@@ -998,8 +767,6 @@ function isLegacyConfig(config) {
998
767
  return typeof config.api_key === "string";
999
768
  }
1000
769
  function validateConfig(config, configPath) {
1001
- const provider = config.provider ?? "openrouter";
1002
- const providerConfig = getProviderConfig(config, provider);
1003
770
  if (config.workspace) {
1004
771
  if (config.workspace.defaultRoot && typeof config.workspace.defaultRoot !== "string") {
1005
772
  throw new Error(`workspace.defaultRoot must be a string in ${configPath}`);
@@ -1019,6 +786,30 @@ function validateConfig(config, configPath) {
1019
786
  throw new Error(`ui.autoConfirm must be boolean in ${configPath}`);
1020
787
  }
1021
788
  }
789
+ if (config.mcp) {
790
+ if (config.mcp.enabled !== void 0 && typeof config.mcp.enabled !== "boolean") {
791
+ throw new Error(`mcp.enabled must be boolean in ${configPath}`);
792
+ }
793
+ if (config.mcp.servers !== void 0) {
794
+ if (!Array.isArray(config.mcp.servers)) {
795
+ throw new Error(`mcp.servers must be an array in ${configPath}`);
796
+ }
797
+ for (const server of config.mcp.servers) {
798
+ if (!server.name || typeof server.name !== "string") {
799
+ throw new Error(`mcp.servers[].name must be a non-empty string in ${configPath}`);
800
+ }
801
+ if (!["stdio", "sse", "http"].includes(server.transport)) {
802
+ throw new Error(`mcp.servers[].transport must be 'stdio', 'sse', or 'http' in ${configPath}`);
803
+ }
804
+ if (server.transport === "stdio" && (!server.command || typeof server.command !== "string")) {
805
+ throw new Error(`mcp.servers[].command is required for stdio transport in ${configPath}`);
806
+ }
807
+ if ((server.transport === "sse" || server.transport === "http") && (!server.url || typeof server.url !== "string")) {
808
+ throw new Error(`mcp.servers[].url is required for ${server.transport} transport in ${configPath}`);
809
+ }
810
+ }
811
+ }
812
+ }
1022
813
  if (config.externalAgents) {
1023
814
  if (config.externalAgents.enabled !== void 0 && typeof config.externalAgents.enabled !== "boolean") {
1024
815
  throw new Error(`externalAgents.enabled must be boolean in ${configPath}`);
@@ -1096,9 +887,6 @@ async function saveConfig(config) {
1096
887
  }
1097
888
 
1098
889
  export {
1099
- hexToRgb,
1100
- getTheme,
1101
- isThemeInitialized,
1102
890
  CUSTOM_THEMES_DIR,
1103
891
  initTheme,
1104
892
  listAvailableThemes,
@@ -0,0 +1,13 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+ var _chunk5NZA4UB4cjs = require('./chunk-5NZA4UB4.cjs');
6
+ require('./chunk-QRQ5EX7I.cjs');
7
+ require('./chunk-Y27LG4BQ.cjs');
8
+ require('./chunk-LOXOD4IS.cjs');
9
+
10
+
11
+
12
+
13
+ exports.execute = _chunk5NZA4UB4cjs.execute; exports.metadata = _chunk5NZA4UB4cjs.metadata; exports.runCompletionCommand = _chunk5NZA4UB4cjs.runCompletionCommand;
@@ -0,0 +1,13 @@
1
+ import {
2
+ execute,
3
+ metadata,
4
+ runCompletionCommand
5
+ } from "./chunk-QC6IUDDJ.js";
6
+ import "./chunk-PNSRJT46.js";
7
+ import "./chunk-NF7RIHJK.js";
8
+ import "./chunk-UET7BDX2.js";
9
+ export {
10
+ execute,
11
+ metadata,
12
+ runCompletionCommand
13
+ };
@@ -0,0 +1,20 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+ var _chunkGIZL57FEcjs = require('./chunk-GIZL57FE.cjs');
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+ exports.AUTH_CONFIG = _chunkGIZL57FEcjs.AUTH_CONFIG; exports.AUTOHAND_FILES = _chunkGIZL57FEcjs.AUTOHAND_FILES; exports.AUTOHAND_HOME = _chunkGIZL57FEcjs.AUTOHAND_HOME; exports.AUTOHAND_PATHS = _chunkGIZL57FEcjs.AUTOHAND_PATHS; exports.PROJECT_DIR_NAME = _chunkGIZL57FEcjs.PROJECT_DIR_NAME; exports.SKILL_LOCATIONS = _chunkGIZL57FEcjs.SKILL_LOCATIONS; exports.SYNC_CONFIG = _chunkGIZL57FEcjs.SYNC_CONFIG; exports.getProjectSkillLocations = _chunkGIZL57FEcjs.getProjectSkillLocations;
@@ -7,7 +7,7 @@ import {
7
7
  SKILL_LOCATIONS,
8
8
  SYNC_CONFIG,
9
9
  getProjectSkillLocations
10
- } from "./chunk-PGH3MHPP.js";
10
+ } from "./chunk-PWLLLJHU.js";
11
11
  export {
12
12
  AUTH_CONFIG,
13
13
  AUTOHAND_FILES,
@@ -0,0 +1,11 @@
1
+ import {
2
+ execute,
3
+ metadata
4
+ } from "./chunk-4ULBAYME.js";
5
+ import "./chunk-PNSRJT46.js";
6
+ import "./chunk-NF7RIHJK.js";
7
+ import "./chunk-UET7BDX2.js";
8
+ export {
9
+ execute,
10
+ metadata
11
+ };
@@ -0,0 +1,11 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkPSED4Z4Xcjs = require('./chunk-PSED4Z4X.cjs');
5
+ require('./chunk-QRQ5EX7I.cjs');
6
+ require('./chunk-Y27LG4BQ.cjs');
7
+ require('./chunk-LOXOD4IS.cjs');
8
+
9
+
10
+
11
+ exports.execute = _chunkPSED4Z4Xcjs.execute; exports.metadata = _chunkPSED4Z4Xcjs.metadata;
@@ -0,0 +1,14 @@
1
+ import {
2
+ feedback,
3
+ metadata
4
+ } from "./chunk-WYLFLZ42.js";
5
+ import "./chunk-CUBYCLNL.js";
6
+ import "./chunk-WD5ZF6HE.js";
7
+ import "./chunk-PNSRJT46.js";
8
+ import "./chunk-NF7RIHJK.js";
9
+ import "./chunk-PWLLLJHU.js";
10
+ import "./chunk-UET7BDX2.js";
11
+ export {
12
+ feedback,
13
+ metadata
14
+ };
@@ -0,0 +1,14 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkIXFOH4OCcjs = require('./chunk-IXFOH4OC.cjs');
5
+ require('./chunk-EAOEAQGF.cjs');
6
+ require('./chunk-MNCWB5F7.cjs');
7
+ require('./chunk-QRQ5EX7I.cjs');
8
+ require('./chunk-Y27LG4BQ.cjs');
9
+ require('./chunk-GIZL57FE.cjs');
10
+ require('./chunk-LOXOD4IS.cjs');
11
+
12
+
13
+
14
+ exports.feedback = _chunkIXFOH4OCcjs.feedback; exports.metadata = _chunkIXFOH4OCcjs.metadata;
@@ -0,0 +1,58 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+ var _chunkLGGZQTLMcjs = require('./chunk-LGGZQTLM.cjs');
6
+ require('./chunk-DUDDZRCS.cjs');
7
+ require('./chunk-WH5RW7DV.cjs');
8
+ require('./chunk-SAG6IY5Z.cjs');
9
+ require('./chunk-46WX5IO2.cjs');
10
+ require('./chunk-U23U52ZN.cjs');
11
+ require('./chunk-DMPVI3YK.cjs');
12
+ require('./chunk-34OGUMRO.cjs');
13
+ require('./chunk-5BQ57AZC.cjs');
14
+ require('./chunk-JHGIWNHL.cjs');
15
+ require('./chunk-S5G7OEN2.cjs');
16
+ require('./chunk-OKABWSWA.cjs');
17
+ require('./chunk-3UNX56GC.cjs');
18
+ require('./chunk-SA4JOV4F.cjs');
19
+ require('./chunk-C22G4UE4.cjs');
20
+ require('./chunk-NGBN2NGH.cjs');
21
+ require('./chunk-3S4DEIJP.cjs');
22
+ require('./chunk-FPHU2ES6.cjs');
23
+ require('./chunk-C2E3GJEE.cjs');
24
+ require('./chunk-TSY7JHIV.cjs');
25
+ require('./chunk-5FZM7KLB.cjs');
26
+ require('./chunk-R7SDL3DJ.cjs');
27
+ require('./chunk-NRORJRD4.cjs');
28
+ require('./chunk-BDIZGBDA.cjs');
29
+ require('./chunk-HDSEJMWI.cjs');
30
+ require('./chunk-3DQSBW4B.cjs');
31
+ require('./chunk-Z4J4W6YQ.cjs');
32
+ require('./chunk-M7RVTUWE.cjs');
33
+ require('./chunk-5NZA4UB4.cjs');
34
+ require('./chunk-PSED4Z4X.cjs');
35
+ require('./chunk-PA2H2263.cjs');
36
+ require('./chunk-HVOBMOZ2.cjs');
37
+ require('./chunk-BZ73ZQTE.cjs');
38
+ require('./chunk-65GTO4QM.cjs');
39
+ require('./chunk-MFK6HE47.cjs');
40
+ require('./chunk-QM7HZCQW.cjs');
41
+ require('./chunk-IXFOH4OC.cjs');
42
+ require('./chunk-EAOEAQGF.cjs');
43
+ require('./chunk-MNCWB5F7.cjs');
44
+ require('./chunk-ULQ6MDSJ.cjs');
45
+ require('./chunk-AEYOIPHD.cjs');
46
+ require('./chunk-VXCMGBXY.cjs');
47
+ require('./chunk-ANUQFV43.cjs');
48
+ require('./chunk-RJP3SZ7Q.cjs');
49
+ require('./chunk-PGRH5Q77.cjs');
50
+ require('./chunk-QRQ5EX7I.cjs');
51
+ require('./chunk-Y27LG4BQ.cjs');
52
+ require('./chunk-GIZL57FE.cjs');
53
+ require('./chunk-LOXOD4IS.cjs');
54
+
55
+
56
+
57
+
58
+ exports.aliasMetadata = _chunkLGGZQTLMcjs.aliasMetadata; exports.help = _chunkLGGZQTLMcjs.help; exports.metadata = _chunkLGGZQTLMcjs.metadata;
@@ -0,0 +1,58 @@
1
+ import {
2
+ aliasMetadata,
3
+ help,
4
+ metadata
5
+ } from "./chunk-Y6OWFIUF.js";
6
+ import "./chunk-PYLR4J2D.js";
7
+ import "./chunk-YVY27BJT.js";
8
+ import "./chunk-HLFZPN65.js";
9
+ import "./chunk-ATR3RORT.js";
10
+ import "./chunk-73XIKTZL.js";
11
+ import "./chunk-YKSSNFDZ.js";
12
+ import "./chunk-7QNW24ZT.js";
13
+ import "./chunk-B72CC4O6.js";
14
+ import "./chunk-QHPFA6OE.js";
15
+ import "./chunk-5Q3W4DEU.js";
16
+ import "./chunk-6P3K4YUW.js";
17
+ import "./chunk-F3EIOVSQ.js";
18
+ import "./chunk-UM4QEO36.js";
19
+ import "./chunk-PM62ZYXA.js";
20
+ import "./chunk-BODVOW7B.js";
21
+ import "./chunk-P5VDZ6PV.js";
22
+ import "./chunk-6UJMCWRY.js";
23
+ import "./chunk-IPI3JXKP.js";
24
+ import "./chunk-D2XFTCRP.js";
25
+ import "./chunk-QU64XI5X.js";
26
+ import "./chunk-RJXNNIFW.js";
27
+ import "./chunk-XLI7SHCH.js";
28
+ import "./chunk-GLAE5K5W.js";
29
+ import "./chunk-HQQ4NKER.js";
30
+ import "./chunk-BBIKQW66.js";
31
+ import "./chunk-XDVG3NM4.js";
32
+ import "./chunk-2NUX2RAI.js";
33
+ import "./chunk-QC6IUDDJ.js";
34
+ import "./chunk-4ULBAYME.js";
35
+ import "./chunk-YMDLUTF2.js";
36
+ import "./chunk-WJ276BIP.js";
37
+ import "./chunk-E7YL3AHT.js";
38
+ import "./chunk-WRJLBHWB.js";
39
+ import "./chunk-SVLBJMYO.js";
40
+ import "./chunk-C5SVIQG3.js";
41
+ import "./chunk-WYLFLZ42.js";
42
+ import "./chunk-CUBYCLNL.js";
43
+ import "./chunk-WD5ZF6HE.js";
44
+ import "./chunk-NCC6ETZS.js";
45
+ import "./chunk-OMEH2EVE.js";
46
+ import "./chunk-TSV4LVHK.js";
47
+ import "./chunk-3652ROFD.js";
48
+ import "./chunk-ZBIBLOZL.js";
49
+ import "./chunk-JS7IPR7P.js";
50
+ import "./chunk-PNSRJT46.js";
51
+ import "./chunk-NF7RIHJK.js";
52
+ import "./chunk-PWLLLJHU.js";
53
+ import "./chunk-UET7BDX2.js";
54
+ export {
55
+ aliasMetadata,
56
+ help,
57
+ metadata
58
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+ var _chunkU23U52ZNcjs = require('./chunk-U23U52ZN.cjs');
7
+ require('./chunk-LOXOD4IS.cjs');
8
+
9
+
10
+
11
+
12
+
13
+ exports.formatHistoryEntry = _chunkU23U52ZNcjs.formatHistoryEntry; exports.history = _chunkU23U52ZNcjs.history; exports.metadata = _chunkU23U52ZNcjs.metadata; exports.paginateHistory = _chunkU23U52ZNcjs.paginateHistory;
@@ -0,0 +1,13 @@
1
+ import {
2
+ formatHistoryEntry,
3
+ history,
4
+ metadata,
5
+ paginateHistory
6
+ } from "./chunk-73XIKTZL.js";
7
+ import "./chunk-UET7BDX2.js";
8
+ export {
9
+ formatHistoryEntry,
10
+ history,
11
+ metadata,
12
+ paginateHistory
13
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkR7SDL3DJcjs = require('./chunk-R7SDL3DJ.cjs');
5
+ require('./chunk-MNCWB5F7.cjs');
6
+ require('./chunk-QRQ5EX7I.cjs');
7
+ require('./chunk-Y27LG4BQ.cjs');
8
+ require('./chunk-LOXOD4IS.cjs');
9
+
10
+
11
+
12
+ exports.hooks = _chunkR7SDL3DJcjs.hooks; exports.metadata = _chunkR7SDL3DJcjs.metadata;
@@ -0,0 +1,12 @@
1
+ import {
2
+ hooks,
3
+ metadata
4
+ } from "./chunk-RJXNNIFW.js";
5
+ import "./chunk-WD5ZF6HE.js";
6
+ import "./chunk-PNSRJT46.js";
7
+ import "./chunk-NF7RIHJK.js";
8
+ import "./chunk-UET7BDX2.js";
9
+ export {
10
+ hooks,
11
+ metadata
12
+ };
@@ -0,0 +1,32 @@
1
+ import {
2
+ LANGUAGE_DISPLAY_NAMES,
3
+ SUPPORTED_LOCALES,
4
+ buildLocaleInstruction,
5
+ changeLanguage,
6
+ detectLocale,
7
+ exists,
8
+ getCurrentLocale,
9
+ initI18n,
10
+ injectLocaleIntoPrompt,
11
+ isInitialized,
12
+ isValidLocale,
13
+ normalizeLocale,
14
+ onLanguageChange,
15
+ t
16
+ } from "./chunk-UET7BDX2.js";
17
+ export {
18
+ LANGUAGE_DISPLAY_NAMES,
19
+ SUPPORTED_LOCALES,
20
+ buildLocaleInstruction,
21
+ changeLanguage,
22
+ detectLocale,
23
+ exists,
24
+ getCurrentLocale,
25
+ initI18n,
26
+ injectLocaleIntoPrompt,
27
+ isInitialized,
28
+ isValidLocale,
29
+ normalizeLocale,
30
+ onLanguageChange,
31
+ t
32
+ };