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
@@ -0,0 +1,85 @@
1
+ import {
2
+ SetupWizard
3
+ } from "./chunk-2HOLOHVK.js";
4
+ import {
5
+ loadConfig,
6
+ resolveWorkspaceRoot,
7
+ saveConfig
8
+ } from "./chunk-3UT7R3XV.js";
9
+ import {
10
+ detectLocale,
11
+ initI18n,
12
+ t
13
+ } from "./chunk-CBFH2J3O.js";
14
+
15
+ // src/commands/setup.ts
16
+ import chalk from "chalk";
17
+ var metadata = {
18
+ command: "/setup",
19
+ description: t("commands.setup.description") ?? "Run the setup wizard to configure or reconfigure Autohand",
20
+ implemented: true
21
+ };
22
+ async function setup(ctx) {
23
+ if (ctx.isNonInteractive) {
24
+ return t("commands.setup.interactiveOnly") ?? "Setup requires an interactive terminal. Use the --setup CLI flag instead.";
25
+ }
26
+ const { locale: detectedLocale } = detectLocale();
27
+ const locale = detectedLocale ?? "en";
28
+ await initI18n(locale);
29
+ const config = await loadConfig(ctx.config?.configPath, ctx.workspaceRoot);
30
+ const workspaceRoot = resolveWorkspaceRoot(config, ctx.workspaceRoot);
31
+ if (ctx.eventEmitter) {
32
+ ctx.eventEmitter.emit("setup:started", {
33
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
34
+ locale,
35
+ workspaceRoot
36
+ });
37
+ }
38
+ const wizard = new SetupWizard(workspaceRoot, config);
39
+ const result = await wizard.run({ force: true, skipWelcome: false });
40
+ if (result.cancelled) {
41
+ if (ctx.eventEmitter) {
42
+ ctx.eventEmitter.emit("setup:cancelled", {
43
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
44
+ step: "user_cancelled"
45
+ });
46
+ }
47
+ return t("commands.setup.cancelled") ?? "Setup cancelled.";
48
+ }
49
+ if (!result.success) {
50
+ if (ctx.eventEmitter) {
51
+ ctx.eventEmitter.emit("setup:error", {
52
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
53
+ error: "setup_failed"
54
+ });
55
+ }
56
+ return t("commands.setup.failed") ?? "Setup failed. Please try again.";
57
+ }
58
+ const newConfig = { ...config, ...result.config };
59
+ await saveConfig(newConfig);
60
+ if (ctx.eventEmitter) {
61
+ const provider = result.config.provider;
62
+ const providerConfig = provider && result.config[provider];
63
+ const model = providerConfig && typeof providerConfig === "object" && "model" in providerConfig ? providerConfig.model : void 0;
64
+ ctx.eventEmitter.emit("setup:complete", {
65
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
66
+ success: true,
67
+ provider,
68
+ model,
69
+ skippedSteps: result.skippedSteps,
70
+ agentsFileCreated: result.agentsFileCreated
71
+ });
72
+ }
73
+ console.log(chalk.green(t("commands.setup.complete") ?? "\nSetup complete!"));
74
+ return null;
75
+ }
76
+
77
+ export {
78
+ metadata,
79
+ setup
80
+ };
81
+ /**
82
+ * @license
83
+ * Copyright 2025 Autohand AI LLC
84
+ * SPDX-License-Identifier: Apache-2.0
85
+ */
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  getAuthClient
3
- } from "./chunk-HQ7YZKXE.js";
3
+ } from "./chunk-IAGCRVJ3.js";
4
4
  import {
5
- safePrompt
6
- } from "./chunk-6ZCULLCA.js";
5
+ showModal
6
+ } from "./chunk-DLP436GI.js";
7
7
  import {
8
8
  saveConfig
9
- } from "./chunk-P47WPOXN.js";
9
+ } from "./chunk-3UT7R3XV.js";
10
10
  import {
11
11
  t
12
- } from "./chunk-APIXPPMT.js";
12
+ } from "./chunk-CBFH2J3O.js";
13
13
 
14
14
  // src/commands/logout.ts
15
15
  import chalk from "chalk";
@@ -26,13 +26,14 @@ async function logout(ctx) {
26
26
  return null;
27
27
  }
28
28
  const userName = config.auth.user?.name || config.auth.user?.email || "user";
29
- const result = await safePrompt({
30
- type: "confirm",
31
- name: "confirm",
32
- message: `Log out from ${chalk.cyan(userName)}?`,
33
- initial: true
29
+ const selected = await showModal({
30
+ title: `Log out from ${chalk.cyan(userName)}?`,
31
+ options: [
32
+ { label: "Yes", value: "yes" },
33
+ { label: "No", value: "no" }
34
+ ]
34
35
  });
35
- if (!result || !result.confirm) {
36
+ if (!selected || selected.value === "no") {
36
37
  console.log(chalk.gray(t("commands.logout.cancelled")));
37
38
  return null;
38
39
  }
@@ -41,6 +42,9 @@ async function logout(ctx) {
41
42
  await authClient.logout(config.auth.token);
42
43
  } catch {
43
44
  }
45
+ if (ctx.currentSession) {
46
+ await ctx.currentSession.save();
47
+ }
44
48
  const updatedConfig = {
45
49
  ...config,
46
50
  auth: void 0
@@ -50,7 +54,7 @@ async function logout(ctx) {
50
54
  console.log(chalk.green(t("commands.logout.success")));
51
55
  console.log(chalk.gray("Your local session has been cleared."));
52
56
  console.log();
53
- return null;
57
+ process.exit(0);
54
58
  }
55
59
 
56
60
  export {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  t
3
- } from "./chunk-APIXPPMT.js";
3
+ } from "./chunk-CBFH2J3O.js";
4
4
 
5
5
  // src/commands/memory.ts
6
6
  import chalk from "chalk";
@@ -2,6 +2,8 @@
2
2
  var DEFAULT_REPO = "autohandai/community-skills";
3
3
  var DEFAULT_BRANCH = "main";
4
4
  var GitHubRegistryFetcher = class {
5
+ baseUrl;
6
+ timeout;
5
7
  constructor(config = {}) {
6
8
  const repo = config.repo || DEFAULT_REPO;
7
9
  const branch = config.branch || DEFAULT_BRANCH;
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- var _chunkPGRH5Q77cjs = require('./chunk-PGRH5Q77.cjs');
7
+ var _chunk2VHB43IXcjs = require('./chunk-2VHB43IX.cjs');
8
8
 
9
9
  // src/ui/theme/themes.ts
10
10
  var darkTheme = {
@@ -46,8 +46,8 @@ var darkTheme = {
46
46
  dim: "gray200",
47
47
  text: "gray200",
48
48
  // Backgrounds & Content
49
- userMessageBg: "bgMedium",
50
- userMessageText: "gray200",
49
+ userMessageBg: "gray500",
50
+ userMessageText: "gray100",
51
51
  toolPendingBg: "bgLight",
52
52
  toolSuccessBg: "#1b3d1b",
53
53
  toolErrorBg: "#3d1b1b",
@@ -396,6 +396,203 @@ var githubDarkTheme = {
396
396
  mdListBullet: "blue"
397
397
  }
398
398
  };
399
+ var cappadociaTheme = {
400
+ name: "cappadocia",
401
+ vars: {
402
+ roseTuff: "#c46a58",
403
+ valleyClay: "#8f4638",
404
+ balloonRed: "#e65a4f",
405
+ balloonBlue: "#4aa3c7",
406
+ sunriseGold: "#f4b95f",
407
+ apricotSky: "#f2a56f",
408
+ chalkWhite: "#fff0df",
409
+ night: "#1a1114",
410
+ surface: "#27191a",
411
+ surfaceLight: "#3a2421",
412
+ gray100: "#fff2e5",
413
+ gray200: "#ead1bf",
414
+ gray300: "#caa895",
415
+ gray400: "#a77e70",
416
+ gray500: "#805f58",
417
+ gray600: "#614741",
418
+ gray700: "#442d2a",
419
+ gray800: "#2b1d1b",
420
+ gray900: "#170f0e"
421
+ },
422
+ colors: {
423
+ accent: "sunriseGold",
424
+ border: "gray600",
425
+ borderAccent: "balloonBlue",
426
+ borderMuted: "gray700",
427
+ success: "balloonBlue",
428
+ error: "balloonRed",
429
+ warning: "sunriseGold",
430
+ muted: "gray400",
431
+ dim: "gray100",
432
+ text: "chalkWhite",
433
+ userMessageBg: "surfaceLight",
434
+ userMessageText: "chalkWhite",
435
+ toolPendingBg: "surface",
436
+ toolSuccessBg: "#17313a",
437
+ toolErrorBg: "#3a1818",
438
+ toolTitle: "sunriseGold",
439
+ toolOutput: "gray200",
440
+ diffAdded: "balloonBlue",
441
+ diffRemoved: "balloonRed",
442
+ diffContext: "gray400",
443
+ syntaxComment: "gray500",
444
+ syntaxKeyword: "roseTuff",
445
+ syntaxFunction: "balloonBlue",
446
+ syntaxVariable: "chalkWhite",
447
+ syntaxString: "sunriseGold",
448
+ syntaxNumber: "apricotSky",
449
+ syntaxType: "balloonBlue",
450
+ syntaxOperator: "balloonRed",
451
+ syntaxPunctuation: "gray300",
452
+ mdHeading: "sunriseGold",
453
+ mdLink: "balloonBlue",
454
+ mdLinkUrl: "gray400",
455
+ mdCode: "apricotSky",
456
+ mdCodeBlock: "gray200",
457
+ mdCodeBlockBorder: "gray600",
458
+ mdQuote: "chalkWhite",
459
+ mdQuoteBorder: "roseTuff",
460
+ mdHr: "gray700",
461
+ mdListBullet: "sunriseGold"
462
+ }
463
+ };
464
+ var rioTheme = {
465
+ name: "rio",
466
+ vars: {
467
+ macawBlue: "#1f8edb",
468
+ macawDeepBlue: "#00539f",
469
+ macawCyan: "#39c7d7",
470
+ macawGold: "#ffc857",
471
+ rainforest: "#0f9d58",
472
+ palm: "#45c46f",
473
+ hibiscus: "#f05a70",
474
+ cloudWhite: "#effcff",
475
+ night: "#06121f",
476
+ surface: "#0b1e2d",
477
+ surfaceLight: "#102d42",
478
+ gray100: "#eaf8ff",
479
+ gray200: "#c9e5f1",
480
+ gray300: "#9ac3d6",
481
+ gray400: "#6e99ad",
482
+ gray500: "#4e778c",
483
+ gray600: "#36596c",
484
+ gray700: "#213948",
485
+ gray800: "#142534",
486
+ gray900: "#07131e"
487
+ },
488
+ colors: {
489
+ accent: "macawCyan",
490
+ border: "gray600",
491
+ borderAccent: "macawBlue",
492
+ borderMuted: "gray700",
493
+ success: "palm",
494
+ error: "hibiscus",
495
+ warning: "macawGold",
496
+ muted: "gray400",
497
+ dim: "gray100",
498
+ text: "cloudWhite",
499
+ userMessageBg: "surfaceLight",
500
+ userMessageText: "cloudWhite",
501
+ toolPendingBg: "surface",
502
+ toolSuccessBg: "#123728",
503
+ toolErrorBg: "#3b1a25",
504
+ toolTitle: "macawCyan",
505
+ toolOutput: "gray200",
506
+ diffAdded: "palm",
507
+ diffRemoved: "hibiscus",
508
+ diffContext: "gray400",
509
+ syntaxComment: "gray500",
510
+ syntaxKeyword: "macawGold",
511
+ syntaxFunction: "macawCyan",
512
+ syntaxVariable: "cloudWhite",
513
+ syntaxString: "palm",
514
+ syntaxNumber: "macawGold",
515
+ syntaxType: "macawBlue",
516
+ syntaxOperator: "macawCyan",
517
+ syntaxPunctuation: "gray300",
518
+ mdHeading: "macawCyan",
519
+ mdLink: "macawBlue",
520
+ mdLinkUrl: "gray400",
521
+ mdCode: "macawGold",
522
+ mdCodeBlock: "gray200",
523
+ mdCodeBlockBorder: "gray600",
524
+ mdQuote: "macawGold",
525
+ mdQuoteBorder: "macawDeepBlue",
526
+ mdHr: "gray700",
527
+ mdListBullet: "macawCyan"
528
+ }
529
+ };
530
+ var australiaTheme = {
531
+ name: "australia",
532
+ vars: {
533
+ oceanBlue: "#0057b8",
534
+ unionBlue: "#012169",
535
+ gold: "#ffcd00",
536
+ eucalyptus: "#6f9e60",
537
+ wattle: "#f6c945",
538
+ redOchre: "#c1440e",
539
+ sand: "#f2d7a0",
540
+ sky: "#5bc0eb",
541
+ night: "#07111f",
542
+ surface: "#101c2e",
543
+ surfaceLight: "#182842",
544
+ gray100: "#eef6ff",
545
+ gray200: "#d1e3f4",
546
+ gray300: "#a9bed3",
547
+ gray400: "#7a91a8",
548
+ gray500: "#5b7188",
549
+ gray600: "#405368",
550
+ gray700: "#263648",
551
+ gray800: "#172536",
552
+ gray900: "#08121d"
553
+ },
554
+ colors: {
555
+ accent: "gold",
556
+ border: "gray600",
557
+ borderAccent: "oceanBlue",
558
+ borderMuted: "gray700",
559
+ success: "eucalyptus",
560
+ error: "redOchre",
561
+ warning: "wattle",
562
+ muted: "gray400",
563
+ dim: "gray100",
564
+ text: "gray100",
565
+ userMessageBg: "surfaceLight",
566
+ userMessageText: "gray100",
567
+ toolPendingBg: "surface",
568
+ toolSuccessBg: "#19301f",
569
+ toolErrorBg: "#3d1c13",
570
+ toolTitle: "gold",
571
+ toolOutput: "gray200",
572
+ diffAdded: "eucalyptus",
573
+ diffRemoved: "redOchre",
574
+ diffContext: "gray400",
575
+ syntaxComment: "gray500",
576
+ syntaxKeyword: "gold",
577
+ syntaxFunction: "sky",
578
+ syntaxVariable: "gray100",
579
+ syntaxString: "eucalyptus",
580
+ syntaxNumber: "wattle",
581
+ syntaxType: "sand",
582
+ syntaxOperator: "sky",
583
+ syntaxPunctuation: "gray300",
584
+ mdHeading: "gold",
585
+ mdLink: "sky",
586
+ mdLinkUrl: "gray400",
587
+ mdCode: "wattle",
588
+ mdCodeBlock: "gray200",
589
+ mdCodeBlockBorder: "gray600",
590
+ mdQuote: "sand",
591
+ mdQuoteBorder: "oceanBlue",
592
+ mdHr: "gray700",
593
+ mdListBullet: "gold"
594
+ }
595
+ };
399
596
  var lightTheme = {
400
597
  name: "light",
401
598
  vars: {
@@ -475,8 +672,24 @@ var builtInThemes = {
475
672
  dracula: draculaTheme,
476
673
  sandy: sandyTheme,
477
674
  tui: tuiTheme,
478
- "github-dark": githubDarkTheme
675
+ "github-dark": githubDarkTheme,
676
+ cappadocia: cappadociaTheme,
677
+ rio: rioTheme,
678
+ australia: australiaTheme
679
+ };
680
+ var legacyBuiltInThemeAliases = {
681
+ turkey: "cappadocia",
682
+ brazil: "rio"
479
683
  };
684
+ function getBuiltInTheme(name) {
685
+ return _nullishCoalesce(builtInThemes[name], () => ( builtInThemes[_nullishCoalesce(legacyBuiltInThemeAliases[name], () => ( ""))]));
686
+ }
687
+ function isBuiltInTheme(name) {
688
+ return name in builtInThemes || name in legacyBuiltInThemeAliases;
689
+ }
690
+ function getBuiltInThemeNames() {
691
+ return Object.keys(builtInThemes);
692
+ }
480
693
  function getDefaultThemeName() {
481
694
  return "dark";
482
695
  }
@@ -805,6 +1018,24 @@ function detectGhosttyTheme() {
805
1018
 
806
1019
  // src/ui/theme/loader.ts
807
1020
  var CUSTOM_THEMES_DIR = _path.join.call(void 0, _os.homedir.call(void 0, ), ".autohand", "themes");
1021
+ var configThemes = /* @__PURE__ */ new Map();
1022
+ function configureThemeSources(sources) {
1023
+ configThemes.clear();
1024
+ if (!_optionalChain([sources, 'optionalAccess', _5 => _5.inlineThemes])) {
1025
+ return;
1026
+ }
1027
+ for (const [themeName, partialTheme] of Object.entries(sources.inlineThemes)) {
1028
+ const normalizedName = themeName.trim();
1029
+ if (!normalizedName) {
1030
+ throw new ThemeLoadError("Config theme names must be non-empty", themeName);
1031
+ }
1032
+ const themeDefinition = validateAndMergeTheme(
1033
+ { ...partialTheme, name: partialTheme.name || normalizedName },
1034
+ normalizedName
1035
+ );
1036
+ configThemes.set(normalizedName, themeDefinition);
1037
+ }
1038
+ }
808
1039
  var ThemeLoadError = class extends Error {
809
1040
  constructor(message, themeName, cause) {
810
1041
  super(message);
@@ -812,28 +1043,35 @@ var ThemeLoadError = class extends Error {
812
1043
  this.cause = cause;
813
1044
  this.name = "ThemeLoadError";
814
1045
  }
1046
+
1047
+
815
1048
  };
816
1049
  function loadTheme(themeName) {
817
1050
  const definition = getThemeDefinition(themeName);
818
1051
  const resolvedColors = resolveThemeColors(definition);
819
- return new (0, _chunkPGRH5Q77cjs.Theme)(definition.name, resolvedColors, _chunkPGRH5Q77cjs.detectColorMode.call(void 0, ));
1052
+ return new (0, _chunk2VHB43IXcjs.Theme)(definition.name, resolvedColors, _chunk2VHB43IXcjs.detectColorMode.call(void 0, ));
820
1053
  }
821
1054
  function initTheme(themeName) {
822
1055
  const name = themeName || getDefaultThemeName();
823
1056
  try {
824
1057
  const theme = loadTheme(name);
825
- _chunkPGRH5Q77cjs.setTheme.call(void 0, theme);
1058
+ _chunk2VHB43IXcjs.setTheme.call(void 0, theme);
826
1059
  return theme;
827
1060
  } catch (error) {
828
1061
  console.warn(`Failed to load theme "${name}", falling back to dark theme:`, error instanceof Error ? error.message : error);
829
1062
  const theme = loadTheme("dark");
830
- _chunkPGRH5Q77cjs.setTheme.call(void 0, theme);
1063
+ _chunk2VHB43IXcjs.setTheme.call(void 0, theme);
831
1064
  return theme;
832
1065
  }
833
1066
  }
834
1067
  function getThemeDefinition(themeName) {
835
- if (themeName in builtInThemes) {
836
- return builtInThemes[themeName];
1068
+ const builtInTheme = getBuiltInTheme(themeName);
1069
+ if (builtInTheme) {
1070
+ return builtInTheme;
1071
+ }
1072
+ const configTheme = configThemes.get(themeName);
1073
+ if (configTheme) {
1074
+ return configTheme;
837
1075
  }
838
1076
  const customThemePath = _path.join.call(void 0, CUSTOM_THEMES_DIR, `${themeName}.json`);
839
1077
  if (_fs.existsSync.call(void 0, customThemePath)) {
@@ -958,6 +1196,7 @@ var CURATED_GHOSTTY_THEMES = [
958
1196
  ];
959
1197
  function listAvailableThemes() {
960
1198
  const builtIn = Object.keys(builtInThemes).sort();
1199
+ const config = Array.from(configThemes.keys()).filter((name) => !builtIn.includes(name)).sort();
961
1200
  const ghostty = [];
962
1201
  for (const name of CURATED_GHOSTTY_THEMES) {
963
1202
  if (loadGhosttyTheme(name)) {
@@ -972,7 +1211,7 @@ function listAvailableThemes() {
972
1211
  for (const file of files) {
973
1212
  if (file.endsWith(".json")) {
974
1213
  const name = file.slice(0, -5);
975
- if (!builtIn.includes(name)) {
1214
+ if (!builtIn.includes(name) && !config.includes(name)) {
976
1215
  custom.push(name);
977
1216
  }
978
1217
  }
@@ -981,10 +1220,11 @@ function listAvailableThemes() {
981
1220
  }
982
1221
  }
983
1222
  custom.sort();
984
- return [...builtIn, ...ghostty, ...custom];
1223
+ return [...builtIn, ...config, ...ghostty, ...custom];
985
1224
  }
986
1225
  function themeExists(themeName) {
987
- if (themeName in builtInThemes) return true;
1226
+ if (isBuiltInTheme(themeName)) return true;
1227
+ if (configThemes.has(themeName)) return true;
988
1228
  const customPath = _path.join.call(void 0, CUSTOM_THEMES_DIR, `${themeName}.json`);
989
1229
  if (_fs.existsSync.call(void 0, customPath)) return true;
990
1230
  return loadGhosttyTheme(themeName) !== null;
@@ -1000,7 +1240,7 @@ function detectTerminalBackground() {
1000
1240
  }
1001
1241
  }
1002
1242
  }
1003
- if (_optionalChain([process, 'access', _5 => _5.env, 'access', _6 => _6.TERMINAL_EMULATOR, 'optionalAccess', _7 => _7.includes, 'call', _8 => _8("JetBrains")])) {
1243
+ if (_optionalChain([process, 'access', _6 => _6.env, 'access', _7 => _7.TERMINAL_EMULATOR, 'optionalAccess', _8 => _8.includes, 'call', _9 => _9("JetBrains")])) {
1004
1244
  return "light";
1005
1245
  }
1006
1246
  return "dark";
@@ -1042,16 +1282,21 @@ var defaultContextValue = {
1042
1282
  };
1043
1283
  var ThemeContext = _react.createContext.call(void 0, defaultContextValue);
1044
1284
  var ThemeProvider = ({ theme: providedTheme, themeName, children }) => {
1285
+ const globalTheme = _react.useSyncExternalStore.call(void 0,
1286
+ _chunk2VHB43IXcjs.subscribeThemeChanges,
1287
+ _chunk2VHB43IXcjs.getThemeSnapshot,
1288
+ _chunk2VHB43IXcjs.getThemeSnapshot
1289
+ );
1045
1290
  const theme = _react.useMemo.call(void 0, () => {
1046
1291
  if (providedTheme) return providedTheme;
1047
- if (_chunkPGRH5Q77cjs.isThemeInitialized.call(void 0, )) {
1048
- return _chunkPGRH5Q77cjs.getTheme.call(void 0, );
1292
+ if (globalTheme) {
1293
+ return globalTheme;
1049
1294
  }
1050
1295
  if (themeName) {
1051
- return initTheme(themeName);
1296
+ return loadTheme(themeName);
1052
1297
  }
1053
- return initTheme();
1054
- }, [providedTheme, themeName]);
1298
+ return loadTheme("dark");
1299
+ }, [providedTheme, themeName, globalTheme]);
1055
1300
  const value = _react.useMemo.call(void 0,
1056
1301
  () => ({
1057
1302
  theme,
@@ -1077,7 +1322,9 @@ function useTheme() {
1077
1322
 
1078
1323
 
1079
1324
 
1080
- exports.builtInThemes = builtInThemes; exports.CUSTOM_THEMES_DIR = CUSTOM_THEMES_DIR; exports.initTheme = initTheme; exports.listAvailableThemes = listAvailableThemes; exports.themeExists = themeExists; exports.autoInitTheme = autoInitTheme; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme;
1325
+
1326
+
1327
+ exports.builtInThemes = builtInThemes; exports.getBuiltInThemeNames = getBuiltInThemeNames; exports.CUSTOM_THEMES_DIR = CUSTOM_THEMES_DIR; exports.configureThemeSources = configureThemeSources; exports.initTheme = initTheme; exports.listAvailableThemes = listAvailableThemes; exports.themeExists = themeExists; exports.autoInitTheme = autoInitTheme; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme;
1081
1328
  /**
1082
1329
  * @license
1083
1330
  * Copyright 2025 Autohand AI LLC
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Autohand AI LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buildSkillGenerationPrompt
3
- } from "./chunk-X3WS5LDG.js";
3
+ } from "./chunk-MX75JYIY.js";
4
4
 
5
5
  // src/skills/learnPrompts.ts
6
6
  function buildLearnSystemPrompt() {
@@ -70,24 +70,40 @@ function buildLearnUserPrompt(analysis, installedSkills, registrySkills) {
70
70
  parts.push(`${registrySkills.length} ${skillWord} available.`);
71
71
  const projectLanguages = new Set(analysis.languages.map((l) => l.toLowerCase()));
72
72
  const projectFrameworks = new Set(analysis.frameworks.map((f) => f.toLowerCase()));
73
- const relevant = registrySkills.filter((skill) => {
73
+ const matching = [];
74
+ const other = [];
75
+ for (const skill of registrySkills) {
74
76
  const skillLangs = (skill.languages ?? []).map((l) => l.toLowerCase());
75
77
  const skillFw = (skill.frameworks ?? []).map((f) => f.toLowerCase());
76
- return skillLangs.some((l) => projectLanguages.has(l)) || skillFw.some((f) => projectFrameworks.has(f));
77
- });
78
- if (relevant.length > 0) {
78
+ const isMatch = skillLangs.some((l) => projectLanguages.has(l)) || skillFw.some((f) => projectFrameworks.has(f));
79
+ (isMatch ? matching : other).push(skill);
80
+ }
81
+ const MAX_SKILLS = 30;
82
+ const combined = [...matching, ...other].slice(0, MAX_SKILLS);
83
+ const formatSkill = (skill) => {
84
+ const tags = skill.tags?.join(", ") ?? "";
85
+ const languages = skill.languages?.join(", ") ?? "";
86
+ const frameworks = skill.frameworks?.join(", ") ?? "";
87
+ return `- **${skill.id}**: ${skill.description} [category: ${skill.category}] [tags: ${tags}] [languages: ${languages}] [frameworks: ${frameworks}]`;
88
+ };
89
+ if (combined.length > 0) {
79
90
  parts.push("");
80
- parts.push(`## Matching Skills (${relevant.length} match project stack)`);
81
- for (const skill of relevant.slice(0, 15)) {
82
- const tags = skill.tags?.join(", ") ?? "";
83
- const languages = skill.languages?.join(", ") ?? "";
84
- const frameworks = skill.frameworks?.join(", ") ?? "";
85
- parts.push(
86
- `- **${skill.id}**: ${skill.description} [category: ${skill.category}] [tags: ${tags}] [languages: ${languages}] [frameworks: ${frameworks}]`
87
- );
91
+ if (matching.length > 0) {
92
+ parts.push(`## Matching Skills (${matching.length} match project stack)`);
93
+ for (const skill of matching.slice(0, MAX_SKILLS)) {
94
+ parts.push(formatSkill(skill));
95
+ }
96
+ }
97
+ const otherToShow = combined.length - matching.length;
98
+ if (otherToShow > 0) {
99
+ parts.push("");
100
+ parts.push("## Other Skills");
101
+ for (const skill of other.slice(0, otherToShow)) {
102
+ parts.push(formatSkill(skill));
103
+ }
88
104
  }
89
- if (relevant.length > 15) {
90
- parts.push(` ... and ${relevant.length - 15} more matching skills`);
105
+ if (registrySkills.length > MAX_SKILLS) {
106
+ parts.push(` ... and ${registrySkills.length - MAX_SKILLS} more skills`);
91
107
  }
92
108
  }
93
109
  parts.push("");
@@ -149,6 +165,7 @@ function toKebabCase(name) {
149
165
  }
150
166
  var VALID_AUDIT_STATUSES = /* @__PURE__ */ new Set(["redundant", "outdated", "conflicting"]);
151
167
  var LearnAdvisor = class {
168
+ llm;
152
169
  constructor(llm) {
153
170
  this.llm = llm;
154
171
  }
@@ -7,6 +7,12 @@ var DEFAULT_MAX_RETRIES = 3;
7
7
  var DEFAULT_RETRY_DELAY = 1e3;
8
8
  var MAX_FILES_PER_REQUEST = 100;
9
9
  var SyncApiClient = class {
10
+ baseUrl;
11
+ timeout;
12
+ maxFileSize;
13
+ maxTotalSize;
14
+ maxRetries;
15
+ retryDelay;
10
16
  constructor(config) {
11
17
  this.baseUrl = config?.baseUrl || DEFAULT_BASE_URL;
12
18
  this.timeout = config?.timeout || DEFAULT_TIMEOUT;