autohand-cli 0.8.2 → 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 (551) hide show
  1. package/README.md +173 -74
  2. package/dist/AgentRegistry-EGBDIUAK.cjs +10 -0
  3. package/dist/{AgentRegistry-7LDL5HJH.js → AgentRegistry-XPWSVO3Q.js} +3 -3
  4. package/dist/{AutomodeManager-MWLKGPZK.js → AutomodeManager-APLLPEYJ.js} +32 -18
  5. package/dist/{AutomodeManager-NYIZNODK.cjs → AutomodeManager-MPSXT2RH.cjs} +38 -24
  6. package/dist/CommunitySkillsCache-2OIUV227.cjs +8 -0
  7. package/dist/CommunitySkillsCache-ZEQWP6YM.js +8 -0
  8. package/dist/GitHubRegistryFetcher-CYJLF2XL.cjs +7 -0
  9. package/dist/{GitHubRegistryFetcher-6JQ5JEDZ.js → GitHubRegistryFetcher-J2BWPXJF.js} +2 -2
  10. package/dist/HookManager-CWLTFKWO.js +7 -0
  11. package/dist/HookManager-TMAJQU4S.cjs +7 -0
  12. package/dist/{ImportWizard-35YBJ4AM.cjs → ImportWizard-MQXEED2U.cjs} +41 -17
  13. package/dist/{ImportWizard-XH7CINCH.js → ImportWizard-QBKQEXDW.js} +35 -11
  14. package/dist/LearnAdvisor-46FG2XIP.js +9 -0
  15. package/dist/LearnAdvisor-XBRDNAGH.cjs +9 -0
  16. package/dist/McpClientManager-BNSKLHIN.cjs +8 -0
  17. package/dist/{McpClientManager-7RM6YT35.js → McpClientManager-SL35BR24.js} +2 -2
  18. package/dist/MemoryManager-34L4YOKA.cjs +8 -0
  19. package/dist/MemoryManager-WJMLPWGU.js +8 -0
  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-ATUV34LQ.js → PermissionManager-KMYILJ4Z.js} +4 -4
  24. package/dist/{ProjectProfiler-ZDWR2ODG.cjs → ProjectProfiler-CDAE7ECW.cjs} +2 -1
  25. package/dist/{ProjectProfiler-UMJJSOCE.js → ProjectProfiler-NZTJDRHD.js} +2 -1
  26. package/dist/ProviderFactory-C3YPXTDD.cjs +11 -0
  27. package/dist/ProviderFactory-HFPRVQ25.js +11 -0
  28. package/dist/SessionManager-PNBTJJTQ.js +10 -0
  29. package/dist/SessionManager-WAPTFMDO.cjs +10 -0
  30. package/dist/SkillsRegistry-4RRD5GMX.js +9 -0
  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-LVIO4C2S.js → SyncApiClient-LRPFNCKJ.js} +2 -2
  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-VFX7QT4E.js +11 -0
  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-6TGBTEQD.js → autoSkill-EFMK6WU6.js} +3 -3
  57. package/dist/autoSkill-YOLLFTP2.cjs +20 -0
  58. package/dist/automode-BMYSRM34.js +10 -0
  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/{cc-7LEIJ3KF.js → cc-AYEP2CA3.js} +1 -1
  63. package/dist/{cc-Q5MM4AWC.cjs → cc-S2QLQFBR.cjs} +1 -1
  64. package/dist/chrome-ATC4OO5I.cjs +20 -0
  65. package/dist/chrome-NHJ44WUN.js +50 -0
  66. package/dist/chrome-O62WXV7F.js +20 -0
  67. package/dist/chrome-XHJLCO4M.cjs +50 -0
  68. package/dist/chromeSkill-53TH55PM.js +105 -0
  69. package/dist/chromeSkill-THW7N4IY.cjs +105 -0
  70. package/dist/{chunk-HOAHWIQ5.cjs → chunk-2CGE7ZV3.cjs} +26 -26
  71. package/dist/chunk-2H5O745H.js +63 -0
  72. package/dist/chunk-2HOLOHVK.js +2219 -0
  73. package/dist/{chunk-3PDTTAKJ.js → chunk-2QL6MNXG.js} +15 -8
  74. package/dist/{chunk-PGRH5Q77.cjs → chunk-2VHB43IX.cjs} +35 -6
  75. package/dist/{chunk-VG34MG2U.js → chunk-37M5UM6I.js} +9 -6
  76. package/dist/{chunk-6HYLHBQG.cjs → chunk-3DDL2E55.cjs} +20 -16
  77. package/dist/chunk-3EDDDZS2.cjs +5 -0
  78. package/dist/{chunk-6OYHF6MF.js → chunk-3GUEUCZK.js} +28 -4
  79. package/dist/{chunk-N254NRHT.cjs → chunk-3HT76LNN.cjs} +9 -2
  80. package/dist/{chunk-DVUHHH3B.cjs → chunk-3KLSNNRW.cjs} +4 -4
  81. package/dist/chunk-3LJJG5YY.cjs +387 -0
  82. package/dist/chunk-3OF56EMA.cjs +197 -0
  83. package/dist/chunk-3PXKRVCW.js +108 -0
  84. package/dist/{chunk-IKGWDOGU.cjs → chunk-3S563FNF.cjs} +160 -79
  85. package/dist/chunk-3UT7R3XV.js +663 -0
  86. package/dist/chunk-4256YRCO.cjs +80 -0
  87. package/dist/chunk-46C73ZKK.cjs +663 -0
  88. package/dist/chunk-46MTALKD.js +44 -0
  89. package/dist/{chunk-AEJH23FO.cjs → chunk-47PHDKNW.cjs} +6 -6
  90. package/dist/chunk-4LMUDS2K.js +124 -0
  91. package/dist/{chunk-HLHTG5ZU.cjs → chunk-5CMYEM3R.cjs} +14 -12
  92. package/dist/{chunk-MBBY4ZIK.js → chunk-5F6ZKSHO.js} +4 -1
  93. package/dist/chunk-5JFTY3VU.js +74 -0
  94. package/dist/chunk-5JTTM5SC.js +59 -0
  95. package/dist/{chunk-IETRBBMP.cjs → chunk-5K3CDSWZ.cjs} +108 -31
  96. package/dist/{chunk-GJH7XMSK.js → chunk-5VHP6HDQ.js} +8 -6
  97. package/dist/{chunk-6ZCULLCA.js → chunk-62RTC3XX.js} +1 -1
  98. package/dist/{chunk-MSED7RH2.cjs → chunk-6GUODJKM.cjs} +112 -41
  99. package/dist/{chunk-47CKWKEX.cjs → chunk-6HH236FV.cjs} +9 -4
  100. package/dist/{chunk-WHE2SWHU.js → chunk-6NVAK6CK.js} +2 -2
  101. package/dist/chunk-6R25D2H5.js +121 -0
  102. package/dist/{chunk-3PCTTUNW.cjs → chunk-6XVVIY54.cjs} +55 -25
  103. package/dist/{chunk-3L53OA4E.cjs → chunk-75EDROHL.cjs} +10 -10
  104. package/dist/{chunk-G4CAKI3V.js → chunk-7HPWMALN.js} +7 -2
  105. package/dist/chunk-7JLT2VNW.cjs +18963 -0
  106. package/dist/chunk-7LWQCE4Y.cjs +987 -0
  107. package/dist/{chunk-OLSBBZW6.cjs → chunk-7MU7LWF3.cjs} +5 -5
  108. package/dist/{chunk-HLQV64Y5.js → chunk-7RFJB75Y.js} +140 -59
  109. package/dist/{chunk-X2MSVKDV.js → chunk-A7HHCIDQ.js} +2 -2
  110. package/dist/{chunk-SKYG33B2.cjs → chunk-AC7DZ6SK.cjs} +3 -3
  111. package/dist/{chunk-XX2ZO7DS.js → chunk-ACDQGA4Z.js} +90 -16
  112. package/dist/{chunk-CZXGCVTR.cjs → chunk-AOKCI722.cjs} +2 -2
  113. package/dist/chunk-ARBEHFCG.js +715 -0
  114. package/dist/{chunk-OOKY3HPZ.js → chunk-AT7OWLY5.js} +50 -9
  115. package/dist/chunk-AU6JAGZJ.cjs +231 -0
  116. package/dist/chunk-AUFNACED.js +18963 -0
  117. package/dist/{chunk-CDBPBM2K.cjs → chunk-AUYSIEVV.cjs} +3 -3
  118. package/dist/chunk-B4HSNOIH.cjs +354 -0
  119. package/dist/{chunk-EGMZDTSL.js → chunk-B5CGDNMR.js} +10 -2
  120. package/dist/{chunk-34M3HWLR.js → chunk-BFQDQRDE.js} +2 -2
  121. package/dist/{chunk-2AA5MFES.js → chunk-BL2UC7HC.js} +8 -5
  122. package/dist/{chunk-LNMYK2F5.cjs → chunk-BQ22N3TX.cjs} +56 -41
  123. package/dist/chunk-BQU3HAE7.js +21 -0
  124. package/dist/chunk-BWF4VDYE.js +3897 -0
  125. package/dist/chunk-BYE7RQFZ.cjs +121 -0
  126. package/dist/{chunk-APIXPPMT.js → chunk-CBFH2J3O.js} +855 -33
  127. package/dist/chunk-CCVMREXI.js +420 -0
  128. package/dist/chunk-CFAWTLSC.js +13 -0
  129. package/dist/{chunk-G27PQQFD.js → chunk-CFFE4VA3.js} +1 -1
  130. package/dist/{chunk-ZYQMLKOK.cjs → chunk-CH2J4PVE.cjs} +212 -70
  131. package/dist/{chunk-7BTSG4ME.cjs → chunk-CHI52KFR.cjs} +855 -33
  132. package/dist/{chunk-DJDE4DTT.cjs → chunk-CWINVFRI.cjs} +25 -19
  133. package/dist/{chunk-HXGBSJL5.cjs → chunk-D2OSPLYC.cjs} +2 -2
  134. package/dist/{chunk-GBHDROGL.js → chunk-D6GZBSOX.js} +16 -4
  135. package/dist/{chunk-CNBKZEX5.cjs → chunk-DA7NBAJK.cjs} +49 -17
  136. package/dist/chunk-DEQVRSV5.cjs +866 -0
  137. package/dist/{chunk-RGR6ME5J.cjs → chunk-DI57A4BX.cjs} +25 -28
  138. package/dist/{chunk-WM5PAOTQ.cjs → chunk-DIZTWFVR.cjs} +1649 -484
  139. package/dist/{chunk-YZXUDM5X.js → chunk-DLP436GI.js} +204 -62
  140. package/dist/{chunk-OHUZKDGX.js → chunk-DMRXF5DU.js} +3 -3
  141. package/dist/{chunk-U46VYPLR.cjs → chunk-DPSIGY6L.cjs} +9 -9
  142. package/dist/{chunk-DN573ME7.cjs → chunk-DRWDEHE5.cjs} +4 -4
  143. package/dist/{chunk-SEKD5FH3.cjs → chunk-E26KKI46.cjs} +5 -2
  144. package/dist/{chunk-J4Q7XR3G.js → chunk-E46DJH5S.js} +3 -3
  145. package/dist/{chunk-Q7XSCYND.cjs → chunk-E6GFD7VR.cjs} +49 -26
  146. package/dist/chunk-ES2HJQ4N.js +37 -0
  147. package/dist/chunk-EZJHLOWP.js +80 -0
  148. package/dist/chunk-FFBDRUO5.cjs +59 -0
  149. package/dist/{chunk-AYSFIUFW.js → chunk-FGT6KK6T.js} +38 -15
  150. package/dist/{chunk-SAHBLB3E.js → chunk-FP46B4X3.js} +208 -3
  151. package/dist/{chunk-DSPQEHDT.js → chunk-FQAVGSPW.js} +2 -2
  152. package/dist/chunk-FQVG6ZHF.js +197 -0
  153. package/dist/chunk-GBMDFWJX.cjs +152 -0
  154. package/dist/{chunk-DRE2RXBZ.js → chunk-GGLKUENP.js} +1605 -440
  155. package/dist/{chunk-S52YW5ZQ.js → chunk-GNBBIAMD.js} +16 -19
  156. package/dist/{chunk-MYISNQH4.js → chunk-GWO66KBI.js} +1 -1
  157. package/dist/chunk-GWY26SUD.cjs +63 -0
  158. package/dist/{chunk-YGN4CQIP.js → chunk-GZ6DV2UG.js} +1 -1
  159. package/dist/{chunk-EZMINVLU.js → chunk-H4D2Q2AL.js} +5 -2
  160. package/dist/chunk-HDK2EHVH.cjs +570 -0
  161. package/dist/chunk-HJIXWGQZ.js +139 -0
  162. package/dist/{chunk-6RF7UKUS.js → chunk-HKYZSUQ5.js} +48 -47
  163. package/dist/{chunk-LQGVEP3E.js → chunk-HQUSEWT4.js} +45 -13
  164. package/dist/{chunk-HTLINWX6.cjs → chunk-HQWQZML5.cjs} +16 -13
  165. package/dist/{chunk-DVZOENQ7.cjs → chunk-HS4USDND.cjs} +9 -4
  166. package/dist/chunk-HSCUPEA4.cjs +3897 -0
  167. package/dist/{chunk-JCLYQ2JC.js → chunk-HXJEGMGB.js} +12 -6
  168. package/dist/{chunk-LJFUXC56.cjs → chunk-HXQREVTA.cjs} +9 -6
  169. package/dist/{chunk-SCXX4LW5.js → chunk-I24CWKKK.js} +15 -8
  170. package/dist/chunk-IAGCRVJ3.js +355 -0
  171. package/dist/chunk-IEXKKKOF.cjs +92 -0
  172. package/dist/{chunk-5IXII4HX.cjs → chunk-IGMPWJ2I.cjs} +19 -12
  173. package/dist/chunk-IKUMVBCW.cjs +33 -0
  174. package/dist/{chunk-XTB6VJVQ.cjs → chunk-J2K57QM7.cjs} +6 -6
  175. package/dist/{chunk-O4IF4NJT.cjs → chunk-J5ADZN6V.cjs} +57 -56
  176. package/dist/chunk-J5HE6CUM.cjs +124 -0
  177. package/dist/{chunk-JS7IPR7P.js → chunk-JAQO6XDB.js} +31 -2
  178. package/dist/chunk-JIMSII7R.js +987 -0
  179. package/dist/chunk-JJ4KA7HK.cjs +2219 -0
  180. package/dist/chunk-JMN3GZU6.js +570 -0
  181. package/dist/{chunk-X5VSP65C.cjs → chunk-JP3YHTQ2.cjs} +4 -4
  182. package/dist/{chunk-SKV2F3NM.js → chunk-JYKPWK5O.js} +1 -1
  183. package/dist/{chunk-NNPAM4HC.cjs → chunk-KNTUI4TZ.cjs} +12 -6
  184. package/dist/{chunk-HIVRCQS2.js → chunk-L4F7SUYL.js} +56 -25
  185. package/dist/{chunk-C5IJIM2V.cjs → chunk-LDJQ5QHG.cjs} +68 -37
  186. package/dist/{chunk-ULQ6MDSJ.cjs → chunk-LFDPTJYF.cjs} +43 -35
  187. package/dist/chunk-LJD7KR3L.cjs +44 -0
  188. package/dist/chunk-LN7D3EJZ.js +387 -0
  189. package/dist/{chunk-643VRA5S.cjs → chunk-LQBONA55.cjs} +32 -8
  190. package/dist/{chunk-NCC6ETZS.js → chunk-LUMV3DB2.js} +41 -33
  191. package/dist/chunk-M4KNC5BQ.js +78 -0
  192. package/dist/chunk-MO4KP6XS.cjs +229 -0
  193. package/dist/{chunk-BVKXEQVG.cjs → chunk-MOJ7ADW4.cjs} +22 -10
  194. package/dist/chunk-MPULXVC4.cjs +715 -0
  195. package/dist/{chunk-X5YJ34FZ.cjs → chunk-MQESBFBZ.cjs} +46 -23
  196. package/dist/chunk-MUNUUFU7.cjs +21 -0
  197. package/dist/{chunk-X3WS5LDG.js → chunk-MX75JYIY.js} +7 -5
  198. package/dist/chunk-MXVIDIC6.cjs +139 -0
  199. package/dist/{chunk-3K2ESU53.cjs → chunk-N6O3XUZ2.cjs} +2 -2
  200. package/dist/{chunk-IVM5F2AE.js → chunk-NBGOIFKP.js} +265 -18
  201. package/dist/{chunk-SLQAYV3W.js → chunk-NMQ47RCG.js} +8 -2
  202. package/dist/{chunk-JYTDYJVW.js → chunk-O64I2GYI.js} +1 -1
  203. package/dist/{chunk-IFFXSTOM.cjs → chunk-O6TQP7U7.cjs} +3 -3
  204. package/dist/{chunk-AYS2ASM7.js → chunk-OHWMWKJQ.js} +1 -1
  205. package/dist/{chunk-N23UAW4I.js → chunk-OM24WXEE.js} +7 -2
  206. package/dist/{chunk-MAKMSQMQ.cjs → chunk-OPNI6O7F.cjs} +8 -6
  207. package/dist/chunk-OR67YXQK.cjs +13 -0
  208. package/dist/{chunk-QOXPOR5D.js → chunk-OV3PVUYN.js} +115 -44
  209. package/dist/{chunk-TNZRZQ7Q.js → chunk-PB7W7R72.js} +3 -78
  210. package/dist/chunk-PCM3N3CL.cjs +37 -0
  211. package/dist/{chunk-A4IJHHV7.cjs → chunk-PDHT7LQS.cjs} +52 -11
  212. package/dist/{chunk-LA7H35XM.cjs → chunk-PHJO5YAL.cjs} +9 -9
  213. package/dist/{chunk-KPELYZ6L.js → chunk-PQLKJCIE.js} +2 -2
  214. package/dist/chunk-PUD76XQT.cjs +78 -0
  215. package/dist/chunk-Q2IL4DDI.cjs +355 -0
  216. package/dist/{chunk-WPVWQSL7.cjs → chunk-Q6AC3PHY.cjs} +16 -13
  217. package/dist/{chunk-XRZEUWKF.js → chunk-QCHIDZBA.js} +1 -1
  218. package/dist/{chunk-IQ5RXU6O.js → chunk-QEGOB6QV.js} +1 -1
  219. package/dist/{chunk-JSBRDJBE.js → chunk-QGM4M3NI.js} +8 -1
  220. package/dist/chunk-QKP772OZ.js +4291 -0
  221. package/dist/chunk-QQ7PANOP.js +59 -0
  222. package/dist/{chunk-YHD6TUIR.cjs → chunk-QW2RW2GY.cjs} +2 -0
  223. package/dist/chunk-RAKO7UN7.js +114 -0
  224. package/dist/chunk-RBHANOYY.js +33 -0
  225. package/dist/chunk-RBZ7AFX7.cjs +29 -0
  226. package/dist/{chunk-TXSDBGKX.cjs → chunk-REMGR23V.cjs} +46 -49
  227. package/dist/chunk-ROLA6EFO.cjs +85 -0
  228. package/dist/{chunk-TBEGGJNC.cjs → chunk-SOLBYSLY.cjs} +33 -16
  229. package/dist/{chunk-FKSDEWDH.js → chunk-SWCQM52V.js} +68 -25
  230. package/dist/{chunk-H5SWOLG6.js → chunk-TBOLJDUG.js} +39 -24
  231. package/dist/chunk-TH26BQJG.js +101 -0
  232. package/dist/{chunk-245KJE5Y.cjs → chunk-TJNBASFD.cjs} +14 -6
  233. package/dist/chunk-TKKN34TV.js +229 -0
  234. package/dist/chunk-TQ33WBY5.cjs +74 -0
  235. package/dist/{chunk-EGFT4PGW.js → chunk-TWQDAUZU.js} +5 -2
  236. package/dist/{chunk-OGV4WJ5L.cjs → chunk-TXPSTCG7.cjs} +74 -59
  237. package/dist/{chunk-CAMZTXV6.js → chunk-U4C3HW6P.js} +67 -52
  238. package/dist/{chunk-5P2NXKP3.js → chunk-UEIXJG45.js} +104 -76
  239. package/dist/{chunk-22D2CNTP.cjs → chunk-UGFVM77J.cjs} +5 -2
  240. package/dist/chunk-UOQECODR.js +34 -0
  241. package/dist/chunk-UR27UDTB.js +354 -0
  242. package/dist/chunk-UWFG2R2I.cjs +420 -0
  243. package/dist/{chunk-Y72HH2TF.cjs → chunk-UXLW45ZE.cjs} +102 -28
  244. package/dist/{chunk-FPHU2ES6.cjs → chunk-VBOFPU5M.cjs} +6 -0
  245. package/dist/{chunk-JX3DFKBI.js → chunk-VDWJMWDF.js} +54 -24
  246. package/dist/{chunk-LENHP55G.cjs → chunk-VGEV44V2.cjs} +1076 -158
  247. package/dist/{chunk-33RSHBDH.js → chunk-VKBIE6I6.js} +38 -7
  248. package/dist/{chunk-CWMZKFTT.js → chunk-VRMZO6TB.js} +31 -8
  249. package/dist/chunk-VUGOOGHB.js +400 -0
  250. package/dist/chunk-WBU4Q4GS.cjs +400 -0
  251. package/dist/chunk-WGLBC5AY.cjs +59 -0
  252. package/dist/{chunk-KWXVKLQ5.cjs → chunk-WGNMOVMT.cjs} +7 -82
  253. package/dist/{chunk-RKJTGGMU.cjs → chunk-WKRDBCP2.cjs} +221 -16
  254. package/dist/chunk-WRTXCQ3V.cjs +4291 -0
  255. package/dist/chunk-WTB7AFL6.cjs +101 -0
  256. package/dist/{chunk-NDMIPTV4.js → chunk-WZV6UVPY.js} +8 -3
  257. package/dist/chunk-XF2WIKHR.cjs +34 -0
  258. package/dist/{chunk-L3WAH3EM.cjs → chunk-XGMI6IYB.cjs} +46 -15
  259. package/dist/{chunk-FW774QXH.js → chunk-XIVFAD2L.js} +1048 -130
  260. package/dist/chunk-XV2HXRHX.js +85 -0
  261. package/dist/{chunk-72FKPBT5.js → chunk-Y3M2DABP.js} +16 -12
  262. package/dist/{chunk-QNGEW5TC.js → chunk-YV63VW4K.js} +1 -1
  263. package/dist/{chunk-UJ2JSM6H.js → chunk-YVQI26H4.js} +2 -0
  264. package/dist/{chunk-RD5XAJR2.cjs → chunk-YWTIXHU6.cjs} +266 -19
  265. package/dist/chunk-YZWE7XSM.js +5 -0
  266. package/dist/{chunk-I5IW3T2Y.js → chunk-Z3XSSF7B.js} +32 -15
  267. package/dist/{chunk-6UJMCWRY.js → chunk-Z4LIPMPM.js} +6 -0
  268. package/dist/chunk-ZASDSY7P.cjs +114 -0
  269. package/dist/{chunk-R33VKSH5.cjs → chunk-ZHJ7JGME.cjs} +11 -11
  270. package/dist/chunk-ZPD2AO3U.js +866 -0
  271. package/dist/{chunk-7UOUW76C.js → chunk-ZQAT5VT5.js} +101 -24
  272. package/dist/chunk-ZR46OJNZ.js +152 -0
  273. package/dist/{chunk-G3V4SFET.cjs → chunk-ZZ63NW7A.cjs} +78 -35
  274. package/dist/clear-33TWQ2ES.cjs +12 -0
  275. package/dist/clear-OFLFQ3MR.js +12 -0
  276. package/dist/{communityInstaller-6KCFN7YZ.js → communityInstaller-COB2KTOW.js} +9 -6
  277. package/dist/communityInstaller-TWMGPSYM.cjs +22 -0
  278. package/dist/completion-IIZMHXYP.cjs +17 -0
  279. package/dist/completion-PT4VM2H2.js +17 -0
  280. package/dist/config-KL6WU7R2.cjs +20 -0
  281. package/dist/{config-ZN66VXPS.js → config-R4O7GBTY.js} +7 -5
  282. package/dist/{constants-UFM5B232.js → constants-HVCHVQAF.js} +2 -2
  283. package/dist/constants-RLMJ5D5P.cjs +21 -0
  284. package/dist/{defaultHooks-RCXPHF4M.cjs → defaultHooks-2V2CQL63.cjs} +26 -11
  285. package/dist/{defaultHooks-RDRMER3Z.js → defaultHooks-TMHDU3FS.js} +26 -11
  286. package/dist/export-3PK3VFCE.js +15 -0
  287. package/dist/export-WLGNWEMJ.cjs +15 -0
  288. package/dist/{extractSessionMemories-V7K42ZHW.js → extractSessionMemories-A2JX5WJ2.js} +1 -1
  289. package/dist/{extractSessionMemories-SDW2MVBQ.cjs → extractSessionMemories-XL3MS37F.cjs} +1 -1
  290. package/dist/feedback-G635NCLJ.js +18 -0
  291. package/dist/feedback-LLMK3TZH.cjs +18 -0
  292. package/dist/fffSearchProvider-2YCNKOYD.js +412 -0
  293. package/dist/fffSearchProvider-W6627E2V.cjs +412 -0
  294. package/dist/filesystem-L6DQKGWK.js +11 -0
  295. package/dist/filesystem-PGUPCMVK.cjs +11 -0
  296. package/dist/{formatters-6K7QVWQL.cjs → formatters-53XTCNGQ.cjs} +1 -1
  297. package/dist/{formatters-DQHO5I36.js → formatters-T6KV4BPP.js} +1 -1
  298. package/dist/help-BAXLP2M2.cjs +12 -0
  299. package/dist/{help-2BLR7L43.js → help-X3OAZ3CY.js} +3 -3
  300. package/dist/history-6HOJSEMT.cjs +14 -0
  301. package/dist/{history-5FZ3M2AK.js → history-YKFPHBJN.js} +3 -3
  302. package/dist/hooks-7TA4PIIB.js +18 -0
  303. package/dist/hooks-XVFU67T2.cjs +18 -0
  304. package/dist/{i18n-K7QOWIBH.js → i18n-2KBUU7XL.js} +2 -2
  305. package/dist/i18n-MUJMKTFM.cjs +33 -0
  306. package/dist/ide-CCQ33PGC.cjs +15 -0
  307. package/dist/ide-VLVFBZ5F.js +15 -0
  308. package/dist/immediateCommandRouter-MTEHZXQX.js +15 -0
  309. package/dist/immediateCommandRouter-ROXU3MWT.cjs +15 -0
  310. package/dist/{import-UXM3VK7B.js → import-4CHYLS4K.js} +4 -4
  311. package/dist/{import-QEME3E4T.cjs → import-I7T4ZHYL.cjs} +4 -4
  312. package/dist/import-J46F54JY.cjs +10 -0
  313. package/dist/import-JWPYKXCZ.js +10 -0
  314. package/dist/index.cjs +747 -22356
  315. package/dist/index.d.cts +93 -0
  316. package/dist/index.d.ts +93 -0
  317. package/dist/index.js +786 -22395
  318. package/dist/init-262MWZV4.js +10 -0
  319. package/dist/init-EE5Y7RBL.cjs +10 -0
  320. package/dist/inkMode-VUE6ZDLD.cjs +7 -0
  321. package/dist/inkMode-WBNFOSAT.js +7 -0
  322. package/dist/inputPrompt-IIFKCX5Q.cjs +90 -0
  323. package/dist/inputPrompt-YGBHDUEP.js +90 -0
  324. package/dist/language-CVLPB7OV.js +21 -0
  325. package/dist/language-ZTWFHUSV.cjs +21 -0
  326. package/dist/learn-PON7I5QS.js +23 -0
  327. package/dist/learn-XLRSVNA3.cjs +23 -0
  328. package/dist/{lint-D5UOJWIK.cjs → lint-4NDGCSCL.cjs} +1 -1
  329. package/dist/{lint-NJPZWVN2.js → lint-FZ7ZJUB3.js} +1 -1
  330. package/dist/login-223QTGBG.cjs +26 -0
  331. package/dist/login-6IKTBUBY.js +26 -0
  332. package/dist/logout-RN2AG6SI.js +23 -0
  333. package/dist/logout-U3M4FFX7.cjs +23 -0
  334. package/dist/mcp-5O6PUL4G.js +20 -0
  335. package/dist/mcp-NUQ76QQB.cjs +20 -0
  336. package/dist/{mcp-install-VESN42PI.js → mcp-install-6XWXLFVY.js} +18 -11
  337. package/dist/{mcp-install-G27HSS3Z.cjs → mcp-install-P6DHES7V.cjs} +22 -15
  338. package/dist/memory-CYMDQ2YC.cjs +10 -0
  339. package/dist/memory-Q54CESNM.js +10 -0
  340. package/dist/{message-ZJ5AYAMT.cjs → message-4OKO775J.cjs} +1 -1
  341. package/dist/{message-JUBOK2VU.js → message-X3LOAAM7.js} +1 -1
  342. package/dist/model-6AJ77PJG.js +10 -0
  343. package/dist/model-IDRCKDML.cjs +10 -0
  344. package/dist/new-7LEWOUF2.cjs +12 -0
  345. package/dist/new-ZXHEWC2S.js +12 -0
  346. package/dist/onboarding-FXX7YHSJ.cjs +35 -0
  347. package/dist/onboarding-JYNMK6NI.js +35 -0
  348. package/dist/{patch-MOD7QC3D.cjs → patch-DJ2GPFST.cjs} +1 -1
  349. package/dist/{patch-5F6VBIT3.js → patch-NIJWIRHS.js} +1 -1
  350. package/dist/permissions-YBNSANIA.cjs +10 -0
  351. package/dist/permissions-YHJMVA6L.js +10 -0
  352. package/dist/plan-XEJMOT55.cjs +13 -0
  353. package/dist/plan-YYUAXPTL.js +13 -0
  354. package/dist/pr-review-CW6J7P62.cjs +9 -0
  355. package/dist/pr-review-YZSBQVT2.js +9 -0
  356. package/dist/quit-B43SJ6E4.cjs +10 -0
  357. package/dist/quit-GWTNHQSP.js +10 -0
  358. package/dist/rawMode-6W5AXAKI.cjs +7 -0
  359. package/dist/rawMode-GFNLXQPU.js +7 -0
  360. package/dist/{registry-KWZGYJC2.js → registry-34GL6BNJ.js} +30 -45
  361. package/dist/{registry-YN4FQPOO.cjs → registry-V24W7YK6.cjs} +66 -81
  362. package/dist/repeat-P4FAPE3Y.cjs +17 -0
  363. package/dist/repeat-RALE6AUO.js +17 -0
  364. package/dist/resume-DYVOQN5L.cjs +16 -0
  365. package/dist/resume-M25UQKOX.js +16 -0
  366. package/dist/review-QHP2KP4Q.js +9 -0
  367. package/dist/review-UWHWQHCB.cjs +9 -0
  368. package/dist/ripgrep-67SCU2BA.cjs +9 -0
  369. package/dist/ripgrep-VHJQQ55W.js +9 -0
  370. package/dist/rpc-NPS3PU4O.cjs +3730 -0
  371. package/dist/rpc-S3DGW6KV.js +3730 -0
  372. package/dist/search-CPX4PWHP.js +20 -0
  373. package/dist/search-VUF3M4N3.cjs +20 -0
  374. package/dist/{session-BSU2L5UI.cjs → session-LXKC4X5Q.cjs} +1 -1
  375. package/dist/{session-SZMRN5KG.js → session-NMMO4QOL.js} +1 -1
  376. package/dist/sessions-IYAXMK23.js +10 -0
  377. package/dist/sessions-JODKER5D.cjs +10 -0
  378. package/dist/settings-55BNW6BF.js +33 -0
  379. package/dist/settings-BKTS7OMC.cjs +33 -0
  380. package/dist/setup-IRC5HQG2.js +29 -0
  381. package/dist/setup-MMQ7TWOP.cjs +29 -0
  382. package/dist/share-6JRQECAH.cjs +17 -0
  383. package/dist/share-YM5MJKMO.js +17 -0
  384. package/dist/{skills-FYY6F2WV.cjs → skills-GGMZOVIE.cjs} +14 -11
  385. package/dist/skills-LWSOKOSH.cjs +29 -0
  386. package/dist/{skills-6OL4OSGA.js → skills-MVIZNHT4.js} +13 -10
  387. package/dist/skills-VWOMV3CR.js +29 -0
  388. package/dist/{skills-install-6CSWC24P.js → skills-install-QBA5RCV6.js} +22 -71
  389. package/dist/{skills-install-O3LZ2ETC.cjs → skills-install-VTAMCNNY.cjs} +35 -84
  390. package/dist/skills-new-GPL46YV2.js +18 -0
  391. package/dist/skills-new-L5BEZN5V.cjs +18 -0
  392. package/dist/slashCommands-FBPCIWM5.cjs +95 -0
  393. package/dist/slashCommands-FCWY5DXW.js +95 -0
  394. package/dist/status-3B5SDZPL.js +17 -0
  395. package/dist/status-TTGRF6NC.cjs +17 -0
  396. package/dist/summarizer-DGPHE5IQ.js +17 -0
  397. package/dist/summarizer-JNXLUAQG.cjs +17 -0
  398. package/dist/sync-77CXVVTK.cjs +21 -0
  399. package/dist/{sync-KWX67OUN.js → sync-7BILIQHP.js} +4 -4
  400. package/dist/sync-7OKF6636.js +21 -0
  401. package/dist/sync-EH4K5U3N.cjs +40 -0
  402. package/dist/{tasks-5FPBIFLC.js → tasks-R5MBGAQ6.js} +1 -1
  403. package/dist/{tasks-TXGKGNH6.cjs → tasks-V4WB3MFR.cjs} +1 -1
  404. package/dist/{team-5YXP3JGR.js → team-JESCHGWB.js} +1 -1
  405. package/dist/{team-IIWEZKNR.cjs → team-VQQKWGZB.cjs} +1 -1
  406. package/dist/{teammate-L6EZQ3I2.js → teammate-GZQSCIMS.js} +29 -8
  407. package/dist/{teammate-2KMKJXAM.cjs → teammate-J6PHGL23.cjs} +30 -9
  408. package/dist/theme-64BYGJ57.cjs +21 -0
  409. package/dist/theme-YJE6HEON.js +21 -0
  410. package/dist/tools-3PPTTKFV.js +9 -0
  411. package/dist/tools-THIQA7WC.cjs +9 -0
  412. package/dist/ui/questionModal.cjs +9 -6
  413. package/dist/ui/questionModal.js +8 -5
  414. package/dist/undo-PRTEGL2J.cjs +10 -0
  415. package/dist/undo-SZEHLX7X.js +10 -0
  416. package/dist/{update-TVAJMMBC.js → update-53WMKYVS.js} +1 -1
  417. package/dist/{update-Z6BIIQDC.cjs → update-NV6QRYY7.cjs} +1 -1
  418. package/dist/web-3BA2WV37.cjs +37 -0
  419. package/dist/web-6FYGBX5K.js +37 -0
  420. package/dist/workspaceSafety-MDJGHK6D.cjs +9 -0
  421. package/dist/workspaceSafety-XOUMUBVB.js +9 -0
  422. package/dist/yolo-GF2YD7ZI.js +9 -0
  423. package/dist/yolo-OGDA7HNC.cjs +9 -0
  424. package/dist/yoloMode-3DJDA75U.cjs +17 -0
  425. package/dist/yoloMode-4JOOSU26.js +17 -0
  426. package/package.json +46 -49
  427. package/dist/AgentRegistry-NQCLWABO.cjs +0 -10
  428. package/dist/CommunitySkillsCache-6QPRMTJO.js +0 -8
  429. package/dist/CommunitySkillsCache-GTQMOCCO.cjs +0 -8
  430. package/dist/GitHubRegistryFetcher-S7QFUEKV.cjs +0 -7
  431. package/dist/HookManager-Q2KYMCP4.cjs +0 -7
  432. package/dist/HookManager-TTP4Y6DC.js +0 -7
  433. package/dist/LearnAdvisor-A4Q5PPBI.js +0 -9
  434. package/dist/LearnAdvisor-GASQD7HT.cjs +0 -9
  435. package/dist/McpClientManager-RKD7C6OY.cjs +0 -8
  436. package/dist/MemoryManager-GUNLRP5S.js +0 -8
  437. package/dist/MemoryManager-TNSGKDKX.cjs +0 -8
  438. package/dist/PermissionManager-KMN53FJP.cjs +0 -11
  439. package/dist/ProviderFactory-MR5B23QJ.js +0 -9
  440. package/dist/ProviderFactory-VFGCJJX6.cjs +0 -9
  441. package/dist/SessionManager-FEUAU3ZJ.cjs +0 -10
  442. package/dist/SessionManager-IKWAK2PI.js +0 -10
  443. package/dist/SkillsRegistry-KPQFTRIT.cjs +0 -9
  444. package/dist/SkillsRegistry-XJSKPDF2.js +0 -9
  445. package/dist/SubAgent-NYH6GWQ3.js +0 -11
  446. package/dist/SubAgent-PZKBDUBA.cjs +0 -11
  447. package/dist/SyncApiClient-ZNYMT36M.cjs +0 -11
  448. package/dist/about-HHTF2YFL.js +0 -12
  449. package/dist/about-JGRVNNQC.cjs +0 -12
  450. package/dist/actionExecutor-U6IBN2TU.cjs +0 -19
  451. package/dist/actionExecutor-XT5FW3W6.js +0 -19
  452. package/dist/add-dir-247K3XRY.js +0 -10
  453. package/dist/add-dir-GS4DXKKH.cjs +0 -10
  454. package/dist/agents-R6ZEFTVR.cjs +0 -12
  455. package/dist/agents-WJPQWQF2.js +0 -12
  456. package/dist/agents-new-HKVEIBDJ.js +0 -14
  457. package/dist/agents-new-X6GTHIO6.cjs +0 -14
  458. package/dist/autoSkill-H4T6VVDA.cjs +0 -20
  459. package/dist/automode-BC6NVECO.js +0 -10
  460. package/dist/automode-WN2RSOGW.cjs +0 -10
  461. package/dist/chunk-33A755XB.cjs +0 -168
  462. package/dist/chunk-3OTU3RS3.cjs +0 -1607
  463. package/dist/chunk-4PKF7WPD.js +0 -100
  464. package/dist/chunk-ALYU6VTM.js +0 -105
  465. package/dist/chunk-AS6RTLN7.cjs +0 -203
  466. package/dist/chunk-BWN2CLLM.cjs +0 -298
  467. package/dist/chunk-HQ7YZKXE.js +0 -168
  468. package/dist/chunk-HVKOZ2VP.cjs +0 -115
  469. package/dist/chunk-J6QET7EF.cjs +0 -454
  470. package/dist/chunk-LWUJFGOZ.js +0 -115
  471. package/dist/chunk-P47WPOXN.js +0 -298
  472. package/dist/chunk-PRRCJFU3.cjs +0 -85
  473. package/dist/chunk-RO6WYEWH.js +0 -454
  474. package/dist/chunk-SYVYLZZF.cjs +0 -24
  475. package/dist/chunk-T73IDKDF.js +0 -111
  476. package/dist/chunk-YRLYSQEQ.cjs +0 -105
  477. package/dist/chunk-ZQE72E6W.cjs +0 -100
  478. package/dist/chunk-ZVY2XD6T.js +0 -1607
  479. package/dist/clear-UO4MNWZW.cjs +0 -12
  480. package/dist/clear-ZJ5NYP6E.js +0 -12
  481. package/dist/communityInstaller-PVSOFDZD.cjs +0 -19
  482. package/dist/completion-MMF2PN2H.js +0 -14
  483. package/dist/completion-UI5WKHXI.cjs +0 -14
  484. package/dist/config-E7RINK4R.cjs +0 -18
  485. package/dist/constants-6CPCJ3DY.cjs +0 -21
  486. package/dist/export-N4XIVDSL.cjs +0 -12
  487. package/dist/export-W22L4D5C.js +0 -12
  488. package/dist/feedback-DR6ADSNE.cjs +0 -15
  489. package/dist/feedback-FEEAP4QW.js +0 -15
  490. package/dist/filesystem-3SGCW2BF.js +0 -10
  491. package/dist/filesystem-MCFXJQ6R.cjs +0 -10
  492. package/dist/help-AQHGTS7P.cjs +0 -12
  493. package/dist/history-NIUDRMKA.cjs +0 -14
  494. package/dist/hooks-2EY4IPKV.js +0 -13
  495. package/dist/hooks-LJVORRIG.cjs +0 -13
  496. package/dist/i18n-ARDG2SMC.cjs +0 -33
  497. package/dist/ide-GFW6IJHD.js +0 -12
  498. package/dist/ide-N2ZNSSB3.cjs +0 -12
  499. package/dist/import-DFVN3KNZ.js +0 -10
  500. package/dist/import-ZS6DPGU5.cjs +0 -10
  501. package/dist/init-PY75HA3S.cjs +0 -10
  502. package/dist/init-QNMWLAVY.js +0 -10
  503. package/dist/language-5UE4G2BT.cjs +0 -18
  504. package/dist/language-UXMHEZUJ.js +0 -18
  505. package/dist/learn-HJ3FLNZC.cjs +0 -20
  506. package/dist/learn-MVYS3RU5.js +0 -20
  507. package/dist/localProjectPermissions-N77HA3XK.js +0 -18
  508. package/dist/localProjectPermissions-UFSMNTBJ.cjs +0 -18
  509. package/dist/login-DSE7H63A.js +0 -20
  510. package/dist/login-V3MEWPKN.cjs +0 -20
  511. package/dist/logout-BMVCLKKW.js +0 -18
  512. package/dist/logout-XEG7FHOZ.cjs +0 -18
  513. package/dist/mcp-PYUR4PHO.js +0 -18
  514. package/dist/mcp-SG6JFLGC.cjs +0 -18
  515. package/dist/memory-4ZMMEZ2Z.js +0 -10
  516. package/dist/memory-QSGMVVGH.cjs +0 -10
  517. package/dist/model-NANLBZ4Z.cjs +0 -10
  518. package/dist/model-ZXNV4AF7.js +0 -10
  519. package/dist/new-5QJY5JP2.js +0 -12
  520. package/dist/new-PMMG55UX.cjs +0 -12
  521. package/dist/permissions-LECTCJ4H.cjs +0 -13
  522. package/dist/permissions-VP5VGIBL.js +0 -13
  523. package/dist/plan-G5CEKJI4.js +0 -11
  524. package/dist/plan-QKOHE3LH.cjs +0 -11
  525. package/dist/quit-BKOOPHU5.cjs +0 -10
  526. package/dist/quit-FVFNYACP.js +0 -10
  527. package/dist/resume-EXFQSQPH.js +0 -13
  528. package/dist/resume-PP2IQM5S.cjs +0 -13
  529. package/dist/search-C56FBN67.cjs +0 -17
  530. package/dist/search-XGZDYBF4.js +0 -17
  531. package/dist/sessions-54KI3F2Q.js +0 -10
  532. package/dist/sessions-DDTSPNVW.cjs +0 -10
  533. package/dist/settings-BDO37TTO.cjs +0 -30
  534. package/dist/settings-FHRDFPLK.js +0 -30
  535. package/dist/share-IERCTBGN.cjs +0 -14
  536. package/dist/share-TGROUE6R.js +0 -14
  537. package/dist/skills-OM4IGBAA.cjs +0 -26
  538. package/dist/skills-S3GRN323.js +0 -26
  539. package/dist/skills-new-ALD2PTHN.js +0 -15
  540. package/dist/skills-new-PWLKK7GW.cjs +0 -15
  541. package/dist/slashCommands-L4ZD33LJ.js +0 -75
  542. package/dist/slashCommands-YY2VUUDF.cjs +0 -75
  543. package/dist/status-3PC5XWSS.cjs +0 -11
  544. package/dist/status-KCLVOYPD.js +0 -11
  545. package/dist/sync-6SDWG5RK.js +0 -18
  546. package/dist/sync-7JMZVEQD.cjs +0 -40
  547. package/dist/sync-WHURZL3U.cjs +0 -18
  548. package/dist/theme-BE5A4FPN.cjs +0 -18
  549. package/dist/theme-YMFCQP7J.js +0 -18
  550. package/dist/undo-KZHUUZTD.cjs +0 -10
  551. package/dist/undo-NEIEHQVX.js +0 -10
@@ -1,298 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
-
3
-
4
- var _chunkRD5XAJR2cjs = require('./chunk-RD5XAJR2.cjs');
5
-
6
-
7
- var _chunkSEKD5FH3cjs = require('./chunk-SEKD5FH3.cjs');
8
-
9
- // src/config.ts
10
- var _fsextra = require('fs-extra'); var _fsextra2 = _interopRequireDefault(_fsextra);
11
- var _path = require('path'); var _path2 = _interopRequireDefault(_path);
12
- var _yaml = require('yaml'); var _yaml2 = _interopRequireDefault(_yaml);
13
- var DEFAULT_CONFIG_PATH = _chunkSEKD5FH3cjs.AUTOHAND_FILES.configJson;
14
- var YAML_CONFIG_PATH = _chunkSEKD5FH3cjs.AUTOHAND_FILES.configYaml;
15
- var YML_CONFIG_PATH = _chunkSEKD5FH3cjs.AUTOHAND_FILES.configYml;
16
- var DEFAULT_BASE_URL = "https://openrouter.ai/api/v1";
17
- var DEFAULT_OLLAMA_URL = "http://localhost:11434";
18
- var DEFAULT_LLAMACPP_URL = "http://localhost:8080";
19
- var DEFAULT_OPENAI_URL = "https://api.openai.com/v1";
20
- var DEFAULT_MLX_URL = "http://localhost:8080";
21
- var DEFAULT_LLMGATEWAY_URL = "https://api.llmgateway.io/v1";
22
- function getDefaultConfigPath() {
23
- return DEFAULT_CONFIG_PATH;
24
- }
25
- async function detectConfigPath(customPath) {
26
- if (customPath) {
27
- return _path2.default.resolve(customPath);
28
- }
29
- const envPath = process.env.AUTOHAND_CONFIG;
30
- if (envPath) {
31
- return _path2.default.resolve(envPath);
32
- }
33
- if (await _fsextra2.default.pathExists(YAML_CONFIG_PATH)) {
34
- return YAML_CONFIG_PATH;
35
- }
36
- if (await _fsextra2.default.pathExists(YML_CONFIG_PATH)) {
37
- return YML_CONFIG_PATH;
38
- }
39
- return DEFAULT_CONFIG_PATH;
40
- }
41
- function isYamlFile(filePath) {
42
- const ext = _path2.default.extname(filePath).toLowerCase();
43
- return ext === ".yaml" || ext === ".yml";
44
- }
45
- async function parseConfigFile(configPath) {
46
- const content = await _fsextra2.default.readFile(configPath, "utf8");
47
- if (isYamlFile(configPath)) {
48
- return _yaml2.default.parse(content);
49
- }
50
- return JSON.parse(content);
51
- }
52
- async function loadConfig(customPath) {
53
- const configPath = await detectConfigPath(customPath);
54
- await _fsextra2.default.ensureDir(_path2.default.dirname(configPath));
55
- let isNewConfig = false;
56
- if (!await _fsextra2.default.pathExists(configPath)) {
57
- const defaultConfig = {
58
- provider: "openrouter",
59
- openrouter: {
60
- apiKey: "",
61
- baseUrl: "https://openrouter.ai/api/v1",
62
- model: "anthropic/claude-sonnet-4-20250514"
63
- },
64
- workspace: {
65
- defaultRoot: process.cwd(),
66
- allowDangerousOps: false
67
- },
68
- ui: {
69
- theme: "dark",
70
- autoConfirm: false,
71
- promptSuggestions: true
72
- },
73
- telemetry: {
74
- enabled: false
75
- },
76
- autoReport: {
77
- enabled: true
78
- }
79
- };
80
- await _fsextra2.default.writeJson(configPath, defaultConfig, { spaces: 2 });
81
- isNewConfig = true;
82
- }
83
- let parsed;
84
- try {
85
- parsed = await parseConfigFile(configPath);
86
- } catch (error) {
87
- throw new Error(`Failed to parse config at ${configPath}: ${error.message}`);
88
- }
89
- const normalized = normalizeConfig(parsed);
90
- const withEnv = mergeEnvVariables(normalized);
91
- validateConfig(withEnv, configPath);
92
- const themeName = _optionalChain([withEnv, 'access', _ => _.ui, 'optionalAccess', _2 => _2.theme]) || "dark";
93
- _chunkRD5XAJR2cjs.autoInitTheme.call(void 0, themeName);
94
- return { ...withEnv, configPath, isNewConfig };
95
- }
96
- function mergeEnvVariables(config) {
97
- config = {
98
- ...config,
99
- api: {
100
- baseUrl: process.env.AUTOHAND_API_URL || _optionalChain([config, 'access', _3 => _3.api, 'optionalAccess', _4 => _4.baseUrl]) || "https://api.autohand.ai",
101
- companySecret: process.env.AUTOHAND_SECRET || _optionalChain([config, 'access', _5 => _5.api, 'optionalAccess', _6 => _6.companySecret]) || ""
102
- }
103
- };
104
- if (process.env.AZURE_OPENAI_KEY || process.env.AZURE_OPENAI_ENDPOINT || process.env.AZURE_OPENAI_DEPLOYMENT) {
105
- const azureEnv = {
106
- apiKey: process.env.AZURE_OPENAI_KEY,
107
- baseUrl: process.env.AZURE_OPENAI_ENDPOINT,
108
- deploymentName: process.env.AZURE_OPENAI_DEPLOYMENT,
109
- apiVersion: process.env.AZURE_OPENAI_API_VERSION,
110
- tenantId: process.env.AZURE_TENANT_ID,
111
- clientId: process.env.AZURE_CLIENT_ID,
112
- clientSecret: process.env.AZURE_CLIENT_SECRET
113
- };
114
- const existing = _nullishCoalesce(config.azure, () => ( { model: _nullishCoalesce(azureEnv.deploymentName, () => ( "gpt-4o")) }));
115
- config = {
116
- ...config,
117
- azure: {
118
- ...existing,
119
- ...azureEnv.apiKey && { apiKey: azureEnv.apiKey },
120
- ...azureEnv.baseUrl && { baseUrl: azureEnv.baseUrl },
121
- ...azureEnv.deploymentName && { deploymentName: azureEnv.deploymentName },
122
- ...azureEnv.apiVersion && { apiVersion: azureEnv.apiVersion },
123
- ...azureEnv.tenantId && { tenantId: azureEnv.tenantId },
124
- ...azureEnv.clientId && { clientId: azureEnv.clientId },
125
- ...azureEnv.clientSecret && { clientSecret: azureEnv.clientSecret }
126
- }
127
- };
128
- }
129
- return config;
130
- }
131
- function normalizeConfig(config) {
132
- if (isModernConfig(config)) {
133
- const provider = _nullishCoalesce(config.provider, () => ( "openrouter"));
134
- return { provider, ...config };
135
- }
136
- if (isLegacyConfig(config)) {
137
- return {
138
- provider: "openrouter",
139
- openrouter: {
140
- apiKey: _nullishCoalesce(config.api_key, () => ( "replace-me")),
141
- baseUrl: _nullishCoalesce(config.base_url, () => ( DEFAULT_BASE_URL)),
142
- model: _nullishCoalesce(config.model, () => ( "anthropic/claude-3.5-sonnet"))
143
- },
144
- workspace: {
145
- defaultRoot: process.cwd(),
146
- allowDangerousOps: false
147
- },
148
- ui: {
149
- autoConfirm: _nullishCoalesce(config.dry_run, () => ( false)),
150
- theme: "dark",
151
- promptSuggestions: true
152
- }
153
- };
154
- }
155
- return config;
156
- }
157
- function isModernConfig(config) {
158
- return typeof config.openrouter === "object" || typeof config.ollama === "object" || typeof config.llamacpp === "object" || typeof config.openai === "object" || typeof config.mlx === "object" || typeof config.azure === "object";
159
- }
160
- function isLegacyConfig(config) {
161
- return typeof config.api_key === "string";
162
- }
163
- function validateConfig(config, configPath) {
164
- if (config.workspace) {
165
- if (config.workspace.defaultRoot && typeof config.workspace.defaultRoot !== "string") {
166
- throw new Error(`workspace.defaultRoot must be a string in ${configPath}`);
167
- }
168
- if (config.workspace.allowDangerousOps !== void 0 && typeof config.workspace.allowDangerousOps !== "boolean") {
169
- throw new Error(`workspace.allowDangerousOps must be boolean in ${configPath}`);
170
- }
171
- }
172
- if (config.ui) {
173
- if (config.ui.theme && typeof config.ui.theme !== "string") {
174
- throw new Error(`ui.theme must be a string in ${configPath}`);
175
- }
176
- if (config.ui.theme && typeof config.ui.theme === "string" && !_chunkRD5XAJR2cjs.themeExists.call(void 0, config.ui.theme)) {
177
- console.warn(`Theme '${config.ui.theme}' not found \u2014 falling back to default.`);
178
- }
179
- if (config.ui.autoConfirm !== void 0 && typeof config.ui.autoConfirm !== "boolean") {
180
- throw new Error(`ui.autoConfirm must be boolean in ${configPath}`);
181
- }
182
- if (config.ui.promptSuggestions !== void 0 && typeof config.ui.promptSuggestions !== "boolean") {
183
- throw new Error(`ui.promptSuggestions must be boolean in ${configPath}`);
184
- }
185
- }
186
- if (config.mcp) {
187
- if (config.mcp.enabled !== void 0 && typeof config.mcp.enabled !== "boolean") {
188
- throw new Error(`mcp.enabled must be boolean in ${configPath}`);
189
- }
190
- if (config.mcp.servers !== void 0) {
191
- if (!Array.isArray(config.mcp.servers)) {
192
- throw new Error(`mcp.servers must be an array in ${configPath}`);
193
- }
194
- for (const server of config.mcp.servers) {
195
- if (!server.name || typeof server.name !== "string") {
196
- throw new Error(`mcp.servers[].name must be a non-empty string in ${configPath}`);
197
- }
198
- if (!["stdio", "sse", "http"].includes(server.transport)) {
199
- throw new Error(`mcp.servers[].transport must be 'stdio', 'sse', or 'http' in ${configPath}`);
200
- }
201
- if (server.transport === "stdio" && (!server.command || typeof server.command !== "string")) {
202
- throw new Error(`mcp.servers[].command is required for stdio transport in ${configPath}`);
203
- }
204
- if ((server.transport === "sse" || server.transport === "http") && (!server.url || typeof server.url !== "string")) {
205
- throw new Error(`mcp.servers[].url is required for ${server.transport} transport in ${configPath}`);
206
- }
207
- }
208
- }
209
- }
210
- if (config.externalAgents) {
211
- if (config.externalAgents.enabled !== void 0 && typeof config.externalAgents.enabled !== "boolean") {
212
- throw new Error(`externalAgents.enabled must be boolean in ${configPath}`);
213
- }
214
- if (config.externalAgents.paths !== void 0) {
215
- if (!Array.isArray(config.externalAgents.paths)) {
216
- throw new Error(`externalAgents.paths must be an array in ${configPath}`);
217
- }
218
- for (const p of config.externalAgents.paths) {
219
- if (typeof p !== "string") {
220
- throw new Error(`externalAgents.paths must contain only strings in ${configPath}`);
221
- }
222
- }
223
- }
224
- }
225
- }
226
- function resolveWorkspaceRoot(config, requestedPath) {
227
- const candidate = _nullishCoalesce(_nullishCoalesce(requestedPath, () => ( process.cwd())), () => ( _optionalChain([config, 'access', _7 => _7.workspace, 'optionalAccess', _8 => _8.defaultRoot])));
228
- return _path2.default.resolve(candidate);
229
- }
230
- function getProviderConfig(config, provider) {
231
- const chosen = _nullishCoalesce(_nullishCoalesce(provider, () => ( config.provider)), () => ( "openrouter"));
232
- const configByProvider = {
233
- openrouter: config.openrouter,
234
- ollama: config.ollama,
235
- llamacpp: config.llamacpp,
236
- openai: config.openai,
237
- mlx: config.mlx,
238
- llmgateway: config.llmgateway,
239
- azure: config.azure
240
- };
241
- const entry = configByProvider[chosen];
242
- if (!entry) {
243
- return null;
244
- }
245
- if (chosen === "openrouter" || chosen === "llmgateway") {
246
- const { apiKey, model } = entry;
247
- if (!apiKey || apiKey === "replace-me" || !model) {
248
- return null;
249
- }
250
- } else {
251
- if (!entry.model) {
252
- return null;
253
- }
254
- }
255
- return {
256
- ...entry,
257
- baseUrl: _nullishCoalesce(entry.baseUrl, () => ( defaultBaseUrlFor(chosen, entry.port)))
258
- };
259
- }
260
- function defaultBaseUrlFor(provider, port) {
261
- if (provider === "openrouter") return DEFAULT_BASE_URL;
262
- if (provider === "llmgateway") return DEFAULT_LLMGATEWAY_URL;
263
- const p = port ? port.toString() : void 0;
264
- switch (provider) {
265
- case "ollama":
266
- return p ? `http://localhost:${p}` : DEFAULT_OLLAMA_URL;
267
- case "llamacpp":
268
- return p ? `http://localhost:${p}` : DEFAULT_LLAMACPP_URL;
269
- case "openai":
270
- return DEFAULT_OPENAI_URL;
271
- case "mlx":
272
- return p ? `http://localhost:${p}` : DEFAULT_MLX_URL;
273
- default:
274
- return void 0;
275
- }
276
- }
277
- async function saveConfig(config) {
278
- const { configPath, ...data } = config;
279
- if (isYamlFile(configPath)) {
280
- const yamlContent = _yaml2.default.stringify(data, { indent: 2 });
281
- await _fsextra2.default.writeFile(configPath, yamlContent, "utf8");
282
- } else {
283
- await _fsextra2.default.writeJson(configPath, data, { spaces: 2 });
284
- }
285
- }
286
-
287
-
288
-
289
-
290
-
291
-
292
-
293
- exports.getDefaultConfigPath = getDefaultConfigPath; exports.loadConfig = loadConfig; exports.resolveWorkspaceRoot = resolveWorkspaceRoot; exports.getProviderConfig = getProviderConfig; exports.saveConfig = saveConfig;
294
- /**
295
- * @license
296
- * Copyright 2025 Autohand AI LLC
297
- * SPDX-License-Identifier: Apache-2.0
298
- */
@@ -1,168 +0,0 @@
1
- import {
2
- AUTH_CONFIG
3
- } from "./chunk-EGFT4PGW.js";
4
-
5
- // src/auth/AuthClient.ts
6
- var DEFAULT_TIMEOUT = 1e4;
7
- var AuthClient = class {
8
- constructor(config = {}) {
9
- this.baseUrl = config.baseUrl || AUTH_CONFIG.apiBaseUrl;
10
- this.timeout = config.timeout || DEFAULT_TIMEOUT;
11
- }
12
- /**
13
- * Initiate device authorization flow
14
- * Returns device code and user code for display
15
- */
16
- async initiateDeviceAuth() {
17
- const controller = new AbortController();
18
- const timeoutId = setTimeout(() => controller.abort(), this.timeout);
19
- try {
20
- const response = await fetch(`${this.baseUrl}/cli/initiate`, {
21
- method: "POST",
22
- headers: {
23
- "Content-Type": "application/json"
24
- },
25
- body: JSON.stringify({ clientId: "autohand-cli" }),
26
- signal: controller.signal
27
- });
28
- clearTimeout(timeoutId);
29
- const data = await response.json();
30
- if (!response.ok) {
31
- return {
32
- success: false,
33
- error: data.error || data.message || `HTTP ${response.status}`
34
- };
35
- }
36
- return {
37
- success: true,
38
- deviceCode: data.deviceCode,
39
- userCode: data.userCode,
40
- verificationUri: data.verificationUri,
41
- verificationUriComplete: data.verificationUriComplete,
42
- expiresIn: data.expiresIn,
43
- interval: data.interval
44
- };
45
- } catch (error) {
46
- clearTimeout(timeoutId);
47
- if (error.name === "AbortError") {
48
- return { success: false, error: "Request timeout" };
49
- }
50
- return { success: false, error: error.message };
51
- }
52
- }
53
- /**
54
- * Poll for device authorization status
55
- */
56
- async pollDeviceAuth(deviceCode) {
57
- const controller = new AbortController();
58
- const timeoutId = setTimeout(() => controller.abort(), this.timeout);
59
- try {
60
- const response = await fetch(`${this.baseUrl}/cli/poll`, {
61
- method: "POST",
62
- headers: {
63
- "Content-Type": "application/json"
64
- },
65
- body: JSON.stringify({ deviceCode }),
66
- signal: controller.signal
67
- });
68
- clearTimeout(timeoutId);
69
- const data = await response.json();
70
- if (!response.ok && response.status !== 404) {
71
- return {
72
- success: false,
73
- status: "pending",
74
- error: data.error || data.message || `HTTP ${response.status}`
75
- };
76
- }
77
- return {
78
- success: data.success !== false,
79
- status: data.status || "pending",
80
- token: data.token,
81
- user: data.user,
82
- error: data.error
83
- };
84
- } catch (error) {
85
- clearTimeout(timeoutId);
86
- if (error.name === "AbortError") {
87
- return { success: false, status: "pending", error: "Request timeout" };
88
- }
89
- return { success: false, status: "pending", error: error.message };
90
- }
91
- }
92
- /**
93
- * Validate current session token
94
- */
95
- async validateSession(token) {
96
- const controller = new AbortController();
97
- const timeoutId = setTimeout(() => controller.abort(), this.timeout);
98
- try {
99
- const response = await fetch(`${this.baseUrl}/me`, {
100
- method: "GET",
101
- headers: {
102
- "Authorization": `Bearer ${token}`,
103
- "Cookie": `auth_session=${token}`
104
- },
105
- signal: controller.signal
106
- });
107
- clearTimeout(timeoutId);
108
- if (!response.ok) {
109
- return { authenticated: false };
110
- }
111
- const data = await response.json();
112
- return {
113
- authenticated: true,
114
- user: data.user || data
115
- };
116
- } catch {
117
- clearTimeout(timeoutId);
118
- return { authenticated: false };
119
- }
120
- }
121
- /**
122
- * Logout and invalidate session
123
- */
124
- async logout(token) {
125
- const controller = new AbortController();
126
- const timeoutId = setTimeout(() => controller.abort(), this.timeout);
127
- try {
128
- const response = await fetch(`${this.baseUrl}/logout`, {
129
- method: "POST",
130
- headers: {
131
- "Authorization": `Bearer ${token}`,
132
- "Cookie": `auth_session=${token}`
133
- },
134
- signal: controller.signal
135
- });
136
- clearTimeout(timeoutId);
137
- return { success: response.ok };
138
- } catch {
139
- clearTimeout(timeoutId);
140
- return { success: true };
141
- }
142
- }
143
- };
144
- var instance = null;
145
- function getAuthClient(config) {
146
- if (!instance) {
147
- instance = new AuthClient(config);
148
- }
149
- return instance;
150
- }
151
-
152
- export {
153
- getAuthClient
154
- };
155
- /**
156
- * @license
157
- * Copyright 2025 Autohand AI LLC
158
- * SPDX-License-Identifier: Apache-2.0
159
- *
160
- * Auth API Client for CLI authentication
161
- */
162
- /**
163
- * @license
164
- * Copyright 2025 Autohand AI LLC
165
- * SPDX-License-Identifier: Apache-2.0
166
- *
167
- * Auth module exports
168
- */
@@ -1,115 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
-
3
- var _chunkOLSBBZW6cjs = require('./chunk-OLSBBZW6.cjs');
4
-
5
-
6
- var _chunk7BTSG4MEcjs = require('./chunk-7BTSG4ME.cjs');
7
-
8
- // src/commands/permissions.ts
9
- var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
10
- async function permissions(ctx) {
11
- const whitelist = ctx.permissionManager.getWhitelist();
12
- const blacklist = ctx.permissionManager.getBlacklist();
13
- const settings = ctx.permissionManager.getSettings();
14
- console.log();
15
- console.log(_chalk2.default.bold.cyan(_chunk7BTSG4MEcjs.t.call(void 0, "commands.permissions.title")));
16
- console.log(_chalk2.default.gray("\u2500".repeat(50)));
17
- console.log(_chalk2.default.gray(_chunk7BTSG4MEcjs.t.call(void 0, "commands.permissions.mode", { mode: settings.mode || "interactive" })));
18
- console.log();
19
- if (whitelist.length === 0 && blacklist.length === 0) {
20
- console.log(_chalk2.default.gray("No saved permissions yet."));
21
- console.log();
22
- console.log(_chalk2.default.gray("When you approve or deny a tool/command, it will be saved here."));
23
- console.log(_chalk2.default.gray("Approved items are auto-allowed; denied items are auto-blocked."));
24
- return null;
25
- }
26
- if (whitelist.length > 0) {
27
- console.log(_chalk2.default.bold.green(_chunk7BTSG4MEcjs.t.call(void 0, "commands.permissions.allowed")));
28
- console.log();
29
- whitelist.forEach((pattern, index) => {
30
- console.log(_chalk2.default.green(` ${index + 1}. ${pattern}`));
31
- });
32
- console.log();
33
- }
34
- if (blacklist.length > 0) {
35
- console.log(_chalk2.default.bold.red(_chunk7BTSG4MEcjs.t.call(void 0, "commands.permissions.denied")));
36
- console.log();
37
- blacklist.forEach((pattern, index) => {
38
- console.log(_chalk2.default.red(` ${index + 1}. ${pattern}`));
39
- });
40
- console.log();
41
- }
42
- console.log(_chalk2.default.gray("\u2500".repeat(50)));
43
- console.log(_chalk2.default.gray(`Total: ${whitelist.length} approved, ${blacklist.length} denied`));
44
- console.log();
45
- const actionResult = await _chunkOLSBBZW6cjs.safePrompt.call(void 0, {
46
- type: "select",
47
- name: "action",
48
- message: "What would you like to do?",
49
- choices: [
50
- { name: "done", message: "Done" },
51
- { name: "remove_approved", message: "Remove an approved item" },
52
- { name: "remove_denied", message: "Remove a denied item" },
53
- { name: "clear_all", message: "Clear all permissions" }
54
- ]
55
- });
56
- if (!actionResult || actionResult.action === "done") {
57
- return null;
58
- }
59
- const { action } = actionResult;
60
- if (action === "remove_approved" && whitelist.length > 0) {
61
- const result = await _chunkOLSBBZW6cjs.safePrompt.call(void 0, {
62
- type: "select",
63
- name: "pattern",
64
- message: "Select item to remove from approved list:",
65
- choices: whitelist.map((p) => ({ name: p, message: p }))
66
- });
67
- if (result) {
68
- await ctx.permissionManager.removeFromWhitelist(result.pattern);
69
- console.log(_chalk2.default.yellow(`Removed "${result.pattern}" from approved list.`));
70
- }
71
- } else if (action === "remove_denied" && blacklist.length > 0) {
72
- const result = await _chunkOLSBBZW6cjs.safePrompt.call(void 0, {
73
- type: "select",
74
- name: "pattern",
75
- message: "Select item to remove from denied list:",
76
- choices: blacklist.map((p) => ({ name: p, message: p }))
77
- });
78
- if (result) {
79
- await ctx.permissionManager.removeFromBlacklist(result.pattern);
80
- console.log(_chalk2.default.yellow(`Removed "${result.pattern}" from denied list.`));
81
- }
82
- } else if (action === "clear_all") {
83
- const result = await _chunkOLSBBZW6cjs.safePrompt.call(void 0, {
84
- type: "confirm",
85
- name: "confirm",
86
- message: "Clear all saved permissions? This cannot be undone.",
87
- initial: false
88
- });
89
- if (_optionalChain([result, 'optionalAccess', _ => _.confirm])) {
90
- for (const pattern of [...whitelist]) {
91
- await ctx.permissionManager.removeFromWhitelist(pattern);
92
- }
93
- for (const pattern of [...blacklist]) {
94
- await ctx.permissionManager.removeFromBlacklist(pattern);
95
- }
96
- console.log(_chalk2.default.yellow("All permissions cleared."));
97
- }
98
- }
99
- return null;
100
- }
101
- var metadata = {
102
- command: "/permissions",
103
- description: _chunk7BTSG4MEcjs.t.call(void 0, "commands.permissions.description"),
104
- implemented: true
105
- };
106
-
107
-
108
-
109
-
110
- exports.permissions = permissions; exports.metadata = metadata;
111
- /**
112
- * @license
113
- * Copyright 2025 Autohand AI LLC
114
- * SPDX-License-Identifier: Apache-2.0
115
- */