autohand-cli 0.9.1 → 0.9.2

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 (432) hide show
  1. package/README.md +103 -79
  2. package/dist/AgentRegistry-BBQRODQC.cjs +18 -0
  3. package/dist/AgentRegistry-JBXZUPML.js +18 -0
  4. package/dist/{CommunitySkillsCache-ZACDPD4J.js → CommunitySkillsCache-CI7UN2DX.js} +2 -2
  5. package/dist/CommunitySkillsCache-XTQ6RMTA.cjs +8 -0
  6. package/dist/{HookManager-2S6AHOC3.js → HookManager-BELBPQQI.js} +1 -1
  7. package/dist/{HookManager-TVEQI5ZU.cjs → HookManager-ZL2CLAJW.cjs} +2 -2
  8. package/dist/{ImportWizard-AF2XL6DS.cjs → ImportWizard-U6CIJREW.cjs} +12 -12
  9. package/dist/{ImportWizard-AEBMAKXE.js → ImportWizard-VJFSWSUQ.js} +3 -3
  10. package/dist/LearnAdvisor-LAURA3IB.cjs +9 -0
  11. package/dist/LearnAdvisor-RFOBXFG7.js +9 -0
  12. package/dist/MemoryManager-3A2VRPF2.js +9 -0
  13. package/dist/MemoryManager-UOEQZIDC.cjs +9 -0
  14. package/dist/{NVIDIAProvider-SJPY3ONR.js → NVIDIAProvider-AFNJNWJM.js} +1 -1
  15. package/dist/NVIDIAProvider-L5GTYRCQ.cjs +14 -0
  16. package/dist/{PermissionManager-MT7KBNNR.js → PermissionManager-N2LDSOYF.js} +3 -3
  17. package/dist/PermissionManager-ZNURIEYR.cjs +11 -0
  18. package/dist/ProviderFactory-3BFS65V7.cjs +13 -0
  19. package/dist/{ProviderFactory-RB4RVAF6.js → ProviderFactory-XUT6BSGB.js} +4 -3
  20. package/dist/SessionManager-LGPQIA57.cjs +10 -0
  21. package/dist/{SessionManager-554PHVPC.js → SessionManager-OR4KDDDS.js} +2 -2
  22. package/dist/{SkillsRegistry-NHHMIUYJ.js → SkillsRegistry-IL3GWROU.js} +2 -2
  23. package/dist/SkillsRegistry-PM34DQNA.cjs +9 -0
  24. package/dist/SubAgent-2WG4QQB5.cjs +13 -0
  25. package/dist/SubAgent-ICGN23TQ.js +13 -0
  26. package/dist/{about-3USFSGOH.js → about-OYVGQMJJ.js} +3 -3
  27. package/dist/{about-QR52U5DD.cjs → about-U2BH7HDR.cjs} +4 -4
  28. package/dist/{acp-5Y2W6OZP.js → acp-JWHGXZL5.js} +169 -103
  29. package/dist/{acp-GSYE75OB.cjs → acp-S37JOBCS.cjs} +184 -118
  30. package/dist/{actionExecutor-KHUU3Z3Q.cjs → actionExecutor-2QEPMELQ.cjs} +13 -13
  31. package/dist/{actionExecutor-PLQJZLZV.js → actionExecutor-6NCCORRB.js} +12 -12
  32. package/dist/add-dir-KFUHSIR2.cjs +11 -0
  33. package/dist/{add-dir-HCERJDBR.js → add-dir-MM2BM2Z2.js} +2 -2
  34. package/dist/agent-DUIYLIVN.js +132 -0
  35. package/dist/agent-YYEHGDAK.cjs +132 -0
  36. package/dist/agents-GBGG4CW7.cjs +19 -0
  37. package/dist/agents-ZH34C72F.js +19 -0
  38. package/dist/agents-new-ERXLS7SB.cjs +17 -0
  39. package/dist/{agents-new-7GAQ25EK.js → agents-new-EVTGPTA4.js} +6 -6
  40. package/dist/{autoSkill-66PKCYTW.js → autoSkill-HEWKJ5JV.js} +2 -2
  41. package/dist/autoSkill-YL6PN6AV.cjs +20 -0
  42. package/dist/automode-4BJ7FNPL.cjs +10 -0
  43. package/dist/{automode-BUF3VGXU.js → automode-S4U7A7Q2.js} +2 -2
  44. package/dist/chrome-45ZXHL5N.cjs +22 -0
  45. package/dist/{chrome-Y3T7EIHG.js → chrome-BBSRVG6S.js} +2 -2
  46. package/dist/chrome-IFVZRHAT.cjs +50 -0
  47. package/dist/chrome-MYE6DNA2.js +22 -0
  48. package/dist/{chunk-45CHNQM6.cjs → chunk-24CEJYEG.cjs} +93 -31
  49. package/dist/{chunk-6JWCGQJU.cjs → chunk-255GIVM2.cjs} +6 -6
  50. package/dist/{chunk-D546G7DA.cjs → chunk-2BDSR2OW.cjs} +98 -75
  51. package/dist/{chunk-PGFLPURU.js → chunk-2BPIR7LA.js} +121 -4
  52. package/dist/{chunk-AOKXYGBQ.cjs → chunk-2NY7OHBF.cjs} +41 -26
  53. package/dist/chunk-2WUNHTXL.js +303 -0
  54. package/dist/{chunk-PQBYFEBL.cjs → chunk-34B6ZO6W.cjs} +124 -7
  55. package/dist/{chunk-5JTTM5SC.js → chunk-3BJN7GAH.js} +1 -1
  56. package/dist/{chunk-3UC6DMFI.cjs → chunk-3CAXECWJ.cjs} +15 -15
  57. package/dist/{chunk-YWH55BWK.cjs → chunk-3CBYUBZC.cjs} +6 -9
  58. package/dist/chunk-3DF3GZQ7.js +277 -0
  59. package/dist/{chunk-KASXKDF2.cjs → chunk-3JURXAL6.cjs} +58 -7
  60. package/dist/{chunk-JV5HVCHU.cjs → chunk-3KWAP2Y3.cjs} +88 -9
  61. package/dist/{chunk-WPE2XHVX.js → chunk-3MCK6UBL.js} +1 -1
  62. package/dist/{chunk-U2QUMKCB.js → chunk-3TH7IK4M.js} +62 -9
  63. package/dist/{chunk-YXM6SA7P.js → chunk-3V77OB3W.js} +3 -3
  64. package/dist/{chunk-MZN6JBRZ.cjs → chunk-3Y5UEK7K.cjs} +4 -4
  65. package/dist/{chunk-BP37FVBM.js → chunk-4GPPSBEZ.js} +3 -3
  66. package/dist/{chunk-4XVLNOFA.js → chunk-5CMBAJ6K.js} +20 -3
  67. package/dist/{chunk-PNIAIOMZ.cjs → chunk-5YRXFBYZ.cjs} +35 -6
  68. package/dist/chunk-6AC2TT26.js +156 -0
  69. package/dist/{chunk-PSAH4ZQB.cjs → chunk-6EIQ6A6U.cjs} +2 -2
  70. package/dist/{chunk-YQDI753V.js → chunk-6HSEDXVF.js} +4 -4
  71. package/dist/{chunk-O5GI6SR3.js → chunk-6NUXK62F.js} +1 -1
  72. package/dist/{chunk-HVCIB4SW.cjs → chunk-6TGCAPYH.cjs} +62 -9
  73. package/dist/{chunk-HZWU6IO3.js → chunk-6W3SZCSP.js} +2 -5
  74. package/dist/{chunk-Q3BS6FPM.js → chunk-73LV3DDZ.js} +4 -4
  75. package/dist/{chunk-ZNGRLCFQ.js → chunk-7BGGLIQF.js} +83 -1
  76. package/dist/{chunk-ZNYZB7XY.cjs → chunk-7EEK7CRR.cjs} +83 -1
  77. package/dist/{chunk-HK5A54AV.cjs → chunk-7TO3PDMV.cjs} +48 -4
  78. package/dist/chunk-7UU22RSH.cjs +277 -0
  79. package/dist/{chunk-XNIMSVS6.cjs → chunk-A3GAM6FM.cjs} +11 -11
  80. package/dist/{chunk-W5QLA6WP.cjs → chunk-A7DJU75T.cjs} +8 -8
  81. package/dist/{chunk-7XTUL7ZD.cjs → chunk-AAAO4ERQ.cjs} +9 -9
  82. package/dist/{chunk-M5DK524Z.js → chunk-AAJLMP57.js} +2 -2
  83. package/dist/chunk-ABR756QN.js +529 -0
  84. package/dist/{chunk-OIGYWOL6.js → chunk-APFGDIPD.js} +3 -1
  85. package/dist/{chunk-PTTZI4QZ.js → chunk-APQYRMYL.js} +4 -4
  86. package/dist/{chunk-CO2AADYU.cjs → chunk-AZKOIF2G.cjs} +55 -17
  87. package/dist/{chunk-P6SLT2F4.cjs → chunk-AZLHUPNC.cjs} +2 -2
  88. package/dist/chunk-B55VCYSQ.cjs +30 -0
  89. package/dist/{chunk-JMJRFSNJ.js → chunk-BLQUMSM3.js} +1 -1
  90. package/dist/{chunk-MGNXABSU.cjs → chunk-BXKPX6K4.cjs} +9 -9
  91. package/dist/{chunk-MQQH4XQH.cjs → chunk-C66FN2LP.cjs} +4 -4
  92. package/dist/{chunk-CECH6QQP.js → chunk-CH7KUFAS.js} +10 -10
  93. package/dist/{chunk-PIXQ2AVM.cjs → chunk-CILSXOPI.cjs} +17 -17
  94. package/dist/{chunk-IEPLQ47J.js → chunk-CM24K6ZT.js} +89 -12
  95. package/dist/chunk-CMEZ42F2.cjs +303 -0
  96. package/dist/{chunk-X5P6QQOB.cjs → chunk-CNQKIWIS.cjs} +100 -23
  97. package/dist/{chunk-AQ5PVHOC.cjs → chunk-CSUGNNJY.cjs} +4 -3
  98. package/dist/{chunk-QRQF3556.js → chunk-D6HB3H3L.js} +25 -10
  99. package/dist/{chunk-XZVDYC5U.js → chunk-D7AYKVKW.js} +2 -2
  100. package/dist/{chunk-3UHRCHKB.cjs → chunk-DLCXWOWT.cjs} +23 -23
  101. package/dist/{chunk-CK4HAHVY.cjs → chunk-DMM2BKSV.cjs} +118 -25
  102. package/dist/{chunk-SPQ7QIQ6.js → chunk-DW3DPV77.js} +1 -1
  103. package/dist/chunk-ECQD2QC3.cjs +33 -0
  104. package/dist/{chunk-SNDDZG5H.js → chunk-EEYOS3UC.js} +90 -70
  105. package/dist/{chunk-DGBPWODD.js → chunk-EF2EN5CR.js} +2 -2
  106. package/dist/{chunk-M7B7RRBK.cjs → chunk-EFXFURDY.cjs} +138 -51
  107. package/dist/chunk-EK34UZPB.cjs +40 -0
  108. package/dist/{chunk-CRTCZ4WL.cjs → chunk-FJR6EZLO.cjs} +3834 -2337
  109. package/dist/{chunk-TYBPTKFT.js → chunk-FPO7YNPQ.js} +1 -1
  110. package/dist/{chunk-X3TI5TJJ.js → chunk-FS4I6BNR.js} +1 -1
  111. package/dist/{chunk-WNJXIACY.js → chunk-FSJ2MNOC.js} +3 -3
  112. package/dist/{chunk-44ZWOBTI.js → chunk-GEHZMC4G.js} +12 -9
  113. package/dist/{chunk-Y5BDE24P.cjs → chunk-GO6C2RAR.cjs} +3 -0
  114. package/dist/{chunk-XW3XCK4E.cjs → chunk-GSMR6V36.cjs} +4 -4
  115. package/dist/{chunk-H426KOGY.js → chunk-GSZWATME.js} +1 -1
  116. package/dist/{chunk-S5JNQIGL.cjs → chunk-GYLGCR6F.cjs} +5 -5
  117. package/dist/{chunk-ONVYXTUT.cjs → chunk-H3OOWNYQ.cjs} +3 -3
  118. package/dist/{chunk-V5ELP2XE.js → chunk-H65446XW.js} +110 -15
  119. package/dist/{chunk-LANGD5CO.js → chunk-H7HXRRHK.js} +45 -1
  120. package/dist/{chunk-RBXBH6EB.cjs → chunk-HN2JTDN5.cjs} +17 -17
  121. package/dist/{chunk-SOVR7S3T.cjs → chunk-HNXUZ5OY.cjs} +2 -2
  122. package/dist/{chunk-AZ47LKD5.cjs → chunk-HOYT3E65.cjs} +3 -3
  123. package/dist/{chunk-P4FUTSVK.js → chunk-HTPY5ESD.js} +3 -3
  124. package/dist/{chunk-5SFV2NCY.cjs → chunk-HVLWH2AF.cjs} +10 -10
  125. package/dist/{chunk-VQHSYAPZ.cjs → chunk-HZTEU4W5.cjs} +62 -93
  126. package/dist/{chunk-4XFHP2SN.cjs → chunk-I5T7LPFP.cjs} +7 -7
  127. package/dist/{chunk-ZPLCAXJW.js → chunk-IB5CJXE7.js} +7 -7
  128. package/dist/{chunk-KM7R5YPS.cjs → chunk-INNXFLDR.cjs} +9 -6
  129. package/dist/{chunk-2ESQR35E.cjs → chunk-JFLEP3T7.cjs} +10 -10
  130. package/dist/chunk-JJGDOBFL.js +40 -0
  131. package/dist/{chunk-5A7ZL64N.js → chunk-JSU46T6K.js} +1 -1
  132. package/dist/{chunk-NB6M6ESM.js → chunk-K6WN6BT4.js} +1 -1
  133. package/dist/{chunk-QQ64HEHP.cjs → chunk-KIQH3SMT.cjs} +34 -31
  134. package/dist/{chunk-MANJ67D3.js → chunk-KPRXHIE2.js} +52 -83
  135. package/dist/{chunk-6HF6XSCC.js → chunk-LIO3RX2Z.js} +2 -2
  136. package/dist/{chunk-NZ3ZWLUW.js → chunk-LOSXLH7P.js} +109 -16
  137. package/dist/{chunk-NZ7GCK7Y.cjs → chunk-LSOR72PB.cjs} +23 -23
  138. package/dist/{chunk-6AYJCDTA.js → chunk-MA3AVDCC.js} +47 -9
  139. package/dist/{chunk-PZZMIYII.js → chunk-ME3S2WIR.js} +3 -3
  140. package/dist/{chunk-2IW5YFJ4.js → chunk-NC2I2M4P.js} +4 -4
  141. package/dist/{chunk-AE2ILW25.cjs → chunk-NC4A4LVC.cjs} +13 -13
  142. package/dist/{chunk-EEHWALXA.js → chunk-NGEK5FCJ.js} +85 -3
  143. package/dist/{chunk-MMKZSJUN.js → chunk-NKW6CHXQ.js} +1 -1
  144. package/dist/{chunk-JB3JCYBJ.js → chunk-NOWCRKP2.js} +4 -3
  145. package/dist/{chunk-3ZOOH44N.js → chunk-NUB2LMB6.js} +2 -2
  146. package/dist/chunk-O246MKIW.cjs +267 -0
  147. package/dist/{chunk-SRMGWMQO.js → chunk-OGFWL2PS.js} +1 -1
  148. package/dist/{chunk-YISPVAXO.cjs → chunk-ONNGAR6W.cjs} +340 -597
  149. package/dist/{chunk-7WAUCLLQ.js → chunk-OOFR6A62.js} +33 -4
  150. package/dist/{chunk-4E7SHPNQ.js → chunk-OZ7FHO7J.js} +2 -2
  151. package/dist/{chunk-NV6LCD2I.cjs → chunk-P5EWGUI2.cjs} +109 -27
  152. package/dist/{chunk-YC5OBZQU.js → chunk-P6BQJPAI.js} +41 -18
  153. package/dist/{chunk-SHRLFX6F.js → chunk-PG2JIU5M.js} +57 -6
  154. package/dist/{chunk-6OECOAK5.cjs → chunk-PI27G2ED.cjs} +25 -8
  155. package/dist/{chunk-TR6NECEZ.js → chunk-PI7LRPL6.js} +1 -1
  156. package/dist/{chunk-GAOPJ5S3.cjs → chunk-PMPEC5HN.cjs} +18 -15
  157. package/dist/{chunk-5GCQ5UMV.cjs → chunk-PYUP7AKY.cjs} +14 -14
  158. package/dist/{chunk-S5QKRA2V.js → chunk-QC5Z3ZT5.js} +2 -2
  159. package/dist/chunk-QDO4L2A7.cjs +156 -0
  160. package/dist/{chunk-LFDPTJYF.cjs → chunk-QDXRI5AM.cjs} +1 -1
  161. package/dist/{chunk-26G7YGOW.js → chunk-QVXMSQOG.js} +84 -21
  162. package/dist/{chunk-SVVP4UUZ.cjs → chunk-R4UKBKDY.cjs} +11 -11
  163. package/dist/{chunk-HG3ZASBH.cjs → chunk-R75AWII3.cjs} +112 -17
  164. package/dist/{chunk-TE4SYTWR.cjs → chunk-RD5PLUIX.cjs} +8 -8
  165. package/dist/{chunk-FFHSCM5M.js → chunk-RGB34CV5.js} +3 -3
  166. package/dist/{chunk-SY2P3Z5W.cjs → chunk-RJCZLFHE.cjs} +96 -32
  167. package/dist/{chunk-22SCR3EV.cjs → chunk-RKWNM2BJ.cjs} +2 -2
  168. package/dist/{chunk-FBQJZKFX.js → chunk-RMVONICR.js} +3 -3
  169. package/dist/{chunk-PY73W5MQ.cjs → chunk-RPSYRJL7.cjs} +10 -4
  170. package/dist/{chunk-HXHE2KAO.js → chunk-RWKU2X7O.js} +7 -4
  171. package/dist/{chunk-NQZH5CR2.cjs → chunk-RZLEGVMH.cjs} +102 -5
  172. package/dist/{chunk-KMP6Y3LJ.js → chunk-S2L3Y677.js} +1 -1
  173. package/dist/{chunk-GSDV75A5.js → chunk-S7KVUIOS.js} +1 -1
  174. package/dist/{chunk-7PT646AL.cjs → chunk-SACJJ6NO.cjs} +5 -3
  175. package/dist/{chunk-LEZEWKPA.js → chunk-SJQU2ZFR.js} +96 -32
  176. package/dist/{chunk-65LRPW5W.js → chunk-SKAQKQFF.js} +12 -2
  177. package/dist/chunk-T4DXP5OP.js +30 -0
  178. package/dist/{chunk-EYHKL4QC.js → chunk-T6FTB6K2.js} +1 -1
  179. package/dist/{chunk-DNSD7DVJ.js → chunk-T6N6GRFT.js} +13 -10
  180. package/dist/{chunk-575PXZX7.js → chunk-TJFKA6A7.js} +82 -3
  181. package/dist/{chunk-HSWWM6AM.js → chunk-TJZUPS4Z.js} +34 -291
  182. package/dist/{chunk-DHUQZ53B.cjs → chunk-TLKHZ425.cjs} +2 -2
  183. package/dist/{chunk-VLGGMQUN.cjs → chunk-TQ24NLXO.cjs} +6 -6
  184. package/dist/{chunk-LUMV3DB2.js → chunk-TWBAU46X.js} +1 -1
  185. package/dist/{chunk-EA2MS25U.cjs → chunk-TZB5XADL.cjs} +4 -4
  186. package/dist/{chunk-U6PLSPMD.cjs → chunk-UAYXZXWU.cjs} +4 -4
  187. package/dist/{chunk-OV3T5MUH.cjs → chunk-UKBFNBDO.cjs} +11 -11
  188. package/dist/{chunk-SZD45IDG.js → chunk-UMJYX5KD.js} +101 -4
  189. package/dist/{chunk-B76FJKEJ.cjs → chunk-USKYTHDL.cjs} +69 -18
  190. package/dist/{chunk-NZQFKXM3.cjs → chunk-VAJUSZMC.cjs} +15 -15
  191. package/dist/{chunk-SDLY4X3G.js → chunk-VGQG4NBJ.js} +2 -2
  192. package/dist/{chunk-KWXGDSYT.js → chunk-VLUIVJ3J.js} +58 -7
  193. package/dist/{chunk-KJ26T7GM.cjs → chunk-VOBINVMV.cjs} +105 -42
  194. package/dist/{chunk-C5QIQQ37.js → chunk-VSHKKCSH.js} +16 -5
  195. package/dist/{chunk-L46OUKW5.cjs → chunk-VSZU3MGA.cjs} +28 -17
  196. package/dist/{chunk-YFXTE422.cjs → chunk-VWHAUB77.cjs} +8 -3
  197. package/dist/{chunk-UWZ4G3SQ.js → chunk-VXGYFX45.js} +4 -4
  198. package/dist/{chunk-C46B72VK.js → chunk-WH6YUQDB.js} +141 -54
  199. package/dist/{chunk-SFFEKZGC.js → chunk-WQ6TD55V.js} +2 -2
  200. package/dist/{chunk-7PJKTSRN.js → chunk-WQWECXTY.js} +3 -3
  201. package/dist/{chunk-DSSCERHI.cjs → chunk-WVDJUJH6.cjs} +2 -2
  202. package/dist/{chunk-JPFRI4L4.js → chunk-X24VIVDZ.js} +210 -26
  203. package/dist/{chunk-7IRQ7JEH.js → chunk-X4NRTLXD.js} +7 -1
  204. package/dist/{chunk-7MY4JHER.js → chunk-X53SHYCG.js} +2 -2
  205. package/dist/{chunk-RFUKZIJF.cjs → chunk-XB2Z4ZAK.cjs} +5 -5
  206. package/dist/{chunk-WJYFLQ7G.cjs → chunk-Y47OJGLB.cjs} +3 -3
  207. package/dist/{chunk-HC2Q6A3E.cjs → chunk-Y4MN27V3.cjs} +361 -177
  208. package/dist/{chunk-ZK6HOR62.js → chunk-YEHFYZFU.js} +7 -2
  209. package/dist/{chunk-FFBDRUO5.cjs → chunk-YICIUY23.cjs} +1 -1
  210. package/dist/{chunk-63ANVAOJ.cjs → chunk-YMXYC777.cjs} +3 -3
  211. package/dist/{chunk-X7XMITIL.cjs → chunk-Z3GRWK6O.cjs} +8 -8
  212. package/dist/{chunk-3ICORF7M.cjs → chunk-Z5GG2KSL.cjs} +4 -4
  213. package/dist/{chunk-I2ZK3AOD.js → chunk-ZER7DYQK.js} +2 -2
  214. package/dist/{chunk-V3SZLWEQ.cjs → chunk-ZFDXZEZJ.cjs} +11 -11
  215. package/dist/{chunk-QBYGMMDD.js → chunk-ZFV4HJA6.js} +66 -4
  216. package/dist/chunk-ZHMYTI5D.cjs +529 -0
  217. package/dist/{chunk-4567QNRB.js → chunk-ZLR2TFBC.js} +3 -0
  218. package/dist/{chunk-OCATAKXV.cjs → chunk-ZTWNU5QZ.cjs} +20 -20
  219. package/dist/{chunk-CCIDL4SA.js → chunk-ZVLVLDYN.js} +2915 -1418
  220. package/dist/clear-AJGXD2BB.cjs +12 -0
  221. package/dist/{clear-Y5TO3RZA.js → clear-HAHDSWKW.js} +3 -3
  222. package/dist/communityInstaller-IRR6M3N6.cjs +22 -0
  223. package/dist/{communityInstaller-RVL4STPS.js → communityInstaller-OLKEUGMX.js} +5 -5
  224. package/dist/completion-G7Z436TF.cjs +17 -0
  225. package/dist/{completion-SE3XYG74.js → completion-ZS3AXJ6A.js} +4 -4
  226. package/dist/{config-7KPHKFTP.js → config-OWYAQPCX.js} +5 -4
  227. package/dist/config-W2BHT2QE.cjs +22 -0
  228. package/dist/{constants-EJFAWJQI.js → constants-AS6K67AA.js} +5 -3
  229. package/dist/constants-B4W5BT7F.cjs +23 -0
  230. package/dist/{export-BJVIDZC4.js → export-5HIU3KMD.js} +4 -4
  231. package/dist/export-GFD32UY2.cjs +15 -0
  232. package/dist/{extractSessionMemories-A2JX5WJ2.js → extractSessionMemories-K6ZVAW2F.js} +1 -1
  233. package/dist/{extractSessionMemories-XL3MS37F.cjs → extractSessionMemories-LLOIJR5U.cjs} +2 -2
  234. package/dist/feature-KP74CZ3F.cjs +14 -0
  235. package/dist/{feature-V4JF5TNJ.js → feature-OPNVMB2E.js} +2 -2
  236. package/dist/features-LT55MURX.cjs +24 -0
  237. package/dist/features-ZDIU26WX.js +24 -0
  238. package/dist/feedback-7WTJFQ6S.js +18 -0
  239. package/dist/feedback-CEOJ3453.cjs +18 -0
  240. package/dist/go-2CY5SZNR.js +16 -0
  241. package/dist/go-O2CSQON4.cjs +16 -0
  242. package/dist/goal-DL2N2AWT.cjs +16 -0
  243. package/dist/goal-IJS7VZSG.js +16 -0
  244. package/dist/help-RNOGDEBA.cjs +12 -0
  245. package/dist/{help-MLIROWKM.js → help-TCWD2IRH.js} +2 -2
  246. package/dist/{history-GQJ6RZD6.js → history-ATOR5OQV.js} +2 -2
  247. package/dist/history-UUSGX2AL.cjs +14 -0
  248. package/dist/{hooks-PPFHCF7T.js → hooks-R3Z5QKUP.js} +5 -5
  249. package/dist/hooks-RWM5UY67.cjs +18 -0
  250. package/dist/{i18n-Q7UZJRPL.js → i18n-4QI4TD4I.js} +1 -1
  251. package/dist/i18n-MFAEU5RV.cjs +33 -0
  252. package/dist/{ide-BUSVE54P.js → ide-6PBTCCUQ.js} +4 -4
  253. package/dist/ide-UE3G7NMQ.cjs +15 -0
  254. package/dist/{import-C7S6UJMW.cjs → import-2IG76KAN.cjs} +6 -4
  255. package/dist/{import-U47DXCA7.js → import-E47QL4DW.js} +2 -2
  256. package/dist/import-NQDNBFUL.cjs +10 -0
  257. package/dist/{import-3VBKI6BN.js → import-VQIHGJWS.js} +6 -4
  258. package/dist/index.cjs +444 -334
  259. package/dist/index.d.cts +38 -0
  260. package/dist/index.d.ts +38 -0
  261. package/dist/index.js +324 -214
  262. package/dist/init-DX3RDGDT.cjs +10 -0
  263. package/dist/{init-Q2O4R42R.js → init-Q54OAAFZ.js} +2 -2
  264. package/dist/{inputPrompt-3CFZDUBH.js → inputPrompt-V2VBDRM7.js} +2 -2
  265. package/dist/inputPrompt-WVGVWAHS.cjs +90 -0
  266. package/dist/language-I6KXAOXD.js +23 -0
  267. package/dist/language-XMIVOH5E.cjs +23 -0
  268. package/dist/learn-JPVVGTKU.js +23 -0
  269. package/dist/learn-NLSHI2MZ.cjs +23 -0
  270. package/dist/login-NABQYLYC.cjs +28 -0
  271. package/dist/login-XPOVFSWN.js +28 -0
  272. package/dist/logout-HNHCGB4Q.js +25 -0
  273. package/dist/logout-SKGDXJSW.cjs +25 -0
  274. package/dist/{mcp-AH3MMUBU.js → mcp-EN73YFGZ.js} +8 -7
  275. package/dist/mcp-TADZCPJQ.cjs +22 -0
  276. package/dist/{mcp-install-IA4ZS2SV.cjs → mcp-install-2GKWWBAS.cjs} +14 -13
  277. package/dist/{mcp-install-222PCKSW.js → mcp-install-3TBTVSHW.js} +9 -8
  278. package/dist/memory-GRXFTDIN.cjs +10 -0
  279. package/dist/{memory-VB46T5H3.js → memory-K2P3CDCH.js} +2 -2
  280. package/dist/{model-SJJG64AM.js → model-DEG22OWA.js} +2 -2
  281. package/dist/model-OSD74T7Z.cjs +10 -0
  282. package/dist/new-4NWBOATU.cjs +12 -0
  283. package/dist/{new-ERZ5C6CN.js → new-KJAP2MB6.js} +3 -3
  284. package/dist/{onboarding-ZQXMPSMJ.js → onboarding-2U5WE2OA.js} +17 -14
  285. package/dist/onboarding-5DZFCO5Q.cjs +39 -0
  286. package/dist/permissions-KY5I6YQ3.cjs +10 -0
  287. package/dist/{permissions-7ACNFK7A.js → permissions-TKYON7PP.js} +2 -2
  288. package/dist/{plan-YYUAXPTL.js → plan-DYHHLZSS.js} +1 -1
  289. package/dist/plan-PYKP652W.cjs +13 -0
  290. package/dist/quit-GSKJL42O.js +14 -0
  291. package/dist/quit-TQSRTBUT.cjs +14 -0
  292. package/dist/{registry-4DXUDKJN.js → registry-EZ4V4TUQ.js} +1339 -1
  293. package/dist/{registry-UEO3ETZ7.cjs → registry-LCWYI4IB.cjs} +1378 -40
  294. package/dist/resume-4VWJXARX.cjs +17 -0
  295. package/dist/{resume-XSXZMDMD.js → resume-TLHWWWFN.js} +5 -5
  296. package/dist/{review-QHP2KP4Q.js → review-CSK4IYTO.js} +1 -1
  297. package/dist/review-XLJEUH5K.cjs +9 -0
  298. package/dist/{rpc-XH7QLN4H.js → rpc-3DLQBDWU.js} +151 -124
  299. package/dist/{rpc-YF54T7JU.cjs → rpc-O36WUU3L.cjs} +169 -142
  300. package/dist/search-DSX2CY4A.cjs +22 -0
  301. package/dist/search-I3QUDUQL.js +22 -0
  302. package/dist/sessionBranching-DVNOUWJT.cjs +19 -0
  303. package/dist/sessionBranching-FKV4CR36.js +19 -0
  304. package/dist/sessions-3JUOT3ED.cjs +10 -0
  305. package/dist/{sessions-NJYHJOEL.js → sessions-VWMDIPOS.js} +2 -2
  306. package/dist/{settings-ZXUQH3DO.js → settings-FT2LZZUV.js} +11 -8
  307. package/dist/settings-RL4KNWHB.cjs +45 -0
  308. package/dist/setup-HQEJVOYT.js +32 -0
  309. package/dist/setup-MN54LKOL.cjs +32 -0
  310. package/dist/share-BUAFZNBX.cjs +17 -0
  311. package/dist/{share-WFAGZ5PY.js → share-CGB6MAVJ.js} +6 -6
  312. package/dist/skills/builtin/code-reviewer/SKILL.md +64 -0
  313. package/dist/skills/builtin/goal-writer/SKILL.md +124 -0
  314. package/dist/{skills-NBTNDVAY.js → skills-7DKR3HRZ.js} +7 -7
  315. package/dist/{skills-OB6RDW7D.js → skills-BBBENOEY.js} +9 -9
  316. package/dist/skills-OQM7IHAF.cjs +29 -0
  317. package/dist/{skills-ZROBG3RZ.cjs → skills-RA2PKL63.cjs} +9 -9
  318. package/dist/{skills-install-ILX6QVEF.cjs → skills-install-D7K476SL.cjs} +15 -15
  319. package/dist/{skills-install-BHTIEMKH.js → skills-install-T4SOKJSL.js} +8 -8
  320. package/dist/{skills-new-YMRP2HNO.js → skills-new-S33NGEU3.js} +6 -6
  321. package/dist/skills-new-UVYH53MD.cjs +18 -0
  322. package/dist/slashCommands-MWOUDSQP.js +111 -0
  323. package/dist/slashCommands-XASURUTV.cjs +111 -0
  324. package/dist/squad-PIIYDFVH.cjs +15 -0
  325. package/dist/squad-VHYOVEJP.js +15 -0
  326. package/dist/status-GHFTXQBL.js +25 -0
  327. package/dist/status-WXMIJIU3.cjs +25 -0
  328. package/dist/statusline-2K7AC6ZQ.js +21 -0
  329. package/dist/statusline-GROI4HOC.cjs +21 -0
  330. package/dist/sync-254WF6JI.cjs +42 -0
  331. package/dist/sync-2DIZN4EH.cjs +24 -0
  332. package/dist/{sync-OCJN4ZSO.js → sync-J6I2ZUKQ.js} +5 -3
  333. package/dist/{sync-7C25MOT2.js → sync-Z3LVSEEV.js} +8 -6
  334. package/dist/{teammate-D77B6QRT.cjs → teammate-EXR76PEQ.cjs} +5 -5
  335. package/dist/{teammate-EZCMHOIL.js → teammate-K4DAOFEQ.js} +5 -5
  336. package/dist/theme-MVQDSU47.js +23 -0
  337. package/dist/theme-QAKEYWJG.cjs +23 -0
  338. package/dist/ui/questionModal.cjs +5 -5
  339. package/dist/ui/questionModal.js +4 -4
  340. package/dist/{undo-GNUTFXCW.js → undo-5AU47JHF.js} +2 -2
  341. package/dist/undo-ME6WKUXZ.cjs +10 -0
  342. package/dist/{usage-QSTNSDAO.js → usage-QTKO2YMD.js} +6 -5
  343. package/dist/usage-TYNJKVER.cjs +25 -0
  344. package/package.json +4 -3
  345. package/dist/AgentRegistry-GOV7FN2O.js +0 -10
  346. package/dist/AgentRegistry-J2C6JBZ3.cjs +0 -10
  347. package/dist/CommunitySkillsCache-22BB3J6H.cjs +0 -8
  348. package/dist/LearnAdvisor-KKEQ5QCV.js +0 -9
  349. package/dist/LearnAdvisor-Q7RAYLPF.cjs +0 -9
  350. package/dist/MemoryManager-PMNAEZMB.cjs +0 -8
  351. package/dist/MemoryManager-QZRLTUB5.js +0 -8
  352. package/dist/NVIDIAProvider-C3FWQOBZ.cjs +0 -14
  353. package/dist/PermissionManager-URCNP5EC.cjs +0 -11
  354. package/dist/ProviderFactory-56N3ECE4.cjs +0 -12
  355. package/dist/SessionManager-2IZGWASQ.cjs +0 -10
  356. package/dist/SkillsRegistry-GMRVONOQ.cjs +0 -9
  357. package/dist/SubAgent-4GOR2FIJ.js +0 -13
  358. package/dist/SubAgent-ZJMDH4FI.cjs +0 -13
  359. package/dist/add-dir-BTAD5OZS.cjs +0 -11
  360. package/dist/agent-B3EVT7NN.cjs +0 -126
  361. package/dist/agent-SATQ3WZ3.js +0 -126
  362. package/dist/agents-44CRJGM7.cjs +0 -18
  363. package/dist/agents-NN4ZAJ7R.js +0 -18
  364. package/dist/agents-new-6D6G4QS6.cjs +0 -17
  365. package/dist/autoSkill-VQLGBELN.cjs +0 -20
  366. package/dist/automode-45DWV4TN.cjs +0 -10
  367. package/dist/chrome-Q2U73HZB.cjs +0 -50
  368. package/dist/chrome-Q54OALOK.cjs +0 -21
  369. package/dist/chrome-ZNJ46OYW.js +0 -21
  370. package/dist/chunk-JCUHCH37.cjs +0 -247
  371. package/dist/chunk-VKOXFT4L.cjs +0 -23
  372. package/dist/clear-QJXU25IF.cjs +0 -12
  373. package/dist/communityInstaller-LXMVKVAV.cjs +0 -22
  374. package/dist/completion-JX4T2ONW.cjs +0 -17
  375. package/dist/config-3224PRW4.cjs +0 -21
  376. package/dist/constants-MCCGUU5F.cjs +0 -21
  377. package/dist/export-KU4557HK.cjs +0 -15
  378. package/dist/feature-K3LG5IJP.cjs +0 -14
  379. package/dist/features-5OJTLKS7.js +0 -23
  380. package/dist/features-VCBJQXCX.cjs +0 -23
  381. package/dist/feedback-D4437VE4.js +0 -18
  382. package/dist/feedback-VZPEHGFY.cjs +0 -18
  383. package/dist/go-X4E6BCD6.js +0 -12
  384. package/dist/go-XREVFS5I.cjs +0 -12
  385. package/dist/goal-4M3J6JS2.cjs +0 -16
  386. package/dist/goal-EI66BV7W.js +0 -16
  387. package/dist/help-GGFS7WHY.cjs +0 -12
  388. package/dist/history-J4LUIOSI.cjs +0 -14
  389. package/dist/hooks-FSRIUS6A.cjs +0 -18
  390. package/dist/i18n-CI6VFXL5.cjs +0 -33
  391. package/dist/ide-YR27BPGM.cjs +0 -15
  392. package/dist/import-DBK4OCDF.cjs +0 -10
  393. package/dist/init-OXTYS72D.cjs +0 -10
  394. package/dist/inputPrompt-JMACL4EB.cjs +0 -90
  395. package/dist/language-EK3M6UBV.cjs +0 -22
  396. package/dist/language-Q3RUGGOW.js +0 -22
  397. package/dist/learn-3DSX7DYG.cjs +0 -23
  398. package/dist/learn-OPOH5L43.js +0 -23
  399. package/dist/login-GST7MWXJ.cjs +0 -27
  400. package/dist/login-Q7DZKAX4.js +0 -27
  401. package/dist/logout-2G7OUK7I.cjs +0 -24
  402. package/dist/logout-FNBBL2UI.js +0 -24
  403. package/dist/mcp-DW7R63IB.cjs +0 -21
  404. package/dist/memory-6NX3DAIY.cjs +0 -10
  405. package/dist/model-64NAELFS.cjs +0 -10
  406. package/dist/new-DU5SOOOY.cjs +0 -12
  407. package/dist/onboarding-2U2BV2KE.cjs +0 -36
  408. package/dist/permissions-GSNNV7RJ.cjs +0 -10
  409. package/dist/plan-XEJMOT55.cjs +0 -13
  410. package/dist/quit-WY6T267G.js +0 -10
  411. package/dist/quit-XIRE2KRE.cjs +0 -10
  412. package/dist/resume-RQZ3WXBP.cjs +0 -17
  413. package/dist/review-UWHWQHCB.cjs +0 -9
  414. package/dist/search-VXXFGZWU.cjs +0 -21
  415. package/dist/search-YAWGX7P7.js +0 -21
  416. package/dist/sessions-OSG3UJEZ.cjs +0 -10
  417. package/dist/settings-SO2UIGWV.cjs +0 -42
  418. package/dist/setup-KG7EGKF5.js +0 -30
  419. package/dist/setup-RSOPCQ57.cjs +0 -30
  420. package/dist/share-ZU3SGACF.cjs +0 -17
  421. package/dist/skills-KBVAQAD2.cjs +0 -29
  422. package/dist/skills-new-B45VQ2PP.cjs +0 -18
  423. package/dist/slashCommands-53VYIBJU.js +0 -105
  424. package/dist/slashCommands-BG2RGGZ6.cjs +0 -105
  425. package/dist/status-CQ2IUOVK.cjs +0 -24
  426. package/dist/status-E7IGNVPC.js +0 -24
  427. package/dist/sync-XRP46IVG.cjs +0 -40
  428. package/dist/sync-ZMFVE7T4.cjs +0 -22
  429. package/dist/theme-KKRDE6P7.cjs +0 -22
  430. package/dist/theme-XF7XIWBQ.js +0 -22
  431. package/dist/undo-U4KN7QQM.cjs +0 -10
  432. package/dist/usage-YDEMQBNQ.cjs +0 -24
@@ -78,16 +78,66 @@ var SYNC_CONFIG = {
78
78
  /** Request timeout in ms */
79
79
  timeout: 3e4
80
80
  };
81
- var SKILL_LOCATIONS = [
82
- { basePath: _path2.default.join(_os2.default.homedir(), ".codex", "skills"), source: "codex-user", recursive: true },
83
- { basePath: _path2.default.join(_os2.default.homedir(), ".claude", "skills"), source: "claude-user", recursive: false },
84
- // Project-level Claude skills are resolved at runtime with workspaceRoot
85
- { basePath: AUTOHAND_PATHS.skills, source: "autohand-user", recursive: true }
86
- // Project-level Autohand skills are resolved at runtime with workspaceRoot
81
+ var THIRD_PARTY_PROJECT_SKILL_DIRS = [
82
+ ".aider-desk/skills",
83
+ ".augment/skills",
84
+ ".bob/skills",
85
+ ".codeartsdoer/skills",
86
+ ".codebuddy/skills",
87
+ ".codemaker/skills",
88
+ ".codestudio/skills",
89
+ ".commandcode/skills",
90
+ ".continue/skills",
91
+ ".cortex/skills",
92
+ ".crush/skills",
93
+ ".devin/skills",
94
+ ".factory/skills",
95
+ ".forge/skills",
96
+ ".goose/skills",
97
+ ".hermes/skills",
98
+ ".junie/skills",
99
+ ".iflow/skills",
100
+ ".kilocode/skills",
101
+ ".kiro/skills",
102
+ ".kode/skills",
103
+ ".mcpjam/skills",
104
+ ".vibe/skills",
105
+ ".mux/skills",
106
+ ".openhands/skills",
107
+ ".pi/skills",
108
+ ".qoder/skills",
109
+ ".qwen/skills",
110
+ ".rovodev/skills",
111
+ ".roo/skills",
112
+ ".tabnine/agent/skills",
113
+ ".trae/skills",
114
+ ".windsurf/skills",
115
+ ".zencoder/skills",
116
+ ".neovate/skills",
117
+ ".pochi/skills",
118
+ ".adal/skills",
119
+ ".agent/skills",
120
+ ".agents/skills",
121
+ "skills"
87
122
  ];
123
+ function getUserSkillLocations(homeDir = _os2.default.homedir(), autohandSkillsDir = AUTOHAND_PATHS.skills) {
124
+ return [
125
+ { basePath: _path2.default.join(homeDir, ".codex", "skills"), source: "codex-user", recursive: true },
126
+ { basePath: _path2.default.join(homeDir, ".claude", "skills"), source: "claude-user", recursive: false },
127
+ { basePath: _path2.default.join(homeDir, ".agent", "skills"), source: "agent-user", recursive: true },
128
+ { basePath: _path2.default.join(homeDir, ".agents", "skills"), source: "agent-user", recursive: true },
129
+ { basePath: autohandSkillsDir, source: "autohand-user", recursive: true }
130
+ ];
131
+ }
132
+ var SKILL_LOCATIONS = getUserSkillLocations();
88
133
  function getProjectSkillLocations(workspaceRoot) {
89
134
  return [
90
135
  { basePath: _path2.default.join(workspaceRoot, ".claude", "skills"), source: "claude-project", recursive: false },
136
+ ...THIRD_PARTY_PROJECT_SKILL_DIRS.map((relativePath) => ({
137
+ basePath: _path2.default.join(workspaceRoot, relativePath),
138
+ source: "agent-project",
139
+ recursive: true
140
+ })),
91
141
  { basePath: _path2.default.join(workspaceRoot, PROJECT_DIR_NAME, "skills"), source: "autohand-project", recursive: true }
92
142
  ];
93
143
  }
@@ -101,7 +151,8 @@ function getProjectSkillLocations(workspaceRoot) {
101
151
 
102
152
 
103
153
 
104
- exports.AUTOHAND_HOME = AUTOHAND_HOME; exports.AUTOHAND_PATHS = AUTOHAND_PATHS; exports.AUTOHAND_FILES = AUTOHAND_FILES; exports.PROJECT_DIR_NAME = PROJECT_DIR_NAME; exports.AUTH_CONFIG = AUTH_CONFIG; exports.SYNC_CONFIG = SYNC_CONFIG; exports.SKILL_LOCATIONS = SKILL_LOCATIONS; exports.getProjectSkillLocations = getProjectSkillLocations;
154
+
155
+ exports.AUTOHAND_HOME = AUTOHAND_HOME; exports.AUTOHAND_PATHS = AUTOHAND_PATHS; exports.AUTOHAND_FILES = AUTOHAND_FILES; exports.PROJECT_DIR_NAME = PROJECT_DIR_NAME; exports.AUTH_CONFIG = AUTH_CONFIG; exports.SYNC_CONFIG = SYNC_CONFIG; exports.getUserSkillLocations = getUserSkillLocations; exports.SKILL_LOCATIONS = SKILL_LOCATIONS; exports.getProjectSkillLocations = getProjectSkillLocations;
105
156
  /**
106
157
  * @license
107
158
  * Copyright 2025 Autohand AI LLC
@@ -1,6 +1,6 @@
1
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; } var _class;
2
2
 
3
- var _chunkKASXKDF2cjs = require('./chunk-KASXKDF2.cjs');
3
+ var _chunk3JURXAL6cjs = require('./chunk-3JURXAL6.cjs');
4
4
 
5
5
  // src/core/agents/AgentRegistry.ts
6
6
  var _promises = require('fs/promises'); var _promises2 = _interopRequireDefault(_promises);
@@ -13,6 +13,44 @@ var AgentConfigSchema = _zod.z.object({
13
13
  tools: _zod.z.array(_zod.z.string()),
14
14
  model: _zod.z.string().optional()
15
15
  });
16
+ var InlineAgentInputSchema = _zod.z.object({
17
+ description: _zod.z.string().min(1, 'agent "description" is required'),
18
+ prompt: _zod.z.string().min(1, 'agent "prompt" is required'),
19
+ tools: _zod.z.union([_zod.z.array(_zod.z.string()), _zod.z.string()]).optional(),
20
+ model: _zod.z.string().optional()
21
+ });
22
+ var InlineAgentsInputSchema = _zod.z.record(_zod.z.string().min(1, "agent name is required"), InlineAgentInputSchema).refine((value) => Object.keys(value).length > 0, { message: "no agents defined" });
23
+ function looksLikeInlineAgents(value) {
24
+ return value.trim().startsWith("{");
25
+ }
26
+ function normalizeInlineTools(tools) {
27
+ const values = Array.isArray(tools) ? tools : typeof tools === "string" ? tools.split(",") : [];
28
+ const cleaned = values.map((tool) => tool.trim()).filter(Boolean);
29
+ return cleaned.length > 0 ? cleaned : ["*"];
30
+ }
31
+ function parseInlineAgents(input) {
32
+ let raw = input;
33
+ if (typeof input === "string") {
34
+ try {
35
+ raw = JSON.parse(input);
36
+ } catch (error) {
37
+ throw new Error(`invalid JSON (${error.message})`);
38
+ }
39
+ }
40
+ const result = InlineAgentsInputSchema.safeParse(raw);
41
+ if (!result.success) {
42
+ const issue = result.error.issues[0];
43
+ const location = _optionalChain([issue, 'optionalAccess', _ => _.path, 'optionalAccess', _2 => _2.length]) ? `${issue.path.join(".")}: ` : "";
44
+ throw new Error(`${location}${_nullishCoalesce(_optionalChain([issue, 'optionalAccess', _3 => _3.message]), () => ( "invalid agents definition"))}`);
45
+ }
46
+ return Object.entries(result.data).map(([name, def]) => ({
47
+ name,
48
+ description: def.description,
49
+ systemPrompt: def.prompt,
50
+ tools: normalizeInlineTools(def.tools),
51
+ model: def.model
52
+ }));
53
+ }
16
54
  function extractMarkdownTitle(content) {
17
55
  const lines = content.split(/\r?\n/);
18
56
  for (const line of lines) {
@@ -52,10 +90,16 @@ function parseMarkdownAgent(content) {
52
90
  var AgentRegistry = (_class = class _AgentRegistry {
53
91
 
54
92
  __init() {this.agents = /* @__PURE__ */ new Map()}
93
+ /**
94
+ * Session-scoped agents injected via `--agents <json>`. Kept separate from
95
+ * file-loaded agents so they survive `loadAgents()` (which clears `agents`)
96
+ * and take precedence over agents with the same name.
97
+ */
98
+ __init2() {this.sessionAgents = /* @__PURE__ */ new Map()}
55
99
 
56
- __init2() {this.externalPaths = []}
57
- constructor() {;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);
58
- this.agentsDir = _chunkKASXKDF2cjs.AUTOHAND_PATHS.agents;
100
+ __init3() {this.externalPaths = []}
101
+ constructor() {;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);_class.prototype.__init3.call(this);
102
+ this.agentsDir = _chunk3JURXAL6cjs.AUTOHAND_PATHS.agents;
59
103
  }
60
104
  static getInstance() {
61
105
  if (!_AgentRegistry.instance) {
@@ -76,7 +120,7 @@ var AgentRegistry = (_class = class _AgentRegistry {
76
120
  * Apply external agent settings from the loaded Autohand config.
77
121
  */
78
122
  configureExternalAgents(config) {
79
- if (_optionalChain([config, 'optionalAccess', _ => _.enabled]) !== true) {
123
+ if (_optionalChain([config, 'optionalAccess', _4 => _4.enabled]) !== true) {
80
124
  this.setExternalPaths([]);
81
125
  return;
82
126
  }
@@ -115,7 +159,7 @@ var AgentRegistry = (_class = class _AgentRegistry {
115
159
  for (const file of files) {
116
160
  const filePath = _path2.default.join(dir, file);
117
161
  const stat = await _promises2.default.stat(filePath).catch(() => null);
118
- if (!_optionalChain([stat, 'optionalAccess', _2 => _2.isFile, 'call', _3 => _3()])) {
162
+ if (!_optionalChain([stat, 'optionalAccess', _5 => _5.isFile, 'call', _6 => _6()])) {
119
163
  continue;
120
164
  }
121
165
  if (file.endsWith(".json")) {
@@ -133,10 +177,41 @@ var AgentRegistry = (_class = class _AgentRegistry {
133
177
  }
134
178
  }
135
179
  getAgent(name) {
136
- return this.agents.get(name);
180
+ return _nullishCoalesce(this.sessionAgents.get(name), () => ( this.agents.get(name)));
137
181
  }
138
182
  getAllAgents() {
139
- return Array.from(this.agents.values());
183
+ const merged = /* @__PURE__ */ new Map();
184
+ for (const agent of this.agents.values()) {
185
+ merged.set(agent.name, agent);
186
+ }
187
+ for (const agent of this.sessionAgents.values()) {
188
+ merged.set(agent.name, agent);
189
+ }
190
+ return Array.from(merged.values());
191
+ }
192
+ /**
193
+ * Replace the set of session-scoped agents (injected via `--agents <json>`).
194
+ * Passing an empty array clears any previously registered session agents.
195
+ */
196
+ setSessionAgents(defs) {
197
+ this.sessionAgents.clear();
198
+ for (const def of defs) {
199
+ this.sessionAgents.set(def.name, {
200
+ name: def.name,
201
+ path: `<inline:${def.name}>`,
202
+ source: "session",
203
+ description: def.description,
204
+ systemPrompt: def.systemPrompt,
205
+ tools: def.tools.length > 0 ? def.tools : ["*"],
206
+ model: def.model
207
+ });
208
+ }
209
+ }
210
+ clearSessionAgents() {
211
+ this.sessionAgents.clear();
212
+ }
213
+ getSessionAgents() {
214
+ return Array.from(this.sessionAgents.values());
140
215
  }
141
216
  getAgentsDirectory() {
142
217
  return this.agentsDir;
@@ -195,7 +270,11 @@ var AgentRegistry = (_class = class _AgentRegistry {
195
270
 
196
271
 
197
272
 
198
- exports.AgentConfigSchema = AgentConfigSchema; exports.AgentRegistry = AgentRegistry;
273
+
274
+
275
+
276
+
277
+ exports.AgentConfigSchema = AgentConfigSchema; exports.InlineAgentInputSchema = InlineAgentInputSchema; exports.InlineAgentsInputSchema = InlineAgentsInputSchema; exports.looksLikeInlineAgents = looksLikeInlineAgents; exports.parseInlineAgents = parseInlineAgents; exports.AgentRegistry = AgentRegistry;
199
278
  /**
200
279
  * @license
201
280
  * Copyright 2025 Autohand AI LLC
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  t
3
- } from "./chunk-LEZEWKPA.js";
3
+ } from "./chunk-SJQU2ZFR.js";
4
4
 
5
5
  // src/commands/history.ts
6
6
  import chalk from "chalk";
@@ -2,8 +2,11 @@ import {
2
2
  validateSkillFrontmatter
3
3
  } from "./chunk-QHPFA6OE.js";
4
4
  import {
5
- PROJECT_DIR_NAME
6
- } from "./chunk-SHRLFX6F.js";
5
+ AUTOHAND_PATHS,
6
+ PROJECT_DIR_NAME,
7
+ getProjectSkillLocations,
8
+ getUserSkillLocations
9
+ } from "./chunk-PG2JIU5M.js";
7
10
 
8
11
  // src/skills/SkillsRegistry.ts
9
12
  import fs2 from "fs-extra";
@@ -94,13 +97,31 @@ var SkillParser = class {
94
97
 
95
98
  // src/skills/SkillsRegistry.ts
96
99
  var SIMILARITY_THRESHOLD = 0.3;
97
- var VENDOR_SOURCES = ["codex-user", "claude-user", "codex-project", "claude-project"];
100
+ var BUILTIN_SKILLS_DIR = "builtin";
101
+ function sameResolvedPath(a, b) {
102
+ return path.resolve(a) === path.resolve(b);
103
+ }
104
+ function createDefaultUserSkillLocations(userSkillsDir, defaultSource, homeDir) {
105
+ return getUserSkillLocations(homeDir, userSkillsDir).map(
106
+ (location) => sameResolvedPath(location.basePath, userSkillsDir) ? { ...location, source: defaultSource } : location
107
+ );
108
+ }
109
+ var VENDOR_SOURCES = [
110
+ "codex-user",
111
+ "claude-user",
112
+ "codex-project",
113
+ "claude-project",
114
+ "agent-user",
115
+ "agent-project"
116
+ ];
98
117
  var SkillsRegistry = class {
99
- constructor(userSkillsDir, defaultSource = "autohand-user") {
118
+ constructor(userSkillsDir, defaultSource = "autohand-user", options = {}) {
100
119
  this.userSkillsDir = userSkillsDir;
120
+ this.options = options;
101
121
  this.defaultSource = defaultSource;
102
122
  }
103
123
  userSkillsDir;
124
+ options;
104
125
  skills = /* @__PURE__ */ new Map();
105
126
  parser = new SkillParser();
106
127
  workspaceRoot = null;
@@ -225,17 +246,49 @@ var SkillsRegistry = class {
225
246
  * Initialize the registry by loading skills from the user directory
226
247
  */
227
248
  async initialize() {
228
- await this.loadFromDirectory(this.userSkillsDir, this.defaultSource, true);
249
+ await this.loadBuiltins();
250
+ for (const location of this.getUserSkillLocations()) {
251
+ await this.loadFromDirectory(location.basePath, location.source, location.recursive);
252
+ }
253
+ }
254
+ async loadBuiltins() {
255
+ for (const directory of this.getBuiltinSkillDirectories()) {
256
+ if (await fs2.pathExists(directory)) {
257
+ await this.loadFromDirectory(directory, "builtin", true);
258
+ return;
259
+ }
260
+ }
261
+ }
262
+ getBuiltinSkillDirectories() {
263
+ const moduleDir = path.dirname(new URL(import.meta.url).pathname);
264
+ return [
265
+ path.join(moduleDir, BUILTIN_SKILLS_DIR),
266
+ path.join(moduleDir, "skills", BUILTIN_SKILLS_DIR),
267
+ path.join(moduleDir, "..", "skills", BUILTIN_SKILLS_DIR)
268
+ ];
269
+ }
270
+ getUserSkillLocations() {
271
+ if (this.options.userSkillLocations) {
272
+ return this.options.userSkillLocations;
273
+ }
274
+ const includeDefaultLocations = this.options.includeDefaultUserSkillLocations ?? sameResolvedPath(this.userSkillsDir, AUTOHAND_PATHS.skills);
275
+ if (!includeDefaultLocations) {
276
+ return [{ basePath: this.userSkillsDir, source: this.defaultSource, recursive: true }];
277
+ }
278
+ return createDefaultUserSkillLocations(
279
+ this.userSkillsDir,
280
+ this.defaultSource,
281
+ this.options.homeDir
282
+ );
229
283
  }
230
284
  /**
231
285
  * Set the workspace root and load project-level skills
232
286
  */
233
287
  async setWorkspace(workspaceRoot) {
234
288
  this.workspaceRoot = workspaceRoot;
235
- const claudeProjectSkillsDir = path.join(workspaceRoot, ".claude", "skills");
236
- await this.loadFromDirectory(claudeProjectSkillsDir, "claude-project", false);
237
- const autohandProjectSkillsDir = path.join(workspaceRoot, PROJECT_DIR_NAME, "skills");
238
- await this.loadFromDirectory(autohandProjectSkillsDir, "autohand-project", true);
289
+ for (const location of getProjectSkillLocations(workspaceRoot)) {
290
+ await this.loadFromDirectory(location.basePath, location.source, location.recursive);
291
+ }
239
292
  }
240
293
  /**
241
294
  * Add an additional skill location to search
@@ -4,13 +4,13 @@ import {
4
4
  } from "./chunk-RS2E32YB.js";
5
5
  import {
6
6
  showModal
7
- } from "./chunk-NZ3ZWLUW.js";
7
+ } from "./chunk-LOSXLH7P.js";
8
8
  import {
9
9
  AUTOHAND_PATHS
10
- } from "./chunk-SHRLFX6F.js";
10
+ } from "./chunk-PG2JIU5M.js";
11
11
  import {
12
12
  t
13
- } from "./chunk-LEZEWKPA.js";
13
+ } from "./chunk-SJQU2ZFR.js";
14
14
 
15
15
  // src/commands/resume.ts
16
16
  import chalk from "chalk";
@@ -3,10 +3,10 @@
3
3
  var _chunkDA7NBAJKcjs = require('./chunk-DA7NBAJK.cjs');
4
4
 
5
5
 
6
- var _chunkYFXTE422cjs = require('./chunk-YFXTE422.cjs');
6
+ var _chunkVWHAUB77cjs = require('./chunk-VWHAUB77.cjs');
7
7
 
8
8
 
9
- var _chunkSY2P3Z5Wcjs = require('./chunk-SY2P3Z5W.cjs');
9
+ var _chunkRJCZLFHEcjs = require('./chunk-RJCZLFHE.cjs');
10
10
 
11
11
  // src/commands/clear.ts
12
12
  var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
@@ -17,7 +17,7 @@ async function clearConversation(ctx) {
17
17
  });
18
18
  }
19
19
  const conversationHistory = _chunkDA7NBAJKcjs.ConversationManager.getInstance().history();
20
- const saved = await _chunkYFXTE422cjs.extractAndSaveSessionMemories.call(void 0, {
20
+ const saved = await _chunkVWHAUB77cjs.extractAndSaveSessionMemories.call(void 0, {
21
21
  llm: ctx.llm,
22
22
  memoryManager: ctx.memoryManager,
23
23
  conversationHistory,
@@ -42,7 +42,7 @@ async function clearConversation(ctx) {
42
42
  )
43
43
  );
44
44
  } else {
45
- console.log(_chalk2.default.cyan(_chunkSY2P3Z5Wcjs.t.call(void 0, "commands.new.cleared")));
45
+ console.log(_chalk2.default.cyan(_chunkRJCZLFHEcjs.t.call(void 0, "commands.new.cleared")));
46
46
  }
47
47
  console.log();
48
48
  return null;
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  SetupWizard
3
- } from "./chunk-HSWWM6AM.js";
3
+ } from "./chunk-TJZUPS4Z.js";
4
4
  import {
5
5
  loadConfig,
6
6
  resolveWorkspaceRoot,
7
7
  saveConfig
8
- } from "./chunk-IEPLQ47J.js";
8
+ } from "./chunk-CM24K6ZT.js";
9
9
  import {
10
10
  detectLocale,
11
11
  initI18n,
12
12
  t
13
- } from "./chunk-LEZEWKPA.js";
13
+ } from "./chunk-SJQU2ZFR.js";
14
14
 
15
15
  // src/commands/setup.ts
16
16
  import chalk from "chalk";
@@ -3,10 +3,10 @@ import {
3
3
  } from "./chunk-RS2E32YB.js";
4
4
  import {
5
5
  package_default
6
- } from "./chunk-JB3JCYBJ.js";
6
+ } from "./chunk-NOWCRKP2.js";
7
7
  import {
8
8
  AUTOHAND_FILES
9
- } from "./chunk-SHRLFX6F.js";
9
+ } from "./chunk-PG2JIU5M.js";
10
10
 
11
11
  // src/commands/go.ts
12
12
  import os from "os";
@@ -198,7 +198,13 @@ var metadata = {
198
198
  description: "pair this session with the Autohand Code iOS app",
199
199
  implemented: true
200
200
  };
201
+ var handoffSessionMetadata = {
202
+ command: "/handoff session",
203
+ description: "handoff this session to the Autohand Code iOS app",
204
+ implemented: true
205
+ };
201
206
  var MAX_MOBILE_SNAPSHOT_MESSAGES = 24;
207
+ var HANDOFF_FLAG = "experimental_handoff";
202
208
  function formatUrl(url) {
203
209
  return terminalLink.isSupported ? terminalLink(url, url) : chalk.cyan.underline(url);
204
210
  }
@@ -348,10 +354,21 @@ async function go(ctx, args = []) {
348
354
  ].join("\n");
349
355
  }
350
356
  }
357
+ async function handoffSession(ctx, args = []) {
358
+ const localDefault = ctx.config?.features?.experimentalHandoff === true;
359
+ const enabled = ctx.isFeatureEnabled?.(HANDOFF_FLAG, localDefault) ?? localDefault;
360
+ if (!enabled) {
361
+ return `The /handoff session command is behind ${HANDOFF_FLAG}. Run /features enable ${HANDOFF_FLAG}, then /handoff session again. No restart required.`;
362
+ }
363
+ await ctx.trackFeatureActivation?.(HANDOFF_FLAG, { surface: "slash_command" });
364
+ return go(ctx, args);
365
+ }
351
366
 
352
367
  export {
353
368
  metadata,
354
- go
369
+ handoffSessionMetadata,
370
+ go,
371
+ handoffSession
355
372
  };
356
373
  /**
357
374
  * @license
@@ -1,12 +1,12 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
2
 
3
- var _chunkM7B7RRBKcjs = require('./chunk-M7B7RRBK.cjs');
3
+ var _chunkEFXFURDYcjs = require('./chunk-EFXFURDY.cjs');
4
4
 
5
5
 
6
- var _chunkAQ5PVHOCcjs = require('./chunk-AQ5PVHOC.cjs');
6
+ var _chunkCSUGNNJYcjs = require('./chunk-CSUGNNJY.cjs');
7
7
 
8
8
 
9
- var _chunkX5P6QQOBcjs = require('./chunk-X5P6QQOB.cjs');
9
+ var _chunkCNQKIWIScjs = require('./chunk-CNQKIWIS.cjs');
10
10
 
11
11
  // src/reporting/processErrorReporting.ts
12
12
  var DEFAULT_API_BASE_URL = "https://api.autohand.ai";
@@ -45,6 +45,9 @@ function detectClientName(processRef) {
45
45
  function getLogPrefix(processRef) {
46
46
  return detectClientName(processRef) === "acp" ? "[ACP]" : "[DEBUG]";
47
47
  }
48
+ function isProcessAutoReportDisabled(processRef) {
49
+ return processRef.env.AUTOHAND_DISABLE_AUTO_REPORT === "1" || processRef.env.AUTOHAND_AUTO_REPORT === "0";
50
+ }
48
51
  function captureLastError(reason) {
49
52
  globalThis.__autohandLastError = reason;
50
53
  }
@@ -78,11 +81,11 @@ async function getAutoReportManager(processRef, explicitConfigPath) {
78
81
  const managerPromise = (async () => {
79
82
  let config;
80
83
  try {
81
- config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, configPath);
84
+ config = await _chunkCNQKIWIScjs.loadConfig.call(void 0, configPath);
82
85
  } catch (e) {
83
86
  config = buildFallbackConfig(configPath, processRef);
84
87
  }
85
- return new (0, _chunkM7B7RRBKcjs.AutoReportManager)(config, _chunkAQ5PVHOCcjs.package_default.version);
88
+ return new (0, _chunkEFXFURDYcjs.AutoReportManager)(config, _chunkCSUGNNJYcjs.package_default.version);
86
89
  })();
87
90
  managerCache.set(cacheKey, managerPromise);
88
91
  return managerPromise;
@@ -94,6 +97,19 @@ function isIgnorableStdinReadError(err, _processRef) {
94
97
  const maybeError = err;
95
98
  return maybeError.code === "EIO" && maybeError.syscall === "read";
96
99
  }
100
+ function isIgnorableTerminalPipeError(err) {
101
+ if (!err || typeof err !== "object") {
102
+ return false;
103
+ }
104
+ const maybeError = err;
105
+ if (maybeError.code === "UV_EPIPE" && maybeError.syscall === "recv") {
106
+ return true;
107
+ }
108
+ if (maybeError.code !== "EPIPE") {
109
+ return false;
110
+ }
111
+ return maybeError.syscall === "read" || maybeError.syscall === "write" || /\b(read|write) EPIPE\b/i.test(_nullishCoalesce(maybeError.message, () => ( "")));
112
+ }
97
113
  function isIgnorableFilesystemError(err) {
98
114
  if (!err || typeof err !== "object") return false;
99
115
  const maybeError = err;
@@ -113,6 +129,7 @@ function isIgnorableUnhandledRejection(reason, processRef) {
113
129
  return true;
114
130
  }
115
131
  if (isIgnorableStdinReadError(reason, processRef)) return true;
132
+ if (isIgnorableTerminalPipeError(reason)) return true;
116
133
  if (isIgnorableFilesystemError(reason)) return true;
117
134
  if (isIgnorableTerminalOrRuntimeError(reason)) return true;
118
135
  return false;
@@ -151,10 +168,13 @@ function describeReasonType(reason) {
151
168
  }
152
169
  async function reportProcessError(reason, options) {
153
170
  const processRef = _nullishCoalesce(options.processRef, () => ( process));
171
+ if (isProcessAutoReportDisabled(processRef)) {
172
+ return;
173
+ }
154
174
  if (options.handler === "unhandledRejection" && isIgnorableUnhandledRejection(reason, processRef)) {
155
175
  return;
156
176
  }
157
- if (options.handler === "uncaughtException" && (isIgnorableStdinReadError(reason, processRef) || isIgnorableTerminalOrRuntimeError(reason))) {
177
+ if (options.handler === "uncaughtException" && (isIgnorableStdinReadError(reason, processRef) || isIgnorableTerminalPipeError(reason) || isIgnorableTerminalOrRuntimeError(reason))) {
158
178
  return;
159
179
  }
160
180
  captureLastError(reason);
@@ -186,9 +206,15 @@ function installProcessErrorHandlers(options = {}) {
186
206
  processRef.exit(code);
187
207
  })));
188
208
  processRef.on("uncaughtException", (error) => {
209
+ if (isProcessAutoReportDisabled(processRef)) {
210
+ return;
211
+ }
189
212
  if (isIgnorableStdinReadError(error, processRef)) {
190
213
  return;
191
214
  }
215
+ if (isIgnorableTerminalPipeError(error)) {
216
+ return;
217
+ }
192
218
  if (isIgnorableTerminalOrRuntimeError(error)) {
193
219
  return;
194
220
  }
@@ -205,6 +231,9 @@ function installProcessErrorHandlers(options = {}) {
205
231
  })();
206
232
  });
207
233
  processRef.on("unhandledRejection", (reason, promise) => {
234
+ if (isProcessAutoReportDisabled(processRef)) {
235
+ return;
236
+ }
208
237
  if (isIgnorableUnhandledRejection(reason, processRef)) {
209
238
  return;
210
239
  }