claude-code-best 1.0.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (522) hide show
  1. package/README.md +104 -369
  2. package/dist/{chunk-5wxspfct.js → chunk-01qzvbp3.js} +8 -2
  3. package/dist/chunk-053bj0m0.js +247 -0
  4. package/dist/chunk-05tt9tt1.js +653 -0
  5. package/dist/chunk-06sq1vz3.js +403 -0
  6. package/dist/chunk-07069jq1.js +30 -0
  7. package/dist/chunk-0dac8msw.js +135 -0
  8. package/dist/{chunk-52n4py3b.js → chunk-0ja0y3at.js} +6 -6
  9. package/dist/chunk-0jzdwbdc.js +14 -0
  10. package/dist/chunk-0nrq46nf.js +313 -0
  11. package/dist/chunk-0qz705wz.js +192 -0
  12. package/dist/{chunk-by7ezad6.js → chunk-0rn4v8sg.js} +42 -28
  13. package/dist/{chunk-1cbn5kxf.js → chunk-0rpb2bdp.js} +3 -2
  14. package/dist/{chunk-zz21rvr7.js → chunk-127cmycn.js} +8 -5
  15. package/dist/chunk-12vk6z7z.js +109 -0
  16. package/dist/chunk-15y014gg.js +102 -0
  17. package/dist/{chunk-44fpr6jq.js → chunk-168xb8v1.js} +4 -2
  18. package/dist/{chunk-8fmbf525.js → chunk-16bnxyz0.js} +1 -1
  19. package/dist/{chunk-wsqhnjj3.js → chunk-1atfzck5.js} +24 -24
  20. package/dist/chunk-1cbhkqxg.js +310 -0
  21. package/dist/chunk-1csq8bf1.js +295 -0
  22. package/dist/{chunk-0e1xsncc.js → chunk-1cwdhk7a.js} +1 -1
  23. package/dist/{chunk-36k3f7pn.js → chunk-1ebqpwhn.js} +79 -59
  24. package/dist/{chunk-ap2a2er6.js → chunk-1mh5vt6v.js} +102 -80
  25. package/dist/chunk-1qf125vg.js +123 -0
  26. package/dist/{chunk-fcz5eche.js → chunk-1sp6713v.js} +139 -170
  27. package/dist/{chunk-d18z9pna.js → chunk-1thgdca1.js} +2 -2
  28. package/dist/chunk-1z1gfx2c.js +443 -0
  29. package/dist/{chunk-7z8j9qfn.js → chunk-21z7acxh.js} +3 -3
  30. package/dist/chunk-229pcf6p.js +509 -0
  31. package/dist/chunk-238g70xa.js +1 -1
  32. package/dist/{chunk-vpb723tx.js → chunk-23ad5t92.js} +5 -5
  33. package/dist/chunk-28043j1k.js +68 -0
  34. package/dist/chunk-299r6d9v.js +141 -0
  35. package/dist/{chunk-5r3ak65p.js → chunk-2bw5nqsw.js} +4 -4
  36. package/dist/chunk-2mxstrx5.js +445 -0
  37. package/dist/{chunk-w2z5pqd3.js → chunk-2q39ej51.js} +6 -6
  38. package/dist/chunk-2qwgfjcj.js +5370 -0
  39. package/dist/chunk-2ss23j0q.js +3587 -0
  40. package/dist/{chunk-k9c3888e.js → chunk-2wvxddsg.js} +9 -7
  41. package/dist/chunk-2x2aznpc.js +134 -0
  42. package/dist/{chunk-bqq4zamw.js → chunk-2ys5wcxk.js} +3 -3
  43. package/dist/{chunk-2kbk09sb.js → chunk-3cvcwgsr.js} +79 -59
  44. package/dist/{chunk-rs45skes.js → chunk-3xv7rjsy.js} +15 -11
  45. package/dist/chunk-42x5tjk2.js +42 -0
  46. package/dist/{chunk-n78qmqpq.js → chunk-436r0x2n.js} +8 -8
  47. package/dist/{chunk-k3vpzx3c.js → chunk-44q4jkwa.js} +27 -67
  48. package/dist/{chunk-qnbdekts.js → chunk-44w22kyx.js} +111 -132
  49. package/dist/{chunk-7m2nd8da.js → chunk-46fcr28b.js} +31 -10
  50. package/dist/{chunk-wm2f2f1z.js → chunk-474y75ga.js} +2 -2
  51. package/dist/{chunk-6fkwz9yk.js → chunk-478rpnqm.js} +8 -8
  52. package/dist/chunk-48w0df8a.js +32 -0
  53. package/dist/chunk-4cp6193g.js +9076 -0
  54. package/dist/chunk-4d0de73v.js +436 -0
  55. package/dist/chunk-4eecm90d.js +1030 -0
  56. package/dist/{chunk-jfv3zczw.js → chunk-4f4ccg1h.js} +10 -115
  57. package/dist/chunk-4h102wt5.js +65 -0
  58. package/dist/{chunk-6n2qgm9v.js → chunk-4hv90qcz.js} +1 -1
  59. package/dist/{chunk-4gj6zzg1.js → chunk-4jcqmf9w.js} +43 -29
  60. package/dist/{chunk-067wa5sn.js → chunk-4kk7vxed.js} +8 -6
  61. package/dist/chunk-4nspekjp.js +69 -0
  62. package/dist/chunk-4xmb7bvy.js +125 -0
  63. package/dist/{chunk-nrp9yaq6.js → chunk-4xy0c1dz.js} +16 -12
  64. package/dist/{chunk-77g09znh.js → chunk-53c9gb9c.js} +23 -16
  65. package/dist/{chunk-03nqtgyr.js → chunk-53zsn91p.js} +42 -30
  66. package/dist/{chunk-gkrx7ptx.js → chunk-548g1d6z.js} +113 -114
  67. package/dist/chunk-559yvwh1.js +63 -0
  68. package/dist/chunk-5a6ahhvy.js +594 -0
  69. package/dist/{chunk-h2j4t3fk.js → chunk-5c6man70.js} +9692 -17630
  70. package/dist/chunk-5hb5ev7b.js +74 -0
  71. package/dist/{chunk-hx2tr4ep.js → chunk-5z28bqne.js} +34 -475
  72. package/dist/{chunk-p7g7pf3f.js → chunk-61ahbn23.js} +8 -6
  73. package/dist/chunk-64c1avct.js +13 -0
  74. package/dist/{chunk-0sb5scxx.js → chunk-652wnf1z.js} +5 -5
  75. package/dist/{chunk-1w361mz1.js → chunk-66jkaz3q.js} +109 -213
  76. package/dist/{chunk-q25bjaev.js → chunk-677as3nh.js} +2 -2
  77. package/dist/chunk-68ksfahx.js +386 -0
  78. package/dist/{chunk-xs0hwvpa.js → chunk-68pfxvxt.js} +14 -9
  79. package/dist/{chunk-epmheefa.js → chunk-69hys77v.js} +8 -8
  80. package/dist/{chunk-404wc7d4.js → chunk-6ayqcq3h.js} +126 -119
  81. package/dist/chunk-6kpbgc5w.js +23 -0
  82. package/dist/chunk-6mpsxxsf.js +362 -0
  83. package/dist/chunk-6nze0g86.js +119 -0
  84. package/dist/{chunk-v1mgv1et.js → chunk-6p4cyhb3.js} +4 -3
  85. package/dist/{chunk-w2qfgzzh.js → chunk-6t62dbnb.js} +61 -100
  86. package/dist/chunk-6t87a3q6.js +2842 -0
  87. package/dist/{chunk-q6av622g.js → chunk-6xana182.js} +18 -13
  88. package/dist/{chunk-fpf4cgbt.js → chunk-7bfach0x.js} +9 -9
  89. package/dist/{chunk-g6e1ab2k.js → chunk-7f1ggjr2.js} +81 -61
  90. package/dist/chunk-7fxjmmfw.js +1172 -0
  91. package/dist/{chunk-ckcagq32.js → chunk-7gqf9wej.js} +5 -5
  92. package/dist/chunk-7j3dkjqq.js +38 -0
  93. package/dist/chunk-7ns74x0q.js +475 -0
  94. package/dist/chunk-7qmknpkq.js +272 -0
  95. package/dist/chunk-7rzepn9c.js +83 -0
  96. package/dist/chunk-7tdcwje9.js +68 -0
  97. package/dist/{chunk-201dvaa3.js → chunk-8201tnhf.js} +11 -5
  98. package/dist/{chunk-dv1wfr85.js → chunk-8225arm6.js} +5 -4
  99. package/dist/chunk-822wfv88.js +70 -0
  100. package/dist/chunk-837tm8ht.js +183 -0
  101. package/dist/chunk-8a2ajt5d.js +878 -0
  102. package/dist/{chunk-drv8qvwz.js → chunk-8bymxfn4.js} +43 -29
  103. package/dist/chunk-8cwbzk7h.js +118 -0
  104. package/dist/chunk-8d0ev0m2.js +111 -0
  105. package/dist/chunk-8g5pe1gr.js +37 -0
  106. package/dist/{chunk-g0j0t6qk.js → chunk-8g747a8x.js} +1 -1
  107. package/dist/chunk-8kfwb79z.js +436 -0
  108. package/dist/{chunk-xyqr1cww.js → chunk-8me0yq6v.js} +12 -12
  109. package/dist/{chunk-qdrwxg3e.js → chunk-8n8285ax.js} +91 -71
  110. package/dist/{chunk-sdj9b9wh.js → chunk-8pn8tvgg.js} +9 -154
  111. package/dist/{chunk-ha0xq3e9.js → chunk-8qhr4n77.js} +64 -106
  112. package/dist/{chunk-fpjzr5jj.js → chunk-8s9bbk3r.js} +62 -45
  113. package/dist/{chunk-e3g8q4cn.js → chunk-905d2hee.js} +10 -8
  114. package/dist/{chunk-3psth3ez.js → chunk-91xq5y4a.js} +9 -9
  115. package/dist/{chunk-rq1kckze.js → chunk-93xsyzsp.js} +1 -1
  116. package/dist/chunk-99pmbfqp.js +230 -0
  117. package/dist/chunk-9f14bkn9.js +33068 -0
  118. package/dist/{chunk-ex978bsn.js → chunk-9m78gjpd.js} +1 -1
  119. package/dist/{chunk-hpwa620w.js → chunk-9pm2d2gv.js} +251 -306
  120. package/dist/chunk-a136cvvz.js +27 -0
  121. package/dist/{chunk-n5t9m8h9.js → chunk-a1bjde7d.js} +7 -7
  122. package/dist/chunk-a2evk7n1.js +168 -0
  123. package/dist/{chunk-6heqkcjx.js → chunk-a3k4w4cm.js} +42 -28
  124. package/dist/chunk-a3mcc1sb.js +1403 -0
  125. package/dist/{chunk-8hq5kk3y.js → chunk-a4twdmhf.js} +3 -2
  126. package/dist/chunk-a8eaey19.js +66 -0
  127. package/dist/chunk-abkb5pw6.js +426 -0
  128. package/dist/chunk-ae76ded0.js +30 -0
  129. package/dist/{chunk-2v1br2x0.js → chunk-agx5w9ce.js} +14 -8
  130. package/dist/chunk-ah46h8rp.js +70 -0
  131. package/dist/chunk-aj3azy6z.js +409 -0
  132. package/dist/chunk-an6z4rzv.js +158 -0
  133. package/dist/{chunk-r6b58y3x.js → chunk-ase86y73.js} +1 -3
  134. package/dist/{chunk-e6s36z54.js → chunk-avfjb6pd.js} +17 -557
  135. package/dist/{chunk-1hhdpn3t.js → chunk-az5x70pn.js} +8 -5
  136. package/dist/{chunk-91gk0g2y.js → chunk-b6rg3egp.js} +33 -18
  137. package/dist/chunk-b73r6ngr.js +125 -0
  138. package/dist/{chunk-8bedvdm1.js → chunk-b81hd3m6.js} +1 -1
  139. package/dist/{chunk-ebfsjcvm.js → chunk-b9mhpc0v.js} +3 -3
  140. package/dist/chunk-b9ndqcdv.js +139 -0
  141. package/dist/{chunk-w7wgpqcp.js → chunk-bd8zk9tn.js} +7 -7
  142. package/dist/chunk-bdy6n17s.js +343 -0
  143. package/dist/{chunk-s8y2tfzf.js → chunk-bf1j3azq.js} +156 -119
  144. package/dist/{chunk-j5j6nrfq.js → chunk-bfcet2mw.js} +2 -2
  145. package/dist/{chunk-jy35mvy3.js → chunk-bmjmrk76.js} +7 -7
  146. package/dist/{chunk-ra0r65nx.js → chunk-bsj8e2mb.js} +11 -11
  147. package/dist/{chunk-jce5r25x.js → chunk-bt64sq5y.js} +5 -4
  148. package/dist/{chunk-vyc0rjyx.js → chunk-bwg7582d.js} +1 -1
  149. package/dist/{chunk-3be7ka25.js → chunk-bxcfz5gy.js} +1 -1
  150. package/dist/{chunk-7wm1rjfm.js → chunk-c1k9tg7h.js} +518 -810
  151. package/dist/{chunk-qwvrkydc.js → chunk-c5pxerks.js} +13 -11
  152. package/dist/chunk-c6sjhj89.js +1284 -0
  153. package/dist/{chunk-brcnd1j0.js → chunk-c9q0phsg.js} +9 -6
  154. package/dist/chunk-caj0ab74.js +129 -0
  155. package/dist/chunk-chsyvavm.js +3435 -0
  156. package/dist/chunk-cjpt035a.js +269 -0
  157. package/dist/chunk-cmcbatgz.js +147 -0
  158. package/dist/chunk-cnsj3vq2.js +35 -0
  159. package/dist/chunk-cqjmxeqv.js +269 -0
  160. package/dist/{chunk-cdz5yb0r.js → chunk-crmjpsqe.js} +13 -2
  161. package/dist/{chunk-2mcp388c.js → chunk-cvb1v08x.js} +38 -32
  162. package/dist/{chunk-w0r5627q.js → chunk-cxhvyf7c.js} +234 -363
  163. package/dist/{chunk-s0wvh65m.js → chunk-cxx0e4nv.js} +1343 -2839
  164. package/dist/chunk-cy2hswr1.js +15 -0
  165. package/dist/{chunk-g9q2cznf.js → chunk-cy6ezb6j.js} +125994 -138958
  166. package/dist/{chunk-ks0m9njy.js → chunk-d2jekryq.js} +8 -8
  167. package/dist/chunk-d4mdda98.js +94 -0
  168. package/dist/{chunk-hgtf13es.js → chunk-d6ve5pze.js} +10 -10
  169. package/dist/{chunk-55wgxwa9.js → chunk-d7886r6a.js} +6928 -6935
  170. package/dist/{chunk-4bgz02m1.js → chunk-d83tmb5h.js} +87 -64
  171. package/dist/{chunk-hdwh7ncw.js → chunk-d8meetqc.js} +84 -63
  172. package/dist/{chunk-128nh5j9.js → chunk-d8r0q4ps.js} +547 -866
  173. package/dist/chunk-d95k8xkm.js +84 -0
  174. package/dist/chunk-dd4m7t1v.js +112 -0
  175. package/dist/{chunk-rcdpvnxh.js → chunk-dekbr08w.js} +24 -20
  176. package/dist/{chunk-cvge4pvp.js → chunk-dk8287aa.js} +1 -1
  177. package/dist/chunk-dm3n2qgd.js +24 -0
  178. package/dist/{chunk-b0105v1f.js → chunk-dmxte86x.js} +3 -3
  179. package/dist/{chunk-zkmxtgc3.js → chunk-dqvwn28p.js} +19 -15
  180. package/dist/chunk-drkm8yx2.js +34 -0
  181. package/dist/chunk-dsbewdgm.js +148 -0
  182. package/dist/{chunk-w7h2yphx.js → chunk-dwekpr47.js} +2 -2
  183. package/dist/{chunk-hg776v69.js → chunk-e3299veq.js} +16 -68
  184. package/dist/{chunk-wqpr7002.js → chunk-e5hcyxae.js} +132 -18
  185. package/dist/chunk-e7h0nd5w.js +106 -0
  186. package/dist/{chunk-7qwme3ab.js → chunk-eaemyebz.js} +5 -5
  187. package/dist/{chunk-hjhc4cpt.js → chunk-edzkkadh.js} +2 -2
  188. package/dist/chunk-em99fnet.js +128 -0
  189. package/dist/{chunk-hfzj1m07.js → chunk-epyaq1z0.js} +13 -4
  190. package/dist/{chunk-r8f13sz1.js → chunk-eqmkajs4.js} +102 -195
  191. package/dist/{chunk-gax0fcbx.js → chunk-ergam9ft.js} +5 -5
  192. package/dist/chunk-es2fdse0.js +63 -0
  193. package/dist/{chunk-grdvmq7q.js → chunk-esn3tgm2.js} +8 -6
  194. package/dist/{chunk-ptmcaxqn.js → chunk-et8ybmt2.js} +9 -7
  195. package/dist/chunk-ew9rp41b.js +300 -0
  196. package/dist/{chunk-dvfb4qwt.js → chunk-ewx6xfzb.js} +2 -2
  197. package/dist/chunk-eyjtbtt0.js +137 -0
  198. package/dist/chunk-f0jd2p9n.js +797 -0
  199. package/dist/{chunk-vzqrbsd1.js → chunk-f69rgsm2.js} +5 -5
  200. package/dist/{chunk-45kxdsp8.js → chunk-f6rbj3gz.js} +17 -12
  201. package/dist/chunk-fbhyqxdg.js +1182 -0
  202. package/dist/chunk-feyzykye.js +10 -0
  203. package/dist/chunk-ffhejx56.js +107 -0
  204. package/dist/{chunk-cpe70sxw.js → chunk-fhx6nt2a.js} +42 -28
  205. package/dist/chunk-fkkysfev.js +158 -0
  206. package/dist/chunk-fn510gqw.js +216 -0
  207. package/dist/chunk-ftsg8bjm.js +117 -0
  208. package/dist/{chunk-s39js2d3.js → chunk-fyts9grb.js} +2 -2
  209. package/dist/{chunk-bjqw6798.js → chunk-fz0ch109.js} +6 -5
  210. package/dist/{chunk-q1e6pzwh.js → chunk-g1jarkx9.js} +38 -8
  211. package/dist/chunk-g9f19ttm.js +15 -0
  212. package/dist/chunk-g9qte35t.js +341 -0
  213. package/dist/chunk-gaav53dc.js +105 -0
  214. package/dist/chunk-gfx3cwrk.js +75 -0
  215. package/dist/chunk-gk2d1x2a.js +946 -0
  216. package/dist/chunk-gkbat1p9.js +121 -0
  217. package/dist/{chunk-cg43nnpk.js → chunk-gmnyk2t8.js} +8 -6
  218. package/dist/{chunk-m23b51r2.js → chunk-gnmdprq3.js} +191 -338
  219. package/dist/{chunk-bq6x1ehp.js → chunk-gpz0ddyz.js} +8 -8
  220. package/dist/{chunk-yt6z8030.js → chunk-gv1csnc3.js} +217 -355
  221. package/dist/{chunk-nx6nds18.js → chunk-gv37c8ax.js} +3 -3
  222. package/dist/{chunk-h6c8cms4.js → chunk-gzr2601k.js} +10 -10
  223. package/dist/{chunk-2tkt52mz.js → chunk-h3pda469.js} +37 -82
  224. package/dist/{chunk-qqfa0dqg.js → chunk-h4b85amj.js} +20 -32
  225. package/dist/chunk-h5zv78zq.js +352 -0
  226. package/dist/{chunk-2x3gmbws.js → chunk-h7edytkc.js} +5 -5
  227. package/dist/{chunk-as261f01.js → chunk-ha0wbzc3.js} +13 -11
  228. package/dist/{chunk-nxsh6de2.js → chunk-hcgkak1j.js} +20 -125
  229. package/dist/{chunk-tjaqa99q.js → chunk-hezj20qy.js} +3 -3
  230. package/dist/{chunk-7ahman84.js → chunk-hf85ht0m.js} +2 -2
  231. package/dist/{chunk-w0hx9v3y.js → chunk-ht1nfygk.js} +42 -28
  232. package/dist/chunk-j316jjby.js +108 -0
  233. package/dist/chunk-j3fge71v.js +115 -0
  234. package/dist/{chunk-v4h5psgs.js → chunk-j4x0t6k2.js} +46 -31
  235. package/dist/{chunk-9gbamk79.js → chunk-j5bth84e.js} +5 -1
  236. package/dist/chunk-j783d5af.js +134 -0
  237. package/dist/chunk-j7pbwf9x.js +108 -0
  238. package/dist/{chunk-rf2w4x97.js → chunk-j8rnrm5n.js} +120 -142
  239. package/dist/{chunk-vratq94g.js → chunk-j9gxwbe3.js} +1 -1
  240. package/dist/{chunk-3r24h7t6.js → chunk-jaaxk89e.js} +1 -1
  241. package/dist/{chunk-y47cg3kz.js → chunk-jaew3662.js} +18 -13
  242. package/dist/{chunk-q1txr206.js → chunk-jbbj16w2.js} +128 -185
  243. package/dist/chunk-jerew25v.js +148 -0
  244. package/dist/{chunk-v399mzxk.js → chunk-jf0p00fz.js} +2 -2
  245. package/dist/{chunk-97r68x5g.js → chunk-jfsah2w3.js} +1065 -1762
  246. package/dist/{chunk-av73dywf.js → chunk-jna2tcvj.js} +8 -8
  247. package/dist/{chunk-yym1e1dr.js → chunk-jng0mb4r.js} +10 -10
  248. package/dist/chunk-jrrmwfp4.js +66 -0
  249. package/dist/{chunk-0rc2rn3b.js → chunk-jt6fa514.js} +14 -12
  250. package/dist/chunk-jvkyx1b7.js +911 -0
  251. package/dist/{chunk-41xeh3t9.js → chunk-jy6c07wa.js} +4 -4
  252. package/dist/chunk-k1fvb16y.js +269 -0
  253. package/dist/{chunk-bqfnp99q.js → chunk-k3s4yk22.js} +1 -1
  254. package/dist/{chunk-madfgr3n.js → chunk-k46gxg21.js} +68 -8
  255. package/dist/chunk-k8wwyz2t.js +110 -0
  256. package/dist/{chunk-mnx3wyv4.js → chunk-ka3fdfyb.js} +83 -62
  257. package/dist/{chunk-k5c8ssc6.js → chunk-ka4x7mhn.js} +42 -28
  258. package/dist/chunk-kb99zpps.js +216 -0
  259. package/dist/{chunk-1dyeexvn.js → chunk-kd3mmsd2.js} +4 -4
  260. package/dist/{chunk-1xkekb9y.js → chunk-kfd89dsd.js} +5 -3
  261. package/dist/{chunk-g7fxbqsc.js → chunk-km1wcchx.js} +87 -68
  262. package/dist/{chunk-248szg6m.js → chunk-kmhwx18d.js} +3 -3
  263. package/dist/{chunk-pabnr66n.js → chunk-kq91dwkq.js} +8 -6
  264. package/dist/chunk-m17m84b7.js +111 -0
  265. package/dist/chunk-m1a0s9fd.js +1070 -0
  266. package/dist/{chunk-jafes477.js → chunk-m2bcpk8j.js} +4 -3
  267. package/dist/{chunk-t0brxw87.js → chunk-m7jtn7dk.js} +80 -60
  268. package/dist/chunk-mq2mgyt9.js +103 -0
  269. package/dist/chunk-msv3w4qp.js +1811 -0
  270. package/dist/chunk-mx28h61f.js +1147 -0
  271. package/dist/{chunk-wf7yz2j0.js → chunk-mxe1f4jg.js} +13 -11
  272. package/dist/{chunk-n5crdyay.js → chunk-mzwjvfr2.js} +137 -124
  273. package/dist/{chunk-gf96dtb6.js → chunk-n2n0sq7r.js} +71 -77
  274. package/dist/{chunk-m06q12hg.js → chunk-n8mpqdje.js} +1 -1
  275. package/dist/chunk-n9e984ba.js +132 -0
  276. package/dist/chunk-netzwgv1.js +154 -0
  277. package/dist/{chunk-xszk7n10.js → chunk-nh3cd07f.js} +1 -1
  278. package/dist/chunk-njrz6mbe.js +66 -0
  279. package/dist/{chunk-sb2sew2f.js → chunk-nv7pfr7k.js} +2 -2
  280. package/dist/{chunk-g9xf7jc4.js → chunk-nwd8pb55.js} +85 -65
  281. package/dist/{chunk-5hva0tsg.js → chunk-p2yv7m0g.js} +6 -6
  282. package/dist/chunk-p5t2vy90.js +259 -0
  283. package/dist/{chunk-zk2wsm7d.js → chunk-p7vkh4wx.js} +2 -2
  284. package/dist/{chunk-da4ve9t5.js → chunk-p8crqj70.js} +10 -10
  285. package/dist/{chunk-02y0y853.js → chunk-pcngtzr8.js} +12 -6
  286. package/dist/{chunk-3vpqaqc6.js → chunk-pdjem6h1.js} +53 -71
  287. package/dist/{chunk-7rgwp44r.js → chunk-pmxdzjq0.js} +11 -9
  288. package/dist/{chunk-3s5r02ps.js → chunk-pnkcecq2.js} +31 -57
  289. package/dist/{chunk-zsfxha74.js → chunk-pshjyzq4.js} +8 -7
  290. package/dist/chunk-pt1yj9zf.js +107 -0
  291. package/dist/{chunk-rxwb7b78.js → chunk-py6b9d5b.js} +2331 -4219
  292. package/dist/chunk-q7n8d91g.js +67 -0
  293. package/dist/{chunk-e5pntxye.js → chunk-q7tpyeb3.js} +6 -4
  294. package/dist/{chunk-7ymfj7m3.js → chunk-q82r31er.js} +1 -1
  295. package/dist/chunk-qajrkk97.js +298 -0
  296. package/dist/chunk-qbrh24cn.js +119 -0
  297. package/dist/chunk-qd9ntz7c.js +230 -0
  298. package/dist/chunk-qfr5tcd5.js +2537 -0
  299. package/dist/chunk-qpzfmkct.js +456 -0
  300. package/dist/{chunk-ywxd4qw4.js → chunk-qtfc6wdh.js} +2 -5
  301. package/dist/chunk-r032587e.js +83 -0
  302. package/dist/chunk-r2k2jy0y.js +51 -0
  303. package/dist/{chunk-8mqwac85.js → chunk-r4dnnggx.js} +22 -16
  304. package/dist/{chunk-5wnn3t3a.js → chunk-r5n8fvw0.js} +7 -7
  305. package/dist/{chunk-pxvatg16.js → chunk-r7kh03er.js} +231 -190
  306. package/dist/{chunk-z4wtem3z.js → chunk-rfs0mfg8.js} +147 -151
  307. package/dist/{chunk-hrzerbfw.js → chunk-rgbbtszq.js} +14 -14
  308. package/dist/{chunk-ctw5jwcd.js → chunk-rkak3kjw.js} +10 -10
  309. package/dist/chunk-rp568bfw.js +111 -0
  310. package/dist/chunk-rtv718sv.js +146 -0
  311. package/dist/{chunk-8d5eyjse.js → chunk-rvkvehat.js} +5284 -3093
  312. package/dist/chunk-s1baskk7.js +14 -0
  313. package/dist/{chunk-tse7q7k1.js → chunk-s1eb67v3.js} +79 -59
  314. package/dist/{chunk-7rn4t7tx.js → chunk-s59kx26r.js} +87 -64
  315. package/dist/chunk-s6yk6m3b.js +109 -0
  316. package/dist/{chunk-bsk44136.js → chunk-sca71yv8.js} +11 -9
  317. package/dist/chunk-sfrwm87k.js +151 -0
  318. package/dist/chunk-sgaknx21.js +123 -0
  319. package/dist/{chunk-4y62603j.js → chunk-snyaz093.js} +9 -15
  320. package/dist/{chunk-ytg914ra.js → chunk-sq8wkk3z.js} +1 -3
  321. package/dist/chunk-sxqj7s2h.js +54 -0
  322. package/dist/chunk-t2m6cjp1.js +264 -0
  323. package/dist/chunk-t6hmvb6k.js +1021 -0
  324. package/dist/chunk-t72x960a.js +125 -0
  325. package/dist/chunk-t9kashay.js +440 -0
  326. package/dist/chunk-t9wzf009.js +151 -0
  327. package/dist/chunk-ta1dgyj1.js +154 -0
  328. package/dist/chunk-tavxhayf.js +149 -0
  329. package/dist/{chunk-2tw2ve8h.js → chunk-tcdv4gp8.js} +18 -12
  330. package/dist/chunk-td3b74vm.js +362 -0
  331. package/dist/{chunk-mt25echc.js → chunk-tezak8rx.js} +1 -1
  332. package/dist/chunk-tgcw0rzx.js +262 -0
  333. package/dist/{chunk-9rcbyag3.js → chunk-tmdbrszg.js} +2 -2
  334. package/dist/{chunk-avwewk4v.js → chunk-v17qee2y.js} +12 -8
  335. package/dist/{chunk-njtjmsx7.js → chunk-v1jd31dw.js} +2 -2
  336. package/dist/chunk-var1et7e.js +66 -0
  337. package/dist/{chunk-j5zq8axt.js → chunk-ve9wswz4.js} +7 -131
  338. package/dist/{chunk-hqmz36b3.js → chunk-vf612n57.js} +21 -101
  339. package/dist/chunk-vfhabc5j.js +109 -0
  340. package/dist/{chunk-wszmas1q.js → chunk-vgy0w6tt.js} +2 -2
  341. package/dist/chunk-vh02fvz1.js +375 -0
  342. package/dist/{chunk-jz6sqm8m.js → chunk-vm935era.js} +1083 -881
  343. package/dist/{chunk-e7393td6.js → chunk-vtb8z6as.js} +14 -9
  344. package/dist/chunk-w2kf9sxn.js +115 -0
  345. package/dist/chunk-w7trx259.js +132 -0
  346. package/dist/chunk-w92b262y.js +1072 -0
  347. package/dist/chunk-w9zqjhvm.js +103 -0
  348. package/dist/{chunk-0he1tqj5.js → chunk-wb2fvy1k.js} +81 -61
  349. package/dist/chunk-ws2d81aj.js +123 -0
  350. package/dist/{chunk-k808gmhk.js → chunk-wssgdcck.js} +2 -2
  351. package/dist/{chunk-t9z6njcr.js → chunk-wtycm8km.js} +9 -9
  352. package/dist/chunk-wz0d8mna.js +108 -0
  353. package/dist/chunk-x01wtn3p.js +144 -0
  354. package/dist/{chunk-ze747xz6.js → chunk-x2sp7rcv.js} +73 -105
  355. package/dist/{chunk-7vtykt4v.js → chunk-xbprynsc.js} +18 -46
  356. package/dist/{chunk-p196v9d0.js → chunk-xext3y2y.js} +8 -6
  357. package/dist/{chunk-r66hz8j6.js → chunk-xycy3c8q.js} +15 -12
  358. package/dist/{chunk-npv8q5qr.js → chunk-y01ys1vm.js} +25 -74
  359. package/dist/{chunk-spqaamnc.js → chunk-y78t50v0.js} +2 -2
  360. package/dist/chunk-y9bgt2k1.js +78 -0
  361. package/dist/{chunk-j8rw3m89.js → chunk-ydm0nfsv.js} +6 -6
  362. package/dist/{chunk-3cn070p7.js → chunk-yetebjek.js} +291 -502
  363. package/dist/chunk-ym5r3jnk.js +2007 -0
  364. package/dist/chunk-ysks0ewj.js +237 -0
  365. package/dist/chunk-yv3evkgg.js +68 -0
  366. package/dist/chunk-yw79dz62.js +164 -0
  367. package/dist/{chunk-ea18z8vr.js → chunk-yy59gvs4.js} +159 -183
  368. package/dist/{chunk-def1dc97.js → chunk-yyax4hdg.js} +10 -8
  369. package/dist/chunk-yzx3mhfd.js +110 -0
  370. package/dist/chunk-z0q85m5f.js +108 -0
  371. package/dist/chunk-z1bs6d7k.js +24 -0
  372. package/dist/chunk-z6e5jp2w.js +119 -0
  373. package/dist/chunk-z7ssqvt6.js +6886 -0
  374. package/dist/chunk-z95yxwyb.js +61 -0
  375. package/dist/{chunk-5a3cw988.js → chunk-z9aqj026.js} +5 -5
  376. package/dist/chunk-zc6dxhk9.js +169 -0
  377. package/dist/{chunk-2t3vw4tx.js → chunk-ze6zvkg6.js} +10 -10
  378. package/dist/{chunk-t0rgmccj.js → chunk-zejm280k.js} +1 -1
  379. package/dist/chunk-zfapazzd.js +37 -0
  380. package/dist/chunk-zj4fqmnc.js +219 -0
  381. package/dist/chunk-zkrpbswn.js +1608 -0
  382. package/dist/chunk-zktbb38m.js +112 -0
  383. package/dist/{chunk-2mcrd0rj.js → chunk-zptcqa7t.js} +92 -71
  384. package/dist/{chunk-a3csma98.js → chunk-zvnsjbt8.js} +1 -1
  385. package/dist/chunk-zwaanw8y.js +110 -0
  386. package/dist/{chunk-g3t0act8.js → chunk-zzm33q8x.js} +1 -1
  387. package/dist/{chunk-3gqdqmzb.js → chunk-zzzc1ead.js} +17 -12
  388. package/dist/cli.js +39 -10
  389. package/dist/download-ripgrep.js +24821 -0
  390. package/dist/vendor/audio-capture/arm64-darwin/audio-capture.node +0 -0
  391. package/dist/vendor/audio-capture/arm64-linux/audio-capture.node +0 -0
  392. package/dist/vendor/audio-capture/arm64-win32/audio-capture.node +0 -0
  393. package/dist/vendor/audio-capture/x64-darwin/audio-capture.node +0 -0
  394. package/dist/vendor/audio-capture/x64-linux/audio-capture.node +0 -0
  395. package/dist/vendor/audio-capture/x64-win32/audio-capture.node +0 -0
  396. package/package.json +25 -15
  397. package/scripts/download-ripgrep.ts +335 -0
  398. package/scripts/postinstall.cjs +319 -0
  399. package/dist/chunk-07ysf2mw.js +0 -184
  400. package/dist/chunk-0ewgfms5.js +0 -117
  401. package/dist/chunk-165b9y9k.js +0 -70
  402. package/dist/chunk-17g3drrw.js +0 -121
  403. package/dist/chunk-1jv1ckhg.js +0 -1152
  404. package/dist/chunk-1pxd1xfp.js +0 -103
  405. package/dist/chunk-1tzexy7d.js +0 -258
  406. package/dist/chunk-271zt54b.js +0 -1871
  407. package/dist/chunk-2a27tvzp.js +0 -281
  408. package/dist/chunk-2g1zxpt7.js +0 -2833
  409. package/dist/chunk-2jb48txn.js +0 -98
  410. package/dist/chunk-2kc13eta.js +0 -88
  411. package/dist/chunk-2tme3s1c.js +0 -114
  412. package/dist/chunk-4491abz9.js +0 -99
  413. package/dist/chunk-4dfmgx6h.js +0 -69
  414. package/dist/chunk-4fbyr2hm.js +0 -279
  415. package/dist/chunk-5dsvtbwb.js +0 -87
  416. package/dist/chunk-5t59fqg3.js +0 -127
  417. package/dist/chunk-60nc5bh3.js +0 -1579
  418. package/dist/chunk-6dcq96a3.js +0 -128
  419. package/dist/chunk-6tm5941a.js +0 -152
  420. package/dist/chunk-79zmgkg5.js +0 -750
  421. package/dist/chunk-7d35rxr3.js +0 -69
  422. package/dist/chunk-7enxknwt.js +0 -442
  423. package/dist/chunk-7j0wpf4m.js +0 -89
  424. package/dist/chunk-7q6pjeyp.js +0 -1493
  425. package/dist/chunk-7whgbwhx.js +0 -584
  426. package/dist/chunk-9egdc8n4.js +0 -463
  427. package/dist/chunk-9rr0wepz.js +0 -56
  428. package/dist/chunk-ajp7hmws.js +0 -422
  429. package/dist/chunk-bm1qb16p.js +0 -17
  430. package/dist/chunk-bmvzacx5.js +0 -998
  431. package/dist/chunk-bw093kge.js +0 -129
  432. package/dist/chunk-c4q9x8t2.js +0 -105
  433. package/dist/chunk-c6421kme.js +0 -54
  434. package/dist/chunk-cdajcgne.js +0 -195
  435. package/dist/chunk-ch8avrbh.js +0 -86
  436. package/dist/chunk-chkyv40s.js +0 -2642
  437. package/dist/chunk-d049dd11.js +0 -348
  438. package/dist/chunk-d7tw94h4.js +0 -114
  439. package/dist/chunk-daeav7vb.js +0 -418
  440. package/dist/chunk-dxnv8hfn.js +0 -536
  441. package/dist/chunk-dy3tzxgq.js +0 -91
  442. package/dist/chunk-exy9bnjf.js +0 -212
  443. package/dist/chunk-f1f3dmd5.js +0 -713
  444. package/dist/chunk-f7yg1atj.js +0 -47
  445. package/dist/chunk-fakajzny.js +0 -372
  446. package/dist/chunk-ftrm87vt.js +0 -467
  447. package/dist/chunk-ftsp0cj3.js +0 -105
  448. package/dist/chunk-fv7hhcns.js +0 -345
  449. package/dist/chunk-fvcwxb8x.js +0 -83
  450. package/dist/chunk-g00hs992.js +0 -90
  451. package/dist/chunk-g5fpkpeg.js +0 -520
  452. package/dist/chunk-g9qyg278.js +0 -88
  453. package/dist/chunk-gkjdjqfs.js +0 -112
  454. package/dist/chunk-gqk545se.js +0 -6107
  455. package/dist/chunk-gyj242zr.js +0 -20
  456. package/dist/chunk-gzmjp1eb.js +0 -696
  457. package/dist/chunk-hbh17tng.js +0 -1013
  458. package/dist/chunk-hdfzyzk4.js +0 -85
  459. package/dist/chunk-hdtb5jce.js +0 -101
  460. package/dist/chunk-j99mjxam.js +0 -220
  461. package/dist/chunk-jaqg0k7h.js +0 -271
  462. package/dist/chunk-jdew773m.js +0 -115
  463. package/dist/chunk-jjsx6t78.js +0 -169
  464. package/dist/chunk-jpr8js4w.js +0 -328
  465. package/dist/chunk-jx817w05.js +0 -11
  466. package/dist/chunk-k0g3jve7.js +0 -89
  467. package/dist/chunk-k1g3g183.js +0 -128
  468. package/dist/chunk-k1p54aq6.js +0 -54
  469. package/dist/chunk-kexj9c6y.js +0 -5398
  470. package/dist/chunk-kgg1gq3t.js +0 -113
  471. package/dist/chunk-kwkrek4t.js +0 -95
  472. package/dist/chunk-m4gcjpj3.js +0 -103
  473. package/dist/chunk-m6rk1r6q.js +0 -194
  474. package/dist/chunk-mb2xmb0d.js +0 -53
  475. package/dist/chunk-mv1pbf3a.js +0 -297
  476. package/dist/chunk-my7r0cca.js +0 -469
  477. package/dist/chunk-nprycdaa.js +0 -525
  478. package/dist/chunk-p2pztr2r.js +0 -104
  479. package/dist/chunk-p68nf56z.js +0 -92
  480. package/dist/chunk-p6pc9xrz.js +0 -3443
  481. package/dist/chunk-p7skftb4.js +0 -108
  482. package/dist/chunk-pa2235xc.js +0 -160
  483. package/dist/chunk-pmzbyaat.js +0 -99
  484. package/dist/chunk-pqzk7nbh.js +0 -91
  485. package/dist/chunk-pvvew193.js +0 -802
  486. package/dist/chunk-pvx0x5zm.js +0 -2057
  487. package/dist/chunk-py77warv.js +0 -66
  488. package/dist/chunk-q43gccx5.js +0 -92
  489. package/dist/chunk-rse6x10x.js +0 -89
  490. package/dist/chunk-rxdhy7ve.js +0 -131
  491. package/dist/chunk-scb48p4v.js +0 -496
  492. package/dist/chunk-sjqtqj35.js +0 -28
  493. package/dist/chunk-sq0wf7jj.js +0 -1919
  494. package/dist/chunk-sy1hkkty.js +0 -400
  495. package/dist/chunk-sy9jf9v2.js +0 -109
  496. package/dist/chunk-t2km9bn3.js +0 -87
  497. package/dist/chunk-t4afbt2j.js +0 -88
  498. package/dist/chunk-t4c5qtdc.js +0 -42
  499. package/dist/chunk-t94jxd0x.js +0 -100
  500. package/dist/chunk-tb2g2bba.js +0 -192
  501. package/dist/chunk-tdpvdzbf.js +0 -97
  502. package/dist/chunk-tf4dw2e2.js +0 -142
  503. package/dist/chunk-tp40437d.js +0 -90
  504. package/dist/chunk-vabm7x8v.js +0 -61
  505. package/dist/chunk-veaq13qy.js +0 -490
  506. package/dist/chunk-vmz3wcnv.js +0 -641
  507. package/dist/chunk-vsgv16zj.js +0 -756
  508. package/dist/chunk-vxa0avb0.js +0 -105
  509. package/dist/chunk-x14dq3v1.js +0 -722
  510. package/dist/chunk-x6bg700t.js +0 -88
  511. package/dist/chunk-x8b7vft8.js +0 -132
  512. package/dist/chunk-xmdcxa8r.js +0 -374
  513. package/dist/chunk-y42a2xmv.js +0 -1316
  514. package/dist/chunk-y56ckcf8.js +0 -44
  515. package/dist/chunk-ybgghjqa.js +0 -602
  516. package/dist/chunk-zacq47b2.js +0 -84
  517. package/dist/chunk-zv3hxg5y.js +0 -267
  518. package/dist/chunk-zw2x3xxq.js +0 -96
  519. package/dist/chunk-zyf9epwn.js +0 -642
  520. package/dist/{chunk-whvdag1y.js → chunk-3bfs3x0h.js} +9 -9
  521. package/dist/{chunk-27xc1csx.js → chunk-dggvswz1.js} +3 -3
  522. package/dist/{chunk-0wftg29n.js → chunk-f9nt10jh.js} +3 -3
@@ -0,0 +1,352 @@
1
+ // @bun
2
+ import {
3
+ getPlatform,
4
+ init_platform
5
+ } from "./chunk-hezj20qy.js";
6
+ import {
7
+ init_log,
8
+ logError
9
+ } from "./chunk-61ahbn23.js";
10
+ import"./chunk-8tnsngw2.js";
11
+ import {
12
+ init_debug,
13
+ logForDebugging
14
+ } from "./chunk-hcgkak1j.js";
15
+ import"./chunk-fbv4apne.js";
16
+ import"./chunk-z6e5jp2w.js";
17
+ import {
18
+ init_envUtils,
19
+ isEnvTruthy,
20
+ isRunningOnHomespace
21
+ } from "./chunk-jaaxk89e.js";
22
+ import"./chunk-h4b85amj.js";
23
+ import"./chunk-07069jq1.js";
24
+ import"./chunk-vf612n57.js";
25
+ import"./chunk-d4mdda98.js";
26
+ import"./chunk-4g3v8y12.js";
27
+ import"./chunk-7739pg2c.js";
28
+ import {
29
+ __esm,
30
+ __require
31
+ } from "./chunk-qp2qdcda.js";
32
+
33
+ // src/services/voice.ts
34
+ import { spawn, spawnSync } from "child_process";
35
+ import { readFile } from "fs/promises";
36
+ function loadAudioNapi() {
37
+ audioNapiPromise ??= (async () => {
38
+ const t0 = Date.now();
39
+ const mod = await import("./chunk-yzx3mhfd.js");
40
+ mod.isNativeAudioAvailable();
41
+ audioNapi = mod;
42
+ logForDebugging(`[voice] audio-capture-napi loaded in ${Date.now() - t0}ms`);
43
+ return mod;
44
+ })();
45
+ return audioNapiPromise;
46
+ }
47
+ function hasCommand(cmd) {
48
+ const result = spawnSync(cmd, ["--version"], {
49
+ stdio: "ignore",
50
+ timeout: 3000
51
+ });
52
+ return result.error === undefined;
53
+ }
54
+ function probeArecord() {
55
+ arecordProbe ??= new Promise((resolve) => {
56
+ const child = spawn("arecord", [
57
+ "-f",
58
+ "S16_LE",
59
+ "-r",
60
+ String(RECORDING_SAMPLE_RATE),
61
+ "-c",
62
+ String(RECORDING_CHANNELS),
63
+ "-t",
64
+ "raw",
65
+ "/dev/null"
66
+ ], { stdio: ["ignore", "ignore", "pipe"] });
67
+ let stderr = "";
68
+ child.stderr?.on("data", (chunk) => {
69
+ stderr += chunk.toString();
70
+ });
71
+ const timer = setTimeout((c, r) => {
72
+ c.kill("SIGTERM");
73
+ r({ ok: true, stderr: "" });
74
+ }, 150, child, resolve);
75
+ child.once("close", (code) => {
76
+ clearTimeout(timer);
77
+ resolve({ ok: code === 0, stderr: stderr.trim() });
78
+ });
79
+ child.once("error", () => {
80
+ clearTimeout(timer);
81
+ resolve({ ok: false, stderr: "arecord: command not found" });
82
+ });
83
+ });
84
+ return arecordProbe;
85
+ }
86
+ function _resetArecordProbeForTesting() {
87
+ arecordProbe = null;
88
+ }
89
+ function linuxHasAlsaCards() {
90
+ linuxAlsaCardsMemo ??= readFile("/proc/asound/cards", "utf8").then((cards) => {
91
+ const c = cards.trim();
92
+ return c !== "" && !c.includes("no soundcards");
93
+ }, () => false);
94
+ return linuxAlsaCardsMemo;
95
+ }
96
+ function _resetAlsaCardsForTesting() {
97
+ linuxAlsaCardsMemo = null;
98
+ }
99
+ function detectPackageManager() {
100
+ if (process.platform === "darwin") {
101
+ if (hasCommand("brew")) {
102
+ return {
103
+ cmd: "brew",
104
+ args: ["install", "sox"],
105
+ displayCommand: "brew install sox"
106
+ };
107
+ }
108
+ return null;
109
+ }
110
+ if (process.platform === "linux") {
111
+ if (hasCommand("apt-get")) {
112
+ return {
113
+ cmd: "sudo",
114
+ args: ["apt-get", "install", "-y", "sox"],
115
+ displayCommand: "sudo apt-get install sox"
116
+ };
117
+ }
118
+ if (hasCommand("dnf")) {
119
+ return {
120
+ cmd: "sudo",
121
+ args: ["dnf", "install", "-y", "sox"],
122
+ displayCommand: "sudo dnf install sox"
123
+ };
124
+ }
125
+ if (hasCommand("pacman")) {
126
+ return {
127
+ cmd: "sudo",
128
+ args: ["pacman", "-S", "--noconfirm", "sox"],
129
+ displayCommand: "sudo pacman -S sox"
130
+ };
131
+ }
132
+ }
133
+ return null;
134
+ }
135
+ async function checkVoiceDependencies() {
136
+ const napi = await loadAudioNapi();
137
+ if (napi.isNativeAudioAvailable()) {
138
+ return { available: true, missing: [], installCommand: null };
139
+ }
140
+ if (process.platform === "win32") {
141
+ return {
142
+ available: false,
143
+ missing: ["Voice mode requires the native audio module (not loaded)"],
144
+ installCommand: null
145
+ };
146
+ }
147
+ if (process.platform === "linux" && hasCommand("arecord")) {
148
+ return { available: true, missing: [], installCommand: null };
149
+ }
150
+ const missing = [];
151
+ if (!hasCommand("rec")) {
152
+ missing.push("sox (rec command)");
153
+ }
154
+ const pm = missing.length > 0 ? detectPackageManager() : null;
155
+ return {
156
+ available: missing.length === 0,
157
+ missing,
158
+ installCommand: pm?.displayCommand ?? null
159
+ };
160
+ }
161
+ async function requestMicrophonePermission() {
162
+ const napi = await loadAudioNapi();
163
+ if (!napi.isNativeAudioAvailable()) {
164
+ return true;
165
+ }
166
+ const started = await startRecording((_chunk) => {}, () => {}, { silenceDetection: false });
167
+ if (started) {
168
+ stopRecording();
169
+ return true;
170
+ }
171
+ return false;
172
+ }
173
+ async function checkRecordingAvailability() {
174
+ if (isRunningOnHomespace() || isEnvTruthy(process.env.CLAUDE_CODE_REMOTE)) {
175
+ return {
176
+ available: false,
177
+ reason: `Voice mode requires microphone access, but no audio device is available in this environment.
178
+
179
+ To use voice mode, run Claude Code locally instead.`
180
+ };
181
+ }
182
+ const napi = await loadAudioNapi();
183
+ if (napi.isNativeAudioAvailable()) {
184
+ return { available: true, reason: null };
185
+ }
186
+ if (process.platform === "win32") {
187
+ return {
188
+ available: false,
189
+ reason: "Voice recording requires the native audio module, which could not be loaded."
190
+ };
191
+ }
192
+ const wslNoAudioReason = `Voice mode could not access an audio device in WSL.
193
+
194
+ WSL2 with WSLg (Windows 11) provides audio via PulseAudio \u2014 if you are on Windows 10 or WSL1, run Claude Code in native Windows instead.`;
195
+ if (process.platform === "linux" && hasCommand("arecord")) {
196
+ const probe = await probeArecord();
197
+ if (probe.ok) {
198
+ return { available: true, reason: null };
199
+ }
200
+ if (getPlatform() === "wsl") {
201
+ return { available: false, reason: wslNoAudioReason };
202
+ }
203
+ logForDebugging(`[voice] arecord probe failed: ${probe.stderr}`);
204
+ }
205
+ if (!hasCommand("rec")) {
206
+ if (getPlatform() === "wsl") {
207
+ return { available: false, reason: wslNoAudioReason };
208
+ }
209
+ const pm = detectPackageManager();
210
+ return {
211
+ available: false,
212
+ reason: pm ? `Voice mode requires SoX for audio recording. Install it with: ${pm.displayCommand}` : `Voice mode requires SoX for audio recording. Install SoX manually:
213
+ macOS: brew install sox
214
+ Ubuntu/Debian: sudo apt-get install sox
215
+ Fedora: sudo dnf install sox`
216
+ };
217
+ }
218
+ return { available: true, reason: null };
219
+ }
220
+ async function startRecording(onData, onEnd, options) {
221
+ logForDebugging(`[voice] startRecording called, platform=${process.platform}`);
222
+ const napi = await loadAudioNapi();
223
+ const nativeAvailable = napi.isNativeAudioAvailable() && (process.platform !== "linux" || await linuxHasAlsaCards());
224
+ const useSilenceDetection = options?.silenceDetection !== false;
225
+ if (nativeAvailable) {
226
+ if (nativeRecordingActive || napi.isNativeRecordingActive()) {
227
+ napi.stopNativeRecording();
228
+ nativeRecordingActive = false;
229
+ }
230
+ const started = napi.startNativeRecording((data) => {
231
+ onData(data);
232
+ }, () => {
233
+ if (useSilenceDetection) {
234
+ nativeRecordingActive = false;
235
+ onEnd();
236
+ }
237
+ });
238
+ if (started) {
239
+ nativeRecordingActive = true;
240
+ return true;
241
+ }
242
+ }
243
+ if (process.platform === "win32") {
244
+ logForDebugging("[voice] Windows native recording unavailable, no fallback");
245
+ return false;
246
+ }
247
+ if (process.platform === "linux" && hasCommand("arecord") && (await probeArecord()).ok) {
248
+ return startArecordRecording(onData, onEnd);
249
+ }
250
+ return startSoxRecording(onData, onEnd, options);
251
+ }
252
+ function startSoxRecording(onData, onEnd, options) {
253
+ const useSilenceDetection = options?.silenceDetection !== false;
254
+ const args = [
255
+ "-q",
256
+ "--buffer",
257
+ "1024",
258
+ "-t",
259
+ "raw",
260
+ "-r",
261
+ String(RECORDING_SAMPLE_RATE),
262
+ "-e",
263
+ "signed",
264
+ "-b",
265
+ "16",
266
+ "-c",
267
+ String(RECORDING_CHANNELS),
268
+ "-"
269
+ ];
270
+ if (useSilenceDetection) {
271
+ args.push("silence", "1", "0.1", SILENCE_THRESHOLD, "1", SILENCE_DURATION_SECS, SILENCE_THRESHOLD);
272
+ }
273
+ const child = spawn("rec", args, {
274
+ stdio: ["pipe", "pipe", "pipe"]
275
+ });
276
+ activeRecorder = child;
277
+ child.stdout?.on("data", (chunk) => {
278
+ onData(chunk);
279
+ });
280
+ child.stderr?.on("data", () => {});
281
+ child.on("close", () => {
282
+ activeRecorder = null;
283
+ onEnd();
284
+ });
285
+ child.on("error", (err) => {
286
+ logError(err);
287
+ activeRecorder = null;
288
+ onEnd();
289
+ });
290
+ return true;
291
+ }
292
+ function startArecordRecording(onData, onEnd) {
293
+ const args = [
294
+ "-f",
295
+ "S16_LE",
296
+ "-r",
297
+ String(RECORDING_SAMPLE_RATE),
298
+ "-c",
299
+ String(RECORDING_CHANNELS),
300
+ "-t",
301
+ "raw",
302
+ "-q",
303
+ "-"
304
+ ];
305
+ const child = spawn("arecord", args, {
306
+ stdio: ["pipe", "pipe", "pipe"]
307
+ });
308
+ activeRecorder = child;
309
+ child.stdout?.on("data", (chunk) => {
310
+ onData(chunk);
311
+ });
312
+ child.stderr?.on("data", () => {});
313
+ child.on("close", () => {
314
+ activeRecorder = null;
315
+ onEnd();
316
+ });
317
+ child.on("error", (err) => {
318
+ logError(err);
319
+ activeRecorder = null;
320
+ onEnd();
321
+ });
322
+ return true;
323
+ }
324
+ function stopRecording() {
325
+ if (nativeRecordingActive && audioNapi) {
326
+ audioNapi.stopNativeRecording();
327
+ nativeRecordingActive = false;
328
+ return;
329
+ }
330
+ if (activeRecorder) {
331
+ activeRecorder.kill("SIGTERM");
332
+ activeRecorder = null;
333
+ }
334
+ }
335
+ var audioNapi = null, audioNapiPromise = null, RECORDING_SAMPLE_RATE = 16000, RECORDING_CHANNELS = 1, SILENCE_DURATION_SECS = "2.0", SILENCE_THRESHOLD = "3%", arecordProbe = null, linuxAlsaCardsMemo = null, activeRecorder = null, nativeRecordingActive = false;
336
+ var init_voice = __esm(() => {
337
+ init_debug();
338
+ init_envUtils();
339
+ init_log();
340
+ init_platform();
341
+ });
342
+ init_voice();
343
+
344
+ export {
345
+ stopRecording,
346
+ startRecording,
347
+ requestMicrophonePermission,
348
+ checkVoiceDependencies,
349
+ checkRecordingAvailability,
350
+ _resetArecordProbeForTesting,
351
+ _resetAlsaCardsForTesting
352
+ };
@@ -3,28 +3,28 @@ import {
3
3
  getOAuthHeaders,
4
4
  init_api,
5
5
  prepareApiRequest
6
- } from "./chunk-zkmxtgc3.js";
6
+ } from "./chunk-dqvwn28p.js";
7
7
  import {
8
8
  getGlobalConfig,
9
9
  getOauthAccountInfo,
10
10
  init_auth,
11
11
  init_config1 as init_config,
12
12
  saveGlobalConfig
13
- } from "./chunk-7wm1rjfm.js";
13
+ } from "./chunk-c1k9tg7h.js";
14
14
  import {
15
15
  getOauthConfig,
16
16
  init_oauth
17
- } from "./chunk-7ymfj7m3.js";
17
+ } from "./chunk-q82r31er.js";
18
18
  import {
19
19
  init_log,
20
20
  init_privacyLevel,
21
21
  isEssentialTrafficOnly,
22
22
  logError
23
- } from "./chunk-p7g7pf3f.js";
23
+ } from "./chunk-61ahbn23.js";
24
24
  import {
25
25
  axios_default,
26
26
  init_axios
27
- } from "./chunk-xszk7n10.js";
27
+ } from "./chunk-nh3cd07f.js";
28
28
  import {
29
29
  __esm
30
30
  } from "./chunk-qp2qdcda.js";
@@ -10,7 +10,7 @@ import {
10
10
  init_xml as init_xml2,
11
11
  last_default,
12
12
  parsePluginIdentifier
13
- } from "./chunk-g9q2cznf.js";
13
+ } from "./chunk-cy6ezb6j.js";
14
14
  import {
15
15
  _overRest_default,
16
16
  _setToString_default,
@@ -25,21 +25,23 @@ import {
25
25
  init_isPlainObject,
26
26
  init_settings1 as init_settings,
27
27
  isPlainObject_default
28
- } from "./chunk-7wm1rjfm.js";
28
+ } from "./chunk-c1k9tg7h.js";
29
29
  import {
30
- init_v4
31
- } from "./chunk-g0j0t6qk.js";
32
- import {
33
- exports_external,
34
30
  init_lazySchema,
35
31
  lazySchema
36
- } from "./chunk-55wgxwa9.js";
32
+ } from "./chunk-64c1avct.js";
33
+ import {
34
+ init_v4
35
+ } from "./chunk-8g747a8x.js";
36
+ import {
37
+ exports_external
38
+ } from "./chunk-d7886r6a.js";
37
39
  import {
38
40
  CHANNEL_TAG,
39
41
  init_log,
40
42
  init_xml,
41
43
  logError
42
- } from "./chunk-p7g7pf3f.js";
44
+ } from "./chunk-61ahbn23.js";
43
45
  import {
44
46
  _baseClone_default,
45
47
  _copyObject_default,
@@ -54,7 +56,7 @@ import {
54
56
  jsonParse,
55
57
  jsonStringify,
56
58
  logForDebugging
57
- } from "./chunk-nxsh6de2.js";
59
+ } from "./chunk-hcgkak1j.js";
58
60
  import {
59
61
  _arrayMap_default,
60
62
  _arrayPush_default,
@@ -72,11 +74,11 @@ import {
72
74
  init_state,
73
75
  isArguments_default,
74
76
  isArray_default
75
- } from "./chunk-qqfa0dqg.js";
77
+ } from "./chunk-h4b85amj.js";
76
78
  import {
77
79
  _Symbol_default,
78
80
  init__Symbol
79
- } from "./chunk-hqmz36b3.js";
81
+ } from "./chunk-d4mdda98.js";
80
82
  import {
81
83
  __esm
82
84
  } from "./chunk-qp2qdcda.js";
@@ -3,11 +3,15 @@ import {
3
3
  init_process,
4
4
  writeToStderr
5
5
  } from "./chunk-fbv4apne.js";
6
+ import {
7
+ getErrnoCode,
8
+ init_errors
9
+ } from "./chunk-z6e5jp2w.js";
6
10
  import {
7
11
  getClaudeConfigHomeDir,
8
12
  init_envUtils,
9
13
  isEnvTruthy
10
- } from "./chunk-3r24h7t6.js";
14
+ } from "./chunk-jaaxk89e.js";
11
15
  import {
12
16
  _Stack_default,
13
17
  _Uint8Array_default,
@@ -37,37 +41,35 @@ import {
37
41
  init_isArray,
38
42
  init_isArrayLike,
39
43
  init_isBuffer,
40
- init_isObjectLike,
41
44
  init_keys,
42
45
  init_state,
43
46
  init_stubArray,
44
47
  isArrayLike_default,
45
48
  isArray_default,
46
49
  isBuffer_default,
47
- isObjectLike_default,
48
50
  keys_default,
49
51
  stubArray_default
50
- } from "./chunk-qqfa0dqg.js";
52
+ } from "./chunk-h4b85amj.js";
53
+ import {
54
+ init_isObjectLike,
55
+ isObjectLike_default
56
+ } from "./chunk-07069jq1.js";
51
57
  import {
52
- _Symbol_default,
53
58
  _getNative_default,
54
- _root_default,
55
59
  eq_default,
56
- init__Symbol,
57
60
  init__getNative,
58
- init__root,
59
61
  init_eq,
60
- init_isObject,
61
62
  init_memoize,
62
- isObject_default,
63
63
  memoize_default
64
- } from "./chunk-hqmz36b3.js";
64
+ } from "./chunk-vf612n57.js";
65
65
  import {
66
- init_sdk
67
- } from "./chunk-4g3v8y12.js";
68
- import {
69
- APIUserAbortError
70
- } from "./chunk-7739pg2c.js";
66
+ _Symbol_default,
67
+ _root_default,
68
+ init__Symbol,
69
+ init__root,
70
+ init_isObject,
71
+ isObject_default
72
+ } from "./chunk-d4mdda98.js";
71
73
  import {
72
74
  __callDispose,
73
75
  __esm,
@@ -164,113 +166,6 @@ var init_cleanupRegistry = __esm(() => {
164
166
  cleanupFunctions = new Set;
165
167
  });
166
168
 
167
- // src/utils/errors.ts
168
- function isAbortError(e) {
169
- return e instanceof AbortError || e instanceof APIUserAbortError || e instanceof Error && e.name === "AbortError";
170
- }
171
- function hasExactErrorMessage(error, message) {
172
- return error instanceof Error && error.message === message;
173
- }
174
- function toError(e) {
175
- return e instanceof Error ? e : new Error(String(e));
176
- }
177
- function errorMessage(e) {
178
- return e instanceof Error ? e.message : String(e);
179
- }
180
- function getErrnoCode(e) {
181
- if (e && typeof e === "object" && "code" in e && typeof e.code === "string") {
182
- return e.code;
183
- }
184
- return;
185
- }
186
- function isENOENT(e) {
187
- return getErrnoCode(e) === "ENOENT";
188
- }
189
- function getErrnoPath(e) {
190
- if (e && typeof e === "object" && "path" in e && typeof e.path === "string") {
191
- return e.path;
192
- }
193
- return;
194
- }
195
- function isFsInaccessible(e) {
196
- const code = getErrnoCode(e);
197
- return code === "ENOENT" || code === "EACCES" || code === "EPERM" || code === "ENOTDIR" || code === "ELOOP";
198
- }
199
- function classifyAxiosError(e) {
200
- const message = errorMessage(e);
201
- if (!e || typeof e !== "object" || !("isAxiosError" in e) || !e.isAxiosError) {
202
- return { kind: "other", message };
203
- }
204
- const err = e;
205
- const status = err.response?.status;
206
- if (status === 401 || status === 403)
207
- return { kind: "auth", status, message };
208
- if (err.code === "ECONNABORTED")
209
- return { kind: "timeout", status, message };
210
- if (err.code === "ECONNREFUSED" || err.code === "ENOTFOUND") {
211
- return { kind: "network", status, message };
212
- }
213
- return { kind: "http", status, message };
214
- }
215
- var ClaudeError, MalformedCommandError, AbortError, ConfigParseError, ShellError, TeleportOperationError, TelemetrySafeError_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS;
216
- var init_errors = __esm(() => {
217
- init_sdk();
218
- ClaudeError = class ClaudeError extends Error {
219
- constructor(message) {
220
- super(message);
221
- this.name = this.constructor.name;
222
- }
223
- };
224
- MalformedCommandError = class MalformedCommandError extends Error {
225
- };
226
- AbortError = class AbortError extends Error {
227
- constructor(message) {
228
- super(message);
229
- this.name = "AbortError";
230
- }
231
- };
232
- ConfigParseError = class ConfigParseError extends Error {
233
- filePath;
234
- defaultConfig;
235
- constructor(message, filePath, defaultConfig) {
236
- super(message);
237
- this.name = "ConfigParseError";
238
- this.filePath = filePath;
239
- this.defaultConfig = defaultConfig;
240
- }
241
- };
242
- ShellError = class ShellError extends Error {
243
- stdout;
244
- stderr;
245
- code;
246
- interrupted;
247
- constructor(stdout, stderr, code, interrupted) {
248
- super("Shell command failed");
249
- this.stdout = stdout;
250
- this.stderr = stderr;
251
- this.code = code;
252
- this.interrupted = interrupted;
253
- this.name = "ShellError";
254
- }
255
- };
256
- TeleportOperationError = class TeleportOperationError extends Error {
257
- formattedMessage;
258
- constructor(message, formattedMessage) {
259
- super(message);
260
- this.formattedMessage = formattedMessage;
261
- this.name = "TeleportOperationError";
262
- }
263
- };
264
- TelemetrySafeError_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS = class TelemetrySafeError_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS extends Error {
265
- telemetryMessage;
266
- constructor(message, telemetryMessage) {
267
- super(message);
268
- this.name = "TelemetrySafeError";
269
- this.telemetryMessage = telemetryMessage ?? message;
270
- }
271
- };
272
- });
273
-
274
169
  // node_modules/.bun/lodash-es@4.17.23/node_modules/lodash-es/_arrayEach.js
275
170
  function arrayEach(array, iteratee) {
276
171
  var index = -1, length = array == null ? 0 : array.length;
@@ -1589,7 +1484,7 @@ var init_debug = __esm(() => {
1589
1484
  return parseDebugFilter(filterPattern);
1590
1485
  });
1591
1486
  isDebugToStdErr = memoize_default(() => {
1592
- return process.argv.includes("--debug-to-stderr") || process.argv.includes("-d2e");
1487
+ return process.argv.includes("--debug-to-stderr");
1593
1488
  });
1594
1489
  getDebugFilePath = memoize_default(() => {
1595
1490
  for (let i = 0;i < process.argv.length; i++) {
@@ -1708,4 +1603,4 @@ var init_slowOperations = __esm(() => {
1708
1603
  slowLogging = slowLoggingExternal;
1709
1604
  });
1710
1605
 
1711
- export { createBufferedWriter, init_bufferedWriter, registerCleanup, runCleanupFunctions, init_cleanupRegistry, ClaudeError, MalformedCommandError, AbortError, isAbortError, ConfigParseError, ShellError, TeleportOperationError, TelemetrySafeError_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS, hasExactErrorMessage, toError, errorMessage, getErrnoCode, isENOENT, getErrnoPath, isFsInaccessible, classifyAxiosError, init_errors, _defineProperty_default, init__defineProperty, _baseAssignValue_default, init__baseAssignValue, _assignValue_default, init__assignValue, _copyObject_default, init__copyObject, keysIn_default, init_keysIn, _cloneBuffer_default, init__cloneBuffer, _copyArray_default, init__copyArray, _getPrototype_default, init__getPrototype, _getAllKeysIn_default, init__getAllKeysIn, _cloneTypedArray_default, init__cloneTypedArray, _initCloneObject_default, init__initCloneObject, _baseClone_default, init__baseClone, cloneDeep_default, init_cloneDeep, slowLogging, jsonStringify, jsonParse, clone, writeFileSync_DEPRECATED, init_slowOperations, safeResolvePath, isDuplicatePath, getPathsForPermissionCheck, getFsImplementation, readFileRange, tailFile, readLinesReverse, init_fsOperations, isDebugMode, enableDebugLogging, isDebugToStdErr, setHasFormattedOutput, getHasFormattedOutput, logForDebugging, getDebugLogPath, logAntError, init_debug };
1606
+ export { createBufferedWriter, init_bufferedWriter, registerCleanup, runCleanupFunctions, init_cleanupRegistry, _defineProperty_default, init__defineProperty, _baseAssignValue_default, init__baseAssignValue, _assignValue_default, init__assignValue, _copyObject_default, init__copyObject, keysIn_default, init_keysIn, _cloneBuffer_default, init__cloneBuffer, _copyArray_default, init__copyArray, _getPrototype_default, init__getPrototype, _getAllKeysIn_default, init__getAllKeysIn, _cloneTypedArray_default, init__cloneTypedArray, _initCloneObject_default, init__initCloneObject, _baseClone_default, init__baseClone, cloneDeep_default, init_cloneDeep, slowLogging, jsonStringify, jsonParse, clone, writeFileSync_DEPRECATED, init_slowOperations, safeResolvePath, isDuplicatePath, getPathsForPermissionCheck, getFsImplementation, readFileRange, tailFile, readLinesReverse, init_fsOperations, isDebugMode, enableDebugLogging, isDebugToStdErr, setHasFormattedOutput, getHasFormattedOutput, logForDebugging, getDebugLogPath, logAntError, init_debug };
@@ -2,15 +2,15 @@
2
2
  import {
3
3
  init_log,
4
4
  logError
5
- } from "./chunk-p7g7pf3f.js";
5
+ } from "./chunk-61ahbn23.js";
6
6
  import {
7
7
  getFsImplementation,
8
8
  init_fsOperations
9
- } from "./chunk-nxsh6de2.js";
9
+ } from "./chunk-hcgkak1j.js";
10
10
  import {
11
11
  init_memoize,
12
12
  memoize_default
13
- } from "./chunk-hqmz36b3.js";
13
+ } from "./chunk-vf612n57.js";
14
14
  import {
15
15
  __esm
16
16
  } from "./chunk-qp2qdcda.js";
@@ -7,14 +7,14 @@ import {
7
7
  useAppState,
8
8
  useAppStateStore,
9
9
  useSetAppState
10
- } from "./chunk-g9q2cznf.js";
10
+ } from "./chunk-cy6ezb6j.js";
11
11
  import {
12
12
  require_react
13
13
  } from "./chunk-g338npwr.js";
14
14
  import {
15
15
  getIsRemoteMode,
16
16
  init_state
17
- } from "./chunk-qqfa0dqg.js";
17
+ } from "./chunk-h4b85amj.js";
18
18
  import {
19
19
  __esm,
20
20
  __toESM