autohand-cli 0.8.3 → 0.9.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 (510) hide show
  1. package/README.md +173 -74
  2. package/dist/AgentRegistry-EGBDIUAK.cjs +10 -0
  3. package/dist/{AgentRegistry-ODDXPAFR.js → AgentRegistry-XPWSVO3Q.js} +2 -2
  4. package/dist/{AutomodeManager-EOVHGRPP.js → AutomodeManager-APLLPEYJ.js} +31 -17
  5. package/dist/{AutomodeManager-6ATBE7Q5.cjs → AutomodeManager-MPSXT2RH.cjs} +38 -24
  6. package/dist/CommunitySkillsCache-2OIUV227.cjs +8 -0
  7. package/dist/{CommunitySkillsCache-QLE57BN5.js → CommunitySkillsCache-ZEQWP6YM.js} +2 -2
  8. package/dist/GitHubRegistryFetcher-CYJLF2XL.cjs +7 -0
  9. package/dist/{GitHubRegistryFetcher-NT5GFZXS.js → GitHubRegistryFetcher-J2BWPXJF.js} +1 -1
  10. package/dist/{HookManager-B2F35M27.js → HookManager-CWLTFKWO.js} +1 -1
  11. package/dist/{HookManager-PFAFE3FK.cjs → HookManager-TMAJQU4S.cjs} +2 -2
  12. package/dist/{ImportWizard-CJRZPPHL.cjs → ImportWizard-MQXEED2U.cjs} +37 -13
  13. package/dist/{ImportWizard-OHRKBANZ.js → ImportWizard-QBKQEXDW.js} +33 -9
  14. package/dist/LearnAdvisor-46FG2XIP.js +9 -0
  15. package/dist/LearnAdvisor-XBRDNAGH.cjs +9 -0
  16. package/dist/{McpClientManager-NQ3EW2IF.cjs → McpClientManager-BNSKLHIN.cjs} +2 -2
  17. package/dist/{McpClientManager-VBIMGKXU.js → McpClientManager-SL35BR24.js} +1 -1
  18. package/dist/MemoryManager-34L4YOKA.cjs +8 -0
  19. package/dist/{MemoryManager-2LAT7IHS.js → MemoryManager-WJMLPWGU.js} +2 -2
  20. package/dist/NVIDIAProvider-2HR737UE.js +14 -0
  21. package/dist/NVIDIAProvider-MVTL62PR.cjs +14 -0
  22. package/dist/PermissionManager-5OOJ7FAT.cjs +11 -0
  23. package/dist/{PermissionManager-7NQHRCHY.js → PermissionManager-KMYILJ4Z.js} +3 -3
  24. package/dist/{ProjectProfiler-UG42W6WD.cjs → ProjectProfiler-CDAE7ECW.cjs} +1 -0
  25. package/dist/{ProjectProfiler-P4QJQWWA.js → ProjectProfiler-NZTJDRHD.js} +1 -0
  26. package/dist/ProviderFactory-C3YPXTDD.cjs +11 -0
  27. package/dist/{ProviderFactory-2IYJ5OPW.js → ProviderFactory-HFPRVQ25.js} +3 -1
  28. package/dist/{SessionManager-4U4JFQ3C.js → SessionManager-PNBTJJTQ.js} +2 -2
  29. package/dist/SessionManager-WAPTFMDO.cjs +10 -0
  30. package/dist/{SkillsRegistry-RFEINXRT.js → SkillsRegistry-4RRD5GMX.js} +2 -2
  31. package/dist/SkillsRegistry-7AJP74GJ.cjs +9 -0
  32. package/dist/SubAgent-FDIH3DXB.js +11 -0
  33. package/dist/SubAgent-HVL2ICVZ.cjs +11 -0
  34. package/dist/{SyncApiClient-B5RT2ECG.js → SyncApiClient-LRPFNCKJ.js} +1 -1
  35. package/dist/SyncApiClient-VMBOLQ6H.cjs +11 -0
  36. package/dist/about-BW3PDZUU.js +14 -0
  37. package/dist/about-FCAX37YC.cjs +14 -0
  38. package/dist/acp-EOETGAHC.cjs +1517 -0
  39. package/dist/acp-VHEL7BOW.js +1517 -0
  40. package/dist/actionExecutor-33I47NZS.js +24 -0
  41. package/dist/actionExecutor-4YBMR3YH.cjs +24 -0
  42. package/dist/add-dir-7SS6KSH5.cjs +11 -0
  43. package/dist/{add-dir-TUJM3PG5.js → add-dir-VFX7QT4E.js} +3 -2
  44. package/dist/agent-DMRUFU4M.cjs +116 -0
  45. package/dist/agent-WCJEYQJT.js +116 -0
  46. package/dist/agents/builtin/code-cleaner.md +1 -1
  47. package/dist/agents/builtin/docs-writer.md +1 -1
  48. package/dist/agents/builtin/researcher.md +2 -2
  49. package/dist/agents/builtin/reviewer.md +1 -1
  50. package/dist/agents/builtin/tester.md +1 -1
  51. package/dist/agents/builtin/todo-resolver.md +1 -1
  52. package/dist/agents-CHROO3VU.cjs +17 -0
  53. package/dist/agents-UVDUL65K.js +17 -0
  54. package/dist/agents-new-AUBWSOXP.js +17 -0
  55. package/dist/agents-new-Y562WC47.cjs +17 -0
  56. package/dist/{autoSkill-LQEVQFIH.js → autoSkill-EFMK6WU6.js} +2 -2
  57. package/dist/autoSkill-YOLLFTP2.cjs +20 -0
  58. package/dist/{automode-R6P3VHLS.js → automode-BMYSRM34.js} +2 -2
  59. package/dist/automode-DBLKTTKD.cjs +10 -0
  60. package/dist/browserToolBridge-BXRQB4B4.cjs +58 -0
  61. package/dist/browserToolBridge-F5N66PE7.js +58 -0
  62. package/dist/chrome-ATC4OO5I.cjs +20 -0
  63. package/dist/chrome-NHJ44WUN.js +50 -0
  64. package/dist/chrome-O62WXV7F.js +20 -0
  65. package/dist/chrome-XHJLCO4M.cjs +50 -0
  66. package/dist/chromeSkill-53TH55PM.js +105 -0
  67. package/dist/chromeSkill-THW7N4IY.cjs +105 -0
  68. package/dist/{chunk-EGPXJERY.cjs → chunk-2CGE7ZV3.cjs} +26 -26
  69. package/dist/chunk-2H5O745H.js +63 -0
  70. package/dist/chunk-2HOLOHVK.js +2219 -0
  71. package/dist/{chunk-3PDTTAKJ.js → chunk-2QL6MNXG.js} +15 -8
  72. package/dist/{chunk-U55TWFJI.cjs → chunk-2VHB43IX.cjs} +24 -6
  73. package/dist/{chunk-VG34MG2U.js → chunk-37M5UM6I.js} +9 -6
  74. package/dist/{chunk-KLWJIPU2.cjs → chunk-3DDL2E55.cjs} +20 -16
  75. package/dist/chunk-3EDDDZS2.cjs +5 -0
  76. package/dist/{chunk-2UC22DJU.js → chunk-3GUEUCZK.js} +28 -4
  77. package/dist/{chunk-DVUHHH3B.cjs → chunk-3KLSNNRW.cjs} +4 -4
  78. package/dist/chunk-3LJJG5YY.cjs +387 -0
  79. package/dist/chunk-3OF56EMA.cjs +197 -0
  80. package/dist/chunk-3PXKRVCW.js +108 -0
  81. package/dist/{chunk-ADUFCS4Q.cjs → chunk-3S563FNF.cjs} +160 -79
  82. package/dist/chunk-3UT7R3XV.js +663 -0
  83. package/dist/chunk-4256YRCO.cjs +80 -0
  84. package/dist/chunk-46C73ZKK.cjs +663 -0
  85. package/dist/chunk-46MTALKD.js +44 -0
  86. package/dist/{chunk-AEJH23FO.cjs → chunk-47PHDKNW.cjs} +6 -6
  87. package/dist/chunk-4LMUDS2K.js +124 -0
  88. package/dist/{chunk-HLHTG5ZU.cjs → chunk-5CMYEM3R.cjs} +14 -12
  89. package/dist/{chunk-MBBY4ZIK.js → chunk-5F6ZKSHO.js} +4 -1
  90. package/dist/chunk-5JFTY3VU.js +74 -0
  91. package/dist/chunk-5JTTM5SC.js +59 -0
  92. package/dist/{chunk-IETRBBMP.cjs → chunk-5K3CDSWZ.cjs} +108 -31
  93. package/dist/{chunk-GJH7XMSK.js → chunk-5VHP6HDQ.js} +8 -6
  94. package/dist/{chunk-6ZCULLCA.js → chunk-62RTC3XX.js} +1 -1
  95. package/dist/{chunk-64H4FRM3.cjs → chunk-6GUODJKM.cjs} +32 -34
  96. package/dist/{chunk-47CKWKEX.cjs → chunk-6HH236FV.cjs} +9 -4
  97. package/dist/{chunk-WHE2SWHU.js → chunk-6NVAK6CK.js} +2 -2
  98. package/dist/chunk-6R25D2H5.js +121 -0
  99. package/dist/{chunk-OUZQXMHL.cjs → chunk-6XVVIY54.cjs} +55 -25
  100. package/dist/{chunk-3L53OA4E.cjs → chunk-75EDROHL.cjs} +10 -10
  101. package/dist/{chunk-G4CAKI3V.js → chunk-7HPWMALN.js} +7 -2
  102. package/dist/chunk-7JLT2VNW.cjs +18963 -0
  103. package/dist/chunk-7LWQCE4Y.cjs +987 -0
  104. package/dist/{chunk-OLSBBZW6.cjs → chunk-7MU7LWF3.cjs} +5 -5
  105. package/dist/{chunk-TUD3Z3BD.js → chunk-7RFJB75Y.js} +140 -59
  106. package/dist/{chunk-X2MSVKDV.js → chunk-A7HHCIDQ.js} +2 -2
  107. package/dist/{chunk-SKYG33B2.cjs → chunk-AC7DZ6SK.cjs} +3 -3
  108. package/dist/{chunk-XX2ZO7DS.js → chunk-ACDQGA4Z.js} +90 -16
  109. package/dist/{chunk-CZXGCVTR.cjs → chunk-AOKCI722.cjs} +2 -2
  110. package/dist/chunk-ARBEHFCG.js +715 -0
  111. package/dist/{chunk-OOKY3HPZ.js → chunk-AT7OWLY5.js} +50 -9
  112. package/dist/chunk-AU6JAGZJ.cjs +231 -0
  113. package/dist/chunk-AUFNACED.js +18963 -0
  114. package/dist/{chunk-N2BLVUPM.cjs → chunk-AUYSIEVV.cjs} +3 -3
  115. package/dist/chunk-B4HSNOIH.cjs +354 -0
  116. package/dist/{chunk-EGMZDTSL.js → chunk-B5CGDNMR.js} +10 -2
  117. package/dist/{chunk-FTYY5JJD.js → chunk-BFQDQRDE.js} +2 -2
  118. package/dist/{chunk-2AA5MFES.js → chunk-BL2UC7HC.js} +8 -5
  119. package/dist/{chunk-T2M64VHA.cjs → chunk-BQ22N3TX.cjs} +56 -41
  120. package/dist/chunk-BQU3HAE7.js +21 -0
  121. package/dist/chunk-BWF4VDYE.js +3897 -0
  122. package/dist/chunk-BYE7RQFZ.cjs +121 -0
  123. package/dist/{chunk-APIXPPMT.js → chunk-CBFH2J3O.js} +855 -33
  124. package/dist/chunk-CCVMREXI.js +420 -0
  125. package/dist/chunk-CFAWTLSC.js +13 -0
  126. package/dist/{chunk-G27PQQFD.js → chunk-CFFE4VA3.js} +1 -1
  127. package/dist/{chunk-ZYQMLKOK.cjs → chunk-CH2J4PVE.cjs} +212 -70
  128. package/dist/{chunk-7BTSG4ME.cjs → chunk-CHI52KFR.cjs} +855 -33
  129. package/dist/{chunk-DJDE4DTT.cjs → chunk-CWINVFRI.cjs} +25 -19
  130. package/dist/{chunk-HXGBSJL5.cjs → chunk-D2OSPLYC.cjs} +2 -2
  131. package/dist/{chunk-GBHDROGL.js → chunk-D6GZBSOX.js} +16 -4
  132. package/dist/{chunk-CNBKZEX5.cjs → chunk-DA7NBAJK.cjs} +49 -17
  133. package/dist/chunk-DEQVRSV5.cjs +866 -0
  134. package/dist/{chunk-RGR6ME5J.cjs → chunk-DI57A4BX.cjs} +25 -28
  135. package/dist/{chunk-K2C56QGS.cjs → chunk-DIZTWFVR.cjs} +1499 -482
  136. package/dist/{chunk-YZXUDM5X.js → chunk-DLP436GI.js} +204 -62
  137. package/dist/{chunk-OHUZKDGX.js → chunk-DMRXF5DU.js} +3 -3
  138. package/dist/{chunk-U46VYPLR.cjs → chunk-DPSIGY6L.cjs} +9 -9
  139. package/dist/{chunk-SEKD5FH3.cjs → chunk-E26KKI46.cjs} +5 -2
  140. package/dist/{chunk-SJAVBCOA.js → chunk-E46DJH5S.js} +3 -3
  141. package/dist/{chunk-DV2ZHK7B.cjs → chunk-E6GFD7VR.cjs} +49 -26
  142. package/dist/chunk-ES2HJQ4N.js +37 -0
  143. package/dist/chunk-EZJHLOWP.js +80 -0
  144. package/dist/chunk-FFBDRUO5.cjs +59 -0
  145. package/dist/{chunk-SV2WA57F.js → chunk-FGT6KK6T.js} +38 -15
  146. package/dist/{chunk-SAHBLB3E.js → chunk-FP46B4X3.js} +208 -3
  147. package/dist/{chunk-QXH5RCFI.js → chunk-FQAVGSPW.js} +2 -2
  148. package/dist/chunk-FQVG6ZHF.js +197 -0
  149. package/dist/chunk-GBMDFWJX.cjs +152 -0
  150. package/dist/{chunk-NAGQ2PDC.js → chunk-GGLKUENP.js} +1453 -436
  151. package/dist/{chunk-S52YW5ZQ.js → chunk-GNBBIAMD.js} +16 -19
  152. package/dist/{chunk-MYISNQH4.js → chunk-GWO66KBI.js} +1 -1
  153. package/dist/chunk-GWY26SUD.cjs +63 -0
  154. package/dist/{chunk-YGN4CQIP.js → chunk-GZ6DV2UG.js} +1 -1
  155. package/dist/{chunk-EZMINVLU.js → chunk-H4D2Q2AL.js} +5 -2
  156. package/dist/{chunk-3WVJEL7K.cjs → chunk-HDK2EHVH.cjs} +3 -1
  157. package/dist/chunk-HJIXWGQZ.js +139 -0
  158. package/dist/{chunk-ULDM2SNB.js → chunk-HKYZSUQ5.js} +48 -47
  159. package/dist/{chunk-LQGVEP3E.js → chunk-HQUSEWT4.js} +45 -13
  160. package/dist/{chunk-HTLINWX6.cjs → chunk-HQWQZML5.cjs} +16 -13
  161. package/dist/{chunk-DVZOENQ7.cjs → chunk-HS4USDND.cjs} +9 -4
  162. package/dist/chunk-HSCUPEA4.cjs +3897 -0
  163. package/dist/{chunk-JCLYQ2JC.js → chunk-HXJEGMGB.js} +12 -6
  164. package/dist/{chunk-LJFUXC56.cjs → chunk-HXQREVTA.cjs} +9 -6
  165. package/dist/{chunk-N7LI55V4.js → chunk-I24CWKKK.js} +15 -8
  166. package/dist/chunk-IAGCRVJ3.js +355 -0
  167. package/dist/chunk-IEXKKKOF.cjs +92 -0
  168. package/dist/{chunk-5IXII4HX.cjs → chunk-IGMPWJ2I.cjs} +19 -12
  169. package/dist/chunk-IKUMVBCW.cjs +33 -0
  170. package/dist/{chunk-XTB6VJVQ.cjs → chunk-J2K57QM7.cjs} +6 -6
  171. package/dist/{chunk-56SWIDEL.cjs → chunk-J5ADZN6V.cjs} +57 -56
  172. package/dist/chunk-J5HE6CUM.cjs +124 -0
  173. package/dist/{chunk-LIEXWM2M.js → chunk-JAQO6XDB.js} +19 -1
  174. package/dist/chunk-JIMSII7R.js +987 -0
  175. package/dist/chunk-JJ4KA7HK.cjs +2219 -0
  176. package/dist/{chunk-ZLSGXMGQ.js → chunk-JMN3GZU6.js} +2 -0
  177. package/dist/{chunk-X5VSP65C.cjs → chunk-JP3YHTQ2.cjs} +4 -4
  178. package/dist/{chunk-SKV2F3NM.js → chunk-JYKPWK5O.js} +1 -1
  179. package/dist/{chunk-NNPAM4HC.cjs → chunk-KNTUI4TZ.cjs} +12 -6
  180. package/dist/{chunk-HIVRCQS2.js → chunk-L4F7SUYL.js} +56 -25
  181. package/dist/{chunk-C5IJIM2V.cjs → chunk-LDJQ5QHG.cjs} +68 -37
  182. package/dist/{chunk-ULQ6MDSJ.cjs → chunk-LFDPTJYF.cjs} +43 -35
  183. package/dist/chunk-LJD7KR3L.cjs +44 -0
  184. package/dist/chunk-LN7D3EJZ.js +387 -0
  185. package/dist/{chunk-KANW6OYC.cjs → chunk-LQBONA55.cjs} +32 -8
  186. package/dist/{chunk-NCC6ETZS.js → chunk-LUMV3DB2.js} +41 -33
  187. package/dist/chunk-M4KNC5BQ.js +78 -0
  188. package/dist/chunk-MO4KP6XS.cjs +229 -0
  189. package/dist/{chunk-BVKXEQVG.cjs → chunk-MOJ7ADW4.cjs} +22 -10
  190. package/dist/chunk-MPULXVC4.cjs +715 -0
  191. package/dist/{chunk-VEKDGU2Q.cjs → chunk-MQESBFBZ.cjs} +46 -23
  192. package/dist/chunk-MUNUUFU7.cjs +21 -0
  193. package/dist/{chunk-ZSPXQYG2.js → chunk-MX75JYIY.js} +7 -5
  194. package/dist/chunk-MXVIDIC6.cjs +139 -0
  195. package/dist/{chunk-3K2ESU53.cjs → chunk-N6O3XUZ2.cjs} +2 -2
  196. package/dist/{chunk-BYONM7UM.js → chunk-NBGOIFKP.js} +265 -18
  197. package/dist/{chunk-SLQAYV3W.js → chunk-NMQ47RCG.js} +8 -2
  198. package/dist/{chunk-JYTDYJVW.js → chunk-O64I2GYI.js} +1 -1
  199. package/dist/{chunk-IFFXSTOM.cjs → chunk-O6TQP7U7.cjs} +3 -3
  200. package/dist/{chunk-AYS2ASM7.js → chunk-OHWMWKJQ.js} +1 -1
  201. package/dist/{chunk-N23UAW4I.js → chunk-OM24WXEE.js} +7 -2
  202. package/dist/{chunk-NAJ4IZKD.cjs → chunk-OPNI6O7F.cjs} +8 -6
  203. package/dist/chunk-OR67YXQK.cjs +13 -0
  204. package/dist/{chunk-XVUHNWMX.js → chunk-OV3PVUYN.js} +17 -19
  205. package/dist/{chunk-TNZRZQ7Q.js → chunk-PB7W7R72.js} +3 -78
  206. package/dist/chunk-PCM3N3CL.cjs +37 -0
  207. package/dist/{chunk-A4IJHHV7.cjs → chunk-PDHT7LQS.cjs} +52 -11
  208. package/dist/{chunk-HPHJ73GU.cjs → chunk-PHJO5YAL.cjs} +9 -9
  209. package/dist/{chunk-KPELYZ6L.js → chunk-PQLKJCIE.js} +2 -2
  210. package/dist/chunk-PUD76XQT.cjs +78 -0
  211. package/dist/chunk-Q2IL4DDI.cjs +355 -0
  212. package/dist/{chunk-WPVWQSL7.cjs → chunk-Q6AC3PHY.cjs} +16 -13
  213. package/dist/{chunk-XRZEUWKF.js → chunk-QCHIDZBA.js} +1 -1
  214. package/dist/chunk-QKP772OZ.js +4291 -0
  215. package/dist/chunk-QQ7PANOP.js +59 -0
  216. package/dist/{chunk-YHD6TUIR.cjs → chunk-QW2RW2GY.cjs} +2 -0
  217. package/dist/chunk-RAKO7UN7.js +114 -0
  218. package/dist/chunk-RBHANOYY.js +33 -0
  219. package/dist/chunk-RBZ7AFX7.cjs +29 -0
  220. package/dist/{chunk-GCXYXLRA.cjs → chunk-REMGR23V.cjs} +46 -49
  221. package/dist/chunk-ROLA6EFO.cjs +85 -0
  222. package/dist/{chunk-RDF37HKB.cjs → chunk-SOLBYSLY.cjs} +3 -2
  223. package/dist/{chunk-KQGPTCQJ.js → chunk-SWCQM52V.js} +68 -25
  224. package/dist/{chunk-L3TWPROA.js → chunk-TBOLJDUG.js} +39 -24
  225. package/dist/chunk-TH26BQJG.js +101 -0
  226. package/dist/{chunk-245KJE5Y.cjs → chunk-TJNBASFD.cjs} +14 -6
  227. package/dist/chunk-TKKN34TV.js +229 -0
  228. package/dist/chunk-TQ33WBY5.cjs +74 -0
  229. package/dist/{chunk-EGFT4PGW.js → chunk-TWQDAUZU.js} +5 -2
  230. package/dist/{chunk-J2GSFVUV.cjs → chunk-TXPSTCG7.cjs} +74 -59
  231. package/dist/{chunk-5K6NGAVM.js → chunk-U4C3HW6P.js} +67 -52
  232. package/dist/{chunk-3WICOC33.js → chunk-UEIXJG45.js} +105 -81
  233. package/dist/{chunk-22D2CNTP.cjs → chunk-UGFVM77J.cjs} +5 -2
  234. package/dist/chunk-UOQECODR.js +34 -0
  235. package/dist/chunk-UR27UDTB.js +354 -0
  236. package/dist/chunk-UWFG2R2I.cjs +420 -0
  237. package/dist/{chunk-Y72HH2TF.cjs → chunk-UXLW45ZE.cjs} +102 -28
  238. package/dist/{chunk-FPHU2ES6.cjs → chunk-VBOFPU5M.cjs} +6 -0
  239. package/dist/{chunk-NTSDP2WB.js → chunk-VDWJMWDF.js} +54 -24
  240. package/dist/{chunk-3O3MOK5C.cjs → chunk-VGEV44V2.cjs} +944 -133
  241. package/dist/{chunk-IDFF5J2E.js → chunk-VKBIE6I6.js} +38 -7
  242. package/dist/{chunk-HBZU3RBZ.js → chunk-VRMZO6TB.js} +31 -8
  243. package/dist/chunk-VUGOOGHB.js +400 -0
  244. package/dist/chunk-WBU4Q4GS.cjs +400 -0
  245. package/dist/chunk-WGLBC5AY.cjs +59 -0
  246. package/dist/{chunk-KWXVKLQ5.cjs → chunk-WGNMOVMT.cjs} +7 -82
  247. package/dist/{chunk-RKJTGGMU.cjs → chunk-WKRDBCP2.cjs} +221 -16
  248. package/dist/chunk-WRTXCQ3V.cjs +4291 -0
  249. package/dist/chunk-WTB7AFL6.cjs +101 -0
  250. package/dist/{chunk-NDMIPTV4.js → chunk-WZV6UVPY.js} +8 -3
  251. package/dist/chunk-XF2WIKHR.cjs +34 -0
  252. package/dist/{chunk-W7RYQJLO.cjs → chunk-XGMI6IYB.cjs} +46 -15
  253. package/dist/{chunk-NA6WQDYW.js → chunk-XIVFAD2L.js} +918 -107
  254. package/dist/chunk-XV2HXRHX.js +85 -0
  255. package/dist/{chunk-3VTAFAL2.js → chunk-Y3M2DABP.js} +16 -12
  256. package/dist/{chunk-QNGEW5TC.js → chunk-YV63VW4K.js} +1 -1
  257. package/dist/{chunk-UJ2JSM6H.js → chunk-YVQI26H4.js} +2 -0
  258. package/dist/{chunk-X2YOZQIP.cjs → chunk-YWTIXHU6.cjs} +266 -19
  259. package/dist/chunk-YZWE7XSM.js +5 -0
  260. package/dist/{chunk-TUAITHWL.js → chunk-Z3XSSF7B.js} +2 -1
  261. package/dist/{chunk-6UJMCWRY.js → chunk-Z4LIPMPM.js} +6 -0
  262. package/dist/chunk-ZASDSY7P.cjs +114 -0
  263. package/dist/{chunk-R33VKSH5.cjs → chunk-ZHJ7JGME.cjs} +11 -11
  264. package/dist/chunk-ZPD2AO3U.js +866 -0
  265. package/dist/{chunk-7UOUW76C.js → chunk-ZQAT5VT5.js} +101 -24
  266. package/dist/chunk-ZR46OJNZ.js +152 -0
  267. package/dist/{chunk-7TQH3CL4.cjs → chunk-ZZ63NW7A.cjs} +78 -35
  268. package/dist/clear-33TWQ2ES.cjs +12 -0
  269. package/dist/{clear-A3N4GK2S.js → clear-OFLFQ3MR.js} +3 -3
  270. package/dist/{communityInstaller-LOP2EDH5.js → communityInstaller-COB2KTOW.js} +8 -5
  271. package/dist/communityInstaller-TWMGPSYM.cjs +22 -0
  272. package/dist/completion-IIZMHXYP.cjs +17 -0
  273. package/dist/completion-PT4VM2H2.js +17 -0
  274. package/dist/config-KL6WU7R2.cjs +20 -0
  275. package/dist/{config-HPJPKTO6.js → config-R4O7GBTY.js} +6 -4
  276. package/dist/{constants-LISJW3DD.js → constants-HVCHVQAF.js} +1 -1
  277. package/dist/constants-RLMJ5D5P.cjs +21 -0
  278. package/dist/{defaultHooks-IHSJR2AX.cjs → defaultHooks-2V2CQL63.cjs} +25 -10
  279. package/dist/{defaultHooks-KUKHK3AG.js → defaultHooks-TMHDU3FS.js} +25 -10
  280. package/dist/export-3PK3VFCE.js +15 -0
  281. package/dist/export-WLGNWEMJ.cjs +15 -0
  282. package/dist/feedback-G635NCLJ.js +18 -0
  283. package/dist/feedback-LLMK3TZH.cjs +18 -0
  284. package/dist/fffSearchProvider-2YCNKOYD.js +412 -0
  285. package/dist/fffSearchProvider-W6627E2V.cjs +412 -0
  286. package/dist/{filesystem-Z7BWAWMZ.js → filesystem-L6DQKGWK.js} +3 -2
  287. package/dist/filesystem-PGUPCMVK.cjs +11 -0
  288. package/dist/help-BAXLP2M2.cjs +12 -0
  289. package/dist/{help-GFQXNZOK.js → help-X3OAZ3CY.js} +2 -2
  290. package/dist/history-6HOJSEMT.cjs +14 -0
  291. package/dist/{history-E3N6BJP7.js → history-YKFPHBJN.js} +2 -2
  292. package/dist/hooks-7TA4PIIB.js +18 -0
  293. package/dist/hooks-XVFU67T2.cjs +18 -0
  294. package/dist/{i18n-SY7QRM22.js → i18n-2KBUU7XL.js} +1 -1
  295. package/dist/i18n-MUJMKTFM.cjs +33 -0
  296. package/dist/ide-CCQ33PGC.cjs +15 -0
  297. package/dist/ide-VLVFBZ5F.js +15 -0
  298. package/dist/immediateCommandRouter-MTEHZXQX.js +15 -0
  299. package/dist/immediateCommandRouter-ROXU3MWT.cjs +15 -0
  300. package/dist/{import-W7SVLSTC.js → import-4CHYLS4K.js} +3 -3
  301. package/dist/{import-ADI37ZUR.cjs → import-I7T4ZHYL.cjs} +3 -3
  302. package/dist/import-J46F54JY.cjs +10 -0
  303. package/dist/{import-KGKKZ3B7.js → import-JWPYKXCZ.js} +2 -2
  304. package/dist/index.cjs +744 -23015
  305. package/dist/index.d.cts +93 -0
  306. package/dist/index.d.ts +93 -0
  307. package/dist/index.js +780 -23051
  308. package/dist/{init-7MFK626E.js → init-262MWZV4.js} +2 -2
  309. package/dist/init-EE5Y7RBL.cjs +10 -0
  310. package/dist/inkMode-VUE6ZDLD.cjs +7 -0
  311. package/dist/inkMode-WBNFOSAT.js +7 -0
  312. package/dist/inputPrompt-IIFKCX5Q.cjs +90 -0
  313. package/dist/inputPrompt-YGBHDUEP.js +90 -0
  314. package/dist/language-CVLPB7OV.js +21 -0
  315. package/dist/language-ZTWFHUSV.cjs +21 -0
  316. package/dist/learn-PON7I5QS.js +23 -0
  317. package/dist/learn-XLRSVNA3.cjs +23 -0
  318. package/dist/login-223QTGBG.cjs +26 -0
  319. package/dist/login-6IKTBUBY.js +26 -0
  320. package/dist/logout-RN2AG6SI.js +23 -0
  321. package/dist/logout-U3M4FFX7.cjs +23 -0
  322. package/dist/mcp-5O6PUL4G.js +20 -0
  323. package/dist/mcp-NUQ76QQB.cjs +20 -0
  324. package/dist/{mcp-install-2FEROZTL.js → mcp-install-6XWXLFVY.js} +17 -10
  325. package/dist/{mcp-install-WM6BQRI5.cjs → mcp-install-P6DHES7V.cjs} +21 -14
  326. package/dist/memory-CYMDQ2YC.cjs +10 -0
  327. package/dist/{memory-J73WZH2I.js → memory-Q54CESNM.js} +2 -2
  328. package/dist/{model-AES267IN.js → model-6AJ77PJG.js} +2 -2
  329. package/dist/model-IDRCKDML.cjs +10 -0
  330. package/dist/new-7LEWOUF2.cjs +12 -0
  331. package/dist/{new-5CLF3MKH.js → new-ZXHEWC2S.js} +3 -3
  332. package/dist/onboarding-FXX7YHSJ.cjs +35 -0
  333. package/dist/onboarding-JYNMK6NI.js +35 -0
  334. package/dist/permissions-YBNSANIA.cjs +10 -0
  335. package/dist/permissions-YHJMVA6L.js +10 -0
  336. package/dist/plan-XEJMOT55.cjs +13 -0
  337. package/dist/{plan-65HMS5HQ.js → plan-YYUAXPTL.js} +3 -1
  338. package/dist/pr-review-CW6J7P62.cjs +9 -0
  339. package/dist/pr-review-YZSBQVT2.js +9 -0
  340. package/dist/quit-B43SJ6E4.cjs +10 -0
  341. package/dist/{quit-XDZYRSPU.js → quit-GWTNHQSP.js} +2 -2
  342. package/dist/rawMode-6W5AXAKI.cjs +7 -0
  343. package/dist/rawMode-GFNLXQPU.js +7 -0
  344. package/dist/{registry-PTHWERKC.js → registry-34GL6BNJ.js} +29 -44
  345. package/dist/{registry-IVT4G2RT.cjs → registry-V24W7YK6.cjs} +65 -80
  346. package/dist/repeat-P4FAPE3Y.cjs +17 -0
  347. package/dist/{repeat-EVCWUL6Z.js → repeat-RALE6AUO.js} +7 -3
  348. package/dist/resume-DYVOQN5L.cjs +16 -0
  349. package/dist/resume-M25UQKOX.js +16 -0
  350. package/dist/review-QHP2KP4Q.js +9 -0
  351. package/dist/review-UWHWQHCB.cjs +9 -0
  352. package/dist/ripgrep-67SCU2BA.cjs +9 -0
  353. package/dist/ripgrep-VHJQQ55W.js +9 -0
  354. package/dist/rpc-NPS3PU4O.cjs +3730 -0
  355. package/dist/rpc-S3DGW6KV.js +3730 -0
  356. package/dist/search-CPX4PWHP.js +20 -0
  357. package/dist/search-VUF3M4N3.cjs +20 -0
  358. package/dist/{sessions-6GWEBMKS.js → sessions-IYAXMK23.js} +2 -2
  359. package/dist/sessions-JODKER5D.cjs +10 -0
  360. package/dist/{settings-BXR6SBJP.js → settings-55BNW6BF.js} +11 -8
  361. package/dist/settings-BKTS7OMC.cjs +33 -0
  362. package/dist/setup-IRC5HQG2.js +29 -0
  363. package/dist/setup-MMQ7TWOP.cjs +29 -0
  364. package/dist/share-6JRQECAH.cjs +17 -0
  365. package/dist/share-YM5MJKMO.js +17 -0
  366. package/dist/{skills-PG542VEB.cjs → skills-GGMZOVIE.cjs} +13 -10
  367. package/dist/skills-LWSOKOSH.cjs +29 -0
  368. package/dist/{skills-ZZCIAS7C.js → skills-MVIZNHT4.js} +12 -9
  369. package/dist/skills-VWOMV3CR.js +29 -0
  370. package/dist/{skills-install-SRC3Z2MS.js → skills-install-QBA5RCV6.js} +21 -70
  371. package/dist/{skills-install-67DOBPJC.cjs → skills-install-VTAMCNNY.cjs} +34 -83
  372. package/dist/skills-new-GPL46YV2.js +18 -0
  373. package/dist/skills-new-L5BEZN5V.cjs +18 -0
  374. package/dist/slashCommands-FBPCIWM5.cjs +95 -0
  375. package/dist/slashCommands-FCWY5DXW.js +95 -0
  376. package/dist/status-3B5SDZPL.js +17 -0
  377. package/dist/status-TTGRF6NC.cjs +17 -0
  378. package/dist/summarizer-DGPHE5IQ.js +17 -0
  379. package/dist/summarizer-JNXLUAQG.cjs +17 -0
  380. package/dist/sync-77CXVVTK.cjs +21 -0
  381. package/dist/{sync-VU2NSJ4O.js → sync-7BILIQHP.js} +3 -3
  382. package/dist/sync-7OKF6636.js +21 -0
  383. package/dist/sync-EH4K5U3N.cjs +40 -0
  384. package/dist/{teammate-SD26GR37.js → teammate-GZQSCIMS.js} +28 -7
  385. package/dist/{teammate-SXRVXNQV.cjs → teammate-J6PHGL23.cjs} +29 -8
  386. package/dist/theme-64BYGJ57.cjs +21 -0
  387. package/dist/theme-YJE6HEON.js +21 -0
  388. package/dist/tools-3PPTTKFV.js +9 -0
  389. package/dist/tools-THIQA7WC.cjs +9 -0
  390. package/dist/ui/questionModal.cjs +8 -5
  391. package/dist/ui/questionModal.js +7 -4
  392. package/dist/undo-PRTEGL2J.cjs +10 -0
  393. package/dist/{undo-OL2EDBRY.js → undo-SZEHLX7X.js} +2 -2
  394. package/dist/web-3BA2WV37.cjs +37 -0
  395. package/dist/web-6FYGBX5K.js +37 -0
  396. package/dist/workspaceSafety-MDJGHK6D.cjs +9 -0
  397. package/dist/workspaceSafety-XOUMUBVB.js +9 -0
  398. package/dist/yolo-GF2YD7ZI.js +9 -0
  399. package/dist/yolo-OGDA7HNC.cjs +9 -0
  400. package/dist/yoloMode-3DJDA75U.cjs +17 -0
  401. package/dist/yoloMode-4JOOSU26.js +17 -0
  402. package/package.json +46 -49
  403. package/dist/AgentRegistry-HRPN6ZOF.cjs +0 -10
  404. package/dist/CommunitySkillsCache-KE435RAR.cjs +0 -8
  405. package/dist/GitHubRegistryFetcher-I45SESIL.cjs +0 -7
  406. package/dist/LearnAdvisor-FLBA6FDD.js +0 -9
  407. package/dist/LearnAdvisor-GG3CXQF3.cjs +0 -9
  408. package/dist/MemoryManager-2LQPIYVE.cjs +0 -8
  409. package/dist/PermissionManager-X57BXHJ6.cjs +0 -11
  410. package/dist/ProviderFactory-KPJOGQWF.cjs +0 -9
  411. package/dist/SessionManager-YBJAZXNO.cjs +0 -10
  412. package/dist/SkillsRegistry-7O72A6TZ.cjs +0 -9
  413. package/dist/SubAgent-JT4HZHN7.js +0 -11
  414. package/dist/SubAgent-VPNYDWAU.cjs +0 -11
  415. package/dist/SyncApiClient-HQXJL5BT.cjs +0 -11
  416. package/dist/about-4DB5KTHW.js +0 -12
  417. package/dist/about-LXAOXZFT.cjs +0 -12
  418. package/dist/actionExecutor-23JB2WUC.js +0 -19
  419. package/dist/actionExecutor-X5UEZSKH.cjs +0 -19
  420. package/dist/add-dir-YC37DMSF.cjs +0 -10
  421. package/dist/agents-YF3BSUU5.js +0 -12
  422. package/dist/agents-ZOUHPMYR.cjs +0 -12
  423. package/dist/agents-new-HSH4GQPG.js +0 -14
  424. package/dist/agents-new-VYUDOCE7.cjs +0 -14
  425. package/dist/autoSkill-X5W52WOE.cjs +0 -20
  426. package/dist/automode-SJGM7VEI.cjs +0 -10
  427. package/dist/chunk-ALYU6VTM.js +0 -105
  428. package/dist/chunk-B53A2NM2.js +0 -2030
  429. package/dist/chunk-BJXSNT46.js +0 -100
  430. package/dist/chunk-CB4E2T5N.cjs +0 -312
  431. package/dist/chunk-DNUOXBHL.js +0 -539
  432. package/dist/chunk-EFX2QSZX.cjs +0 -33
  433. package/dist/chunk-H2ZRHQQV.js +0 -33
  434. package/dist/chunk-HNRPK5MY.cjs +0 -85
  435. package/dist/chunk-HVKOZ2VP.cjs +0 -115
  436. package/dist/chunk-JJLYWH5Y.cjs +0 -100
  437. package/dist/chunk-LWUJFGOZ.js +0 -115
  438. package/dist/chunk-MERYP6AM.cjs +0 -539
  439. package/dist/chunk-MZAPWNAC.cjs +0 -207
  440. package/dist/chunk-PGESAU2W.cjs +0 -2030
  441. package/dist/chunk-SYVYLZZF.cjs +0 -24
  442. package/dist/chunk-SZOLA6FR.js +0 -111
  443. package/dist/chunk-VWDHR4HV.js +0 -168
  444. package/dist/chunk-Y45G6ZO5.cjs +0 -168
  445. package/dist/chunk-YRLYSQEQ.cjs +0 -105
  446. package/dist/chunk-ZYVS43MU.js +0 -312
  447. package/dist/clear-GK4IEUUS.cjs +0 -12
  448. package/dist/communityInstaller-XXC7RLE4.cjs +0 -19
  449. package/dist/completion-HWABSAEL.js +0 -14
  450. package/dist/completion-IUUVQG4D.cjs +0 -14
  451. package/dist/config-HF7WOLZF.cjs +0 -18
  452. package/dist/constants-PEO3P2SJ.cjs +0 -21
  453. package/dist/export-QJAV2FCZ.js +0 -12
  454. package/dist/export-XSRFXGWU.cjs +0 -12
  455. package/dist/feedback-4TCIL3ML.cjs +0 -15
  456. package/dist/feedback-SJ6VVEY3.js +0 -15
  457. package/dist/filesystem-W56QZUJF.cjs +0 -10
  458. package/dist/help-ISBVQL3S.cjs +0 -12
  459. package/dist/history-XQ4GTSFU.cjs +0 -14
  460. package/dist/hooks-CJNKJ5PF.js +0 -13
  461. package/dist/hooks-UTMBTAXT.cjs +0 -13
  462. package/dist/i18n-N7QQ7A5M.cjs +0 -33
  463. package/dist/ide-RTA4UJV4.js +0 -12
  464. package/dist/ide-VWVOLIFF.cjs +0 -12
  465. package/dist/immediateCommandRouter-BW34JNXL.js +0 -9
  466. package/dist/immediateCommandRouter-SHOVNB5X.cjs +0 -9
  467. package/dist/import-ZLJVONXH.cjs +0 -10
  468. package/dist/init-TBKAB4LZ.cjs +0 -10
  469. package/dist/language-MDSHEXHB.cjs +0 -18
  470. package/dist/language-PXTQSHIG.js +0 -18
  471. package/dist/learn-623TW5EK.cjs +0 -20
  472. package/dist/learn-BCPV7GM2.js +0 -20
  473. package/dist/localProjectPermissions-BHQXEWZJ.cjs +0 -18
  474. package/dist/localProjectPermissions-GMOUYQM6.js +0 -18
  475. package/dist/login-QMVEETWJ.js +0 -20
  476. package/dist/login-QYMXAL3K.cjs +0 -20
  477. package/dist/logout-2CMTDAOJ.js +0 -18
  478. package/dist/logout-ZOHVZAUK.cjs +0 -18
  479. package/dist/mcp-IUVKK65S.js +0 -18
  480. package/dist/mcp-TXC7PYG3.cjs +0 -18
  481. package/dist/memory-WRIHDEPK.cjs +0 -10
  482. package/dist/model-RLP75SF5.cjs +0 -10
  483. package/dist/new-HLSFL6A4.cjs +0 -12
  484. package/dist/permissions-GP6FTGZ2.js +0 -13
  485. package/dist/permissions-O6EKKPOG.cjs +0 -13
  486. package/dist/plan-MCAXDIM2.cjs +0 -11
  487. package/dist/quit-TQX6GXA5.cjs +0 -10
  488. package/dist/repeat-BSPS5TWD.cjs +0 -13
  489. package/dist/resume-2GOPDLL4.cjs +0 -13
  490. package/dist/resume-37IUVDA6.js +0 -13
  491. package/dist/search-7KUSHIBL.cjs +0 -17
  492. package/dist/search-OJGDRIMA.js +0 -17
  493. package/dist/sessions-CYYCHSQG.cjs +0 -10
  494. package/dist/settings-2D7CAO66.cjs +0 -30
  495. package/dist/share-BXQY5IQU.js +0 -14
  496. package/dist/share-OSFXZBGS.cjs +0 -14
  497. package/dist/skills-FL6O6AOM.cjs +0 -26
  498. package/dist/skills-PNKQZRNK.js +0 -26
  499. package/dist/skills-new-XFMEHHIF.cjs +0 -15
  500. package/dist/skills-new-ZNZPHUKS.js +0 -15
  501. package/dist/slashCommands-LLCNPK3X.js +0 -76
  502. package/dist/slashCommands-RXZZS6RE.cjs +0 -76
  503. package/dist/status-BCECUJXT.cjs +0 -11
  504. package/dist/status-EFO7MQU3.js +0 -11
  505. package/dist/sync-IJYJ6KKM.js +0 -18
  506. package/dist/sync-LFT6SBPF.cjs +0 -18
  507. package/dist/sync-U7SDPBNZ.cjs +0 -40
  508. package/dist/theme-AWBHSG7J.cjs +0 -18
  509. package/dist/theme-TQLBPJ2E.js +0 -18
  510. package/dist/undo-IBBGP7A2.cjs +0 -10
@@ -0,0 +1,20 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+ var _chunk46C73ZKKcjs = require('./chunk-46C73ZKK.cjs');
8
+ require('./chunk-MXVIDIC6.cjs');
9
+ require('./chunk-3EDDDZS2.cjs');
10
+ require('./chunk-YWTIXHU6.cjs');
11
+ require('./chunk-2VHB43IX.cjs');
12
+ require('./chunk-E26KKI46.cjs');
13
+ require('./chunk-3HT76LNN.cjs');
14
+
15
+
16
+
17
+
18
+
19
+
20
+ exports.getDefaultConfigPath = _chunk46C73ZKKcjs.getDefaultConfigPath; exports.getProviderConfig = _chunk46C73ZKKcjs.getProviderConfig; exports.loadConfig = _chunk46C73ZKKcjs.loadConfig; exports.resolveWorkspaceRoot = _chunk46C73ZKKcjs.resolveWorkspaceRoot; exports.saveConfig = _chunk46C73ZKKcjs.saveConfig;
@@ -4,10 +4,12 @@ import {
4
4
  loadConfig,
5
5
  resolveWorkspaceRoot,
6
6
  saveConfig
7
- } from "./chunk-ZYVS43MU.js";
8
- import "./chunk-BYONM7UM.js";
9
- import "./chunk-LIEXWM2M.js";
10
- import "./chunk-EGFT4PGW.js";
7
+ } from "./chunk-3UT7R3XV.js";
8
+ import "./chunk-HJIXWGQZ.js";
9
+ import "./chunk-YZWE7XSM.js";
10
+ import "./chunk-NBGOIFKP.js";
11
+ import "./chunk-JAQO6XDB.js";
12
+ import "./chunk-TWQDAUZU.js";
11
13
  import "./chunk-QGM4M3NI.js";
12
14
  export {
13
15
  getDefaultConfigPath,
@@ -7,7 +7,7 @@ import {
7
7
  SKILL_LOCATIONS,
8
8
  SYNC_CONFIG,
9
9
  getProjectSkillLocations
10
- } from "./chunk-EGFT4PGW.js";
10
+ } from "./chunk-TWQDAUZU.js";
11
11
  import "./chunk-QGM4M3NI.js";
12
12
  export {
13
13
  AUTH_CONFIG,
@@ -0,0 +1,21 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+ var _chunkE26KKI46cjs = require('./chunk-E26KKI46.cjs');
11
+ require('./chunk-3HT76LNN.cjs');
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+ exports.AUTH_CONFIG = _chunkE26KKI46cjs.AUTH_CONFIG; exports.AUTOHAND_FILES = _chunkE26KKI46cjs.AUTOHAND_FILES; exports.AUTOHAND_HOME = _chunkE26KKI46cjs.AUTOHAND_HOME; exports.AUTOHAND_PATHS = _chunkE26KKI46cjs.AUTOHAND_PATHS; exports.PROJECT_DIR_NAME = _chunkE26KKI46cjs.PROJECT_DIR_NAME; exports.SKILL_LOCATIONS = _chunkE26KKI46cjs.SKILL_LOCATIONS; exports.SYNC_CONFIG = _chunkE26KKI46cjs.SYNC_CONFIG; exports.getProjectSkillLocations = _chunkE26KKI46cjs.getProjectSkillLocations;
@@ -165,28 +165,34 @@ EXT="\${FILE_PATH##*.}"
165
165
  # Check for formatters and run them
166
166
  format_file() {
167
167
  local file="$1"
168
+ local has_package_json="false"
169
+
170
+ if [ -f "package.json" ]; then
171
+ has_package_json="true"
172
+ fi
168
173
 
169
174
  # Try prettier first (most common)
170
- if command -v npx &>/dev/null && [ -f "package.json" ]; then
171
- if npx prettier --check "$file" &>/dev/null 2>&1; then
175
+ if command -v npx &>/dev/null && [ "$has_package_json" = "true" ]; then
176
+ if npx --no-install prettier --check "$file" &>/dev/null 2>&1; then
172
177
  # Prettier is available, format the file
173
- npx prettier --write "$file" 2>/dev/null && return 0
178
+ npx --no-install prettier --write "$file" 2>/dev/null && return 0
174
179
  fi
175
180
  fi
176
181
 
177
182
  # Try eslint --fix for JS/TS files
178
183
  if [[ "$EXT" =~ ^(js|jsx|ts|tsx)$ ]]; then
179
- if command -v npx &>/dev/null && [ -f "package.json" ]; then
180
- npx eslint --fix "$file" 2>/dev/null && return 0
184
+ if command -v npx &>/dev/null && [ "$has_package_json" = "true" ]; then
185
+ npx --no-install eslint --fix "$file" 2>/dev/null && return 0
181
186
  fi
182
187
  fi
183
188
 
184
189
  # Try biome for supported files
185
- if command -v npx &>/dev/null; then
186
- npx @biomejs/biome format --write "$file" 2>/dev/null && return 0
190
+ if command -v npx &>/dev/null && [ "$has_package_json" = "true" ]; then
191
+ npx --no-install @biomejs/biome format --write "$file" 2>/dev/null && return 0
187
192
  fi
188
193
 
189
- return 1
194
+ # No formatter available, exit gracefully
195
+ return 0
190
196
  }
191
197
 
192
198
  # Format the file (silently)
@@ -498,7 +504,7 @@ function Format-File {
498
504
  # Try prettier first
499
505
  if (Test-Path "package.json") {
500
506
  try {
501
- npx prettier --write $File 2>$null
507
+ npx --no-install prettier --write $File 2>$null
502
508
  if ($LASTEXITCODE -eq 0) { return $true }
503
509
  } catch {}
504
510
  }
@@ -507,7 +513,16 @@ function Format-File {
507
513
  if ($Ext -match "^(js|jsx|ts|tsx)$") {
508
514
  if (Test-Path "package.json") {
509
515
  try {
510
- npx eslint --fix $File 2>$null
516
+ npx --no-install eslint --fix $File 2>$null
517
+ if ($LASTEXITCODE -eq 0) { return $true }
518
+ } catch {}
519
+ }
520
+ }
521
+
522
+ # Try biome for supported files
523
+ if (Test-Path "package.json") {
524
+ try {
525
+ npx --no-install @biomejs/biome format --write $File 2>$null
511
526
  if ($LASTEXITCODE -eq 0) { return $true }
512
527
  } catch {}
513
528
  }
@@ -165,28 +165,34 @@ EXT="\${FILE_PATH##*.}"
165
165
  # Check for formatters and run them
166
166
  format_file() {
167
167
  local file="$1"
168
+ local has_package_json="false"
169
+
170
+ if [ -f "package.json" ]; then
171
+ has_package_json="true"
172
+ fi
168
173
 
169
174
  # Try prettier first (most common)
170
- if command -v npx &>/dev/null && [ -f "package.json" ]; then
171
- if npx prettier --check "$file" &>/dev/null 2>&1; then
175
+ if command -v npx &>/dev/null && [ "$has_package_json" = "true" ]; then
176
+ if npx --no-install prettier --check "$file" &>/dev/null 2>&1; then
172
177
  # Prettier is available, format the file
173
- npx prettier --write "$file" 2>/dev/null && return 0
178
+ npx --no-install prettier --write "$file" 2>/dev/null && return 0
174
179
  fi
175
180
  fi
176
181
 
177
182
  # Try eslint --fix for JS/TS files
178
183
  if [[ "$EXT" =~ ^(js|jsx|ts|tsx)$ ]]; then
179
- if command -v npx &>/dev/null && [ -f "package.json" ]; then
180
- npx eslint --fix "$file" 2>/dev/null && return 0
184
+ if command -v npx &>/dev/null && [ "$has_package_json" = "true" ]; then
185
+ npx --no-install eslint --fix "$file" 2>/dev/null && return 0
181
186
  fi
182
187
  fi
183
188
 
184
189
  # Try biome for supported files
185
- if command -v npx &>/dev/null; then
186
- npx @biomejs/biome format --write "$file" 2>/dev/null && return 0
190
+ if command -v npx &>/dev/null && [ "$has_package_json" = "true" ]; then
191
+ npx --no-install @biomejs/biome format --write "$file" 2>/dev/null && return 0
187
192
  fi
188
193
 
189
- return 1
194
+ # No formatter available, exit gracefully
195
+ return 0
190
196
  }
191
197
 
192
198
  # Format the file (silently)
@@ -498,7 +504,7 @@ function Format-File {
498
504
  # Try prettier first
499
505
  if (Test-Path "package.json") {
500
506
  try {
501
- npx prettier --write $File 2>$null
507
+ npx --no-install prettier --write $File 2>$null
502
508
  if ($LASTEXITCODE -eq 0) { return $true }
503
509
  } catch {}
504
510
  }
@@ -507,7 +513,16 @@ function Format-File {
507
513
  if ($Ext -match "^(js|jsx|ts|tsx)$") {
508
514
  if (Test-Path "package.json") {
509
515
  try {
510
- npx eslint --fix $File 2>$null
516
+ npx --no-install eslint --fix $File 2>$null
517
+ if ($LASTEXITCODE -eq 0) { return $true }
518
+ } catch {}
519
+ }
520
+ }
521
+
522
+ # Try biome for supported files
523
+ if (Test-Path "package.json") {
524
+ try {
525
+ npx --no-install @biomejs/biome format --write $File 2>$null
511
526
  if ($LASTEXITCODE -eq 0) { return $true }
512
527
  } catch {}
513
528
  }
@@ -0,0 +1,15 @@
1
+ import {
2
+ execute,
3
+ metadata
4
+ } from "./chunk-PQLKJCIE.js";
5
+ import "./chunk-DLP436GI.js";
6
+ import "./chunk-NMQ47RCG.js";
7
+ import "./chunk-5JFTY3VU.js";
8
+ import "./chunk-NBGOIFKP.js";
9
+ import "./chunk-JAQO6XDB.js";
10
+ import "./chunk-CBFH2J3O.js";
11
+ import "./chunk-QGM4M3NI.js";
12
+ export {
13
+ execute,
14
+ metadata
15
+ };
@@ -0,0 +1,15 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunk75EDROHLcjs = require('./chunk-75EDROHL.cjs');
5
+ require('./chunk-CH2J4PVE.cjs');
6
+ require('./chunk-KNTUI4TZ.cjs');
7
+ require('./chunk-TQ33WBY5.cjs');
8
+ require('./chunk-YWTIXHU6.cjs');
9
+ require('./chunk-2VHB43IX.cjs');
10
+ require('./chunk-CHI52KFR.cjs');
11
+ require('./chunk-3HT76LNN.cjs');
12
+
13
+
14
+
15
+ exports.execute = _chunk75EDROHLcjs.execute; exports.metadata = _chunk75EDROHLcjs.metadata;
@@ -0,0 +1,18 @@
1
+ import {
2
+ feedback,
3
+ metadata
4
+ } from "./chunk-SWCQM52V.js";
5
+ import "./chunk-62RTC3XX.js";
6
+ import "./chunk-3PXKRVCW.js";
7
+ import "./chunk-DLP436GI.js";
8
+ import "./chunk-NMQ47RCG.js";
9
+ import "./chunk-5JFTY3VU.js";
10
+ import "./chunk-NBGOIFKP.js";
11
+ import "./chunk-JAQO6XDB.js";
12
+ import "./chunk-TWQDAUZU.js";
13
+ import "./chunk-CBFH2J3O.js";
14
+ import "./chunk-QGM4M3NI.js";
15
+ export {
16
+ feedback,
17
+ metadata
18
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkZZ63NW7Acjs = require('./chunk-ZZ63NW7A.cjs');
5
+ require('./chunk-7MU7LWF3.cjs');
6
+ require('./chunk-REMGR23V.cjs');
7
+ require('./chunk-CH2J4PVE.cjs');
8
+ require('./chunk-KNTUI4TZ.cjs');
9
+ require('./chunk-TQ33WBY5.cjs');
10
+ require('./chunk-YWTIXHU6.cjs');
11
+ require('./chunk-2VHB43IX.cjs');
12
+ require('./chunk-E26KKI46.cjs');
13
+ require('./chunk-CHI52KFR.cjs');
14
+ require('./chunk-3HT76LNN.cjs');
15
+
16
+
17
+
18
+ exports.feedback = _chunkZZ63NW7Acjs.feedback; exports.metadata = _chunkZZ63NW7Acjs.metadata;
@@ -0,0 +1,412 @@
1
+ import {
2
+ resolveRipgrepCommand
3
+ } from "./chunk-UOQECODR.js";
4
+ import "./chunk-QGM4M3NI.js";
5
+
6
+ // src/search/fffSearchProvider.ts
7
+ import { execFile } from "child_process";
8
+ import fs from "fs/promises";
9
+ import { createRequire } from "module";
10
+ import path from "path";
11
+ import { pathToFileURL } from "url";
12
+ import { promisify } from "util";
13
+ var execFileAsync = promisify(execFile);
14
+ var FILE_WALK_IGNORED_DIRECTORIES = /* @__PURE__ */ new Set([
15
+ ".git",
16
+ ".hg",
17
+ ".svn",
18
+ "node_modules",
19
+ "dist",
20
+ "build",
21
+ "coverage"
22
+ ]);
23
+ var FFFSearchProvider = class _FFFSearchProvider {
24
+ backend;
25
+ constructor(backend) {
26
+ this.backend = backend;
27
+ }
28
+ static async create(workspaceRoot) {
29
+ const backend = await createNativeClassBackend(workspaceRoot) ?? await createLowLevelFfiBackend(workspaceRoot) ?? new RipgrepSearchBackend(workspaceRoot);
30
+ return new _FFFSearchProvider(backend);
31
+ }
32
+ async grep(params) {
33
+ return this.backend.grep(params);
34
+ }
35
+ async fileSearch(params) {
36
+ return this.backend.fileSearch(params);
37
+ }
38
+ destroy() {
39
+ this.backend.destroy();
40
+ }
41
+ };
42
+ async function createNativeClassBackend(workspaceRoot) {
43
+ try {
44
+ const fffPackage = await import("@ff-labs/fff-bun");
45
+ const create = fffPackage.FileFinder?.create;
46
+ if (typeof create !== "function") {
47
+ return null;
48
+ }
49
+ const result = create({
50
+ basePath: workspaceRoot,
51
+ aiMode: true
52
+ });
53
+ if (!result.ok) {
54
+ throw new Error(`Failed to initialize FFF: ${result.error}`);
55
+ }
56
+ const finder = result.value;
57
+ if (typeof finder.waitForScan !== "function" || typeof finder.grep !== "function" || typeof finder.fileSearch !== "function" || typeof finder.destroy !== "function") {
58
+ finder.destroy?.();
59
+ return null;
60
+ }
61
+ const scanResult = finder.waitForScan(1e4);
62
+ if (!scanResult.ok) {
63
+ throw new Error(`Failed to scan workspace with FFF: ${scanResult.error}`);
64
+ }
65
+ return new NativeClassSearchBackend(finder);
66
+ } catch {
67
+ return null;
68
+ }
69
+ }
70
+ async function createLowLevelFfiBackend(workspaceRoot) {
71
+ try {
72
+ const ffi = await importLowLevelFfiModule();
73
+ if (!ffi) {
74
+ return null;
75
+ }
76
+ const result = ffi.ffiCreate(
77
+ workspaceRoot,
78
+ "",
79
+ "",
80
+ false,
81
+ true,
82
+ true,
83
+ true,
84
+ true,
85
+ "",
86
+ "",
87
+ 0n,
88
+ 0n,
89
+ 0n
90
+ );
91
+ if (!result.ok) {
92
+ throw new Error(`Failed to initialize FFF: ${result.error}`);
93
+ }
94
+ const scanResult = ffi.ffiWaitForScan(result.value, 1e4);
95
+ if (!scanResult.ok) {
96
+ ffi.ffiDestroy(result.value);
97
+ throw new Error(`Failed to scan workspace with FFF: ${scanResult.error}`);
98
+ }
99
+ return new LowLevelFfiSearchBackend(ffi, result.value);
100
+ } catch {
101
+ return null;
102
+ }
103
+ }
104
+ async function importLowLevelFfiModule() {
105
+ try {
106
+ const require2 = createRequire(import.meta.url);
107
+ const packageJsonPath = require2.resolve("@ff-labs/fff-bun/package.json");
108
+ const ffiPath = path.join(path.dirname(packageJsonPath), "src", "ffi.ts");
109
+ return await import(pathToFileURL(ffiPath).href);
110
+ } catch {
111
+ return null;
112
+ }
113
+ }
114
+ var NativeClassSearchBackend = class {
115
+ constructor(finder) {
116
+ this.finder = finder;
117
+ }
118
+ finder;
119
+ async grep(params) {
120
+ const query = buildConstrainedQuery(params);
121
+ const mode = inferGrepMode(params.query);
122
+ const result = unwrap(this.finder.grep(query, {
123
+ mode,
124
+ smartCase: !params.caseSensitive,
125
+ beforeContext: params.beforeContext ?? 2,
126
+ afterContext: params.afterContext ?? 2,
127
+ maxMatchesPerFile: params.limit
128
+ }));
129
+ if (!result.items.length && mode !== "fuzzy") {
130
+ return formatGrepResult(unwrap(this.finder.grep(query, {
131
+ mode: "fuzzy",
132
+ smartCase: !params.caseSensitive,
133
+ beforeContext: params.beforeContext ?? 2,
134
+ afterContext: params.afterContext ?? 2,
135
+ maxMatchesPerFile: params.limit
136
+ })), params.limit);
137
+ }
138
+ return formatGrepResult(result, params.limit);
139
+ }
140
+ async fileSearch(params) {
141
+ return formatSearchResult(unwrap(this.finder.fileSearch(params.query, {
142
+ pageSize: params.limit ?? 50
143
+ })));
144
+ }
145
+ destroy() {
146
+ this.finder.destroy();
147
+ }
148
+ };
149
+ var LowLevelFfiSearchBackend = class {
150
+ constructor(ffi, handle) {
151
+ this.ffi = ffi;
152
+ this.handle = handle;
153
+ }
154
+ ffi;
155
+ handle;
156
+ async grep(params) {
157
+ const query = buildConstrainedQuery(params);
158
+ const mode = inferGrepMode(params.query);
159
+ const result = this.grepWithMode(query, mode, params);
160
+ if (!result.items.length && mode !== "fuzzy") {
161
+ return formatGrepResult(this.grepWithMode(query, "fuzzy", params), params.limit);
162
+ }
163
+ return formatGrepResult(result, params.limit);
164
+ }
165
+ async fileSearch(params) {
166
+ const result = this.ffi.ffiSearch(
167
+ this.handle,
168
+ params.query,
169
+ "",
170
+ 0,
171
+ 0,
172
+ params.limit ?? 50,
173
+ 0,
174
+ 0
175
+ );
176
+ return formatSearchResult(unwrap(result));
177
+ }
178
+ destroy() {
179
+ this.ffi.ffiDestroy(this.handle);
180
+ }
181
+ grepWithMode(query, mode, params) {
182
+ return unwrap(this.ffi.ffiLiveGrep(
183
+ this.handle,
184
+ query,
185
+ mode,
186
+ 0,
187
+ 0,
188
+ !params.caseSensitive,
189
+ 0,
190
+ params.limit ?? 50,
191
+ 0,
192
+ params.beforeContext ?? 2,
193
+ params.afterContext ?? 2,
194
+ params.classifyDefinitions ?? true
195
+ ));
196
+ }
197
+ };
198
+ var RipgrepSearchBackend = class {
199
+ constructor(workspaceRoot) {
200
+ this.workspaceRoot = workspaceRoot;
201
+ }
202
+ workspaceRoot;
203
+ async grep(params) {
204
+ const target = normalizeSearchTarget(params.path);
205
+ const args = [
206
+ "--line-number",
207
+ "--color",
208
+ "never",
209
+ "--no-heading",
210
+ "--with-filename",
211
+ "--no-binary",
212
+ params.caseSensitive ? "--case-sensitive" : "--smart-case"
213
+ ];
214
+ const mode = inferGrepMode(params.query);
215
+ if (mode === "plain") {
216
+ args.push("--fixed-strings");
217
+ }
218
+ if (params.beforeContext !== void 0) {
219
+ args.push("--before-context", String(params.beforeContext));
220
+ }
221
+ if (params.afterContext !== void 0) {
222
+ args.push("--after-context", String(params.afterContext));
223
+ }
224
+ for (const pattern of splitExcludePatterns(params.exclude)) {
225
+ args.push("--glob", `!${pattern}`);
226
+ }
227
+ args.push(params.query, target);
228
+ try {
229
+ const result = await execFileAsync(resolveRipgrepCommand(), args, {
230
+ cwd: this.workspaceRoot,
231
+ encoding: "utf8",
232
+ maxBuffer: 10 * 1024 * 1024
233
+ });
234
+ const lines = result.stdout.trim().split("\n").filter(Boolean);
235
+ if (!lines.length) {
236
+ return "No matches found.";
237
+ }
238
+ return formatPlainLines(lines, params.limit ?? 50, "match", "matches");
239
+ } catch (error) {
240
+ if (isNoMatchError(error)) {
241
+ return "No matches found.";
242
+ }
243
+ throw error;
244
+ }
245
+ }
246
+ async fileSearch(params) {
247
+ try {
248
+ const result = await execFileAsync(resolveRipgrepCommand(), ["--files", "."], {
249
+ cwd: this.workspaceRoot,
250
+ encoding: "utf8",
251
+ maxBuffer: 10 * 1024 * 1024
252
+ });
253
+ const files = result.stdout.trim().split("\n").filter(Boolean);
254
+ const ranked = rankPaths(files, params.query).slice(0, params.limit ?? 50);
255
+ if (!ranked.length) {
256
+ return "No files found.";
257
+ }
258
+ return ranked.join("\n");
259
+ } catch (error) {
260
+ if (isNoMatchError(error)) {
261
+ return "No files found.";
262
+ }
263
+ if (isMissingExecutableError(error)) {
264
+ return this.fileSearchWithFilesystemWalk(params);
265
+ }
266
+ throw error;
267
+ }
268
+ }
269
+ destroy() {
270
+ }
271
+ async fileSearchWithFilesystemWalk(params) {
272
+ const files = await collectWorkspaceFiles(this.workspaceRoot);
273
+ const ranked = rankPaths(files, params.query).slice(0, params.limit ?? 50);
274
+ if (!ranked.length) {
275
+ return "No files found.";
276
+ }
277
+ return ranked.join("\n");
278
+ }
279
+ };
280
+ function unwrap(result) {
281
+ if (!result.ok) {
282
+ throw new Error(result.error);
283
+ }
284
+ return result.value;
285
+ }
286
+ function formatGrepResult(searchResult, limit = 50) {
287
+ const hits = searchResult.items;
288
+ if (!hits.length) {
289
+ return "No matches found.";
290
+ }
291
+ const limited = hits.slice(0, limit);
292
+ const formattedHits = limited.map((hit) => {
293
+ const before = hit.contextBefore?.join("\n") ?? "";
294
+ const line = `${hit.relativePath}:${hit.lineNumber}: ${hit.lineContent}`;
295
+ const after = hit.contextAfter?.join("\n") ?? "";
296
+ return [before, line, after].filter(Boolean).join("\n");
297
+ }).join("\n\n");
298
+ const header = hits.length > limit ? `Found ${hits.length} matches (showing first ${limit}):
299
+
300
+ ` : `Found ${hits.length} match${hits.length === 1 ? "" : "es"}:
301
+
302
+ `;
303
+ return header + formattedHits;
304
+ }
305
+ function formatSearchResult(result) {
306
+ const files = result.items;
307
+ if (!files.length) {
308
+ return "No files found.";
309
+ }
310
+ return files.map((file) => {
311
+ const gitStatus = file.gitStatus && file.gitStatus !== "clean" ? `[${file.gitStatus}] ` : "";
312
+ return `${gitStatus}${file.relativePath}`;
313
+ }).join("\n");
314
+ }
315
+ function inferGrepMode(query) {
316
+ return /(^|[^\\])[\\^$.*+?()[\]{}|]/.test(query) ? "regex" : "plain";
317
+ }
318
+ function buildConstrainedQuery(params) {
319
+ if (!params.path?.trim()) {
320
+ return params.query;
321
+ }
322
+ const normalizedPath = params.path.trim().replace(/\\/g, "/").replace(/^\.\//, "");
323
+ if (!normalizedPath) {
324
+ return params.query;
325
+ }
326
+ const constraint = normalizedPath.endsWith("/") || normalizedPath.includes("*") || /\.[^/]+$/.test(normalizedPath) ? normalizedPath : `${normalizedPath}/`;
327
+ return `${constraint} ${params.query}`;
328
+ }
329
+ function splitExcludePatterns(exclude) {
330
+ return exclude?.split(/[,\s]+/).map((entry) => entry.trim()).filter(Boolean) ?? [];
331
+ }
332
+ function normalizeSearchTarget(target) {
333
+ const trimmed = target?.trim();
334
+ if (!trimmed || trimmed === ".") {
335
+ return ".";
336
+ }
337
+ return trimmed.replace(/\\/g, "/").replace(/^\.\//, "");
338
+ }
339
+ function isNoMatchError(error) {
340
+ const exitCode = error?.code;
341
+ return exitCode === 1 || exitCode === "1";
342
+ }
343
+ function isMissingExecutableError(error) {
344
+ return error?.code === "ENOENT";
345
+ }
346
+ function formatPlainLines(lines, limit, singular, plural) {
347
+ const limited = lines.slice(0, limit);
348
+ const header = lines.length > limit ? `Found ${lines.length} ${plural} (showing first ${limit}):
349
+
350
+ ` : `Found ${lines.length} ${lines.length === 1 ? singular : plural}:
351
+
352
+ `;
353
+ return header + limited.join("\n");
354
+ }
355
+ function rankPaths(files, query) {
356
+ const terms = query.toLowerCase().split(/\s+/).filter(Boolean);
357
+ return files.map((file) => ({ file, score: scorePath(file, terms) })).filter((entry) => entry.score > 0).sort((a, b) => b.score - a.score || a.file.localeCompare(b.file)).map((entry) => entry.file);
358
+ }
359
+ function scorePath(file, terms) {
360
+ if (!terms.length) {
361
+ return 1;
362
+ }
363
+ const normalized = file.toLowerCase();
364
+ const basename = path.basename(normalized);
365
+ let score = 0;
366
+ for (const term of terms) {
367
+ if (basename === term) {
368
+ score += 20;
369
+ } else if (basename.includes(term)) {
370
+ score += 10;
371
+ } else if (normalized.includes(term)) {
372
+ score += 4;
373
+ } else {
374
+ return 0;
375
+ }
376
+ }
377
+ return score;
378
+ }
379
+ async function collectWorkspaceFiles(workspaceRoot) {
380
+ const files = [];
381
+ await walkWorkspaceFiles(workspaceRoot, workspaceRoot, files);
382
+ return files;
383
+ }
384
+ async function walkWorkspaceFiles(workspaceRoot, currentDirectory, files) {
385
+ let entries;
386
+ try {
387
+ entries = await fs.readdir(currentDirectory, { withFileTypes: true });
388
+ } catch {
389
+ return;
390
+ }
391
+ for (const entry of entries) {
392
+ if (entry.isDirectory()) {
393
+ if (FILE_WALK_IGNORED_DIRECTORIES.has(entry.name)) {
394
+ continue;
395
+ }
396
+ await walkWorkspaceFiles(workspaceRoot, path.join(currentDirectory, entry.name), files);
397
+ continue;
398
+ }
399
+ if (!entry.isFile()) {
400
+ continue;
401
+ }
402
+ files.push(path.relative(workspaceRoot, path.join(currentDirectory, entry.name)).replace(/\\/g, "/"));
403
+ }
404
+ }
405
+ export {
406
+ FFFSearchProvider
407
+ };
408
+ /**
409
+ * @license
410
+ * Copyright 2025 Autohand AI LLC
411
+ * SPDX-License-Identifier: Apache-2.0
412
+ */