autohand-cli 0.9.0 → 0.9.1
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.
- package/README.md +20 -2
- package/dist/{AgentRegistry-XPWSVO3Q.js → AgentRegistry-GOV7FN2O.js} +2 -2
- package/dist/AgentRegistry-J2C6JBZ3.cjs +10 -0
- package/dist/CommunitySkillsCache-22BB3J6H.cjs +8 -0
- package/dist/{CommunitySkillsCache-ZEQWP6YM.js → CommunitySkillsCache-ZACDPD4J.js} +2 -2
- package/dist/{HookManager-CWLTFKWO.js → HookManager-2S6AHOC3.js} +1 -1
- package/dist/{HookManager-TMAJQU4S.cjs → HookManager-TVEQI5ZU.cjs} +2 -2
- package/dist/{ImportWizard-QBKQEXDW.js → ImportWizard-AEBMAKXE.js} +4 -4
- package/dist/{ImportWizard-MQXEED2U.cjs → ImportWizard-AF2XL6DS.cjs} +13 -13
- package/dist/LearnAdvisor-KKEQ5QCV.js +9 -0
- package/dist/LearnAdvisor-Q7RAYLPF.cjs +9 -0
- package/dist/MemoryManager-PMNAEZMB.cjs +8 -0
- package/dist/{MemoryManager-WJMLPWGU.js → MemoryManager-QZRLTUB5.js} +2 -2
- package/dist/NVIDIAProvider-C3FWQOBZ.cjs +14 -0
- package/dist/{NVIDIAProvider-2HR737UE.js → NVIDIAProvider-SJPY3ONR.js} +1 -1
- package/dist/{PermissionManager-KMYILJ4Z.js → PermissionManager-MT7KBNNR.js} +3 -3
- package/dist/PermissionManager-URCNP5EC.cjs +11 -0
- package/dist/ProviderFactory-56N3ECE4.cjs +12 -0
- package/dist/{ProviderFactory-HFPRVQ25.js → ProviderFactory-RB4RVAF6.js} +3 -2
- package/dist/SessionManager-2IZGWASQ.cjs +10 -0
- package/dist/{SessionManager-PNBTJJTQ.js → SessionManager-554PHVPC.js} +2 -2
- package/dist/SkillsRegistry-GMRVONOQ.cjs +9 -0
- package/dist/{SkillsRegistry-4RRD5GMX.js → SkillsRegistry-NHHMIUYJ.js} +2 -2
- package/dist/SubAgent-4GOR2FIJ.js +13 -0
- package/dist/SubAgent-ZJMDH4FI.cjs +13 -0
- package/dist/{SyncApiClient-LRPFNCKJ.js → SyncApiClient-G3FM65IV.js} +1 -1
- package/dist/SyncApiClient-ODBDECOG.cjs +11 -0
- package/dist/{about-BW3PDZUU.js → about-3USFSGOH.js} +5 -4
- package/dist/about-QR52U5DD.cjs +15 -0
- package/dist/{acp-VHEL7BOW.js → acp-5Y2W6OZP.js} +129 -90
- package/dist/{acp-EOETGAHC.cjs → acp-GSYE75OB.cjs} +135 -96
- package/dist/actionExecutor-KHUU3Z3Q.cjs +28 -0
- package/dist/{actionExecutor-33I47NZS.js → actionExecutor-PLQJZLZV.js} +12 -8
- package/dist/add-dir-BTAD5OZS.cjs +11 -0
- package/dist/{add-dir-VFX7QT4E.js → add-dir-HCERJDBR.js} +2 -2
- package/dist/agent-B3EVT7NN.cjs +126 -0
- package/dist/agent-SATQ3WZ3.js +126 -0
- package/dist/agents-44CRJGM7.cjs +18 -0
- package/dist/agents-NN4ZAJ7R.js +18 -0
- package/dist/agents-new-6D6G4QS6.cjs +17 -0
- package/dist/agents-new-7GAQ25EK.js +17 -0
- package/dist/{autoSkill-EFMK6WU6.js → autoSkill-66PKCYTW.js} +2 -2
- package/dist/autoSkill-VQLGBELN.cjs +20 -0
- package/dist/automode-45DWV4TN.cjs +10 -0
- package/dist/{automode-BMYSRM34.js → automode-BUF3VGXU.js} +2 -2
- package/dist/chrome-Q2U73HZB.cjs +50 -0
- package/dist/chrome-Q54OALOK.cjs +21 -0
- package/dist/{chrome-NHJ44WUN.js → chrome-Y3T7EIHG.js} +2 -2
- package/dist/chrome-ZNJ46OYW.js +21 -0
- package/dist/{chunk-D2OSPLYC.cjs → chunk-22SCR3EV.cjs} +2 -2
- package/dist/chunk-26G7YGOW.js +367 -0
- package/dist/{chunk-75EDROHL.cjs → chunk-2ESQR35E.cjs} +10 -10
- package/dist/{chunk-HKYZSUQ5.js → chunk-2IW5YFJ4.js} +4 -4
- package/dist/{chunk-JP3YHTQ2.cjs → chunk-3ICORF7M.cjs} +4 -4
- package/dist/{chunk-4256YRCO.cjs → chunk-3UC6DMFI.cjs} +30 -17
- package/dist/{chunk-6GUODJKM.cjs → chunk-3UHRCHKB.cjs} +23 -23
- package/dist/{chunk-HXJEGMGB.js → chunk-3ZOOH44N.js} +2 -2
- package/dist/{chunk-7RFJB75Y.js → chunk-44ZWOBTI.js} +9 -9
- package/dist/{chunk-CCVMREXI.js → chunk-4567QNRB.js} +32 -8
- package/dist/chunk-45CHNQM6.cjs +517 -0
- package/dist/{chunk-6NVAK6CK.js → chunk-4E7SHPNQ.js} +2 -2
- package/dist/{chunk-XGMI6IYB.cjs → chunk-4XFHP2SN.cjs} +7 -7
- package/dist/chunk-4XVLNOFA.js +360 -0
- package/dist/{chunk-D6GZBSOX.js → chunk-575PXZX7.js} +1 -1
- package/dist/{chunk-HJIXWGQZ.js → chunk-5A7ZL64N.js} +1 -1
- package/dist/{chunk-ROLA6EFO.cjs → chunk-5GCQ5UMV.cjs} +14 -14
- package/dist/{chunk-3DDL2E55.cjs → chunk-5SFV2NCY.cjs} +10 -10
- package/dist/chunk-5ZNYX4VH.cjs +71 -0
- package/dist/{chunk-PDHT7LQS.cjs → chunk-63ANVAOJ.cjs} +3 -3
- package/dist/{chunk-GWO66KBI.js → chunk-65LRPW5W.js} +1 -1
- package/dist/{chunk-IAGCRVJ3.js → chunk-6AYJCDTA.js} +14 -9
- package/dist/{chunk-A7HHCIDQ.js → chunk-6HF6XSCC.js} +2 -2
- package/dist/{chunk-47PHDKNW.cjs → chunk-6JWCGQJU.cjs} +6 -6
- package/dist/chunk-6OECOAK5.cjs +360 -0
- package/dist/{chunk-RBHANOYY.js → chunk-7DJJGKM6.js} +47 -3
- package/dist/{chunk-37M5UM6I.js → chunk-7IRQ7JEH.js} +1 -1
- package/dist/chunk-7MY4JHER.js +27 -0
- package/dist/{chunk-ZR46OJNZ.js → chunk-7PJKTSRN.js} +3 -3
- package/dist/{chunk-AC7DZ6SK.cjs → chunk-7PT646AL.cjs} +3 -3
- package/dist/{chunk-TKKN34TV.js → chunk-7WAUCLLQ.js} +3 -3
- package/dist/{chunk-DPSIGY6L.cjs → chunk-7XTUL7ZD.cjs} +9 -9
- package/dist/{chunk-GBMDFWJX.cjs → chunk-AE2ILW25.cjs} +13 -13
- package/dist/{chunk-BQ22N3TX.cjs → chunk-AOKXYGBQ.cjs} +27 -22
- package/dist/{chunk-REMGR23V.cjs → chunk-AQ5PVHOC.cjs} +7 -2
- package/dist/{chunk-AUYSIEVV.cjs → chunk-AZ47LKD5.cjs} +3 -3
- package/dist/chunk-B76FJKEJ.cjs +184 -0
- package/dist/{chunk-XV2HXRHX.js → chunk-BP37FVBM.js} +3 -3
- package/dist/{chunk-JIMSII7R.js → chunk-C46B72VK.js} +57 -10
- package/dist/{chunk-L4F7SUYL.js → chunk-C5QIQQ37.js} +3 -3
- package/dist/{chunk-AUFNACED.js → chunk-CCIDL4SA.js} +7094 -6126
- package/dist/{chunk-OV3PVUYN.js → chunk-CECH6QQP.js} +11 -11
- package/dist/{chunk-CH2J4PVE.cjs → chunk-CK4HAHVY.cjs} +13 -13
- package/dist/{chunk-Q2IL4DDI.cjs → chunk-CO2AADYU.cjs} +19 -14
- package/dist/{chunk-7JLT2VNW.cjs → chunk-CRTCZ4WL.cjs} +7533 -6565
- package/dist/{chunk-5JFTY3VU.js → chunk-CSTUTDTH.js} +2 -1
- package/dist/{chunk-DIZTWFVR.cjs → chunk-D546G7DA.cjs} +209 -55
- package/dist/{chunk-7HPWMALN.js → chunk-DGBPWODD.js} +1 -1
- package/dist/{chunk-RBZ7AFX7.cjs → chunk-DHUQZ53B.cjs} +2 -2
- package/dist/{chunk-U4C3HW6P.js → chunk-DNSD7DVJ.js} +2 -2
- package/dist/{chunk-SOLBYSLY.cjs → chunk-DSSCERHI.cjs} +2 -2
- package/dist/{chunk-OPNI6O7F.cjs → chunk-EA2MS25U.cjs} +4 -4
- package/dist/{chunk-E46DJH5S.js → chunk-EEHWALXA.js} +94 -3
- package/dist/{chunk-CFFE4VA3.js → chunk-EYHKL4QC.js} +1 -1
- package/dist/{chunk-FGT6KK6T.js → chunk-FBQJZKFX.js} +3 -3
- package/dist/{chunk-I24CWKKK.js → chunk-FFHSCM5M.js} +3 -3
- package/dist/{chunk-TXPSTCG7.cjs → chunk-GAOPJ5S3.cjs} +8 -8
- package/dist/{chunk-ARBEHFCG.js → chunk-GSDV75A5.js} +1 -1
- package/dist/{chunk-Z3XSSF7B.js → chunk-H426KOGY.js} +1 -1
- package/dist/{chunk-WRTXCQ3V.cjs → chunk-HC2Q6A3E.cjs} +858 -182
- package/dist/{chunk-IGMPWJ2I.cjs → chunk-HG3ZASBH.cjs} +8 -8
- package/dist/chunk-HK5A54AV.cjs +280 -0
- package/dist/{chunk-2HOLOHVK.js → chunk-HSWWM6AM.js} +136 -15
- package/dist/chunk-HTU4W3GB.js +183 -0
- package/dist/{chunk-5CMYEM3R.cjs → chunk-HVCIB4SW.cjs} +3 -3
- package/dist/chunk-HXHE2KAO.js +385 -0
- package/dist/{chunk-NMQ47RCG.js → chunk-HZWU6IO3.js} +5 -2
- package/dist/{chunk-ZPD2AO3U.js → chunk-I2ZK3AOD.js} +2 -2
- package/dist/{chunk-3UT7R3XV.js → chunk-IEPLQ47J.js} +61 -5
- package/dist/{chunk-3PXKRVCW.js → chunk-JB3JCYBJ.js} +7 -2
- package/dist/chunk-JCUHCH37.cjs +247 -0
- package/dist/{chunk-VBOFPU5M.cjs → chunk-JM3ZTQUK.cjs} +13 -9
- package/dist/{chunk-WZV6UVPY.js → chunk-JMJRFSNJ.js} +1 -1
- package/dist/{chunk-QKP772OZ.js → chunk-JPFRI4L4.js} +756 -80
- package/dist/{chunk-MOJ7ADW4.cjs → chunk-JV5HVCHU.cjs} +2 -2
- package/dist/{chunk-LN7D3EJZ.js → chunk-KA2U6MY2.js} +4 -3
- package/dist/{chunk-E26KKI46.cjs → chunk-KASXKDF2.cjs} +3 -1
- package/dist/chunk-KJ26T7GM.cjs +367 -0
- package/dist/chunk-KM7R5YPS.cjs +385 -0
- package/dist/{chunk-5F6ZKSHO.js → chunk-KMP6Y3LJ.js} +1 -1
- package/dist/chunk-KWXGDSYT.js +184 -0
- package/dist/{chunk-LDJQ5QHG.cjs → chunk-L46OUKW5.cjs} +15 -15
- package/dist/{chunk-Z4LIPMPM.js → chunk-L6OH44HL.js} +13 -9
- package/dist/chunk-LANGD5CO.js +280 -0
- package/dist/{chunk-CBFH2J3O.js → chunk-LEZEWKPA.js} +150 -7
- package/dist/{chunk-FQAVGSPW.js → chunk-M5DK524Z.js} +2 -2
- package/dist/{chunk-7LWQCE4Y.cjs → chunk-M7B7RRBK.cjs} +72 -25
- package/dist/{chunk-BWF4VDYE.js → chunk-MANJ67D3.js} +2 -2
- package/dist/{chunk-PHJO5YAL.cjs → chunk-MGNXABSU.cjs} +9 -9
- package/dist/{chunk-62RTC3XX.js → chunk-MMKZSJUN.js} +1 -1
- package/dist/{chunk-3KLSNNRW.cjs → chunk-MQQH4XQH.cjs} +4 -4
- package/dist/{chunk-HS4USDND.cjs → chunk-MZN6JBRZ.cjs} +2 -2
- package/dist/{chunk-AT7OWLY5.js → chunk-NB6M6ESM.js} +1 -1
- package/dist/{chunk-TQ33WBY5.cjs → chunk-NHWHEW7M.cjs} +2 -1
- package/dist/chunk-NQZH5CR2.cjs +468 -0
- package/dist/{chunk-2CGE7ZV3.cjs → chunk-NV6LCD2I.cjs} +119 -28
- package/dist/chunk-NVATU4V6.cjs +44 -0
- package/dist/{chunk-DLP436GI.js → chunk-NZ3ZWLUW.js} +2 -2
- package/dist/{chunk-IEXKKKOF.cjs → chunk-NZ7GCK7Y.cjs} +23 -23
- package/dist/{chunk-MQESBFBZ.cjs → chunk-NZQFKXM3.cjs} +21 -20
- package/dist/{chunk-QQ7PANOP.js → chunk-O5GI6SR3.js} +1 -1
- package/dist/{chunk-J5ADZN6V.cjs → chunk-OCATAKXV.cjs} +20 -20
- package/dist/{chunk-JYKPWK5O.js → chunk-OIGYWOL6.js} +1 -1
- package/dist/{chunk-O6TQP7U7.cjs → chunk-ONVYXTUT.cjs} +3 -3
- package/dist/{chunk-MPULXVC4.cjs → chunk-OV3T5MUH.cjs} +11 -11
- package/dist/{chunk-DMRXF5DU.js → chunk-P4FUTSVK.js} +3 -3
- package/dist/{chunk-MXVIDIC6.cjs → chunk-P6SLT2F4.cjs} +2 -2
- package/dist/{chunk-BL2UC7HC.js → chunk-PGFLPURU.js} +1 -1
- package/dist/{chunk-CWINVFRI.cjs → chunk-PIXQ2AVM.cjs} +17 -17
- package/dist/{chunk-MO4KP6XS.cjs → chunk-PNIAIOMZ.cjs} +5 -5
- package/dist/{chunk-HQWQZML5.cjs → chunk-PQBYFEBL.cjs} +2 -2
- package/dist/{chunk-UGFVM77J.cjs → chunk-PSAH4ZQB.cjs} +2 -2
- package/dist/{chunk-Y3M2DABP.js → chunk-PTTZI4QZ.js} +4 -4
- package/dist/{chunk-Q6AC3PHY.cjs → chunk-PY73W5MQ.cjs} +4 -4
- package/dist/{chunk-B5CGDNMR.js → chunk-PZZMIYII.js} +3 -3
- package/dist/{chunk-VRMZO6TB.js → chunk-Q3BS6FPM.js} +7 -6
- package/dist/chunk-QBYGMMDD.js +517 -0
- package/dist/{chunk-3LJJG5YY.cjs → chunk-QLZOMZO5.cjs} +4 -3
- package/dist/{chunk-3S563FNF.cjs → chunk-QQ64HEHP.cjs} +31 -31
- package/dist/{chunk-TBOLJDUG.js → chunk-QRQF3556.js} +12 -7
- package/dist/{chunk-ZZ63NW7A.cjs → chunk-RBXBH6EB.cjs} +17 -17
- package/dist/{chunk-PUD76XQT.cjs → chunk-RFUKZIJF.cjs} +5 -5
- package/dist/chunk-RS2E32YB.js +71 -0
- package/dist/{chunk-7MU7LWF3.cjs → chunk-S5JNQIGL.cjs} +5 -5
- package/dist/{chunk-BFQDQRDE.js → chunk-S5QKRA2V.js} +2 -2
- package/dist/{chunk-IKUMVBCW.cjs → chunk-SD3NTC7D.cjs} +48 -4
- package/dist/{chunk-PQLKJCIE.js → chunk-SDLY4X3G.js} +2 -2
- package/dist/{chunk-VKBIE6I6.js → chunk-SFFEKZGC.js} +2 -2
- package/dist/{chunk-TWQDAUZU.js → chunk-SHRLFX6F.js} +3 -1
- package/dist/{chunk-UEIXJG45.js → chunk-SNDDZG5H.js} +88 -72
- package/dist/{chunk-AOKCI722.cjs → chunk-SOVR7S3T.cjs} +2 -2
- package/dist/{chunk-M4KNC5BQ.js → chunk-SPQ7QIQ6.js} +1 -1
- package/dist/{chunk-QCHIDZBA.js → chunk-SRMGWMQO.js} +1 -1
- package/dist/{chunk-ZHJ7JGME.cjs → chunk-SVVP4UUZ.cjs} +11 -11
- package/dist/{chunk-CHI52KFR.cjs → chunk-SY2P3Z5W.cjs} +150 -7
- package/dist/chunk-SZD45IDG.js +468 -0
- package/dist/{chunk-VGEV44V2.cjs → chunk-TE4SYTWR.cjs} +189 -28
- package/dist/{chunk-YV63VW4K.js → chunk-TR6NECEZ.js} +1 -1
- package/dist/{chunk-GZ6DV2UG.js → chunk-TYBPTKFT.js} +1 -1
- package/dist/{chunk-5VHP6HDQ.js → chunk-U2QUMKCB.js} +1 -1
- package/dist/{chunk-6HH236FV.cjs → chunk-U6PLSPMD.cjs} +2 -2
- package/dist/{chunk-EZJHLOWP.js → chunk-UWZ4G3SQ.js} +20 -7
- package/dist/{chunk-UXLW45ZE.cjs → chunk-V3SZLWEQ.cjs} +25 -90
- package/dist/chunk-V4HGZSKQ.cjs +183 -0
- package/dist/{chunk-2QL6MNXG.js → chunk-V5ELP2XE.js} +6 -6
- package/dist/{chunk-N6O3XUZ2.cjs → chunk-VKOXFT4L.cjs} +2 -2
- package/dist/{chunk-J2K57QM7.cjs → chunk-VLGGMQUN.cjs} +6 -6
- package/dist/{chunk-HSCUPEA4.cjs → chunk-VQHSYAPZ.cjs} +11 -11
- package/dist/{chunk-DEQVRSV5.cjs → chunk-W5QLA6WP.cjs} +8 -8
- package/dist/chunk-WJYFLQ7G.cjs +27 -0
- package/dist/{chunk-MX75JYIY.js → chunk-WNJXIACY.js} +3 -3
- package/dist/{chunk-OHWMWKJQ.js → chunk-WPE2XHVX.js} +1 -1
- package/dist/{chunk-O64I2GYI.js → chunk-X3TI5TJJ.js} +1 -1
- package/dist/{chunk-46C73ZKK.cjs → chunk-X5P6QQOB.cjs} +66 -10
- package/dist/{chunk-TJNBASFD.cjs → chunk-X7XMITIL.cjs} +8 -8
- package/dist/{chunk-E6GFD7VR.cjs → chunk-XNIMSVS6.cjs} +11 -11
- package/dist/{chunk-WGLBC5AY.cjs → chunk-XW3XCK4E.cjs} +4 -4
- package/dist/{chunk-OM24WXEE.js → chunk-XZVDYC5U.js} +1 -1
- package/dist/{chunk-UWFG2R2I.cjs → chunk-Y5BDE24P.cjs} +33 -9
- package/dist/{chunk-GGLKUENP.js → chunk-YC5OBZQU.js} +161 -7
- package/dist/{chunk-JJ4KA7HK.cjs → chunk-YISPVAXO.cjs} +371 -250
- package/dist/{chunk-SWCQM52V.js → chunk-YQDI753V.js} +4 -4
- package/dist/{chunk-KNTUI4TZ.cjs → chunk-YWH55BWK.cjs} +9 -6
- package/dist/{chunk-ACDQGA4Z.js → chunk-YXM6SA7P.js} +7 -72
- package/dist/{chunk-3GUEUCZK.js → chunk-ZNGRLCFQ.js} +2 -0
- package/dist/{chunk-LQBONA55.cjs → chunk-ZNYZB7XY.cjs} +2 -0
- package/dist/{chunk-XIVFAD2L.js → chunk-ZPLCAXJW.js} +172 -11
- package/dist/chunk-ZUYYHKQA.js +44 -0
- package/dist/clear-QJXU25IF.cjs +12 -0
- package/dist/{clear-OFLFQ3MR.js → clear-Y5TO3RZA.js} +2 -2
- package/dist/communityInstaller-LXMVKVAV.cjs +22 -0
- package/dist/{communityInstaller-COB2KTOW.js → communityInstaller-RVL4STPS.js} +6 -6
- package/dist/completion-JX4T2ONW.cjs +17 -0
- package/dist/{completion-PT4VM2H2.js → completion-SE3XYG74.js} +5 -5
- package/dist/config-3224PRW4.cjs +21 -0
- package/dist/{config-R4O7GBTY.js → config-7KPHKFTP.js} +4 -3
- package/dist/{constants-HVCHVQAF.js → constants-EJFAWJQI.js} +1 -1
- package/dist/constants-MCCGUU5F.cjs +21 -0
- package/dist/{export-3PK3VFCE.js → export-BJVIDZC4.js} +5 -5
- package/dist/export-KU4557HK.cjs +15 -0
- package/dist/feature-K3LG5IJP.cjs +14 -0
- package/dist/feature-V4JF5TNJ.js +14 -0
- package/dist/features-5OJTLKS7.js +23 -0
- package/dist/features-VCBJQXCX.cjs +23 -0
- package/dist/feedback-D4437VE4.js +18 -0
- package/dist/feedback-VZPEHGFY.cjs +18 -0
- package/dist/go-X4E6BCD6.js +12 -0
- package/dist/go-XREVFS5I.cjs +12 -0
- package/dist/goal-4M3J6JS2.cjs +16 -0
- package/dist/goal-EI66BV7W.js +16 -0
- package/dist/help-GGFS7WHY.cjs +12 -0
- package/dist/{help-X3OAZ3CY.js → help-MLIROWKM.js} +2 -2
- package/dist/{history-YKFPHBJN.js → history-GQJ6RZD6.js} +2 -2
- package/dist/history-J4LUIOSI.cjs +14 -0
- package/dist/hooks-FSRIUS6A.cjs +18 -0
- package/dist/{hooks-7TA4PIIB.js → hooks-PPFHCF7T.js} +6 -6
- package/dist/i18n-CI6VFXL5.cjs +33 -0
- package/dist/{i18n-2KBUU7XL.js → i18n-Q7UZJRPL.js} +1 -1
- package/dist/ide-BUSVE54P.js +15 -0
- package/dist/ide-YR27BPGM.cjs +15 -0
- package/dist/{import-4CHYLS4K.js → import-3VBKI6BN.js} +3 -3
- package/dist/{import-I7T4ZHYL.cjs → import-C7S6UJMW.cjs} +3 -3
- package/dist/import-DBK4OCDF.cjs +10 -0
- package/dist/{import-JWPYKXCZ.js → import-U47DXCA7.js} +2 -2
- package/dist/index.cjs +267 -170
- package/dist/index.d.cts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +165 -68
- package/dist/init-OXTYS72D.cjs +10 -0
- package/dist/{init-262MWZV4.js → init-Q2O4R42R.js} +2 -2
- package/dist/{inputPrompt-YGBHDUEP.js → inputPrompt-3CFZDUBH.js} +2 -2
- package/dist/inputPrompt-JMACL4EB.cjs +90 -0
- package/dist/language-EK3M6UBV.cjs +22 -0
- package/dist/language-Q3RUGGOW.js +22 -0
- package/dist/learn-3DSX7DYG.cjs +23 -0
- package/dist/learn-OPOH5L43.js +23 -0
- package/dist/login-GST7MWXJ.cjs +27 -0
- package/dist/login-Q7DZKAX4.js +27 -0
- package/dist/logout-2G7OUK7I.cjs +24 -0
- package/dist/logout-FNBBL2UI.js +24 -0
- package/dist/{mcp-5O6PUL4G.js → mcp-AH3MMUBU.js} +7 -6
- package/dist/mcp-DW7R63IB.cjs +21 -0
- package/dist/{mcp-install-6XWXLFVY.js → mcp-install-222PCKSW.js} +9 -8
- package/dist/{mcp-install-P6DHES7V.cjs → mcp-install-IA4ZS2SV.cjs} +14 -13
- package/dist/memory-6NX3DAIY.cjs +10 -0
- package/dist/{memory-Q54CESNM.js → memory-VB46T5H3.js} +2 -2
- package/dist/model-64NAELFS.cjs +10 -0
- package/dist/{model-6AJ77PJG.js → model-SJJG64AM.js} +2 -2
- package/dist/new-DU5SOOOY.cjs +12 -0
- package/dist/{new-ZXHEWC2S.js → new-ERZ5C6CN.js} +2 -2
- package/dist/onboarding-2U2BV2KE.cjs +36 -0
- package/dist/{onboarding-JYNMK6NI.js → onboarding-ZQXMPSMJ.js} +14 -13
- package/dist/{permissions-YHJMVA6L.js → permissions-7ACNFK7A.js} +2 -2
- package/dist/permissions-GSNNV7RJ.cjs +10 -0
- package/dist/{quit-GWTNHQSP.js → quit-WY6T267G.js} +2 -2
- package/dist/quit-XIRE2KRE.cjs +10 -0
- package/dist/{registry-34GL6BNJ.js → registry-4DXUDKJN.js} +1 -1
- package/dist/{registry-V24W7YK6.cjs → registry-UEO3ETZ7.cjs} +21 -21
- package/dist/resume-RQZ3WXBP.cjs +17 -0
- package/dist/resume-XSXZMDMD.js +17 -0
- package/dist/{rpc-S3DGW6KV.js → rpc-XH7QLN4H.js} +251 -107
- package/dist/{rpc-NPS3PU4O.cjs → rpc-YF54T7JU.cjs} +347 -203
- package/dist/search-VXXFGZWU.cjs +21 -0
- package/dist/search-YAWGX7P7.js +21 -0
- package/dist/{sessions-IYAXMK23.js → sessions-NJYHJOEL.js} +2 -2
- package/dist/sessions-OSG3UJEZ.cjs +10 -0
- package/dist/settings-SO2UIGWV.cjs +42 -0
- package/dist/{settings-55BNW6BF.js → settings-ZXUQH3DO.js} +17 -8
- package/dist/setup-KG7EGKF5.js +30 -0
- package/dist/setup-RSOPCQ57.cjs +30 -0
- package/dist/share-WFAGZ5PY.js +17 -0
- package/dist/share-ZU3SGACF.cjs +17 -0
- package/dist/skills-KBVAQAD2.cjs +29 -0
- package/dist/{skills-VWOMV3CR.js → skills-NBTNDVAY.js} +8 -8
- package/dist/{skills-MVIZNHT4.js → skills-OB6RDW7D.js} +9 -9
- package/dist/{skills-GGMZOVIE.cjs → skills-ZROBG3RZ.cjs} +10 -10
- package/dist/{skills-install-QBA5RCV6.js → skills-install-BHTIEMKH.js} +7 -7
- package/dist/{skills-install-VTAMCNNY.cjs → skills-install-ILX6QVEF.cjs} +15 -15
- package/dist/skills-new-B45VQ2PP.cjs +18 -0
- package/dist/skills-new-YMRP2HNO.js +18 -0
- package/dist/slashCommands-53VYIBJU.js +105 -0
- package/dist/slashCommands-BG2RGGZ6.cjs +105 -0
- package/dist/status-CQ2IUOVK.cjs +24 -0
- package/dist/status-E7IGNVPC.js +24 -0
- package/dist/{sync-7OKF6636.js → sync-7C25MOT2.js} +6 -5
- package/dist/{sync-7BILIQHP.js → sync-OCJN4ZSO.js} +3 -3
- package/dist/sync-XRP46IVG.cjs +40 -0
- package/dist/sync-ZMFVE7T4.cjs +22 -0
- package/dist/{teammate-J6PHGL23.cjs → teammate-D77B6QRT.cjs} +9 -8
- package/dist/{teammate-GZQSCIMS.js → teammate-EZCMHOIL.js} +8 -7
- package/dist/templates-ARG2VRWW.cjs +11 -0
- package/dist/templates-UGVZV3KJ.js +11 -0
- package/dist/theme-KKRDE6P7.cjs +22 -0
- package/dist/theme-XF7XIWBQ.js +22 -0
- package/dist/ui/questionModal.cjs +6 -6
- package/dist/ui/questionModal.js +5 -5
- package/dist/{undo-SZEHLX7X.js → undo-GNUTFXCW.js} +2 -2
- package/dist/undo-U4KN7QQM.cjs +10 -0
- package/dist/usage-QSTNSDAO.js +24 -0
- package/dist/usage-YDEMQBNQ.cjs +24 -0
- package/package.json +7 -2
- package/dist/AgentRegistry-EGBDIUAK.cjs +0 -10
- package/dist/CommunitySkillsCache-2OIUV227.cjs +0 -8
- package/dist/LearnAdvisor-46FG2XIP.js +0 -9
- package/dist/LearnAdvisor-XBRDNAGH.cjs +0 -9
- package/dist/MemoryManager-34L4YOKA.cjs +0 -8
- package/dist/NVIDIAProvider-MVTL62PR.cjs +0 -14
- package/dist/PermissionManager-5OOJ7FAT.cjs +0 -11
- package/dist/ProviderFactory-C3YPXTDD.cjs +0 -11
- package/dist/SessionManager-WAPTFMDO.cjs +0 -10
- package/dist/SkillsRegistry-7AJP74GJ.cjs +0 -9
- package/dist/SubAgent-FDIH3DXB.js +0 -11
- package/dist/SubAgent-HVL2ICVZ.cjs +0 -11
- package/dist/SyncApiClient-VMBOLQ6H.cjs +0 -11
- package/dist/about-FCAX37YC.cjs +0 -14
- package/dist/actionExecutor-4YBMR3YH.cjs +0 -24
- package/dist/add-dir-7SS6KSH5.cjs +0 -11
- package/dist/agent-DMRUFU4M.cjs +0 -116
- package/dist/agent-WCJEYQJT.js +0 -116
- package/dist/agents-CHROO3VU.cjs +0 -17
- package/dist/agents-UVDUL65K.js +0 -17
- package/dist/agents-new-AUBWSOXP.js +0 -17
- package/dist/agents-new-Y562WC47.cjs +0 -17
- package/dist/autoSkill-YOLLFTP2.cjs +0 -20
- package/dist/automode-DBLKTTKD.cjs +0 -10
- package/dist/chrome-ATC4OO5I.cjs +0 -20
- package/dist/chrome-O62WXV7F.js +0 -20
- package/dist/chrome-XHJLCO4M.cjs +0 -50
- package/dist/chunk-6XVVIY54.cjs +0 -256
- package/dist/chunk-AU6JAGZJ.cjs +0 -231
- package/dist/chunk-VDWJMWDF.js +0 -256
- package/dist/clear-33TWQ2ES.cjs +0 -12
- package/dist/communityInstaller-TWMGPSYM.cjs +0 -22
- package/dist/completion-IIZMHXYP.cjs +0 -17
- package/dist/config-KL6WU7R2.cjs +0 -20
- package/dist/constants-RLMJ5D5P.cjs +0 -21
- package/dist/export-WLGNWEMJ.cjs +0 -15
- package/dist/feedback-G635NCLJ.js +0 -18
- package/dist/feedback-LLMK3TZH.cjs +0 -18
- package/dist/help-BAXLP2M2.cjs +0 -12
- package/dist/history-6HOJSEMT.cjs +0 -14
- package/dist/hooks-XVFU67T2.cjs +0 -18
- package/dist/i18n-MUJMKTFM.cjs +0 -33
- package/dist/ide-CCQ33PGC.cjs +0 -15
- package/dist/ide-VLVFBZ5F.js +0 -15
- package/dist/import-J46F54JY.cjs +0 -10
- package/dist/init-EE5Y7RBL.cjs +0 -10
- package/dist/inputPrompt-IIFKCX5Q.cjs +0 -90
- package/dist/language-CVLPB7OV.js +0 -21
- package/dist/language-ZTWFHUSV.cjs +0 -21
- package/dist/learn-PON7I5QS.js +0 -23
- package/dist/learn-XLRSVNA3.cjs +0 -23
- package/dist/login-223QTGBG.cjs +0 -26
- package/dist/login-6IKTBUBY.js +0 -26
- package/dist/logout-RN2AG6SI.js +0 -23
- package/dist/logout-U3M4FFX7.cjs +0 -23
- package/dist/mcp-NUQ76QQB.cjs +0 -20
- package/dist/memory-CYMDQ2YC.cjs +0 -10
- package/dist/model-IDRCKDML.cjs +0 -10
- package/dist/new-7LEWOUF2.cjs +0 -12
- package/dist/onboarding-FXX7YHSJ.cjs +0 -35
- package/dist/permissions-YBNSANIA.cjs +0 -10
- package/dist/quit-B43SJ6E4.cjs +0 -10
- package/dist/resume-DYVOQN5L.cjs +0 -16
- package/dist/resume-M25UQKOX.js +0 -16
- package/dist/search-CPX4PWHP.js +0 -20
- package/dist/search-VUF3M4N3.cjs +0 -20
- package/dist/sessions-JODKER5D.cjs +0 -10
- package/dist/settings-BKTS7OMC.cjs +0 -33
- package/dist/setup-IRC5HQG2.js +0 -29
- package/dist/setup-MMQ7TWOP.cjs +0 -29
- package/dist/share-6JRQECAH.cjs +0 -17
- package/dist/share-YM5MJKMO.js +0 -17
- package/dist/skills-LWSOKOSH.cjs +0 -29
- package/dist/skills-new-GPL46YV2.js +0 -18
- package/dist/skills-new-L5BEZN5V.cjs +0 -18
- package/dist/slashCommands-FBPCIWM5.cjs +0 -95
- package/dist/slashCommands-FCWY5DXW.js +0 -95
- package/dist/status-3B5SDZPL.js +0 -17
- package/dist/status-TTGRF6NC.cjs +0 -17
- package/dist/sync-77CXVVTK.cjs +0 -21
- package/dist/sync-EH4K5U3N.cjs +0 -40
- package/dist/theme-64BYGJ57.cjs +0 -21
- package/dist/theme-YJE6HEON.js +0 -21
- package/dist/undo-PRTEGL2J.cjs +0 -10
package/dist/index.cjs
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } 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
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await 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;
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkPNIAIOMZcjs = require('./chunk-PNIAIOMZ.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
var _chunkQLZOMZO5cjs = require('./chunk-QLZOMZO5.cjs');
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
|
|
@@ -14,12 +15,11 @@ var _chunkMO4KP6XScjs = require('./chunk-MO4KP6XS.cjs');
|
|
|
14
15
|
|
|
15
16
|
|
|
16
17
|
|
|
17
|
-
var _chunk7LWQCE4Ycjs = require('./chunk-7LWQCE4Y.cjs');
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _chunkM7B7RRBKcjs = require('./chunk-M7B7RRBK.cjs');
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
var _chunkXDLH4EDLcjs = require('./chunk-XDLH4EDL.cjs');
|
|
@@ -32,40 +32,42 @@ var _chunkXDLH4EDLcjs = require('./chunk-XDLH4EDL.cjs');
|
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
35
|
-
var
|
|
35
|
+
var _chunkOV3T5MUHcjs = require('./chunk-OV3T5MUH.cjs');
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
|
|
39
|
-
var
|
|
39
|
+
var _chunkCO2AADYUcjs = require('./chunk-CO2AADYU.cjs');
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
|
|
43
43
|
var _chunkFMB3TSWPcjs = require('./chunk-FMB3TSWP.cjs');
|
|
44
44
|
|
|
45
45
|
|
|
46
|
-
var _chunkIKUMVBCWcjs = require('./chunk-IKUMVBCW.cjs');
|
|
47
46
|
|
|
47
|
+
var _chunkSD3NTC7Dcjs = require('./chunk-SD3NTC7D.cjs');
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
|
|
50
|
+
var _chunkAQ5PVHOCcjs = require('./chunk-AQ5PVHOC.cjs');
|
|
50
51
|
require('./chunk-3OF56EMA.cjs');
|
|
51
|
-
require('./chunk-
|
|
52
|
-
require('./chunk-
|
|
53
|
-
require('./chunk-
|
|
52
|
+
require('./chunk-CK4HAHVY.cjs');
|
|
53
|
+
require('./chunk-YWH55BWK.cjs');
|
|
54
|
+
require('./chunk-NHWHEW7M.cjs');
|
|
54
55
|
|
|
55
56
|
|
|
56
57
|
|
|
57
58
|
|
|
58
59
|
|
|
59
|
-
var
|
|
60
|
-
require('./chunk-
|
|
60
|
+
var _chunkX5P6QQOBcjs = require('./chunk-X5P6QQOB.cjs');
|
|
61
|
+
require('./chunk-P6SLT2F4.cjs');
|
|
61
62
|
require('./chunk-3EDDDZS2.cjs');
|
|
63
|
+
require('./chunk-HK5A54AV.cjs');
|
|
62
64
|
require('./chunk-YWTIXHU6.cjs');
|
|
63
65
|
require('./chunk-2VHB43IX.cjs');
|
|
64
66
|
|
|
65
67
|
|
|
66
68
|
|
|
67
69
|
|
|
68
|
-
var
|
|
70
|
+
var _chunkKASXKDF2cjs = require('./chunk-KASXKDF2.cjs');
|
|
69
71
|
require('./chunk-XF2WIKHR.cjs');
|
|
70
72
|
|
|
71
73
|
|
|
@@ -74,7 +76,7 @@ var _chunkWGNMOVMTcjs = require('./chunk-WGNMOVMT.cjs');
|
|
|
74
76
|
|
|
75
77
|
|
|
76
78
|
|
|
77
|
-
var
|
|
79
|
+
var _chunkSY2P3Z5Wcjs = require('./chunk-SY2P3Z5W.cjs');
|
|
78
80
|
require('./chunk-3HT76LNN.cjs');
|
|
79
81
|
|
|
80
82
|
// src/index.ts
|
|
@@ -92,7 +94,7 @@ var _child_process = require('child_process');
|
|
|
92
94
|
var _crypto = require('crypto'); var _crypto2 = _interopRequireDefault(_crypto);
|
|
93
95
|
var _os = require('os'); var _os2 = _interopRequireDefault(_os);
|
|
94
96
|
var PING_INTERVAL_MS = 45 * 60 * 1e3;
|
|
95
|
-
var PING_CACHE_FILE = _path2.default.join(
|
|
97
|
+
var PING_CACHE_FILE = _path2.default.join(_chunkKASXKDF2cjs.AUTOHAND_HOME, "last-ping.json");
|
|
96
98
|
var API_BASE_URL = process.env.AUTOHAND_API_URL || "https://api.autohand.ai";
|
|
97
99
|
var REQUEST_TIMEOUT_MS = 5e3;
|
|
98
100
|
var PingService = (_class = class {
|
|
@@ -113,12 +115,12 @@ var PingService = (_class = class {
|
|
|
113
115
|
*/
|
|
114
116
|
getOrCreateDeviceId() {
|
|
115
117
|
try {
|
|
116
|
-
_fsextra2.default.ensureDirSync(_path2.default.dirname(
|
|
117
|
-
if (_fsextra2.default.existsSync(
|
|
118
|
-
return _fsextra2.default.readFileSync(
|
|
118
|
+
_fsextra2.default.ensureDirSync(_path2.default.dirname(_chunkKASXKDF2cjs.AUTOHAND_FILES.deviceId));
|
|
119
|
+
if (_fsextra2.default.existsSync(_chunkKASXKDF2cjs.AUTOHAND_FILES.deviceId)) {
|
|
120
|
+
return _fsextra2.default.readFileSync(_chunkKASXKDF2cjs.AUTOHAND_FILES.deviceId, "utf8").trim();
|
|
119
121
|
}
|
|
120
122
|
const id = _crypto2.default.randomUUID();
|
|
121
|
-
_fsextra2.default.writeFileSync(
|
|
123
|
+
_fsextra2.default.writeFileSync(_chunkKASXKDF2cjs.AUTOHAND_FILES.deviceId, id);
|
|
122
124
|
return id;
|
|
123
125
|
} catch (e) {
|
|
124
126
|
return _crypto2.default.randomUUID();
|
|
@@ -385,35 +387,35 @@ function buildTmuxLaunchCommand(argv) {
|
|
|
385
387
|
// src/browser/cliCommand.ts
|
|
386
388
|
|
|
387
389
|
function registerChromeCommand(program2) {
|
|
388
|
-
program2.command("chrome").description("install and configure the Autohand Chrome extension bridge").command("install").description("install the native messaging bridge for Chrome-compatible browsers").option("--browser <browser>", "target browser: chrome, chromium, brave, edge, or all", "all").option("--extension-id <id>", "installed Chrome extension id to use for direct handoff").option("--install-url <url>", "fallback install/continue URL",
|
|
389
|
-
const config = await
|
|
390
|
-
const launchSpec =
|
|
391
|
-
const browsers =
|
|
390
|
+
program2.command("chrome").description("install and configure the Autohand Chrome extension bridge").command("install").description("install the native messaging bridge for Chrome-compatible browsers").option("--browser <browser>", "target browser: chrome, chromium, brave, edge, or all", "all").option("--extension-id <id>", "installed Chrome extension id to use for direct handoff").option("--install-url <url>", "fallback install/continue URL", _chunkOV3T5MUHcjs.DEFAULT_CHROME_INSTALL_URL).option("--cli-path <path>", "CLI binary path to register in the native host").option("--open", "open the install/continue page after installation", false).action(async (options) => {
|
|
391
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, void 0, process.cwd());
|
|
392
|
+
const launchSpec = _chunkOV3T5MUHcjs.resolveCliLaunchSpec.call(void 0, options.cliPath);
|
|
393
|
+
const browsers = _chunkOV3T5MUHcjs.normalizeBrowsers.call(void 0, options.browser);
|
|
392
394
|
const extensionId = _nullishCoalesce(options.extensionId, () => ( _optionalChain([config, 'access', _8 => _8.chrome, 'optionalAccess', _9 => _9.extensionId])));
|
|
393
395
|
const preferredBrowser = options.browser === "all" ? _nullishCoalesce(_optionalChain([config, 'access', _10 => _10.chrome, 'optionalAccess', _11 => _11.browser]), () => ( "auto")) : options.browser;
|
|
394
|
-
const installUrl = _nullishCoalesce(_nullishCoalesce(options.installUrl, () => ( _optionalChain([config, 'access', _12 => _12.chrome, 'optionalAccess', _13 => _13.installUrl]))), () => (
|
|
395
|
-
const detectedProfile = extensionId ? await
|
|
396
|
-
const result = await
|
|
396
|
+
const installUrl = _nullishCoalesce(_nullishCoalesce(options.installUrl, () => ( _optionalChain([config, 'access', _12 => _12.chrome, 'optionalAccess', _13 => _13.installUrl]))), () => ( _chunkOV3T5MUHcjs.DEFAULT_CHROME_INSTALL_URL));
|
|
397
|
+
const detectedProfile = extensionId ? await _chunkOV3T5MUHcjs.detectExtensionProfile.call(void 0, extensionId, browsers) : null;
|
|
398
|
+
const result = await _chunkOV3T5MUHcjs.installNativeHost.call(void 0, {
|
|
397
399
|
cliCommand: launchSpec.command,
|
|
398
400
|
cliArgPrefix: launchSpec.args,
|
|
399
401
|
extensionIds: extensionId ? [extensionId] : [],
|
|
400
402
|
browsers
|
|
401
403
|
});
|
|
402
|
-
|
|
404
|
+
_chunkOV3T5MUHcjs.applyChromeSettings.call(void 0, config, {
|
|
403
405
|
extensionId,
|
|
404
406
|
browser: _nullishCoalesce(_optionalChain([detectedProfile, 'optionalAccess', _14 => _14.browser]), () => ( preferredBrowser)),
|
|
405
407
|
userDataDir: _nullishCoalesce(_optionalChain([detectedProfile, 'optionalAccess', _15 => _15.userDataDir]), () => ( _optionalChain([config, 'access', _16 => _16.chrome, 'optionalAccess', _17 => _17.userDataDir]))),
|
|
406
408
|
profileDirectory: _nullishCoalesce(_optionalChain([detectedProfile, 'optionalAccess', _18 => _18.profileDirectory]), () => ( _optionalChain([config, 'access', _19 => _19.chrome, 'optionalAccess', _20 => _20.profileDirectory]))),
|
|
407
409
|
installUrl
|
|
408
410
|
});
|
|
409
|
-
await
|
|
411
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
410
412
|
console.log(_chalk2.default.green("\nInstalled Autohand Chrome bridge."));
|
|
411
413
|
for (const target of result.targets) {
|
|
412
414
|
console.log(_chalk2.default.gray(` ${target.browser}: ${target.manifestPath}`));
|
|
413
415
|
}
|
|
414
416
|
if (options.open) {
|
|
415
|
-
await
|
|
416
|
-
|
|
417
|
+
await _chunkOV3T5MUHcjs.openChromeContinuation.call(void 0,
|
|
418
|
+
_chunkOV3T5MUHcjs.buildChromeOpenUrl.call(void 0, { extensionId, installUrl }),
|
|
417
419
|
_nullishCoalesce(_optionalChain([detectedProfile, 'optionalAccess', _21 => _21.browser]), () => ( preferredBrowser)),
|
|
418
420
|
{
|
|
419
421
|
userDataDir: _nullishCoalesce(_optionalChain([detectedProfile, 'optionalAccess', _22 => _22.userDataDir]), () => ( _optionalChain([config, 'access', _23 => _23.chrome, 'optionalAccess', _24 => _24.userDataDir]))),
|
|
@@ -444,9 +446,9 @@ function getCommitFromAlphaVersion(version) {
|
|
|
444
446
|
}
|
|
445
447
|
function getGitCommit() {
|
|
446
448
|
if (true) {
|
|
447
|
-
return "
|
|
449
|
+
return "da69f79";
|
|
448
450
|
}
|
|
449
|
-
const alphaCommit = getCommitFromAlphaVersion(
|
|
451
|
+
const alphaCommit = getCommitFromAlphaVersion(_chunkAQ5PVHOCcjs.package_default.version);
|
|
450
452
|
if (alphaCommit) {
|
|
451
453
|
return alphaCommit;
|
|
452
454
|
}
|
|
@@ -458,7 +460,7 @@ function getGitCommit() {
|
|
|
458
460
|
}
|
|
459
461
|
function getVersionString() {
|
|
460
462
|
const commit = getGitCommit();
|
|
461
|
-
return `${
|
|
463
|
+
return `${_chunkAQ5PVHOCcjs.package_default.version} (${commit})`;
|
|
462
464
|
}
|
|
463
465
|
function normalizeMcpScope(scopeInput) {
|
|
464
466
|
const scope = (_nullishCoalesce(scopeInput, () => ( "user"))).toLowerCase();
|
|
@@ -468,7 +470,7 @@ function normalizeMcpScope(scopeInput) {
|
|
|
468
470
|
return null;
|
|
469
471
|
}
|
|
470
472
|
async function resolveProjectConfigPath(workspaceRoot) {
|
|
471
|
-
const projectConfigDir = _path2.default.join(workspaceRoot,
|
|
473
|
+
const projectConfigDir = _path2.default.join(workspaceRoot, _chunkKASXKDF2cjs.PROJECT_DIR_NAME);
|
|
472
474
|
const tomlPath = _path2.default.join(projectConfigDir, "config.toml");
|
|
473
475
|
const yamlPath = _path2.default.join(projectConfigDir, "config.yaml");
|
|
474
476
|
const ymlPath = _path2.default.join(projectConfigDir, "config.yml");
|
|
@@ -484,10 +486,10 @@ async function loadConfigForMcpScope(scopeInput) {
|
|
|
484
486
|
throw new Error(`Invalid scope "${scopeInput}". Use: user or project.`);
|
|
485
487
|
}
|
|
486
488
|
if (scope === "user") {
|
|
487
|
-
return { config: await
|
|
489
|
+
return { config: await _chunkX5P6QQOBcjs.loadConfig.call(void 0, ), scope };
|
|
488
490
|
}
|
|
489
491
|
const projectConfigPath = await resolveProjectConfigPath(process.cwd());
|
|
490
|
-
return { config: await
|
|
492
|
+
return { config: await _chunkX5P6QQOBcjs.loadConfig.call(void 0, projectConfigPath, process.cwd()), scope };
|
|
491
493
|
}
|
|
492
494
|
async function validateAuthOnStartup(config) {
|
|
493
495
|
if (!_optionalChain([config, 'access', _29 => _29.auth, 'optionalAccess', _30 => _30.token])) {
|
|
@@ -498,14 +500,14 @@ async function validateAuthOnStartup(config) {
|
|
|
498
500
|
if (expiresAt < /* @__PURE__ */ new Date()) {
|
|
499
501
|
config.auth = void 0;
|
|
500
502
|
try {
|
|
501
|
-
await
|
|
503
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
502
504
|
} catch (e7) {
|
|
503
505
|
}
|
|
504
506
|
return void 0;
|
|
505
507
|
}
|
|
506
508
|
}
|
|
507
509
|
try {
|
|
508
|
-
const authClient =
|
|
510
|
+
const authClient = _chunkCO2AADYUcjs.getAuthClient.call(void 0, );
|
|
509
511
|
const result = await authClient.validateSession(config.auth.token);
|
|
510
512
|
if (result.authenticated) {
|
|
511
513
|
if (result.user && config.auth) {
|
|
@@ -518,10 +520,10 @@ async function validateAuthOnStartup(config) {
|
|
|
518
520
|
return _optionalChain([config, 'access', _35 => _35.auth, 'optionalAccess', _36 => _36.user]);
|
|
519
521
|
}
|
|
520
522
|
}
|
|
521
|
-
|
|
523
|
+
_chunkPNIAIOMZcjs.installProcessErrorHandlers.call(void 0, );
|
|
522
524
|
var program = new (0, _commander.Command)();
|
|
523
525
|
registerChromeCommand(program);
|
|
524
|
-
program.name("autohand").description("Autonomous coding agent").version(getVersionString(), "-v, --version", "output the current version").argument("[prompt]", "Run a single instruction in command mode (same as -p)").option("-p, --prompt [text]", "Run a single instruction in command mode").option("--path <path>", "Workspace path to operate in").option("-y, --yes", "Auto-confirm risky actions", false).option("--dry-run", "Preview actions without applying mutations", false).option("-d, --debug", "Enable debug output (verbose logging)", false).option("--model <model>", "Override the configured LLM model").option("--config <path>", "Path to config file (default ~/.autohand/config.json)").option("--temperature <value>", "Sampling temperature", parseFloat).option("--thinking [level]", "Set thinking/reasoning depth (none, normal, extended)").option("-c, --auto-commit", "Auto-commit with LLM-generated message (runs lint & test first)", false).option("--unrestricted", "Run without any approval prompts (use with caution)", false).option("--restricted", "Deny all dangerous operations automatically", false).option("--auto-skill", "Auto-generate skills based on project analysis", false).option("--learn", "Run /learn skill advisor non-interactively (analyze and install recommended skills)", false).option("--learn-update", "Re-analyze project and regenerate outdated LLM-generated skills", false).option("--skill-install [skill-name]", "Install a community skill (opens browser if no name)").option("--project", "Install skill to project level (with --skill-install)", false).option("--permissions", "Display current permission settings and exit", false).option("--settings", "Configure Autohand settings (same as /settings in interactive mode)", false).option("--login", "Sign in to your Autohand account", false).option("--logout", "Sign out of your Autohand account", false).option("--sync-settings [bool]", "Enable/disable settings sync (default: true for logged users)").option("--patch", "Generate git patch without applying changes (requires --prompt)", false).option("--output <file>", "Output file for patch (default: stdout, used with --patch)").option("--mode <mode>", "Run mode: interactive (default), rpc, or acp", "interactive").option("--acp", "Shorthand for --mode acp (Agent Client Protocol over stdio)", false).option("--teammate-mode <mode>", "Team display mode: auto, in-process, or tmux").option("--worktree [name]", "Run session in isolated git worktree (optional name)").option("--tmux", "Launch in a dedicated tmux session (implies --worktree)").option("--auto-mode [prompt]", "Enable interactive auto-mode, or start a standalone loop with an inline task").option("--max-iterations <n>", "Max auto-mode iterations (default: 50)", parseInt).option("--completion-promise <text>", 'Completion marker text (default: "DONE")').option("--no-worktree", "Disable git worktree isolation in auto-mode").option("--checkpoint-interval <n>", "Git commit every N iterations (default: 5)", parseInt).option("--max-runtime <m>", "Max runtime in minutes (default: 120)", parseInt).option("--max-cost <d>", "Max API cost in dollars (default: 10)", parseFloat).option("--interactive-on-complete", "After auto-mode ends, hand off directly to interactive mode (TTY only)", false).option("--setup", "Run the setup wizard to configure or reconfigure Autohand", false).option("--about", "Show information about Autohand", false).option("--feedback", "Submit feedback", false).option("--add-dir <path...>", "Add additional directories to workspace scope (can be used multiple times)").option("--display-language <locale>", "Set display language (e.g., en, zh-cn, fr, de, ja)").option("--cc, --context-compact", "Enable context compaction (default: on)").option("--no-cc, --no-context-compact", "Disable context compaction").option("--search-engine <provider>", "Set web search provider (google, brave, duckduckgo, parallel)").option("--sys-prompt <value>", "Replace entire system prompt (inline string or file path)").option("--append-sys-prompt <value>", "Append to system prompt (inline string or file path)").option("--yolo [pattern]", "Auto-approve tool calls matching pattern (e.g., allow:read,write or deny:delete)").option("--timeout <seconds>", "Timeout in seconds for auto-approve mode", parseInt).option("--chrome", "Enable Chrome browser integration (same as /chrome)").option("--no-chrome", "Disable Chrome browser integration").action(async (positionalPrompt, opts) => {
|
|
526
|
+
program.name("autohand").description("Autonomous coding agent").version(getVersionString(), "-v, --version", "output the current version").argument("[prompt]", "Run a single instruction in command mode (same as -p)").option("-p, --prompt [text]", "Run a single instruction in command mode").option("--path <path>", "Workspace path to operate in").option("-y, --yes", "Auto-confirm risky actions", false).option("--dry-run", "Preview actions without applying mutations", false).option("-d, --debug", "Enable debug output (verbose logging)", false).option("--model <model>", "Override the configured LLM model").option("--config <path>", "Path to config file (default ~/.autohand/config.json)").option("--temperature <value>", "Sampling temperature", parseFloat).option("--thinking [level]", "Set thinking/reasoning depth (none, normal, extended)").option("-c, --auto-commit", "Auto-commit with LLM-generated message (runs lint & test first)", false).option("--unrestricted", "Run without any approval prompts (use with caution)", false).option("--restricted", "Deny all dangerous operations automatically", false).option("--goal [input]", "Run /goal non-interactively (status when omitted, otherwise same arguments as /goal)").option("--auto-skill", "Auto-generate skills based on project analysis", false).option("--learn", "Run /learn skill advisor non-interactively (analyze and install recommended skills)", false).option("--learn-update", "Re-analyze project and regenerate outdated LLM-generated skills", false).option("--skill-install [skill-name]", "Install a community skill (opens browser if no name)").option("--project", "Install skill to project level (with --skill-install)", false).option("--permissions", "Display current permission settings and exit", false).option("--settings", "Configure Autohand settings (same as /settings in interactive mode)", false).option("--login", "Sign in to your Autohand account", false).option("--logout", "Sign out of your Autohand account", false).option("--sync-settings [bool]", "Enable/disable settings sync (default: true for logged users)").option("--patch", "Generate git patch without applying changes (requires --prompt)", false).option("--output <file>", "Output file for patch (default: stdout, used with --patch)").option("--mode <mode>", "Run mode: interactive (default), rpc, or acp", "interactive").option("--acp", "Shorthand for --mode acp (Agent Client Protocol over stdio)", false).option("--teammate-mode <mode>", "Team display mode: auto, in-process, or tmux").option("--worktree [name]", "Run session in isolated git worktree (optional name)").option("--tmux", "Launch in a dedicated tmux session (implies --worktree)").option("--auto-mode [prompt]", "Enable interactive auto-mode, or start a standalone loop with an inline task").option("--max-iterations <n>", "Max auto-mode iterations (default: 50)", parseInt).option("--completion-promise <text>", 'Completion marker text (default: "DONE")').option("--no-worktree", "Disable git worktree isolation in auto-mode").option("--checkpoint-interval <n>", "Git commit every N iterations (default: 5)", parseInt).option("--max-runtime <m>", "Max runtime in minutes (default: 120)", parseInt).option("--max-cost <d>", "Max API cost in dollars (default: 10)", parseFloat).option("--interactive-on-complete", "After auto-mode ends, hand off directly to interactive mode (TTY only)", false).option("--setup", "Run the setup wizard to configure or reconfigure Autohand", false).option("--about", "Show information about Autohand", false).option("--feedback", "Submit feedback", false).option("--add-dir <path...>", "Add additional directories to workspace scope (can be used multiple times)").option("--display-language <locale>", "Set display language (e.g., en, id, zh-cn, fr, de, ja)").option("--cc, --context-compact", "Enable context compaction (default: on)").option("--no-cc, --no-context-compact", "Disable context compaction").option("--search-engine <provider>", "Set web search provider (google, brave, duckduckgo, parallel)").option("--sys-prompt <value>", "Replace entire system prompt (inline string or file path)").option("--append-sys-prompt <value>", "Append to system prompt (inline string or file path)").option("--yolo [pattern]", "Auto-approve tool calls matching pattern (e.g., allow:read,write or deny:delete)").option("--timeout <seconds>", "Timeout in seconds for auto-approve mode", parseInt).option("--chrome", "Enable Chrome browser integration (same as /chrome)").option("--no-chrome", "Disable Chrome browser integration").action(async (positionalPrompt, opts) => {
|
|
525
527
|
if (process.stdout.isTTY && process.env.AUTOHAND_NO_BANNER !== "1") {
|
|
526
528
|
process.stdout.write("\x1B[3J\x1B[2J\x1B[H");
|
|
527
529
|
}
|
|
@@ -531,6 +533,9 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
531
533
|
if (opts.autoMode === true) {
|
|
532
534
|
opts.autoMode = void 0;
|
|
533
535
|
}
|
|
536
|
+
if (opts.goal === true) {
|
|
537
|
+
opts.goal = "";
|
|
538
|
+
}
|
|
534
539
|
if (positionalPrompt && !opts.prompt) {
|
|
535
540
|
opts.prompt = positionalPrompt;
|
|
536
541
|
}
|
|
@@ -566,44 +571,45 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
566
571
|
return;
|
|
567
572
|
}
|
|
568
573
|
if (opts.settings) {
|
|
569
|
-
const config = await
|
|
570
|
-
const { settings } = await Promise.resolve().then(() => _interopRequireWildcard(require("./settings-
|
|
574
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config, process.cwd());
|
|
575
|
+
const { settings } = await Promise.resolve().then(() => _interopRequireWildcard(require("./settings-SO2UIGWV.cjs")));
|
|
571
576
|
await settings({ config });
|
|
572
577
|
process.exit(0);
|
|
573
578
|
}
|
|
574
579
|
if (opts.login) {
|
|
575
|
-
const { login } = await Promise.resolve().then(() => _interopRequireWildcard(require("./login-
|
|
576
|
-
const config = await
|
|
580
|
+
const { login } = await Promise.resolve().then(() => _interopRequireWildcard(require("./login-GST7MWXJ.cjs")));
|
|
581
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
577
582
|
await login({ config });
|
|
578
583
|
process.exit(0);
|
|
579
584
|
}
|
|
580
585
|
if (opts.logout) {
|
|
581
|
-
const { logout } = await Promise.resolve().then(() => _interopRequireWildcard(require("./logout-
|
|
582
|
-
const config = await
|
|
586
|
+
const { logout } = await Promise.resolve().then(() => _interopRequireWildcard(require("./logout-2G7OUK7I.cjs")));
|
|
587
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
583
588
|
await logout({ config });
|
|
584
589
|
process.exit(0);
|
|
585
590
|
}
|
|
586
591
|
if (opts.about) {
|
|
587
|
-
const { initI18n: initI18n2, detectLocale: detectLocale2 } = await Promise.resolve().then(() => _interopRequireWildcard(require("./i18n-
|
|
588
|
-
const { about } = await Promise.resolve().then(() => _interopRequireWildcard(require("./about-
|
|
592
|
+
const { initI18n: initI18n2, detectLocale: detectLocale2 } = await Promise.resolve().then(() => _interopRequireWildcard(require("./i18n-CI6VFXL5.cjs")));
|
|
593
|
+
const { about } = await Promise.resolve().then(() => _interopRequireWildcard(require("./about-QR52U5DD.cjs")));
|
|
589
594
|
const { locale } = detectLocale2();
|
|
590
595
|
await initI18n2(locale);
|
|
591
|
-
await
|
|
596
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
597
|
+
await about({ config });
|
|
592
598
|
process.exit(0);
|
|
593
599
|
}
|
|
594
600
|
if (opts.feedback) {
|
|
595
|
-
const { initI18n: initI18n2, detectLocale: detectLocale2 } = await Promise.resolve().then(() => _interopRequireWildcard(require("./i18n-
|
|
596
|
-
const { feedback } = await Promise.resolve().then(() => _interopRequireWildcard(require("./feedback-
|
|
601
|
+
const { initI18n: initI18n2, detectLocale: detectLocale2 } = await Promise.resolve().then(() => _interopRequireWildcard(require("./i18n-CI6VFXL5.cjs")));
|
|
602
|
+
const { feedback } = await Promise.resolve().then(() => _interopRequireWildcard(require("./feedback-VZPEHGFY.cjs")));
|
|
597
603
|
const { locale } = detectLocale2();
|
|
598
604
|
await initI18n2(locale);
|
|
599
|
-
const config = await
|
|
605
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
600
606
|
await feedback({ config });
|
|
601
607
|
process.exit(0);
|
|
602
608
|
}
|
|
603
609
|
if (opts.setup) {
|
|
604
|
-
const config = await
|
|
605
|
-
const workspaceRoot =
|
|
606
|
-
const workspacePathValidation = await
|
|
610
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config, process.cwd());
|
|
611
|
+
const workspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
612
|
+
const workspacePathValidation = await _chunkQLZOMZO5cjs.validateWorkspacePath.call(void 0, workspaceRoot);
|
|
607
613
|
if (!workspacePathValidation.valid) {
|
|
608
614
|
console.error(_chalk2.default.red(`Error: ${workspacePathValidation.error}`));
|
|
609
615
|
process.exit(1);
|
|
@@ -613,7 +619,7 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
613
619
|
_chunkWGNMOVMTcjs.printDangerousWorkspaceWarning.call(void 0, workspaceRoot, safetyCheck);
|
|
614
620
|
process.exit(1);
|
|
615
621
|
}
|
|
616
|
-
const { SetupWizard } = await Promise.resolve().then(() => _interopRequireWildcard(require("./onboarding-
|
|
622
|
+
const { SetupWizard } = await Promise.resolve().then(() => _interopRequireWildcard(require("./onboarding-2U2BV2KE.cjs")));
|
|
617
623
|
const wizard = new SetupWizard(workspaceRoot, config);
|
|
618
624
|
const result = await wizard.run({ skipWelcome: false });
|
|
619
625
|
if (result.cancelled) {
|
|
@@ -622,15 +628,15 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
622
628
|
}
|
|
623
629
|
if (result.success) {
|
|
624
630
|
const newConfig = { ...config, ...result.config };
|
|
625
|
-
await
|
|
631
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, newConfig);
|
|
626
632
|
console.log(_chalk2.default.green("\nSetup complete! Run `autohand` to start."));
|
|
627
633
|
}
|
|
628
634
|
process.exit(0);
|
|
629
635
|
}
|
|
630
636
|
{
|
|
631
|
-
const preAuthConfig = await
|
|
632
|
-
const workspaceRoot =
|
|
633
|
-
const workspacePathValidation = await
|
|
637
|
+
const preAuthConfig = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config, process.cwd());
|
|
638
|
+
const workspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, preAuthConfig, opts.path);
|
|
639
|
+
const workspacePathValidation = await _chunkQLZOMZO5cjs.validateWorkspacePath.call(void 0, workspaceRoot);
|
|
634
640
|
if (!workspacePathValidation.valid) {
|
|
635
641
|
console.error(_chalk2.default.red(`Error: ${workspacePathValidation.error}`));
|
|
636
642
|
process.exit(1);
|
|
@@ -642,8 +648,8 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
642
648
|
}
|
|
643
649
|
}
|
|
644
650
|
{
|
|
645
|
-
let authConfig = await
|
|
646
|
-
authConfig = await
|
|
651
|
+
let authConfig = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config, process.cwd());
|
|
652
|
+
authConfig = await _chunkCO2AADYUcjs.ensureAuthenticated.call(void 0, authConfig);
|
|
647
653
|
opts._authConfig = authConfig;
|
|
648
654
|
}
|
|
649
655
|
if (opts.patch) {
|
|
@@ -653,11 +659,17 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
653
659
|
if (opts.cc !== void 0) {
|
|
654
660
|
opts.contextCompact = opts.cc;
|
|
655
661
|
}
|
|
662
|
+
if (opts.goal !== void 0) {
|
|
663
|
+
await runGoalFlag(opts);
|
|
664
|
+
if (!opts.prompt) {
|
|
665
|
+
return;
|
|
666
|
+
}
|
|
667
|
+
}
|
|
656
668
|
if (opts.noChrome) {
|
|
657
|
-
const config = await
|
|
669
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config, process.cwd());
|
|
658
670
|
if (config.chrome) {
|
|
659
671
|
config.chrome.enabledByDefault = false;
|
|
660
|
-
await
|
|
672
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
661
673
|
console.log(_chalk2.default.green("\u2713 Chrome browser integration disabled."));
|
|
662
674
|
}
|
|
663
675
|
}
|
|
@@ -671,17 +683,17 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
671
683
|
}
|
|
672
684
|
}
|
|
673
685
|
if (opts.mode === "rpc") {
|
|
674
|
-
const { runRpcMode } = await Promise.resolve().then(() => _interopRequireWildcard(require("./rpc-
|
|
686
|
+
const { runRpcMode } = await Promise.resolve().then(() => _interopRequireWildcard(require("./rpc-YF54T7JU.cjs")));
|
|
675
687
|
await runRpcMode(opts);
|
|
676
688
|
return;
|
|
677
689
|
}
|
|
678
690
|
if (opts.mode === "acp") {
|
|
679
|
-
const { runAcpMode } = await Promise.resolve().then(() => _interopRequireWildcard(require("./acp-
|
|
691
|
+
const { runAcpMode } = await Promise.resolve().then(() => _interopRequireWildcard(require("./acp-GSYE75OB.cjs")));
|
|
680
692
|
await runAcpMode(opts);
|
|
681
693
|
return;
|
|
682
694
|
}
|
|
683
695
|
if (opts.mode === "teammate") {
|
|
684
|
-
const { parseTeammateOptions, runTeammateMode } = await Promise.resolve().then(() => _interopRequireWildcard(require("./teammate-
|
|
696
|
+
const { parseTeammateOptions, runTeammateMode } = await Promise.resolve().then(() => _interopRequireWildcard(require("./teammate-D77B6QRT.cjs")));
|
|
685
697
|
const teammateOpts = parseTeammateOptions(process.argv);
|
|
686
698
|
if (!teammateOpts) {
|
|
687
699
|
console.error("Error: --mode teammate requires --team, --name, --agent, and --lead-session");
|
|
@@ -712,29 +724,38 @@ program.name("autohand").description("Autonomous coding agent").version(getVersi
|
|
|
712
724
|
await runCLI(opts);
|
|
713
725
|
});
|
|
714
726
|
program.command("resume <sessionId>").description("Resume a previous session").option("--path <path>", "Workspace path to operate in").option("--model <model>", "Override the configured LLM model").action(async (sessionId, opts) => {
|
|
715
|
-
let authConfig = await
|
|
716
|
-
authConfig = await
|
|
727
|
+
let authConfig = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config, process.cwd());
|
|
728
|
+
authConfig = await _chunkCO2AADYUcjs.ensureAuthenticated.call(void 0, authConfig);
|
|
717
729
|
opts._authConfig = authConfig;
|
|
718
730
|
await runCLI({ ...opts, resumeSessionId: sessionId });
|
|
719
731
|
});
|
|
720
732
|
program.command("login").description("Sign in to your Autohand account").action(async () => {
|
|
721
|
-
const { login } = await Promise.resolve().then(() => _interopRequireWildcard(require("./login-
|
|
722
|
-
const config = await
|
|
733
|
+
const { login } = await Promise.resolve().then(() => _interopRequireWildcard(require("./login-GST7MWXJ.cjs")));
|
|
734
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, );
|
|
723
735
|
await login({ config });
|
|
724
736
|
process.exit(0);
|
|
725
737
|
});
|
|
726
738
|
program.command("logout").description("Sign out of your Autohand account").action(async () => {
|
|
727
|
-
const { logout } = await Promise.resolve().then(() => _interopRequireWildcard(require("./logout-
|
|
728
|
-
const config = await
|
|
739
|
+
const { logout } = await Promise.resolve().then(() => _interopRequireWildcard(require("./logout-2G7OUK7I.cjs")));
|
|
740
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, );
|
|
729
741
|
await logout({ config });
|
|
730
742
|
process.exit(0);
|
|
731
743
|
});
|
|
732
|
-
program.command("config").description("Configure Autohand settings
|
|
733
|
-
const config = await
|
|
734
|
-
const { settings } = await Promise.resolve().then(() => _interopRequireWildcard(require("./settings-
|
|
744
|
+
var configCmd = program.command("config").description("Configure Autohand settings").action(async () => {
|
|
745
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
746
|
+
const { settings } = await Promise.resolve().then(() => _interopRequireWildcard(require("./settings-SO2UIGWV.cjs")));
|
|
735
747
|
await settings({ config });
|
|
736
748
|
process.exit(0);
|
|
737
749
|
});
|
|
750
|
+
configCmd.command("set <parts...>").description("Set a config value, e.g. autohand config set verbs activity false").action(async (parts) => {
|
|
751
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
752
|
+
const { parseConfigSetArgs, setConfigSetting } = await Promise.resolve().then(() => _interopRequireWildcard(require("./settings-SO2UIGWV.cjs")));
|
|
753
|
+
const { key, value } = parseConfigSetArgs(parts);
|
|
754
|
+
const result = setConfigSetting(config, key, value);
|
|
755
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
756
|
+
console.log(_chalk2.default.green(`Set ${result.key} = ${String(result.value)}`));
|
|
757
|
+
process.exit(0);
|
|
758
|
+
});
|
|
738
759
|
var mcpCmd = program.command("mcp").description("Manage MCP (Model Context Protocol) servers");
|
|
739
760
|
mcpCmd.command("add <name> <target> [args...]").description("Add an MCP server to config and auto-connect on next session").option("-t, --transport <transport>", "Transport type: stdio | http | sse", "stdio").option("-s, --scope <scope>", "Config scope: user | project", "user").action(async (name, target, serverArgs, options) => {
|
|
740
761
|
let config;
|
|
@@ -795,7 +816,7 @@ mcpCmd.command("add <name> <target> [args...]").description("Add an MCP server t
|
|
|
795
816
|
const wasAutoConnectDisabled = existing.autoConnect === false;
|
|
796
817
|
if (wasAutoConnectDisabled || wasMcpDisabled) {
|
|
797
818
|
existing.autoConnect = true;
|
|
798
|
-
await
|
|
819
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
799
820
|
const reenabledParts = [];
|
|
800
821
|
if (wasMcpDisabled) reenabledParts.push("MCP support");
|
|
801
822
|
if (wasAutoConnectDisabled) reenabledParts.push("auto-connect");
|
|
@@ -818,13 +839,13 @@ mcpCmd.command("add <name> <target> [args...]").description("Add an MCP server t
|
|
|
818
839
|
existing.args = void 0;
|
|
819
840
|
}
|
|
820
841
|
existing.autoConnect = true;
|
|
821
|
-
await
|
|
842
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
822
843
|
console.log(_chalk2.default.green(`Updated "${name}" in ${scope} config (${newServer.transport}: ${displayTarget})`));
|
|
823
844
|
console.log(_chalk2.default.gray("Server will use the new settings on next start."));
|
|
824
845
|
process.exit(0);
|
|
825
846
|
}
|
|
826
847
|
config.mcp.servers.push(newServer);
|
|
827
|
-
await
|
|
848
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
828
849
|
console.log(_chalk2.default.green(`Added "${name}" to ${scope} config (${newServer.transport}: ${displayTarget})`));
|
|
829
850
|
console.log(_chalk2.default.gray("Server will auto-connect when you start autohand."));
|
|
830
851
|
process.exit(0);
|
|
@@ -847,7 +868,7 @@ mcpCmd.command("remove <name>").description("Remove an MCP server from config").
|
|
|
847
868
|
process.exit(1);
|
|
848
869
|
}
|
|
849
870
|
config.mcp.servers.splice(serverIndex, 1);
|
|
850
|
-
await
|
|
871
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
851
872
|
console.log(_chalk2.default.green(`Removed "${name}" from ${scope} config.`));
|
|
852
873
|
process.exit(0);
|
|
853
874
|
});
|
|
@@ -893,25 +914,79 @@ mcpCmd.command("install [server-name]").description("Browse and install communit
|
|
|
893
914
|
}
|
|
894
915
|
const { McpClientManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./McpClientManager-BNSKLHIN.cjs")));
|
|
895
916
|
const manager = new McpClientManager();
|
|
896
|
-
const { mcpInstall } = await Promise.resolve().then(() => _interopRequireWildcard(require("./mcp-install-
|
|
917
|
+
const { mcpInstall } = await Promise.resolve().then(() => _interopRequireWildcard(require("./mcp-install-IA4ZS2SV.cjs")));
|
|
897
918
|
const result = await mcpInstall({ mcpManager: manager, config }, serverName);
|
|
898
919
|
if (result) console.log(result);
|
|
899
920
|
await manager.disconnectAll().catch(() => {
|
|
900
921
|
});
|
|
901
922
|
process.exit(0);
|
|
902
923
|
});
|
|
924
|
+
var featuresCmd = program.command("features").description("List and toggle Autohand feature switches").action(async () => {
|
|
925
|
+
const { features } = await Promise.resolve().then(() => _interopRequireWildcard(require("./features-VCBJQXCX.cjs")));
|
|
926
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
927
|
+
const result = await features({ config }, ["list"]);
|
|
928
|
+
if (result) console.log(result);
|
|
929
|
+
process.exit(0);
|
|
930
|
+
});
|
|
931
|
+
featuresCmd.command("list").alias("ls").description("List feature switches and current state").action(async () => {
|
|
932
|
+
const { features } = await Promise.resolve().then(() => _interopRequireWildcard(require("./features-VCBJQXCX.cjs")));
|
|
933
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
934
|
+
const result = await features({ config }, ["list"]);
|
|
935
|
+
if (result) console.log(result);
|
|
936
|
+
process.exit(0);
|
|
937
|
+
});
|
|
938
|
+
featuresCmd.command("status <feature>").alias("show").description("Show one feature switch").action(async (featureId) => {
|
|
939
|
+
const { features } = await Promise.resolve().then(() => _interopRequireWildcard(require("./features-VCBJQXCX.cjs")));
|
|
940
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
941
|
+
const result = await features({ config }, ["status", featureId]);
|
|
942
|
+
if (_optionalChain([result, 'optionalAccess', _45 => _45.startsWith, 'call', _46 => _46("Unknown feature")])) {
|
|
943
|
+
console.log(_chalk2.default.red(result));
|
|
944
|
+
process.exit(1);
|
|
945
|
+
}
|
|
946
|
+
if (result) console.log(result);
|
|
947
|
+
process.exit(0);
|
|
948
|
+
});
|
|
949
|
+
featuresCmd.command("refresh").description("Download remote feature flags from the Autohand API").action(async () => {
|
|
950
|
+
const { features } = await Promise.resolve().then(() => _interopRequireWildcard(require("./features-VCBJQXCX.cjs")));
|
|
951
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
952
|
+
const result = await features({ config }, ["refresh"]);
|
|
953
|
+
if (result) console.log(result);
|
|
954
|
+
process.exit(0);
|
|
955
|
+
});
|
|
956
|
+
featuresCmd.command("enable <feature>").description("Enable a feature switch").action(async (featureId) => {
|
|
957
|
+
const { setFeatureEnabled } = await Promise.resolve().then(() => _interopRequireWildcard(require("./features-VCBJQXCX.cjs")));
|
|
958
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
959
|
+
const result = await setFeatureEnabled(config, featureId, true);
|
|
960
|
+
if (result.startsWith("Unknown feature")) {
|
|
961
|
+
console.log(_chalk2.default.red(result));
|
|
962
|
+
process.exit(1);
|
|
963
|
+
}
|
|
964
|
+
console.log(result);
|
|
965
|
+
process.exit(0);
|
|
966
|
+
});
|
|
967
|
+
featuresCmd.command("disable <feature>").description("Disable a feature switch").action(async (featureId) => {
|
|
968
|
+
const { setFeatureEnabled } = await Promise.resolve().then(() => _interopRequireWildcard(require("./features-VCBJQXCX.cjs")));
|
|
969
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, program.opts().config);
|
|
970
|
+
const result = await setFeatureEnabled(config, featureId, false);
|
|
971
|
+
if (result.startsWith("Unknown feature")) {
|
|
972
|
+
console.log(_chalk2.default.red(result));
|
|
973
|
+
process.exit(1);
|
|
974
|
+
}
|
|
975
|
+
console.log(result);
|
|
976
|
+
process.exit(0);
|
|
977
|
+
});
|
|
903
978
|
program.command("sessions").description("List saved sessions").option("--project <name>", "Filter sessions by project name").action(async (opts) => {
|
|
904
|
-
const { SessionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SessionManager-
|
|
979
|
+
const { SessionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SessionManager-2IZGWASQ.cjs")));
|
|
905
980
|
const sessionManager = new SessionManager();
|
|
906
981
|
await sessionManager.initialize();
|
|
907
|
-
const { sessions } = await Promise.resolve().then(() => _interopRequireWildcard(require("./sessions-
|
|
982
|
+
const { sessions } = await Promise.resolve().then(() => _interopRequireWildcard(require("./sessions-OSG3UJEZ.cjs")));
|
|
908
983
|
const args = opts.project ? ["--project", opts.project] : [];
|
|
909
984
|
await sessions({ sessionManager, args });
|
|
910
985
|
process.exit(0);
|
|
911
986
|
});
|
|
912
987
|
program.command("init").description("Create an AGENTS.md file in the workspace").option("--path <path>", "Workspace path").action(async (opts) => {
|
|
913
|
-
const config = await
|
|
914
|
-
const workspaceRoot =
|
|
988
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, void 0, process.cwd());
|
|
989
|
+
const workspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
915
990
|
const agentsPath = _path2.default.join(workspaceRoot, "AGENTS.md");
|
|
916
991
|
const exists = await _fsextra2.default.pathExists(agentsPath);
|
|
917
992
|
if (exists) {
|
|
@@ -937,26 +1012,26 @@ program.command("init").description("Create an AGENTS.md file in the workspace")
|
|
|
937
1012
|
process.exit(0);
|
|
938
1013
|
});
|
|
939
1014
|
program.command("completion <shell>").description("Generate shell completion scripts (bash, zsh, fish)").action(async (shell) => {
|
|
940
|
-
const { runCompletionCommand } = await Promise.resolve().then(() => _interopRequireWildcard(require("./completion-
|
|
1015
|
+
const { runCompletionCommand } = await Promise.resolve().then(() => _interopRequireWildcard(require("./completion-JX4T2ONW.cjs")));
|
|
941
1016
|
await runCompletionCommand(shell);
|
|
942
1017
|
process.exit(0);
|
|
943
1018
|
});
|
|
944
1019
|
program.command("update").description("Check for updates and install if available").option("--check", "Only check for updates without installing").action(async (opts) => {
|
|
945
1020
|
const { runUpdate } = await Promise.resolve().then(() => _interopRequireWildcard(require("./update-NV6QRYY7.cjs")));
|
|
946
1021
|
await runUpdate({
|
|
947
|
-
currentVersion:
|
|
1022
|
+
currentVersion: _chunkAQ5PVHOCcjs.package_default.version,
|
|
948
1023
|
check: _nullishCoalesce(opts.check, () => ( false))
|
|
949
1024
|
});
|
|
950
1025
|
});
|
|
951
1026
|
program.command("upgrade").description("Check for updates and install if available").option("--check", "Only check for updates without installing").action(async (opts) => {
|
|
952
1027
|
const { runUpdate } = await Promise.resolve().then(() => _interopRequireWildcard(require("./update-NV6QRYY7.cjs")));
|
|
953
1028
|
await runUpdate({
|
|
954
|
-
currentVersion:
|
|
1029
|
+
currentVersion: _chunkAQ5PVHOCcjs.package_default.version,
|
|
955
1030
|
check: _nullishCoalesce(opts.check, () => ( false))
|
|
956
1031
|
});
|
|
957
1032
|
});
|
|
958
1033
|
program.command("import [source]").description("Import data from other coding agents (claude, codex, gemini, cursor, cline, continue, augment)").option("--all", "Import all available categories without prompting").option("--categories <list>", "Comma-separated list of categories to import (sessions,settings,skills,memory,mcp,hooks)", (val) => val.split(",")).option("--dry-run", "Preview what would be imported without making changes").option("--retry-failed", "Retry previously failed import items").action(async (source, opts) => {
|
|
959
|
-
const { runImport } = await Promise.resolve().then(() => _interopRequireWildcard(require("./import-
|
|
1034
|
+
const { runImport } = await Promise.resolve().then(() => _interopRequireWildcard(require("./import-C7S6UJMW.cjs")));
|
|
960
1035
|
await runImport({
|
|
961
1036
|
source,
|
|
962
1037
|
categories: opts.categories,
|
|
@@ -968,15 +1043,15 @@ program.command("import [source]").description("Import data from other coding ag
|
|
|
968
1043
|
});
|
|
969
1044
|
async function runCLI(options) {
|
|
970
1045
|
try {
|
|
971
|
-
let config = await
|
|
972
|
-
const originalWorkspaceRoot =
|
|
1046
|
+
let config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, options.config, process.cwd());
|
|
1047
|
+
const originalWorkspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, options.path);
|
|
973
1048
|
let workspaceRoot = originalWorkspaceRoot;
|
|
974
1049
|
let sessionWorktree = null;
|
|
975
|
-
const { locale: detectedLocale } =
|
|
1050
|
+
const { locale: detectedLocale } = _chunkSY2P3Z5Wcjs.detectLocale.call(void 0, {
|
|
976
1051
|
cliOverride: options.displayLanguage,
|
|
977
|
-
configLocale: _optionalChain([config, 'access',
|
|
1052
|
+
configLocale: _optionalChain([config, 'access', _47 => _47.ui, 'optionalAccess', _48 => _48.locale])
|
|
978
1053
|
});
|
|
979
|
-
await
|
|
1054
|
+
await _chunkSY2P3Z5Wcjs.initI18n.call(void 0, detectedLocale);
|
|
980
1055
|
const {
|
|
981
1056
|
buildPermissionSettingsFromYolo,
|
|
982
1057
|
normalizeYoloInput,
|
|
@@ -997,9 +1072,9 @@ async function runCLI(options) {
|
|
|
997
1072
|
}
|
|
998
1073
|
}
|
|
999
1074
|
const providerName = _nullishCoalesce(config.provider, () => ( "openrouter"));
|
|
1000
|
-
const providerConfig =
|
|
1075
|
+
const providerConfig = _chunkX5P6QQOBcjs.getProviderConfig.call(void 0, config, providerName);
|
|
1001
1076
|
if (!providerConfig) {
|
|
1002
|
-
const { SetupWizard } = await Promise.resolve().then(() => _interopRequireWildcard(require("./onboarding-
|
|
1077
|
+
const { SetupWizard } = await Promise.resolve().then(() => _interopRequireWildcard(require("./onboarding-2U2BV2KE.cjs")));
|
|
1003
1078
|
const wizard = new SetupWizard(originalWorkspaceRoot, config);
|
|
1004
1079
|
const result = await wizard.run({ skipWelcome: !config.isNewConfig });
|
|
1005
1080
|
if (result.cancelled) {
|
|
@@ -1008,11 +1083,11 @@ async function runCLI(options) {
|
|
|
1008
1083
|
}
|
|
1009
1084
|
if (result.success) {
|
|
1010
1085
|
config = { ...config, ...result.config };
|
|
1011
|
-
await
|
|
1086
|
+
await _chunkX5P6QQOBcjs.saveConfig.call(void 0, config);
|
|
1012
1087
|
console.log();
|
|
1013
1088
|
}
|
|
1014
1089
|
}
|
|
1015
|
-
const workspacePathValidation = await
|
|
1090
|
+
const workspacePathValidation = await _chunkQLZOMZO5cjs.validateWorkspacePath.call(void 0, originalWorkspaceRoot);
|
|
1016
1091
|
if (!workspacePathValidation.valid) {
|
|
1017
1092
|
console.error(_chalk2.default.red(`Error: ${workspacePathValidation.error}`));
|
|
1018
1093
|
process.exit(1);
|
|
@@ -1022,8 +1097,8 @@ async function runCLI(options) {
|
|
|
1022
1097
|
_chunkWGNMOVMTcjs.printDangerousWorkspaceWarning.call(void 0, originalWorkspaceRoot, safetyCheck);
|
|
1023
1098
|
process.exit(1);
|
|
1024
1099
|
}
|
|
1025
|
-
if (
|
|
1026
|
-
sessionWorktree =
|
|
1100
|
+
if (_chunkM7B7RRBKcjs.isSessionWorktreeEnabled.call(void 0, options.worktree)) {
|
|
1101
|
+
sessionWorktree = _chunkM7B7RRBKcjs.prepareSessionWorktree.call(void 0, {
|
|
1027
1102
|
cwd: originalWorkspaceRoot,
|
|
1028
1103
|
worktree: options.worktree,
|
|
1029
1104
|
mode: "cli"
|
|
@@ -1072,7 +1147,7 @@ async function runCLI(options) {
|
|
|
1072
1147
|
const { shouldUseInkRenderer } = await Promise.resolve().then(() => _interopRequireWildcard(require("./inkMode-VUE6ZDLD.cjs")));
|
|
1073
1148
|
const inkEnabled = shouldUseInkRenderer();
|
|
1074
1149
|
initPingService({
|
|
1075
|
-
cliVersion:
|
|
1150
|
+
cliVersion: _chunkAQ5PVHOCcjs.package_default.version,
|
|
1076
1151
|
clientType: "cli"
|
|
1077
1152
|
});
|
|
1078
1153
|
startPingService();
|
|
@@ -1087,8 +1162,8 @@ async function runCLI(options) {
|
|
|
1087
1162
|
}
|
|
1088
1163
|
const agentHolder = { current: null };
|
|
1089
1164
|
try {
|
|
1090
|
-
const checkResults = await
|
|
1091
|
-
|
|
1165
|
+
const checkResults = await _chunkQLZOMZO5cjs.runStartupChecks.call(void 0, workspaceRoot);
|
|
1166
|
+
_chunkQLZOMZO5cjs.printStartupCheckResults.call(void 0, checkResults);
|
|
1092
1167
|
if (!checkResults.allRequiredMet) {
|
|
1093
1168
|
console.log(_chalk2.default.yellow("Continuing anyway, but some features may not work correctly.\n"));
|
|
1094
1169
|
}
|
|
@@ -1096,8 +1171,8 @@ async function runCLI(options) {
|
|
|
1096
1171
|
}
|
|
1097
1172
|
(async () => {
|
|
1098
1173
|
try {
|
|
1099
|
-
const versionCheckPromise = _optionalChain([config, 'access',
|
|
1100
|
-
checkIntervalHours: _nullishCoalesce(_optionalChain([config, 'access',
|
|
1174
|
+
const versionCheckPromise = _optionalChain([config, 'access', _49 => _49.ui, 'optionalAccess', _50 => _50.checkForUpdates]) !== false ? _chunkFMB3TSWPcjs.checkForUpdates.call(void 0, _chunkAQ5PVHOCcjs.package_default.version, {
|
|
1175
|
+
checkIntervalHours: _nullishCoalesce(_optionalChain([config, 'access', _51 => _51.ui, 'optionalAccess', _52 => _52.updateCheckInterval]), () => ( 24))
|
|
1101
1176
|
}) : Promise.resolve(null);
|
|
1102
1177
|
const [authUser, versionResult] = await Promise.all([
|
|
1103
1178
|
validateAuthOnStartup(config),
|
|
@@ -1106,12 +1181,12 @@ async function runCLI(options) {
|
|
|
1106
1181
|
if (versionResult && agentHolder.current) {
|
|
1107
1182
|
agentHolder.current.setVersionCheckResult(versionResult);
|
|
1108
1183
|
}
|
|
1109
|
-
if (authUser && _optionalChain([config, 'access',
|
|
1110
|
-
const syncEnabled = options.syncSettings !== false && _optionalChain([config, 'access',
|
|
1184
|
+
if (authUser && _optionalChain([config, 'access', _53 => _53.auth, 'optionalAccess', _54 => _54.token])) {
|
|
1185
|
+
const syncEnabled = options.syncSettings !== false && _optionalChain([config, 'access', _55 => _55.sync, 'optionalAccess', _56 => _56.enabled]) !== false;
|
|
1111
1186
|
if (syncEnabled) {
|
|
1112
1187
|
try {
|
|
1113
|
-
const { createSyncService, DEFAULT_SYNC_CONFIG } = await Promise.resolve().then(() => _interopRequireWildcard(require("./sync-
|
|
1114
|
-
const { setSyncService } = await Promise.resolve().then(() => _interopRequireWildcard(require("./sync-
|
|
1188
|
+
const { createSyncService, DEFAULT_SYNC_CONFIG } = await Promise.resolve().then(() => _interopRequireWildcard(require("./sync-XRP46IVG.cjs")));
|
|
1189
|
+
const { setSyncService } = await Promise.resolve().then(() => _interopRequireWildcard(require("./sync-ZMFVE7T4.cjs")));
|
|
1115
1190
|
const syncService = createSyncService({
|
|
1116
1191
|
authToken: config.auth.token,
|
|
1117
1192
|
userId: authUser.id,
|
|
@@ -1125,7 +1200,7 @@ async function runCLI(options) {
|
|
|
1125
1200
|
if (agentHolder.current) {
|
|
1126
1201
|
agentHolder.current.notifyUser(message);
|
|
1127
1202
|
} else {
|
|
1128
|
-
const { promptNotify } = await Promise.resolve().then(() => _interopRequireWildcard(require("./inputPrompt-
|
|
1203
|
+
const { promptNotify } = await Promise.resolve().then(() => _interopRequireWildcard(require("./inputPrompt-JMACL4EB.cjs")));
|
|
1129
1204
|
promptNotify(_chalk2.default.yellow(message));
|
|
1130
1205
|
}
|
|
1131
1206
|
}
|
|
@@ -1133,7 +1208,7 @@ async function runCLI(options) {
|
|
|
1133
1208
|
syncService.start();
|
|
1134
1209
|
setSyncService(syncService);
|
|
1135
1210
|
const stopSync = () => {
|
|
1136
|
-
_optionalChain([syncService, 'optionalAccess',
|
|
1211
|
+
_optionalChain([syncService, 'optionalAccess', _57 => _57.stop, 'call', _58 => _58()]);
|
|
1137
1212
|
setSyncService(null);
|
|
1138
1213
|
};
|
|
1139
1214
|
process.on("exit", stopSync);
|
|
@@ -1156,13 +1231,13 @@ async function runCLI(options) {
|
|
|
1156
1231
|
config.agent = _nullishCoalesce(config.agent, () => ( {}));
|
|
1157
1232
|
config.agent.debug = true;
|
|
1158
1233
|
}
|
|
1159
|
-
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-
|
|
1234
|
+
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-56N3ECE4.cjs")));
|
|
1160
1235
|
const { FileActionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./filesystem-PGUPCMVK.cjs")));
|
|
1161
1236
|
const llmProvider = ProviderFactory.create(config);
|
|
1162
1237
|
const files = new FileActionManager(workspaceRoot, runtime.additionalDirs);
|
|
1163
1238
|
if (options.autoSkill) {
|
|
1164
1239
|
console.log(_chalk2.default.cyan("\nAuto-generating skills for this project...\n"));
|
|
1165
|
-
const { runAutoSkillGeneration } = await Promise.resolve().then(() => _interopRequireWildcard(require("./autoSkill-
|
|
1240
|
+
const { runAutoSkillGeneration } = await Promise.resolve().then(() => _interopRequireWildcard(require("./autoSkill-VQLGBELN.cjs")));
|
|
1166
1241
|
const result = await runAutoSkillGeneration(workspaceRoot, llmProvider);
|
|
1167
1242
|
if (!result.success) {
|
|
1168
1243
|
console.log(_chalk2.default.yellow(result.error || "Failed to generate skills"));
|
|
@@ -1212,12 +1287,12 @@ async function runCLI(options) {
|
|
|
1212
1287
|
}
|
|
1213
1288
|
}
|
|
1214
1289
|
}
|
|
1215
|
-
const { AutohandAgent } = await Promise.resolve().then(() => _interopRequireWildcard(require("./agent-
|
|
1290
|
+
const { AutohandAgent } = await Promise.resolve().then(() => _interopRequireWildcard(require("./agent-B3EVT7NN.cjs")));
|
|
1216
1291
|
const agent = new AutohandAgent(llmProvider, files, runtime);
|
|
1217
1292
|
agentHolder.current = agent;
|
|
1218
1293
|
if (options.chrome) {
|
|
1219
|
-
const { ensureNativeHostInstalled, createBrowserHandoff, buildChromeOpenUrl: buildChromeOpenUrl2, openChromeContinuation: openChromeContinuation2 } = await Promise.resolve().then(() => _interopRequireWildcard(require("./chrome-
|
|
1220
|
-
const extensionId = _optionalChain([config, 'access',
|
|
1294
|
+
const { ensureNativeHostInstalled, createBrowserHandoff, buildChromeOpenUrl: buildChromeOpenUrl2, openChromeContinuation: openChromeContinuation2 } = await Promise.resolve().then(() => _interopRequireWildcard(require("./chrome-Q2U73HZB.cjs")));
|
|
1295
|
+
const extensionId = _optionalChain([config, 'access', _59 => _59.chrome, 'optionalAccess', _60 => _60.extensionId]);
|
|
1221
1296
|
await ensureNativeHostInstalled({ extensionId }).catch(() => {
|
|
1222
1297
|
});
|
|
1223
1298
|
const sessionManager = agent.getSessionManager();
|
|
@@ -1225,7 +1300,7 @@ async function runCLI(options) {
|
|
|
1225
1300
|
let currentSession = sessionManager.getCurrentSession();
|
|
1226
1301
|
if (!currentSession) {
|
|
1227
1302
|
const providerName2 = _nullishCoalesce(config.provider, () => ( "openrouter"));
|
|
1228
|
-
const modelName = _nullishCoalesce(_nullishCoalesce(options.model, () => ( _optionalChain([config, 'access',
|
|
1303
|
+
const modelName = _nullishCoalesce(_nullishCoalesce(options.model, () => ( _optionalChain([config, 'access', _61 => _61[providerName2], 'optionalAccess', _62 => _62.model]))), () => ( "unknown"));
|
|
1229
1304
|
currentSession = await sessionManager.createSession(workspaceRoot, modelName);
|
|
1230
1305
|
}
|
|
1231
1306
|
const sessionId = currentSession.metadata.sessionId;
|
|
@@ -1233,12 +1308,12 @@ async function runCLI(options) {
|
|
|
1233
1308
|
sessionId,
|
|
1234
1309
|
workspaceRoot,
|
|
1235
1310
|
extensionId,
|
|
1236
|
-
installUrl: _optionalChain([config, 'access',
|
|
1311
|
+
installUrl: _optionalChain([config, 'access', _63 => _63.chrome, 'optionalAccess', _64 => _64.installUrl])
|
|
1237
1312
|
});
|
|
1238
1313
|
await openChromeContinuation2(
|
|
1239
|
-
buildChromeOpenUrl2({ extensionId, installUrl: _optionalChain([config, 'access',
|
|
1240
|
-
_nullishCoalesce(_optionalChain([config, 'access',
|
|
1241
|
-
{ userDataDir: _optionalChain([config, 'access',
|
|
1314
|
+
buildChromeOpenUrl2({ extensionId, installUrl: _optionalChain([config, 'access', _65 => _65.chrome, 'optionalAccess', _66 => _66.installUrl]) }),
|
|
1315
|
+
_nullishCoalesce(_optionalChain([config, 'access', _67 => _67.chrome, 'optionalAccess', _68 => _68.browser]), () => ( "auto")),
|
|
1316
|
+
{ userDataDir: _optionalChain([config, 'access', _69 => _69.chrome, 'optionalAccess', _70 => _70.userDataDir]), profileDirectory: _optionalChain([config, 'access', _71 => _71.chrome, 'optionalAccess', _72 => _72.profileDirectory]) }
|
|
1242
1317
|
);
|
|
1243
1318
|
console.log(_chalk2.default.green("\n\u2713 Opened Chrome. Side panel (Cmd+E) to continue."));
|
|
1244
1319
|
console.log(_chalk2.default.gray(` Session: ${sessionId}
|
|
@@ -1269,7 +1344,7 @@ function printBanner() {
|
|
|
1269
1344
|
}
|
|
1270
1345
|
if (process.stdout.isTTY) {
|
|
1271
1346
|
process.stdout.write("\x1B[3J\x1B[2J\x1B[H");
|
|
1272
|
-
console.log(
|
|
1347
|
+
console.log(_chunkM7B7RRBKcjs.formatStartupBanner.call(void 0, _chunkSD3NTC7Dcjs.renderAutohandLogo.call(void 0, { columns: _chunkSD3NTC7Dcjs.getTerminalColumns.call(void 0, process.stdout) })));
|
|
1273
1348
|
} else {
|
|
1274
1349
|
console.log("autohand");
|
|
1275
1350
|
}
|
|
@@ -1298,50 +1373,50 @@ function printWelcome(runtime, authUser, versionCheck) {
|
|
|
1298
1373
|
}
|
|
1299
1374
|
const model = (() => {
|
|
1300
1375
|
try {
|
|
1301
|
-
const settings =
|
|
1302
|
-
return _nullishCoalesce(_nullishCoalesce(runtime.options.model, () => ( _optionalChain([settings, 'optionalAccess',
|
|
1376
|
+
const settings = _chunkX5P6QQOBcjs.getProviderConfig.call(void 0, runtime.config);
|
|
1377
|
+
return _nullishCoalesce(_nullishCoalesce(runtime.options.model, () => ( _optionalChain([settings, 'optionalAccess', _73 => _73.model]))), () => ( "unknown"));
|
|
1303
1378
|
} catch (e13) {
|
|
1304
1379
|
return _nullishCoalesce(runtime.options.model, () => ( "unknown"));
|
|
1305
1380
|
}
|
|
1306
1381
|
})();
|
|
1307
1382
|
const dir = runtime.workspaceRoot;
|
|
1308
|
-
let versionLine =
|
|
1383
|
+
let versionLine = _chunkM7B7RRBKcjs.formatWelcomeVersionPrefix.call(void 0, getVersionString());
|
|
1309
1384
|
if (versionCheck) {
|
|
1310
1385
|
if (versionCheck.isUpToDate) {
|
|
1311
|
-
versionLine +=
|
|
1386
|
+
versionLine += _chunkM7B7RRBKcjs.formatUpdateReady.call(void 0, );
|
|
1312
1387
|
} else if (versionCheck.updateAvailable && versionCheck.latestVersion) {
|
|
1313
|
-
versionLine +=
|
|
1388
|
+
versionLine += _chunkM7B7RRBKcjs.formatUpdateAvailable.call(void 0, versionCheck.latestVersion);
|
|
1314
1389
|
}
|
|
1315
1390
|
}
|
|
1316
1391
|
console.log(versionLine);
|
|
1317
|
-
if (_optionalChain([versionCheck, 'optionalAccess',
|
|
1318
|
-
console.log(
|
|
1392
|
+
if (_optionalChain([versionCheck, 'optionalAccess', _74 => _74.updateAvailable])) {
|
|
1393
|
+
console.log(_chunkM7B7RRBKcjs.formatInstallHint.call(void 0, _chunkFMB3TSWPcjs.getInstallHint.call(void 0, versionCheck.channel)));
|
|
1319
1394
|
}
|
|
1320
|
-
const isLoggedIn = !!(authUser || _optionalChain([runtime, 'access',
|
|
1395
|
+
const isLoggedIn = !!(authUser || _optionalChain([runtime, 'access', _75 => _75.config, 'access', _76 => _76.auth, 'optionalAccess', _77 => _77.token]));
|
|
1321
1396
|
if (authUser) {
|
|
1322
|
-
console.log(
|
|
1397
|
+
console.log(_chunkM7B7RRBKcjs.formatWelcomeGreeting.call(void 0, authUser.name || authUser.email));
|
|
1323
1398
|
}
|
|
1324
1399
|
const ccEnabled = runtime.options.contextCompact !== false;
|
|
1325
|
-
console.log(
|
|
1400
|
+
console.log(_chunkM7B7RRBKcjs.formatWelcomeStatusLine.call(void 0, model, ccEnabled, dir));
|
|
1326
1401
|
console.log();
|
|
1327
1402
|
const suggestions = buildWelcomeSuggestions(isLoggedIn, dir);
|
|
1328
|
-
console.log(
|
|
1403
|
+
console.log(_chunkM7B7RRBKcjs.formatWelcomeTitle.call(void 0, ));
|
|
1329
1404
|
for (const s of suggestions) {
|
|
1330
|
-
console.log(
|
|
1405
|
+
console.log(_chunkM7B7RRBKcjs.formatWelcomeSuggestion.call(void 0, s.command, s.description));
|
|
1331
1406
|
}
|
|
1332
1407
|
console.log();
|
|
1333
1408
|
}
|
|
1334
1409
|
async function runSkillInstall(opts) {
|
|
1335
|
-
const config = await
|
|
1336
|
-
const workspaceRoot =
|
|
1410
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
1411
|
+
const workspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
1337
1412
|
const safetyCheck = _chunkWGNMOVMTcjs.checkWorkspaceSafety.call(void 0, workspaceRoot);
|
|
1338
1413
|
if (!safetyCheck.safe) {
|
|
1339
1414
|
_chunkWGNMOVMTcjs.printDangerousWorkspaceWarning.call(void 0, workspaceRoot, safetyCheck);
|
|
1340
1415
|
process.exit(1);
|
|
1341
1416
|
}
|
|
1342
|
-
const { SkillsRegistry } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SkillsRegistry-
|
|
1343
|
-
const { AUTOHAND_PATHS } = await Promise.resolve().then(() => _interopRequireWildcard(require("./constants-
|
|
1344
|
-
const { skillsInstall } = await Promise.resolve().then(() => _interopRequireWildcard(require("./skills-install-
|
|
1417
|
+
const { SkillsRegistry } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SkillsRegistry-GMRVONOQ.cjs")));
|
|
1418
|
+
const { AUTOHAND_PATHS } = await Promise.resolve().then(() => _interopRequireWildcard(require("./constants-MCCGUU5F.cjs")));
|
|
1419
|
+
const { skillsInstall } = await Promise.resolve().then(() => _interopRequireWildcard(require("./skills-install-ILX6QVEF.cjs")));
|
|
1345
1420
|
const skillsRegistry = new SkillsRegistry(AUTOHAND_PATHS.skills);
|
|
1346
1421
|
await skillsRegistry.initialize();
|
|
1347
1422
|
await skillsRegistry.setWorkspace(workspaceRoot);
|
|
@@ -1352,21 +1427,21 @@ async function runSkillInstall(opts) {
|
|
|
1352
1427
|
}, skillName);
|
|
1353
1428
|
}
|
|
1354
1429
|
async function runLearnNonInteractive(opts, subcommand) {
|
|
1355
|
-
const config = await
|
|
1356
|
-
const workspaceRoot =
|
|
1430
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
1431
|
+
const workspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
1357
1432
|
const safetyCheck = _chunkWGNMOVMTcjs.checkWorkspaceSafety.call(void 0, workspaceRoot);
|
|
1358
1433
|
if (!safetyCheck.safe) {
|
|
1359
1434
|
_chunkWGNMOVMTcjs.printDangerousWorkspaceWarning.call(void 0, workspaceRoot, safetyCheck);
|
|
1360
1435
|
process.exit(1);
|
|
1361
1436
|
}
|
|
1362
|
-
const { learn } = await Promise.resolve().then(() => _interopRequireWildcard(require("./learn-
|
|
1363
|
-
const { SkillsRegistry } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SkillsRegistry-
|
|
1364
|
-
const { AUTOHAND_PATHS } = await Promise.resolve().then(() => _interopRequireWildcard(require("./constants-
|
|
1365
|
-
const { HookManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./HookManager-
|
|
1437
|
+
const { learn } = await Promise.resolve().then(() => _interopRequireWildcard(require("./learn-3DSX7DYG.cjs")));
|
|
1438
|
+
const { SkillsRegistry } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SkillsRegistry-GMRVONOQ.cjs")));
|
|
1439
|
+
const { AUTOHAND_PATHS } = await Promise.resolve().then(() => _interopRequireWildcard(require("./constants-MCCGUU5F.cjs")));
|
|
1440
|
+
const { HookManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./HookManager-TVEQI5ZU.cjs")));
|
|
1366
1441
|
const skillsRegistry = new SkillsRegistry(AUTOHAND_PATHS.skills);
|
|
1367
1442
|
await skillsRegistry.initialize();
|
|
1368
1443
|
await skillsRegistry.setWorkspace(workspaceRoot);
|
|
1369
|
-
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-
|
|
1444
|
+
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-56N3ECE4.cjs")));
|
|
1370
1445
|
const llmProvider = ProviderFactory.create(config);
|
|
1371
1446
|
const hookManager = new HookManager({ workspaceRoot });
|
|
1372
1447
|
const args = subcommand === "update" ? ["update"] : [];
|
|
@@ -1381,6 +1456,28 @@ async function runLearnNonInteractive(opts, subcommand) {
|
|
|
1381
1456
|
console.log(result);
|
|
1382
1457
|
}
|
|
1383
1458
|
}
|
|
1459
|
+
async function runGoalFlag(opts) {
|
|
1460
|
+
const config = await _asyncNullishCoalesce(opts._authConfig, async () => ( await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config, process.cwd())));
|
|
1461
|
+
const { GOAL_FEATURE_DISABLED_MESSAGE, isGoalFeatureEnabled } = await Promise.resolve().then(() => _interopRequireWildcard(require("./feature-K3LG5IJP.cjs")));
|
|
1462
|
+
if (!isGoalFeatureEnabled(config)) {
|
|
1463
|
+
console.error(_chalk2.default.yellow(GOAL_FEATURE_DISABLED_MESSAGE));
|
|
1464
|
+
process.exit(1);
|
|
1465
|
+
}
|
|
1466
|
+
const workspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
1467
|
+
const workspacePathValidation = await _chunkQLZOMZO5cjs.validateWorkspacePath.call(void 0, workspaceRoot);
|
|
1468
|
+
if (!workspacePathValidation.valid) {
|
|
1469
|
+
console.error(_chalk2.default.red(`Error: ${workspacePathValidation.error}`));
|
|
1470
|
+
process.exit(1);
|
|
1471
|
+
}
|
|
1472
|
+
const safetyCheck = _chunkWGNMOVMTcjs.checkWorkspaceSafety.call(void 0, workspaceRoot);
|
|
1473
|
+
if (!safetyCheck.safe) {
|
|
1474
|
+
_chunkWGNMOVMTcjs.printDangerousWorkspaceWarning.call(void 0, workspaceRoot, safetyCheck);
|
|
1475
|
+
process.exit(1);
|
|
1476
|
+
}
|
|
1477
|
+
const { runGoalCli } = await Promise.resolve().then(() => _interopRequireWildcard(require("./goal-4M3J6JS2.cjs")));
|
|
1478
|
+
const result = await runGoalCli(workspaceRoot, _nullishCoalesce(opts.goal, () => ( "")), config);
|
|
1479
|
+
console.log(result);
|
|
1480
|
+
}
|
|
1384
1481
|
function renderPermissionScope(title, pathLabel, allowList, denyList) {
|
|
1385
1482
|
console.log(_chalk2.default.bold(title));
|
|
1386
1483
|
console.log(_chalk2.default.gray(pathLabel));
|
|
@@ -1403,14 +1500,14 @@ function renderPermissionScope(title, pathLabel, allowList, denyList) {
|
|
|
1403
1500
|
console.log();
|
|
1404
1501
|
}
|
|
1405
1502
|
async function displayPermissions(opts) {
|
|
1406
|
-
const config = await
|
|
1407
|
-
const workspaceRoot =
|
|
1503
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
1504
|
+
const workspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
1408
1505
|
const safetyCheck = _chunkWGNMOVMTcjs.checkWorkspaceSafety.call(void 0, workspaceRoot);
|
|
1409
1506
|
if (!safetyCheck.safe) {
|
|
1410
1507
|
_chunkWGNMOVMTcjs.printDangerousWorkspaceWarning.call(void 0, workspaceRoot, safetyCheck);
|
|
1411
1508
|
process.exit(1);
|
|
1412
1509
|
}
|
|
1413
|
-
const { PermissionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./PermissionManager-
|
|
1510
|
+
const { PermissionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./PermissionManager-URCNP5EC.cjs")));
|
|
1414
1511
|
const manager = new PermissionManager({
|
|
1415
1512
|
settings: config.permissions,
|
|
1416
1513
|
workspaceRoot
|
|
@@ -1449,10 +1546,10 @@ async function runPatchMode(opts) {
|
|
|
1449
1546
|
}
|
|
1450
1547
|
const fs3 = await Promise.resolve().then(() => _interopRequireWildcard(require("fs-extra")));
|
|
1451
1548
|
const { generateUnifiedPatch, formatChangeSummary } = await Promise.resolve().then(() => _interopRequireWildcard(require("./patch-DJ2GPFST.cjs")));
|
|
1452
|
-
const config = await
|
|
1453
|
-
const originalWorkspaceRoot =
|
|
1549
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
1550
|
+
const originalWorkspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
1454
1551
|
let workspaceRoot = originalWorkspaceRoot;
|
|
1455
|
-
const workspacePathValidation = await
|
|
1552
|
+
const workspacePathValidation = await _chunkQLZOMZO5cjs.validateWorkspacePath.call(void 0, originalWorkspaceRoot);
|
|
1456
1553
|
if (!workspacePathValidation.valid) {
|
|
1457
1554
|
console.error(_chalk2.default.red(`Error: ${workspacePathValidation.error}`));
|
|
1458
1555
|
process.exit(1);
|
|
@@ -1462,8 +1559,8 @@ async function runPatchMode(opts) {
|
|
|
1462
1559
|
_chunkWGNMOVMTcjs.printDangerousWorkspaceWarning.call(void 0, originalWorkspaceRoot, safetyCheck);
|
|
1463
1560
|
process.exit(1);
|
|
1464
1561
|
}
|
|
1465
|
-
if (
|
|
1466
|
-
const sessionWorktree =
|
|
1562
|
+
if (_chunkM7B7RRBKcjs.isSessionWorktreeEnabled.call(void 0, opts.worktree)) {
|
|
1563
|
+
const sessionWorktree = _chunkM7B7RRBKcjs.prepareSessionWorktree.call(void 0, {
|
|
1467
1564
|
cwd: originalWorkspaceRoot,
|
|
1468
1565
|
worktree: opts.worktree,
|
|
1469
1566
|
mode: "patch"
|
|
@@ -1506,7 +1603,7 @@ async function runPatchMode(opts) {
|
|
|
1506
1603
|
config[providerName].model = opts.model;
|
|
1507
1604
|
}
|
|
1508
1605
|
}
|
|
1509
|
-
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-
|
|
1606
|
+
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-56N3ECE4.cjs")));
|
|
1510
1607
|
const { FileActionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./filesystem-PGUPCMVK.cjs")));
|
|
1511
1608
|
const llmProvider = ProviderFactory.create(config);
|
|
1512
1609
|
const files = new FileActionManager(workspaceRoot, additionalDirs);
|
|
@@ -1534,7 +1631,7 @@ async function runPatchMode(opts) {
|
|
|
1534
1631
|
parallelApiKey: _nullishCoalesce(searchConfig.parallelApiKey, () => ( process.env.PARALLEL_API_KEY))
|
|
1535
1632
|
});
|
|
1536
1633
|
try {
|
|
1537
|
-
const { AutohandAgent } = await Promise.resolve().then(() => _interopRequireWildcard(require("./agent-
|
|
1634
|
+
const { AutohandAgent } = await Promise.resolve().then(() => _interopRequireWildcard(require("./agent-B3EVT7NN.cjs")));
|
|
1538
1635
|
const agent = new AutohandAgent(llmProvider, files, runtime);
|
|
1539
1636
|
await agent.runCommandMode(opts.prompt);
|
|
1540
1637
|
const changes = files.getPendingChanges();
|
|
@@ -1567,9 +1664,9 @@ async function runAutoMode(opts) {
|
|
|
1567
1664
|
console.error(_chalk2.default.red("Error: --auto-mode requires a task prompt"));
|
|
1568
1665
|
process.exit(1);
|
|
1569
1666
|
}
|
|
1570
|
-
const config = await
|
|
1571
|
-
const originalWorkspaceRoot =
|
|
1572
|
-
const workspacePathValidation = await
|
|
1667
|
+
const config = await _chunkX5P6QQOBcjs.loadConfig.call(void 0, opts.config);
|
|
1668
|
+
const originalWorkspaceRoot = _chunkX5P6QQOBcjs.resolveWorkspaceRoot.call(void 0, config, opts.path);
|
|
1669
|
+
const workspacePathValidation = await _chunkQLZOMZO5cjs.validateWorkspacePath.call(void 0, originalWorkspaceRoot);
|
|
1573
1670
|
if (!workspacePathValidation.valid) {
|
|
1574
1671
|
console.error(_chalk2.default.red(`Error: ${workspacePathValidation.error}`));
|
|
1575
1672
|
process.exit(1);
|
|
@@ -1612,9 +1709,9 @@ async function runAutoMode(opts) {
|
|
|
1612
1709
|
config.agent.debug = true;
|
|
1613
1710
|
}
|
|
1614
1711
|
const { AutomodeManager, getAutomodeOptions } = await Promise.resolve().then(() => _interopRequireWildcard(require("./AutomodeManager-MPSXT2RH.cjs")));
|
|
1615
|
-
const { HookManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./HookManager-
|
|
1616
|
-
const { SessionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SessionManager-
|
|
1617
|
-
const { MemoryManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./MemoryManager-
|
|
1712
|
+
const { HookManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./HookManager-TVEQI5ZU.cjs")));
|
|
1713
|
+
const { SessionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./SessionManager-2IZGWASQ.cjs")));
|
|
1714
|
+
const { MemoryManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./MemoryManager-PMNAEZMB.cjs")));
|
|
1618
1715
|
const readline = await Promise.resolve().then(() => _interopRequireWildcard(require("readline")));
|
|
1619
1716
|
const automodeOptions = getAutomodeOptions(opts, config);
|
|
1620
1717
|
if (!automodeOptions) {
|
|
@@ -1628,7 +1725,7 @@ async function runAutoMode(opts) {
|
|
|
1628
1725
|
console.log(_chalk2.default.gray("Completion Marker:"), _chalk2.default.cyan(_nullishCoalesce(automodeOptions.completionPromise, () => ( "DONE"))));
|
|
1629
1726
|
console.log(_chalk2.default.gray("Worktree Isolation:"), _chalk2.default.cyan(automodeOptions.useWorktree !== false ? "enabled" : "disabled"));
|
|
1630
1727
|
const providerName = _nullishCoalesce(config.provider, () => ( "openrouter"));
|
|
1631
|
-
const modelName = _nullishCoalesce(_nullishCoalesce(opts.model, () => ( _optionalChain([config, 'access',
|
|
1728
|
+
const modelName = _nullishCoalesce(_nullishCoalesce(opts.model, () => ( _optionalChain([config, 'access', _78 => _78[providerName], 'optionalAccess', _79 => _79.model]))), () => ( "unknown"));
|
|
1632
1729
|
const sessionManager = new SessionManager();
|
|
1633
1730
|
await sessionManager.initialize();
|
|
1634
1731
|
const session = await sessionManager.createSession(originalWorkspaceRoot, modelName);
|
|
@@ -1655,7 +1752,7 @@ async function runAutoMode(opts) {
|
|
|
1655
1752
|
}
|
|
1656
1753
|
}
|
|
1657
1754
|
console.log();
|
|
1658
|
-
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-
|
|
1755
|
+
const { ProviderFactory } = await Promise.resolve().then(() => _interopRequireWildcard(require("./ProviderFactory-56N3ECE4.cjs")));
|
|
1659
1756
|
const llmProvider = ProviderFactory.create(config);
|
|
1660
1757
|
const { FileActionManager } = await Promise.resolve().then(() => _interopRequireWildcard(require("./filesystem-PGUPCMVK.cjs")));
|
|
1661
1758
|
const files = new FileActionManager(effectiveWorkspace, additionalDirs);
|
|
@@ -1696,7 +1793,7 @@ async function runAutoMode(opts) {
|
|
|
1696
1793
|
braveApiKey: _nullishCoalesce(searchConfig.braveApiKey, () => ( process.env.BRAVE_SEARCH_API_KEY)),
|
|
1697
1794
|
parallelApiKey: _nullishCoalesce(searchConfig.parallelApiKey, () => ( process.env.PARALLEL_API_KEY))
|
|
1698
1795
|
});
|
|
1699
|
-
const { AutohandAgent } = await Promise.resolve().then(() => _interopRequireWildcard(require("./agent-
|
|
1796
|
+
const { AutohandAgent } = await Promise.resolve().then(() => _interopRequireWildcard(require("./agent-B3EVT7NN.cjs")));
|
|
1700
1797
|
const agent = new AutohandAgent(llmProvider, files, runtime);
|
|
1701
1798
|
const runIteration = async (iteration, prompt, _abortSignal) => {
|
|
1702
1799
|
const iterationPrompt = buildIterationPrompt(prompt, iteration);
|
|
@@ -1735,14 +1832,14 @@ async function runAutoMode(opts) {
|
|
|
1735
1832
|
console.log(_chalk2.default.gray(`
|
|
1736
1833
|
\u{1F4CA} Auto-mode ${statusText2} after ${finalState.currentIteration} iterations`));
|
|
1737
1834
|
}
|
|
1738
|
-
const statusText = _optionalChain([finalState, 'optionalAccess',
|
|
1739
|
-
const exitCode = _optionalChain([finalState, 'optionalAccess',
|
|
1835
|
+
const statusText = _optionalChain([finalState, 'optionalAccess', _80 => _80.status]) === "completed" ? "completed" : `ended (${_optionalChain([finalState, 'optionalAccess', _81 => _81.status])})`;
|
|
1836
|
+
const exitCode = _optionalChain([finalState, 'optionalAccess', _82 => _82.status]) === "completed" ? 0 : 1;
|
|
1740
1837
|
const shouldHandoffToInteractive = opts.interactiveOnComplete === true && process.stdin.isTTY;
|
|
1741
1838
|
if (opts.interactiveOnComplete && !process.stdin.isTTY) {
|
|
1742
1839
|
console.log(_chalk2.default.yellow("\n\u26A0 --interactive-on-complete requested, but no TTY is available. Exiting after auto-mode.\n"));
|
|
1743
1840
|
}
|
|
1744
1841
|
if (!shouldHandoffToInteractive) {
|
|
1745
|
-
await sessionManager.closeSession(`Auto-mode ${statusText} after ${_nullishCoalesce(_optionalChain([finalState, 'optionalAccess',
|
|
1842
|
+
await sessionManager.closeSession(`Auto-mode ${statusText} after ${_nullishCoalesce(_optionalChain([finalState, 'optionalAccess', _83 => _83.currentIteration]), () => ( 0))} iterations: ${_optionalChain([opts, 'access', _84 => _84.autoMode, 'optionalAccess', _85 => _85.slice, 'call', _86 => _86(0, 50)])}...`);
|
|
1746
1843
|
console.log(_chalk2.default.gray(`
|
|
1747
1844
|
\u{1F4C1} Session saved: ${session.metadata.sessionId}`));
|
|
1748
1845
|
process.exit(exitCode);
|
|
@@ -1809,7 +1906,7 @@ function launchInTmuxIfRequested(opts) {
|
|
|
1809
1906
|
encoding: "utf8"
|
|
1810
1907
|
});
|
|
1811
1908
|
if (create.status !== 0) {
|
|
1812
|
-
const details = _optionalChain([create, 'access',
|
|
1909
|
+
const details = _optionalChain([create, 'access', _87 => _87.stderr, 'optionalAccess', _88 => _88.trim, 'call', _89 => _89()]) || _optionalChain([create, 'access', _90 => _90.stdout, 'optionalAccess', _91 => _91.trim, 'call', _92 => _92()]) || "unknown error";
|
|
1813
1910
|
console.error(_chalk2.default.red(`Failed to start tmux session: ${details}`));
|
|
1814
1911
|
process.exit(1);
|
|
1815
1912
|
}
|