autohand-cli 0.9.1 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +103 -79
- package/dist/AgentRegistry-BBQRODQC.cjs +18 -0
- package/dist/AgentRegistry-JBXZUPML.js +18 -0
- package/dist/{CommunitySkillsCache-ZACDPD4J.js → CommunitySkillsCache-CI7UN2DX.js} +2 -2
- package/dist/CommunitySkillsCache-XTQ6RMTA.cjs +8 -0
- package/dist/{HookManager-2S6AHOC3.js → HookManager-BELBPQQI.js} +1 -1
- package/dist/{HookManager-TVEQI5ZU.cjs → HookManager-ZL2CLAJW.cjs} +2 -2
- package/dist/{ImportWizard-AF2XL6DS.cjs → ImportWizard-U6CIJREW.cjs} +12 -12
- package/dist/{ImportWizard-AEBMAKXE.js → ImportWizard-VJFSWSUQ.js} +3 -3
- package/dist/LearnAdvisor-LAURA3IB.cjs +9 -0
- package/dist/LearnAdvisor-RFOBXFG7.js +9 -0
- package/dist/MemoryManager-3A2VRPF2.js +9 -0
- package/dist/MemoryManager-UOEQZIDC.cjs +9 -0
- package/dist/{NVIDIAProvider-SJPY3ONR.js → NVIDIAProvider-AFNJNWJM.js} +1 -1
- package/dist/NVIDIAProvider-L5GTYRCQ.cjs +14 -0
- package/dist/{PermissionManager-MT7KBNNR.js → PermissionManager-N2LDSOYF.js} +3 -3
- package/dist/PermissionManager-ZNURIEYR.cjs +11 -0
- package/dist/ProviderFactory-3BFS65V7.cjs +13 -0
- package/dist/{ProviderFactory-RB4RVAF6.js → ProviderFactory-XUT6BSGB.js} +4 -3
- package/dist/SessionManager-LGPQIA57.cjs +10 -0
- package/dist/{SessionManager-554PHVPC.js → SessionManager-OR4KDDDS.js} +2 -2
- package/dist/{SkillsRegistry-NHHMIUYJ.js → SkillsRegistry-IL3GWROU.js} +2 -2
- package/dist/SkillsRegistry-PM34DQNA.cjs +9 -0
- package/dist/SubAgent-2WG4QQB5.cjs +13 -0
- package/dist/SubAgent-ICGN23TQ.js +13 -0
- package/dist/{about-3USFSGOH.js → about-OYVGQMJJ.js} +3 -3
- package/dist/{about-QR52U5DD.cjs → about-U2BH7HDR.cjs} +4 -4
- package/dist/{acp-5Y2W6OZP.js → acp-JWHGXZL5.js} +169 -103
- package/dist/{acp-GSYE75OB.cjs → acp-S37JOBCS.cjs} +184 -118
- package/dist/{actionExecutor-KHUU3Z3Q.cjs → actionExecutor-2QEPMELQ.cjs} +13 -13
- package/dist/{actionExecutor-PLQJZLZV.js → actionExecutor-6NCCORRB.js} +12 -12
- package/dist/add-dir-KFUHSIR2.cjs +11 -0
- package/dist/{add-dir-HCERJDBR.js → add-dir-MM2BM2Z2.js} +2 -2
- package/dist/agent-DUIYLIVN.js +132 -0
- package/dist/agent-YYEHGDAK.cjs +132 -0
- package/dist/agents-GBGG4CW7.cjs +19 -0
- package/dist/agents-ZH34C72F.js +19 -0
- package/dist/agents-new-ERXLS7SB.cjs +17 -0
- package/dist/{agents-new-7GAQ25EK.js → agents-new-EVTGPTA4.js} +6 -6
- package/dist/{autoSkill-66PKCYTW.js → autoSkill-HEWKJ5JV.js} +2 -2
- package/dist/autoSkill-YL6PN6AV.cjs +20 -0
- package/dist/automode-4BJ7FNPL.cjs +10 -0
- package/dist/{automode-BUF3VGXU.js → automode-S4U7A7Q2.js} +2 -2
- package/dist/chrome-45ZXHL5N.cjs +22 -0
- package/dist/{chrome-Y3T7EIHG.js → chrome-BBSRVG6S.js} +2 -2
- package/dist/chrome-IFVZRHAT.cjs +50 -0
- package/dist/chrome-MYE6DNA2.js +22 -0
- package/dist/{chunk-45CHNQM6.cjs → chunk-24CEJYEG.cjs} +93 -31
- package/dist/{chunk-6JWCGQJU.cjs → chunk-255GIVM2.cjs} +6 -6
- package/dist/{chunk-D546G7DA.cjs → chunk-2BDSR2OW.cjs} +98 -75
- package/dist/{chunk-PGFLPURU.js → chunk-2BPIR7LA.js} +121 -4
- package/dist/{chunk-AOKXYGBQ.cjs → chunk-2NY7OHBF.cjs} +41 -26
- package/dist/chunk-2WUNHTXL.js +303 -0
- package/dist/{chunk-PQBYFEBL.cjs → chunk-34B6ZO6W.cjs} +124 -7
- package/dist/{chunk-5JTTM5SC.js → chunk-3BJN7GAH.js} +1 -1
- package/dist/{chunk-3UC6DMFI.cjs → chunk-3CAXECWJ.cjs} +15 -15
- package/dist/{chunk-YWH55BWK.cjs → chunk-3CBYUBZC.cjs} +6 -9
- package/dist/chunk-3DF3GZQ7.js +277 -0
- package/dist/{chunk-KASXKDF2.cjs → chunk-3JURXAL6.cjs} +58 -7
- package/dist/{chunk-JV5HVCHU.cjs → chunk-3KWAP2Y3.cjs} +88 -9
- package/dist/{chunk-WPE2XHVX.js → chunk-3MCK6UBL.js} +1 -1
- package/dist/{chunk-U2QUMKCB.js → chunk-3TH7IK4M.js} +62 -9
- package/dist/{chunk-YXM6SA7P.js → chunk-3V77OB3W.js} +3 -3
- package/dist/{chunk-MZN6JBRZ.cjs → chunk-3Y5UEK7K.cjs} +4 -4
- package/dist/{chunk-BP37FVBM.js → chunk-4GPPSBEZ.js} +3 -3
- package/dist/{chunk-4XVLNOFA.js → chunk-5CMBAJ6K.js} +20 -3
- package/dist/{chunk-PNIAIOMZ.cjs → chunk-5YRXFBYZ.cjs} +35 -6
- package/dist/chunk-6AC2TT26.js +156 -0
- package/dist/{chunk-PSAH4ZQB.cjs → chunk-6EIQ6A6U.cjs} +2 -2
- package/dist/{chunk-YQDI753V.js → chunk-6HSEDXVF.js} +4 -4
- package/dist/{chunk-O5GI6SR3.js → chunk-6NUXK62F.js} +1 -1
- package/dist/{chunk-HVCIB4SW.cjs → chunk-6TGCAPYH.cjs} +62 -9
- package/dist/{chunk-HZWU6IO3.js → chunk-6W3SZCSP.js} +2 -5
- package/dist/{chunk-Q3BS6FPM.js → chunk-73LV3DDZ.js} +4 -4
- package/dist/{chunk-ZNGRLCFQ.js → chunk-7BGGLIQF.js} +83 -1
- package/dist/{chunk-ZNYZB7XY.cjs → chunk-7EEK7CRR.cjs} +83 -1
- package/dist/{chunk-HK5A54AV.cjs → chunk-7TO3PDMV.cjs} +48 -4
- package/dist/chunk-7UU22RSH.cjs +277 -0
- package/dist/{chunk-XNIMSVS6.cjs → chunk-A3GAM6FM.cjs} +11 -11
- package/dist/{chunk-W5QLA6WP.cjs → chunk-A7DJU75T.cjs} +8 -8
- package/dist/{chunk-7XTUL7ZD.cjs → chunk-AAAO4ERQ.cjs} +9 -9
- package/dist/{chunk-M5DK524Z.js → chunk-AAJLMP57.js} +2 -2
- package/dist/chunk-ABR756QN.js +529 -0
- package/dist/{chunk-OIGYWOL6.js → chunk-APFGDIPD.js} +3 -1
- package/dist/{chunk-PTTZI4QZ.js → chunk-APQYRMYL.js} +4 -4
- package/dist/{chunk-CO2AADYU.cjs → chunk-AZKOIF2G.cjs} +55 -17
- package/dist/{chunk-P6SLT2F4.cjs → chunk-AZLHUPNC.cjs} +2 -2
- package/dist/chunk-B55VCYSQ.cjs +30 -0
- package/dist/{chunk-JMJRFSNJ.js → chunk-BLQUMSM3.js} +1 -1
- package/dist/{chunk-MGNXABSU.cjs → chunk-BXKPX6K4.cjs} +9 -9
- package/dist/{chunk-MQQH4XQH.cjs → chunk-C66FN2LP.cjs} +4 -4
- package/dist/{chunk-CECH6QQP.js → chunk-CH7KUFAS.js} +10 -10
- package/dist/{chunk-PIXQ2AVM.cjs → chunk-CILSXOPI.cjs} +17 -17
- package/dist/{chunk-IEPLQ47J.js → chunk-CM24K6ZT.js} +89 -12
- package/dist/chunk-CMEZ42F2.cjs +303 -0
- package/dist/{chunk-X5P6QQOB.cjs → chunk-CNQKIWIS.cjs} +100 -23
- package/dist/{chunk-AQ5PVHOC.cjs → chunk-CSUGNNJY.cjs} +4 -3
- package/dist/{chunk-QRQF3556.js → chunk-D6HB3H3L.js} +25 -10
- package/dist/{chunk-XZVDYC5U.js → chunk-D7AYKVKW.js} +2 -2
- package/dist/{chunk-3UHRCHKB.cjs → chunk-DLCXWOWT.cjs} +23 -23
- package/dist/{chunk-CK4HAHVY.cjs → chunk-DMM2BKSV.cjs} +118 -25
- package/dist/{chunk-SPQ7QIQ6.js → chunk-DW3DPV77.js} +1 -1
- package/dist/chunk-ECQD2QC3.cjs +33 -0
- package/dist/{chunk-SNDDZG5H.js → chunk-EEYOS3UC.js} +90 -70
- package/dist/{chunk-DGBPWODD.js → chunk-EF2EN5CR.js} +2 -2
- package/dist/{chunk-M7B7RRBK.cjs → chunk-EFXFURDY.cjs} +138 -51
- package/dist/chunk-EK34UZPB.cjs +40 -0
- package/dist/{chunk-CRTCZ4WL.cjs → chunk-FJR6EZLO.cjs} +3834 -2337
- package/dist/{chunk-TYBPTKFT.js → chunk-FPO7YNPQ.js} +1 -1
- package/dist/{chunk-X3TI5TJJ.js → chunk-FS4I6BNR.js} +1 -1
- package/dist/{chunk-WNJXIACY.js → chunk-FSJ2MNOC.js} +3 -3
- package/dist/{chunk-44ZWOBTI.js → chunk-GEHZMC4G.js} +12 -9
- package/dist/{chunk-Y5BDE24P.cjs → chunk-GO6C2RAR.cjs} +3 -0
- package/dist/{chunk-XW3XCK4E.cjs → chunk-GSMR6V36.cjs} +4 -4
- package/dist/{chunk-H426KOGY.js → chunk-GSZWATME.js} +1 -1
- package/dist/{chunk-S5JNQIGL.cjs → chunk-GYLGCR6F.cjs} +5 -5
- package/dist/{chunk-ONVYXTUT.cjs → chunk-H3OOWNYQ.cjs} +3 -3
- package/dist/{chunk-V5ELP2XE.js → chunk-H65446XW.js} +110 -15
- package/dist/{chunk-LANGD5CO.js → chunk-H7HXRRHK.js} +45 -1
- package/dist/{chunk-RBXBH6EB.cjs → chunk-HN2JTDN5.cjs} +17 -17
- package/dist/{chunk-SOVR7S3T.cjs → chunk-HNXUZ5OY.cjs} +2 -2
- package/dist/{chunk-AZ47LKD5.cjs → chunk-HOYT3E65.cjs} +3 -3
- package/dist/{chunk-P4FUTSVK.js → chunk-HTPY5ESD.js} +3 -3
- package/dist/{chunk-5SFV2NCY.cjs → chunk-HVLWH2AF.cjs} +10 -10
- package/dist/{chunk-VQHSYAPZ.cjs → chunk-HZTEU4W5.cjs} +62 -93
- package/dist/{chunk-4XFHP2SN.cjs → chunk-I5T7LPFP.cjs} +7 -7
- package/dist/{chunk-ZPLCAXJW.js → chunk-IB5CJXE7.js} +7 -7
- package/dist/{chunk-KM7R5YPS.cjs → chunk-INNXFLDR.cjs} +9 -6
- package/dist/{chunk-2ESQR35E.cjs → chunk-JFLEP3T7.cjs} +10 -10
- package/dist/chunk-JJGDOBFL.js +40 -0
- package/dist/{chunk-5A7ZL64N.js → chunk-JSU46T6K.js} +1 -1
- package/dist/{chunk-NB6M6ESM.js → chunk-K6WN6BT4.js} +1 -1
- package/dist/{chunk-QQ64HEHP.cjs → chunk-KIQH3SMT.cjs} +34 -31
- package/dist/{chunk-MANJ67D3.js → chunk-KPRXHIE2.js} +52 -83
- package/dist/{chunk-6HF6XSCC.js → chunk-LIO3RX2Z.js} +2 -2
- package/dist/{chunk-NZ3ZWLUW.js → chunk-LOSXLH7P.js} +109 -16
- package/dist/{chunk-NZ7GCK7Y.cjs → chunk-LSOR72PB.cjs} +23 -23
- package/dist/{chunk-6AYJCDTA.js → chunk-MA3AVDCC.js} +47 -9
- package/dist/{chunk-PZZMIYII.js → chunk-ME3S2WIR.js} +3 -3
- package/dist/{chunk-2IW5YFJ4.js → chunk-NC2I2M4P.js} +4 -4
- package/dist/{chunk-AE2ILW25.cjs → chunk-NC4A4LVC.cjs} +13 -13
- package/dist/{chunk-EEHWALXA.js → chunk-NGEK5FCJ.js} +85 -3
- package/dist/{chunk-MMKZSJUN.js → chunk-NKW6CHXQ.js} +1 -1
- package/dist/{chunk-JB3JCYBJ.js → chunk-NOWCRKP2.js} +4 -3
- package/dist/{chunk-3ZOOH44N.js → chunk-NUB2LMB6.js} +2 -2
- package/dist/chunk-O246MKIW.cjs +267 -0
- package/dist/{chunk-SRMGWMQO.js → chunk-OGFWL2PS.js} +1 -1
- package/dist/{chunk-YISPVAXO.cjs → chunk-ONNGAR6W.cjs} +340 -597
- package/dist/{chunk-7WAUCLLQ.js → chunk-OOFR6A62.js} +33 -4
- package/dist/{chunk-4E7SHPNQ.js → chunk-OZ7FHO7J.js} +2 -2
- package/dist/{chunk-NV6LCD2I.cjs → chunk-P5EWGUI2.cjs} +109 -27
- package/dist/{chunk-YC5OBZQU.js → chunk-P6BQJPAI.js} +41 -18
- package/dist/{chunk-SHRLFX6F.js → chunk-PG2JIU5M.js} +57 -6
- package/dist/{chunk-6OECOAK5.cjs → chunk-PI27G2ED.cjs} +25 -8
- package/dist/{chunk-TR6NECEZ.js → chunk-PI7LRPL6.js} +1 -1
- package/dist/{chunk-GAOPJ5S3.cjs → chunk-PMPEC5HN.cjs} +18 -15
- package/dist/{chunk-5GCQ5UMV.cjs → chunk-PYUP7AKY.cjs} +14 -14
- package/dist/{chunk-S5QKRA2V.js → chunk-QC5Z3ZT5.js} +2 -2
- package/dist/chunk-QDO4L2A7.cjs +156 -0
- package/dist/{chunk-LFDPTJYF.cjs → chunk-QDXRI5AM.cjs} +1 -1
- package/dist/{chunk-26G7YGOW.js → chunk-QVXMSQOG.js} +84 -21
- package/dist/{chunk-SVVP4UUZ.cjs → chunk-R4UKBKDY.cjs} +11 -11
- package/dist/{chunk-HG3ZASBH.cjs → chunk-R75AWII3.cjs} +112 -17
- package/dist/{chunk-TE4SYTWR.cjs → chunk-RD5PLUIX.cjs} +8 -8
- package/dist/{chunk-FFHSCM5M.js → chunk-RGB34CV5.js} +3 -3
- package/dist/{chunk-SY2P3Z5W.cjs → chunk-RJCZLFHE.cjs} +96 -32
- package/dist/{chunk-22SCR3EV.cjs → chunk-RKWNM2BJ.cjs} +2 -2
- package/dist/{chunk-FBQJZKFX.js → chunk-RMVONICR.js} +3 -3
- package/dist/{chunk-PY73W5MQ.cjs → chunk-RPSYRJL7.cjs} +10 -4
- package/dist/{chunk-HXHE2KAO.js → chunk-RWKU2X7O.js} +7 -4
- package/dist/{chunk-NQZH5CR2.cjs → chunk-RZLEGVMH.cjs} +102 -5
- package/dist/{chunk-KMP6Y3LJ.js → chunk-S2L3Y677.js} +1 -1
- package/dist/{chunk-GSDV75A5.js → chunk-S7KVUIOS.js} +1 -1
- package/dist/{chunk-7PT646AL.cjs → chunk-SACJJ6NO.cjs} +5 -3
- package/dist/{chunk-LEZEWKPA.js → chunk-SJQU2ZFR.js} +96 -32
- package/dist/{chunk-65LRPW5W.js → chunk-SKAQKQFF.js} +12 -2
- package/dist/chunk-T4DXP5OP.js +30 -0
- package/dist/{chunk-EYHKL4QC.js → chunk-T6FTB6K2.js} +1 -1
- package/dist/{chunk-DNSD7DVJ.js → chunk-T6N6GRFT.js} +13 -10
- package/dist/{chunk-575PXZX7.js → chunk-TJFKA6A7.js} +82 -3
- package/dist/{chunk-HSWWM6AM.js → chunk-TJZUPS4Z.js} +34 -291
- package/dist/{chunk-DHUQZ53B.cjs → chunk-TLKHZ425.cjs} +2 -2
- package/dist/{chunk-VLGGMQUN.cjs → chunk-TQ24NLXO.cjs} +6 -6
- package/dist/{chunk-LUMV3DB2.js → chunk-TWBAU46X.js} +1 -1
- package/dist/{chunk-EA2MS25U.cjs → chunk-TZB5XADL.cjs} +4 -4
- package/dist/{chunk-U6PLSPMD.cjs → chunk-UAYXZXWU.cjs} +4 -4
- package/dist/{chunk-OV3T5MUH.cjs → chunk-UKBFNBDO.cjs} +11 -11
- package/dist/{chunk-SZD45IDG.js → chunk-UMJYX5KD.js} +101 -4
- package/dist/{chunk-B76FJKEJ.cjs → chunk-USKYTHDL.cjs} +69 -18
- package/dist/{chunk-NZQFKXM3.cjs → chunk-VAJUSZMC.cjs} +15 -15
- package/dist/{chunk-SDLY4X3G.js → chunk-VGQG4NBJ.js} +2 -2
- package/dist/{chunk-KWXGDSYT.js → chunk-VLUIVJ3J.js} +58 -7
- package/dist/{chunk-KJ26T7GM.cjs → chunk-VOBINVMV.cjs} +105 -42
- package/dist/{chunk-C5QIQQ37.js → chunk-VSHKKCSH.js} +16 -5
- package/dist/{chunk-L46OUKW5.cjs → chunk-VSZU3MGA.cjs} +28 -17
- package/dist/{chunk-YFXTE422.cjs → chunk-VWHAUB77.cjs} +8 -3
- package/dist/{chunk-UWZ4G3SQ.js → chunk-VXGYFX45.js} +4 -4
- package/dist/{chunk-C46B72VK.js → chunk-WH6YUQDB.js} +141 -54
- package/dist/{chunk-SFFEKZGC.js → chunk-WQ6TD55V.js} +2 -2
- package/dist/{chunk-7PJKTSRN.js → chunk-WQWECXTY.js} +3 -3
- package/dist/{chunk-DSSCERHI.cjs → chunk-WVDJUJH6.cjs} +2 -2
- package/dist/{chunk-JPFRI4L4.js → chunk-X24VIVDZ.js} +210 -26
- package/dist/{chunk-7IRQ7JEH.js → chunk-X4NRTLXD.js} +7 -1
- package/dist/{chunk-7MY4JHER.js → chunk-X53SHYCG.js} +2 -2
- package/dist/{chunk-RFUKZIJF.cjs → chunk-XB2Z4ZAK.cjs} +5 -5
- package/dist/{chunk-WJYFLQ7G.cjs → chunk-Y47OJGLB.cjs} +3 -3
- package/dist/{chunk-HC2Q6A3E.cjs → chunk-Y4MN27V3.cjs} +361 -177
- package/dist/{chunk-ZK6HOR62.js → chunk-YEHFYZFU.js} +7 -2
- package/dist/{chunk-FFBDRUO5.cjs → chunk-YICIUY23.cjs} +1 -1
- package/dist/{chunk-63ANVAOJ.cjs → chunk-YMXYC777.cjs} +3 -3
- package/dist/{chunk-X7XMITIL.cjs → chunk-Z3GRWK6O.cjs} +8 -8
- package/dist/{chunk-3ICORF7M.cjs → chunk-Z5GG2KSL.cjs} +4 -4
- package/dist/{chunk-I2ZK3AOD.js → chunk-ZER7DYQK.js} +2 -2
- package/dist/{chunk-V3SZLWEQ.cjs → chunk-ZFDXZEZJ.cjs} +11 -11
- package/dist/{chunk-QBYGMMDD.js → chunk-ZFV4HJA6.js} +66 -4
- package/dist/chunk-ZHMYTI5D.cjs +529 -0
- package/dist/{chunk-4567QNRB.js → chunk-ZLR2TFBC.js} +3 -0
- package/dist/{chunk-OCATAKXV.cjs → chunk-ZTWNU5QZ.cjs} +20 -20
- package/dist/{chunk-CCIDL4SA.js → chunk-ZVLVLDYN.js} +2915 -1418
- package/dist/clear-AJGXD2BB.cjs +12 -0
- package/dist/{clear-Y5TO3RZA.js → clear-HAHDSWKW.js} +3 -3
- package/dist/communityInstaller-IRR6M3N6.cjs +22 -0
- package/dist/{communityInstaller-RVL4STPS.js → communityInstaller-OLKEUGMX.js} +5 -5
- package/dist/completion-G7Z436TF.cjs +17 -0
- package/dist/{completion-SE3XYG74.js → completion-ZS3AXJ6A.js} +4 -4
- package/dist/{config-7KPHKFTP.js → config-OWYAQPCX.js} +5 -4
- package/dist/config-W2BHT2QE.cjs +22 -0
- package/dist/{constants-EJFAWJQI.js → constants-AS6K67AA.js} +5 -3
- package/dist/constants-B4W5BT7F.cjs +23 -0
- package/dist/{export-BJVIDZC4.js → export-5HIU3KMD.js} +4 -4
- package/dist/export-GFD32UY2.cjs +15 -0
- package/dist/{extractSessionMemories-A2JX5WJ2.js → extractSessionMemories-K6ZVAW2F.js} +1 -1
- package/dist/{extractSessionMemories-XL3MS37F.cjs → extractSessionMemories-LLOIJR5U.cjs} +2 -2
- package/dist/feature-KP74CZ3F.cjs +14 -0
- package/dist/{feature-V4JF5TNJ.js → feature-OPNVMB2E.js} +2 -2
- package/dist/features-LT55MURX.cjs +24 -0
- package/dist/features-ZDIU26WX.js +24 -0
- package/dist/feedback-7WTJFQ6S.js +18 -0
- package/dist/feedback-CEOJ3453.cjs +18 -0
- package/dist/go-2CY5SZNR.js +16 -0
- package/dist/go-O2CSQON4.cjs +16 -0
- package/dist/goal-DL2N2AWT.cjs +16 -0
- package/dist/goal-IJS7VZSG.js +16 -0
- package/dist/help-RNOGDEBA.cjs +12 -0
- package/dist/{help-MLIROWKM.js → help-TCWD2IRH.js} +2 -2
- package/dist/{history-GQJ6RZD6.js → history-ATOR5OQV.js} +2 -2
- package/dist/history-UUSGX2AL.cjs +14 -0
- package/dist/{hooks-PPFHCF7T.js → hooks-R3Z5QKUP.js} +5 -5
- package/dist/hooks-RWM5UY67.cjs +18 -0
- package/dist/{i18n-Q7UZJRPL.js → i18n-4QI4TD4I.js} +1 -1
- package/dist/i18n-MFAEU5RV.cjs +33 -0
- package/dist/{ide-BUSVE54P.js → ide-6PBTCCUQ.js} +4 -4
- package/dist/ide-UE3G7NMQ.cjs +15 -0
- package/dist/{import-C7S6UJMW.cjs → import-2IG76KAN.cjs} +6 -4
- package/dist/{import-U47DXCA7.js → import-E47QL4DW.js} +2 -2
- package/dist/import-NQDNBFUL.cjs +10 -0
- package/dist/{import-3VBKI6BN.js → import-VQIHGJWS.js} +6 -4
- package/dist/index.cjs +444 -334
- package/dist/index.d.cts +38 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.js +324 -214
- package/dist/init-DX3RDGDT.cjs +10 -0
- package/dist/{init-Q2O4R42R.js → init-Q54OAAFZ.js} +2 -2
- package/dist/{inputPrompt-3CFZDUBH.js → inputPrompt-V2VBDRM7.js} +2 -2
- package/dist/inputPrompt-WVGVWAHS.cjs +90 -0
- package/dist/language-I6KXAOXD.js +23 -0
- package/dist/language-XMIVOH5E.cjs +23 -0
- package/dist/learn-JPVVGTKU.js +23 -0
- package/dist/learn-NLSHI2MZ.cjs +23 -0
- package/dist/login-NABQYLYC.cjs +28 -0
- package/dist/login-XPOVFSWN.js +28 -0
- package/dist/logout-HNHCGB4Q.js +25 -0
- package/dist/logout-SKGDXJSW.cjs +25 -0
- package/dist/{mcp-AH3MMUBU.js → mcp-EN73YFGZ.js} +8 -7
- package/dist/mcp-TADZCPJQ.cjs +22 -0
- package/dist/{mcp-install-IA4ZS2SV.cjs → mcp-install-2GKWWBAS.cjs} +14 -13
- package/dist/{mcp-install-222PCKSW.js → mcp-install-3TBTVSHW.js} +9 -8
- package/dist/memory-GRXFTDIN.cjs +10 -0
- package/dist/{memory-VB46T5H3.js → memory-K2P3CDCH.js} +2 -2
- package/dist/{model-SJJG64AM.js → model-DEG22OWA.js} +2 -2
- package/dist/model-OSD74T7Z.cjs +10 -0
- package/dist/new-4NWBOATU.cjs +12 -0
- package/dist/{new-ERZ5C6CN.js → new-KJAP2MB6.js} +3 -3
- package/dist/{onboarding-ZQXMPSMJ.js → onboarding-2U5WE2OA.js} +17 -14
- package/dist/onboarding-5DZFCO5Q.cjs +39 -0
- package/dist/permissions-KY5I6YQ3.cjs +10 -0
- package/dist/{permissions-7ACNFK7A.js → permissions-TKYON7PP.js} +2 -2
- package/dist/{plan-YYUAXPTL.js → plan-DYHHLZSS.js} +1 -1
- package/dist/plan-PYKP652W.cjs +13 -0
- package/dist/quit-GSKJL42O.js +14 -0
- package/dist/quit-TQSRTBUT.cjs +14 -0
- package/dist/{registry-4DXUDKJN.js → registry-EZ4V4TUQ.js} +1339 -1
- package/dist/{registry-UEO3ETZ7.cjs → registry-LCWYI4IB.cjs} +1378 -40
- package/dist/resume-4VWJXARX.cjs +17 -0
- package/dist/{resume-XSXZMDMD.js → resume-TLHWWWFN.js} +5 -5
- package/dist/{review-QHP2KP4Q.js → review-CSK4IYTO.js} +1 -1
- package/dist/review-XLJEUH5K.cjs +9 -0
- package/dist/{rpc-XH7QLN4H.js → rpc-3DLQBDWU.js} +151 -124
- package/dist/{rpc-YF54T7JU.cjs → rpc-O36WUU3L.cjs} +169 -142
- package/dist/search-DSX2CY4A.cjs +22 -0
- package/dist/search-I3QUDUQL.js +22 -0
- package/dist/sessionBranching-DVNOUWJT.cjs +19 -0
- package/dist/sessionBranching-FKV4CR36.js +19 -0
- package/dist/sessions-3JUOT3ED.cjs +10 -0
- package/dist/{sessions-NJYHJOEL.js → sessions-VWMDIPOS.js} +2 -2
- package/dist/{settings-ZXUQH3DO.js → settings-FT2LZZUV.js} +11 -8
- package/dist/settings-RL4KNWHB.cjs +45 -0
- package/dist/setup-HQEJVOYT.js +32 -0
- package/dist/setup-MN54LKOL.cjs +32 -0
- package/dist/share-BUAFZNBX.cjs +17 -0
- package/dist/{share-WFAGZ5PY.js → share-CGB6MAVJ.js} +6 -6
- package/dist/skills/builtin/code-reviewer/SKILL.md +64 -0
- package/dist/skills/builtin/goal-writer/SKILL.md +124 -0
- package/dist/{skills-NBTNDVAY.js → skills-7DKR3HRZ.js} +7 -7
- package/dist/{skills-OB6RDW7D.js → skills-BBBENOEY.js} +9 -9
- package/dist/skills-OQM7IHAF.cjs +29 -0
- package/dist/{skills-ZROBG3RZ.cjs → skills-RA2PKL63.cjs} +9 -9
- package/dist/{skills-install-ILX6QVEF.cjs → skills-install-D7K476SL.cjs} +15 -15
- package/dist/{skills-install-BHTIEMKH.js → skills-install-T4SOKJSL.js} +8 -8
- package/dist/{skills-new-YMRP2HNO.js → skills-new-S33NGEU3.js} +6 -6
- package/dist/skills-new-UVYH53MD.cjs +18 -0
- package/dist/slashCommands-MWOUDSQP.js +111 -0
- package/dist/slashCommands-XASURUTV.cjs +111 -0
- package/dist/squad-PIIYDFVH.cjs +15 -0
- package/dist/squad-VHYOVEJP.js +15 -0
- package/dist/status-GHFTXQBL.js +25 -0
- package/dist/status-WXMIJIU3.cjs +25 -0
- package/dist/statusline-2K7AC6ZQ.js +21 -0
- package/dist/statusline-GROI4HOC.cjs +21 -0
- package/dist/sync-254WF6JI.cjs +42 -0
- package/dist/sync-2DIZN4EH.cjs +24 -0
- package/dist/{sync-OCJN4ZSO.js → sync-J6I2ZUKQ.js} +5 -3
- package/dist/{sync-7C25MOT2.js → sync-Z3LVSEEV.js} +8 -6
- package/dist/{teammate-D77B6QRT.cjs → teammate-EXR76PEQ.cjs} +5 -5
- package/dist/{teammate-EZCMHOIL.js → teammate-K4DAOFEQ.js} +5 -5
- package/dist/theme-MVQDSU47.js +23 -0
- package/dist/theme-QAKEYWJG.cjs +23 -0
- package/dist/ui/questionModal.cjs +5 -5
- package/dist/ui/questionModal.js +4 -4
- package/dist/{undo-GNUTFXCW.js → undo-5AU47JHF.js} +2 -2
- package/dist/undo-ME6WKUXZ.cjs +10 -0
- package/dist/{usage-QSTNSDAO.js → usage-QTKO2YMD.js} +6 -5
- package/dist/usage-TYNJKVER.cjs +25 -0
- package/package.json +4 -3
- package/dist/AgentRegistry-GOV7FN2O.js +0 -10
- package/dist/AgentRegistry-J2C6JBZ3.cjs +0 -10
- package/dist/CommunitySkillsCache-22BB3J6H.cjs +0 -8
- package/dist/LearnAdvisor-KKEQ5QCV.js +0 -9
- package/dist/LearnAdvisor-Q7RAYLPF.cjs +0 -9
- package/dist/MemoryManager-PMNAEZMB.cjs +0 -8
- package/dist/MemoryManager-QZRLTUB5.js +0 -8
- package/dist/NVIDIAProvider-C3FWQOBZ.cjs +0 -14
- package/dist/PermissionManager-URCNP5EC.cjs +0 -11
- package/dist/ProviderFactory-56N3ECE4.cjs +0 -12
- package/dist/SessionManager-2IZGWASQ.cjs +0 -10
- package/dist/SkillsRegistry-GMRVONOQ.cjs +0 -9
- package/dist/SubAgent-4GOR2FIJ.js +0 -13
- package/dist/SubAgent-ZJMDH4FI.cjs +0 -13
- package/dist/add-dir-BTAD5OZS.cjs +0 -11
- package/dist/agent-B3EVT7NN.cjs +0 -126
- package/dist/agent-SATQ3WZ3.js +0 -126
- package/dist/agents-44CRJGM7.cjs +0 -18
- package/dist/agents-NN4ZAJ7R.js +0 -18
- package/dist/agents-new-6D6G4QS6.cjs +0 -17
- package/dist/autoSkill-VQLGBELN.cjs +0 -20
- package/dist/automode-45DWV4TN.cjs +0 -10
- package/dist/chrome-Q2U73HZB.cjs +0 -50
- package/dist/chrome-Q54OALOK.cjs +0 -21
- package/dist/chrome-ZNJ46OYW.js +0 -21
- package/dist/chunk-JCUHCH37.cjs +0 -247
- package/dist/chunk-VKOXFT4L.cjs +0 -23
- package/dist/clear-QJXU25IF.cjs +0 -12
- package/dist/communityInstaller-LXMVKVAV.cjs +0 -22
- package/dist/completion-JX4T2ONW.cjs +0 -17
- package/dist/config-3224PRW4.cjs +0 -21
- package/dist/constants-MCCGUU5F.cjs +0 -21
- package/dist/export-KU4557HK.cjs +0 -15
- package/dist/feature-K3LG5IJP.cjs +0 -14
- package/dist/features-5OJTLKS7.js +0 -23
- package/dist/features-VCBJQXCX.cjs +0 -23
- package/dist/feedback-D4437VE4.js +0 -18
- package/dist/feedback-VZPEHGFY.cjs +0 -18
- package/dist/go-X4E6BCD6.js +0 -12
- package/dist/go-XREVFS5I.cjs +0 -12
- package/dist/goal-4M3J6JS2.cjs +0 -16
- package/dist/goal-EI66BV7W.js +0 -16
- package/dist/help-GGFS7WHY.cjs +0 -12
- package/dist/history-J4LUIOSI.cjs +0 -14
- package/dist/hooks-FSRIUS6A.cjs +0 -18
- package/dist/i18n-CI6VFXL5.cjs +0 -33
- package/dist/ide-YR27BPGM.cjs +0 -15
- package/dist/import-DBK4OCDF.cjs +0 -10
- package/dist/init-OXTYS72D.cjs +0 -10
- package/dist/inputPrompt-JMACL4EB.cjs +0 -90
- package/dist/language-EK3M6UBV.cjs +0 -22
- package/dist/language-Q3RUGGOW.js +0 -22
- package/dist/learn-3DSX7DYG.cjs +0 -23
- package/dist/learn-OPOH5L43.js +0 -23
- package/dist/login-GST7MWXJ.cjs +0 -27
- package/dist/login-Q7DZKAX4.js +0 -27
- package/dist/logout-2G7OUK7I.cjs +0 -24
- package/dist/logout-FNBBL2UI.js +0 -24
- package/dist/mcp-DW7R63IB.cjs +0 -21
- package/dist/memory-6NX3DAIY.cjs +0 -10
- package/dist/model-64NAELFS.cjs +0 -10
- package/dist/new-DU5SOOOY.cjs +0 -12
- package/dist/onboarding-2U2BV2KE.cjs +0 -36
- package/dist/permissions-GSNNV7RJ.cjs +0 -10
- package/dist/plan-XEJMOT55.cjs +0 -13
- package/dist/quit-WY6T267G.js +0 -10
- package/dist/quit-XIRE2KRE.cjs +0 -10
- package/dist/resume-RQZ3WXBP.cjs +0 -17
- package/dist/review-UWHWQHCB.cjs +0 -9
- package/dist/search-VXXFGZWU.cjs +0 -21
- package/dist/search-YAWGX7P7.js +0 -21
- package/dist/sessions-OSG3UJEZ.cjs +0 -10
- package/dist/settings-SO2UIGWV.cjs +0 -42
- package/dist/setup-KG7EGKF5.js +0 -30
- package/dist/setup-RSOPCQ57.cjs +0 -30
- package/dist/share-ZU3SGACF.cjs +0 -17
- package/dist/skills-KBVAQAD2.cjs +0 -29
- package/dist/skills-new-B45VQ2PP.cjs +0 -18
- package/dist/slashCommands-53VYIBJU.js +0 -105
- package/dist/slashCommands-BG2RGGZ6.cjs +0 -105
- package/dist/status-CQ2IUOVK.cjs +0 -24
- package/dist/status-E7IGNVPC.js +0 -24
- package/dist/sync-XRP46IVG.cjs +0 -40
- package/dist/sync-ZMFVE7T4.cjs +0 -22
- package/dist/theme-KKRDE6P7.cjs +0 -22
- package/dist/theme-XF7XIWBQ.js +0 -22
- package/dist/undo-U4KN7QQM.cjs +0 -10
- package/dist/usage-YDEMQBNQ.cjs +0 -24
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkCSUGNNJYcjs = require('./chunk-CSUGNNJY.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkDMM2BKSVcjs = require('./chunk-DMM2BKSV.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunk3JURXAL6cjs = require('./chunk-3JURXAL6.cjs');
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _chunkRJCZLFHEcjs = require('./chunk-RJCZLFHE.cjs');
|
|
14
14
|
|
|
15
15
|
// src/commands/share.ts
|
|
16
16
|
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
@@ -180,7 +180,7 @@ function serializeSession(session, options) {
|
|
|
180
180
|
const toolUsage = extractToolUsage(messages);
|
|
181
181
|
const gitDiff = options.gitDiff ? parseGitDiff(options.gitDiff) : void 0;
|
|
182
182
|
const client = {
|
|
183
|
-
cliVersion:
|
|
183
|
+
cliVersion: _chunkCSUGNNJYcjs.package_default.version,
|
|
184
184
|
platform: process.platform,
|
|
185
185
|
deviceId: options.deviceId
|
|
186
186
|
};
|
|
@@ -216,7 +216,7 @@ var DEFAULT_CONFIG = {
|
|
|
216
216
|
// 30s for large payloads
|
|
217
217
|
maxRetries: 3,
|
|
218
218
|
offlineQueue: true,
|
|
219
|
-
cliVersion:
|
|
219
|
+
cliVersion: _chunkCSUGNNJYcjs.package_default.version
|
|
220
220
|
};
|
|
221
221
|
var ShareApiClient = (_class = class {
|
|
222
222
|
|
|
@@ -225,9 +225,9 @@ var ShareApiClient = (_class = class {
|
|
|
225
225
|
__init() {this.deviceId = null}
|
|
226
226
|
constructor(configOverrides) {;_class.prototype.__init.call(this);
|
|
227
227
|
this.config = { ...DEFAULT_CONFIG, ...configOverrides };
|
|
228
|
-
const dataDir = _path2.default.join(
|
|
228
|
+
const dataDir = _path2.default.join(_chunk3JURXAL6cjs.AUTOHAND_PATHS.config, "share");
|
|
229
229
|
this.queuePath = _path2.default.join(dataDir, "queue.json");
|
|
230
|
-
this.deviceIdPath = _path2.default.join(
|
|
230
|
+
this.deviceIdPath = _path2.default.join(_chunk3JURXAL6cjs.AUTOHAND_PATHS.feedback, ".device-id");
|
|
231
231
|
}
|
|
232
232
|
// ============ Device ID ============
|
|
233
233
|
/**
|
|
@@ -458,7 +458,7 @@ function terminalLink(url, text) {
|
|
|
458
458
|
}
|
|
459
459
|
var metadata = {
|
|
460
460
|
command: "/share",
|
|
461
|
-
description:
|
|
461
|
+
description: _chunkRJCZLFHEcjs.t.call(void 0, "commands.share.description"),
|
|
462
462
|
implemented: true
|
|
463
463
|
};
|
|
464
464
|
async function execute(_args, context) {
|
|
@@ -503,7 +503,7 @@ async function execute(_args, context) {
|
|
|
503
503
|
{ label: "Public - Anyone with the link can view", value: "public" },
|
|
504
504
|
{ label: "Private - Requires one-time passcode", value: "private" }
|
|
505
505
|
];
|
|
506
|
-
const visibilityResult = await
|
|
506
|
+
const visibilityResult = await _chunkDMM2BKSVcjs.showModal.call(void 0, {
|
|
507
507
|
title: "Share visibility:",
|
|
508
508
|
options: visibilityOptions
|
|
509
509
|
});
|
|
@@ -512,7 +512,7 @@ async function execute(_args, context) {
|
|
|
512
512
|
return;
|
|
513
513
|
}
|
|
514
514
|
const visibility = visibilityResult.value;
|
|
515
|
-
const confirmed = await
|
|
515
|
+
const confirmed = await _chunkDMM2BKSVcjs.showConfirm.call(void 0, {
|
|
516
516
|
title: `Share this session as ${visibility}?`,
|
|
517
517
|
defaultValue: true
|
|
518
518
|
});
|
|
@@ -536,7 +536,7 @@ async function execute(_args, context) {
|
|
|
536
536
|
const inputTokens = _nullishCoalesce(_optionalChain([context, 'access', _18 => _18.getInputTokensUsed, 'optionalCall', _19 => _19()]), () => ( 0));
|
|
537
537
|
const outputTokens = _nullishCoalesce(_optionalChain([context, 'access', _20 => _20.getOutputTokensUsed, 'optionalCall', _21 => _21()]), () => ( 0));
|
|
538
538
|
console.log();
|
|
539
|
-
const spinner = _ora2.default.call(void 0,
|
|
539
|
+
const spinner = _ora2.default.call(void 0, _chunkRJCZLFHEcjs.t.call(void 0, "commands.share.generating")).start();
|
|
540
540
|
try {
|
|
541
541
|
const payload = serializeSession(session, {
|
|
542
542
|
model: context.model,
|
|
@@ -553,7 +553,7 @@ async function execute(_args, context) {
|
|
|
553
553
|
spinner.stop();
|
|
554
554
|
if (response.success && response.url) {
|
|
555
555
|
console.log();
|
|
556
|
-
console.log(_chalk2.default.green.bold(
|
|
556
|
+
console.log(_chalk2.default.green.bold(_chunkRJCZLFHEcjs.t.call(void 0, "commands.share.success", { url: terminalLink(response.url) })));
|
|
557
557
|
if (visibility === "private" && response.passcode) {
|
|
558
558
|
console.log();
|
|
559
559
|
console.log(`${_chalk2.default.bold("Passcode:")} ${_chalk2.default.yellow.bold(response.passcode)}`);
|
|
@@ -567,14 +567,14 @@ async function execute(_args, context) {
|
|
|
567
567
|
} else {
|
|
568
568
|
console.log();
|
|
569
569
|
console.log(
|
|
570
|
-
_chalk2.default.red(
|
|
570
|
+
_chalk2.default.red(_chunkRJCZLFHEcjs.t.call(void 0, "commands.share.failed", { error: response.error || "Unknown error" }))
|
|
571
571
|
);
|
|
572
572
|
console.log();
|
|
573
573
|
}
|
|
574
574
|
} catch (error) {
|
|
575
575
|
spinner.stop();
|
|
576
576
|
console.log();
|
|
577
|
-
console.log(_chalk2.default.red(
|
|
577
|
+
console.log(_chalk2.default.red(_chunkRJCZLFHEcjs.t.call(void 0, "commands.share.failed", { error: error.message })));
|
|
578
578
|
console.log();
|
|
579
579
|
}
|
|
580
580
|
}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
2
|
GoalManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-UMJYX5KD.js";
|
|
4
4
|
import {
|
|
5
5
|
GOAL_FEATURE_DISABLED_MESSAGE,
|
|
6
6
|
resolveGoalFeatureEnabled
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-X53SHYCG.js";
|
|
8
8
|
|
|
9
9
|
// src/commands/goal.ts
|
|
10
10
|
import chalk from "chalk";
|
|
11
11
|
var metadata = {
|
|
12
12
|
command: "/goal",
|
|
13
|
-
description: "Create, inspect, pause, resume, complete, clear, and queue persistent goals",
|
|
13
|
+
description: "Create, inspect, refine, pause, resume, complete, clear, and queue persistent goals",
|
|
14
14
|
implemented: true,
|
|
15
15
|
subcommands: [
|
|
16
|
+
{ name: "writer", description: "Interview the user and draft a stronger goal before creating it" },
|
|
16
17
|
{ name: "queue", description: "List queued goals or enqueue a goal" },
|
|
17
18
|
{ name: "pause", description: "Pause the current goal" },
|
|
18
19
|
{ name: "resume", description: "Resume a paused or queued goal" },
|
|
@@ -29,11 +30,19 @@ async function goal(ctx, args = []) {
|
|
|
29
30
|
const manager = new GoalManager(ctx.workspaceRoot);
|
|
30
31
|
const input = args.join(" ").trim();
|
|
31
32
|
if (!input) {
|
|
32
|
-
|
|
33
|
+
const snapshot = await manager.getSnapshot();
|
|
34
|
+
if (!snapshot.goal && snapshot.queue.length === 0) {
|
|
35
|
+
return startGoalWriter(ctx);
|
|
36
|
+
}
|
|
37
|
+
return formatSnapshot(snapshot);
|
|
33
38
|
}
|
|
34
39
|
const [subcommand, ...restArgs] = args;
|
|
35
40
|
const rest = restArgs.join(" ").trim();
|
|
36
41
|
switch (subcommand?.toLowerCase()) {
|
|
42
|
+
case "writer":
|
|
43
|
+
case "write":
|
|
44
|
+
case "refine":
|
|
45
|
+
return startGoalWriter(ctx, rest);
|
|
37
46
|
case "queue":
|
|
38
47
|
return handleQueue(manager, rest);
|
|
39
48
|
case "pause":
|
|
@@ -53,8 +62,13 @@ async function goal(ctx, args = []) {
|
|
|
53
62
|
}
|
|
54
63
|
return formatMutation(resumed);
|
|
55
64
|
}
|
|
56
|
-
case "complete":
|
|
57
|
-
|
|
65
|
+
case "complete": {
|
|
66
|
+
const completed = await manager.updateGoal({ status: "complete" });
|
|
67
|
+
if (completed.ok && completed.started && completed.goal?.status === "active") {
|
|
68
|
+
queueGoalContinuation(ctx, completed.goal.objective);
|
|
69
|
+
}
|
|
70
|
+
return formatMutation(completed);
|
|
71
|
+
}
|
|
58
72
|
case "clear":
|
|
59
73
|
return formatMutation(await manager.clearGoal());
|
|
60
74
|
case "templates": {
|
|
@@ -73,6 +87,7 @@ async function goal(ctx, args = []) {
|
|
|
73
87
|
if (!resolved.ok) return chalk.yellow(resolved.message);
|
|
74
88
|
const created = await manager.createGoal(resolved.input, { replace: false });
|
|
75
89
|
if (created.ok && created.goal) {
|
|
90
|
+
await emitGoalWrittenCompleted(ctx, created.goal, "slash");
|
|
76
91
|
queueGoalContinuation(ctx, created.goal.objective);
|
|
77
92
|
}
|
|
78
93
|
return formatMutation(created);
|
|
@@ -89,6 +104,28 @@ async function runGoalCli(workspaceRoot, rawInput, config) {
|
|
|
89
104
|
const args = input.match(/"[^"]*"|'[^']*'|\S+/g)?.map(unquote) ?? [];
|
|
90
105
|
return goal({ workspaceRoot }, args);
|
|
91
106
|
}
|
|
107
|
+
function startGoalWriter(ctx, roughGoal) {
|
|
108
|
+
const activated = ctx.skillsRegistry?.activateSkill("goal-writer") ?? false;
|
|
109
|
+
const roughGoalText = roughGoal?.trim() || "No rough goal was provided yet.";
|
|
110
|
+
ctx.queueInstruction?.([
|
|
111
|
+
"Activate the built-in goal-writer skill and use it to help the user draft one or more stronger /goal objectives.",
|
|
112
|
+
"Interview the user with follow-up questions when the finish line, proof, boundaries, loop, or stop rule is unclear.",
|
|
113
|
+
"Show every full drafted objective and get explicit user approval before calling create_goal. If more than one goal is approved, call create_goal for each one in order so later goals are queued.",
|
|
114
|
+
`Rough goal request: ${roughGoalText}`
|
|
115
|
+
].join("\n"));
|
|
116
|
+
return [
|
|
117
|
+
"Goal writer started.",
|
|
118
|
+
activated ? "The built-in $goal-writer skill is active for the next turn." : "The next turn will use the built-in $goal-writer skill instructions if available.",
|
|
119
|
+
"Answer the follow-up questions to create a completion contract with proof, boundaries, and a stop rule."
|
|
120
|
+
].join("\n");
|
|
121
|
+
}
|
|
122
|
+
async function emitGoalWrittenCompleted(ctx, goalState, source) {
|
|
123
|
+
await ctx.hookManager?.executeHooks("goal-written:completed", {
|
|
124
|
+
goalId: goalState.goalId,
|
|
125
|
+
goalObjective: goalState.objective,
|
|
126
|
+
goalSource: source
|
|
127
|
+
});
|
|
128
|
+
}
|
|
92
129
|
async function handleQueue(manager, rest) {
|
|
93
130
|
if (!rest) {
|
|
94
131
|
const snapshot = await manager.getSnapshot();
|
|
@@ -120,6 +157,10 @@ function formatMutation(result) {
|
|
|
120
157
|
if (result.started) {
|
|
121
158
|
lines.push(`Started queue item: ${result.started.queueId}`);
|
|
122
159
|
}
|
|
160
|
+
if (result.completedRun?.length && result.queue.length === 0) {
|
|
161
|
+
lines.push("");
|
|
162
|
+
lines.push(formatCompletedRun(result.completedRun));
|
|
163
|
+
}
|
|
123
164
|
if (result.queue.length > 0 && !result.queued?.length) {
|
|
124
165
|
lines.push("");
|
|
125
166
|
lines.push(formatQueue({ queue: result.queue }));
|
|
@@ -127,7 +168,7 @@ function formatMutation(result) {
|
|
|
127
168
|
return lines.join("\n");
|
|
128
169
|
}
|
|
129
170
|
function formatSnapshot(snapshot) {
|
|
130
|
-
if (!snapshot.goal && snapshot.queue.length === 0) {
|
|
171
|
+
if (!snapshot.goal && snapshot.queue.length === 0 && snapshot.completed.length === 0) {
|
|
131
172
|
return [
|
|
132
173
|
"No goal is currently set.",
|
|
133
174
|
"Use /goal <objective> to create one, or /goal queue <objective> to queue later work."
|
|
@@ -140,6 +181,10 @@ function formatSnapshot(snapshot) {
|
|
|
140
181
|
parts.push("");
|
|
141
182
|
parts.push(formatQueue(snapshot));
|
|
142
183
|
}
|
|
184
|
+
if (snapshot.completed.length > 0) {
|
|
185
|
+
parts.push("");
|
|
186
|
+
parts.push(formatCompletedRun(snapshot.completed));
|
|
187
|
+
}
|
|
143
188
|
return parts.join("\n");
|
|
144
189
|
}
|
|
145
190
|
function formatGoal(goalState) {
|
|
@@ -162,6 +207,12 @@ function formatQueue(snapshot) {
|
|
|
162
207
|
...snapshot.queue.map((item, index) => `${index + 1}. [${item.queueId}] ${item.objective}`)
|
|
163
208
|
].join("\n");
|
|
164
209
|
}
|
|
210
|
+
function formatCompletedRun(completed) {
|
|
211
|
+
return [
|
|
212
|
+
`Completed goals this session (${completed.length}):`,
|
|
213
|
+
...completed.map((item, index) => `${index + 1}. ${item.objective}`)
|
|
214
|
+
].join("\n");
|
|
215
|
+
}
|
|
165
216
|
function formatDuration(seconds) {
|
|
166
217
|
const whole = Math.max(0, Math.floor(seconds));
|
|
167
218
|
const minutes = Math.floor(whole / 60);
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkCSUGNNJYcjs = require('./chunk-CSUGNNJY.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkDMM2BKSVcjs = require('./chunk-DMM2BKSV.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkCNQKIWIScjs = require('./chunk-CNQKIWIS.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
@@ -14,10 +14,10 @@ var _chunkX5P6QQOBcjs = require('./chunk-X5P6QQOB.cjs');
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var _chunk7TO3PDMVcjs = require('./chunk-7TO3PDMV.cjs');
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunk3JURXAL6cjs = require('./chunk-3JURXAL6.cjs');
|
|
21
21
|
|
|
22
22
|
// src/features/RemoteFeatureFlagManager.ts
|
|
23
23
|
var _crypto = require('crypto'); var _crypto2 = _interopRequireDefault(_crypto);
|
|
@@ -25,18 +25,19 @@ var _os = require('os'); var _os2 = _interopRequireDefault(_os);
|
|
|
25
25
|
var _path = require('path'); var _path2 = _interopRequireDefault(_path);
|
|
26
26
|
var _fsextra = require('fs-extra'); var _fsextra2 = _interopRequireDefault(_fsextra);
|
|
27
27
|
var FEATURE_FLAG_REQUEST_TIMEOUT_MS = 1500;
|
|
28
|
+
var CLI_CLIENT_TYPE = "cli";
|
|
28
29
|
function getApiBaseUrl(config) {
|
|
29
30
|
return (_optionalChain([config, 'access', _ => _.api, 'optionalAccess', _2 => _2.baseUrl]) || _optionalChain([config, 'access', _3 => _3.telemetry, 'optionalAccess', _4 => _4.apiBaseUrl]) || "https://api.autohand.ai").replace(/\/+$/, "");
|
|
30
31
|
}
|
|
31
32
|
function readDeviceId() {
|
|
32
33
|
try {
|
|
33
|
-
_fsextra2.default.ensureDirSync(_path2.default.dirname(
|
|
34
|
-
if (_fsextra2.default.existsSync(
|
|
35
|
-
const existing = _fsextra2.default.readFileSync(
|
|
34
|
+
_fsextra2.default.ensureDirSync(_path2.default.dirname(_chunk3JURXAL6cjs.AUTOHAND_FILES.deviceId));
|
|
35
|
+
if (_fsextra2.default.existsSync(_chunk3JURXAL6cjs.AUTOHAND_FILES.deviceId)) {
|
|
36
|
+
const existing = _fsextra2.default.readFileSync(_chunk3JURXAL6cjs.AUTOHAND_FILES.deviceId, "utf8").trim();
|
|
36
37
|
if (existing) return existing;
|
|
37
38
|
}
|
|
38
39
|
const next = _crypto2.default.randomUUID();
|
|
39
|
-
_fsextra2.default.writeFileSync(
|
|
40
|
+
_fsextra2.default.writeFileSync(_chunk3JURXAL6cjs.AUTOHAND_FILES.deviceId, next);
|
|
40
41
|
return next;
|
|
41
42
|
} catch (e) {
|
|
42
43
|
return _crypto2.default.randomUUID();
|
|
@@ -49,11 +50,14 @@ function parseSnapshot(value) {
|
|
|
49
50
|
if (!flag || typeof flag !== "object") continue;
|
|
50
51
|
const candidate = flag;
|
|
51
52
|
if (typeof candidate.key !== "string" || typeof candidate.enabled !== "boolean") continue;
|
|
53
|
+
const clientTypes = parseClientTypes(candidate);
|
|
54
|
+
if (!isCliFeatureFlag(candidate, clientTypes)) continue;
|
|
52
55
|
flags.push({
|
|
53
56
|
key: candidate.key,
|
|
54
57
|
enabled: candidate.enabled,
|
|
55
58
|
reason: typeof candidate.reason === "string" ? candidate.reason : "unknown",
|
|
56
|
-
userOverridable: candidate.userOverridable !== false
|
|
59
|
+
userOverridable: candidate.userOverridable !== false,
|
|
60
|
+
...clientTypes.length > 0 ? { clientTypes } : {}
|
|
57
61
|
});
|
|
58
62
|
}
|
|
59
63
|
return {
|
|
@@ -64,6 +68,65 @@ function parseSnapshot(value) {
|
|
|
64
68
|
ttlSeconds: typeof value.ttlSeconds === "number" ? value.ttlSeconds : 300
|
|
65
69
|
};
|
|
66
70
|
}
|
|
71
|
+
function parseClientTypes(candidate) {
|
|
72
|
+
const values = [
|
|
73
|
+
candidate.clientType,
|
|
74
|
+
candidate.clientTypes,
|
|
75
|
+
candidate.client_type,
|
|
76
|
+
candidate.client_types,
|
|
77
|
+
candidate.clients,
|
|
78
|
+
candidate.targetClients,
|
|
79
|
+
candidate.target_clients
|
|
80
|
+
];
|
|
81
|
+
const clientTypes = /* @__PURE__ */ new Set();
|
|
82
|
+
for (const value of values) {
|
|
83
|
+
if (typeof value === "string") {
|
|
84
|
+
for (const item of value.split(",")) {
|
|
85
|
+
const clientType = item.trim();
|
|
86
|
+
if (clientType) clientTypes.add(clientType);
|
|
87
|
+
}
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
if (Array.isArray(value)) {
|
|
91
|
+
for (const item of value) {
|
|
92
|
+
if (typeof item === "string") {
|
|
93
|
+
clientTypes.add(item);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return [...clientTypes].map((clientType) => clientType.toLowerCase());
|
|
99
|
+
}
|
|
100
|
+
function isCliFeatureFlag(candidate, clientTypes) {
|
|
101
|
+
if (isArchivedFeatureFlag(candidate)) {
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
const reason = typeof candidate.reason === "string" ? candidate.reason.toLowerCase() : "";
|
|
105
|
+
if (reason.includes("client_type mismatch") || reason.includes("client type mismatch")) {
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
if (clientTypes.length > 0) {
|
|
109
|
+
return clientTypes.includes(CLI_CLIENT_TYPE);
|
|
110
|
+
}
|
|
111
|
+
const platforms = _nullishCoalesce(candidate.platforms, () => ( candidate.targetPlatforms));
|
|
112
|
+
if (Array.isArray(platforms)) {
|
|
113
|
+
const platformValues = platforms.filter((platform) => typeof platform === "string");
|
|
114
|
+
return platformValues.length === 0 || platformValues.includes(process.platform);
|
|
115
|
+
}
|
|
116
|
+
return true;
|
|
117
|
+
}
|
|
118
|
+
function isArchivedFeatureFlag(candidate) {
|
|
119
|
+
if (candidate.archived === true || candidate.deleted === true) {
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
const archivalFields = [
|
|
123
|
+
candidate.status,
|
|
124
|
+
candidate.state,
|
|
125
|
+
candidate.lifecycle,
|
|
126
|
+
candidate.reason
|
|
127
|
+
];
|
|
128
|
+
return archivalFields.some((value) => typeof value === "string" && value.toLowerCase().includes("archived"));
|
|
129
|
+
}
|
|
67
130
|
function isSnapshotFresh(snapshot) {
|
|
68
131
|
const evaluatedAt = Date.parse(snapshot.evaluatedAt);
|
|
69
132
|
if (Number.isNaN(evaluatedAt)) return false;
|
|
@@ -74,7 +137,7 @@ function createEvaluationUrl(config, deviceId, clientVersion) {
|
|
|
74
137
|
const environment = _optionalChain([config, 'access', _5 => _5.features, 'optionalAccess', _6 => _6.environment]) || "production";
|
|
75
138
|
const url = new URL(`${getApiBaseUrl(config)}/v1/feature-flags/evaluate`);
|
|
76
139
|
url.searchParams.set("environment", environment);
|
|
77
|
-
url.searchParams.set("clientType",
|
|
140
|
+
url.searchParams.set("clientType", CLI_CLIENT_TYPE);
|
|
78
141
|
url.searchParams.set("deviceId", deviceId);
|
|
79
142
|
url.searchParams.set("cliVersion", clientVersion);
|
|
80
143
|
url.searchParams.set("platform", process.platform);
|
|
@@ -94,15 +157,15 @@ async function downloadRemoteFeatureFlags(config, deviceId, clientVersion) {
|
|
|
94
157
|
}
|
|
95
158
|
}
|
|
96
159
|
async function writeRemoteFeatureFlagCache(snapshot) {
|
|
97
|
-
await _fsextra2.default.ensureDir(_path2.default.dirname(
|
|
98
|
-
await _fsextra2.default.writeJson(
|
|
160
|
+
await _fsextra2.default.ensureDir(_path2.default.dirname(_chunk3JURXAL6cjs.AUTOHAND_FILES.featureFlagsCache));
|
|
161
|
+
await _fsextra2.default.writeJson(_chunk3JURXAL6cjs.AUTOHAND_FILES.featureFlagsCache, snapshot, { spaces: 2 });
|
|
99
162
|
}
|
|
100
163
|
async function loadCachedRemoteFeatureFlags() {
|
|
101
164
|
try {
|
|
102
|
-
if (!await _fsextra2.default.pathExists(
|
|
165
|
+
if (!await _fsextra2.default.pathExists(_chunk3JURXAL6cjs.AUTOHAND_FILES.featureFlagsCache)) {
|
|
103
166
|
return null;
|
|
104
167
|
}
|
|
105
|
-
const data = await _fsextra2.default.readJson(
|
|
168
|
+
const data = await _fsextra2.default.readJson(_chunk3JURXAL6cjs.AUTOHAND_FILES.featureFlagsCache);
|
|
106
169
|
return parseSnapshot(data);
|
|
107
170
|
} catch (e3) {
|
|
108
171
|
return null;
|
|
@@ -113,7 +176,7 @@ async function loadRemoteFeatureFlags(config, options = {}) {
|
|
|
113
176
|
if (!options.forceRefresh && cached && isSnapshotFresh(cached)) {
|
|
114
177
|
return cached;
|
|
115
178
|
}
|
|
116
|
-
const downloaded = await downloadRemoteFeatureFlags(config, readDeviceId(),
|
|
179
|
+
const downloaded = await downloadRemoteFeatureFlags(config, readDeviceId(), _chunkCSUGNNJYcjs.package_default.version);
|
|
117
180
|
if (downloaded) {
|
|
118
181
|
await writeRemoteFeatureFlagCache(downloaded);
|
|
119
182
|
return downloaded;
|
|
@@ -125,7 +188,7 @@ var RemoteFeatureFlagManager = (_class = class {
|
|
|
125
188
|
this.config = config;
|
|
126
189
|
this.apiBaseUrl = getApiBaseUrl(config);
|
|
127
190
|
this.environment = _optionalChain([config, 'access', _7 => _7.features, 'optionalAccess', _8 => _8.environment]) || "production";
|
|
128
|
-
this.clientVersion =
|
|
191
|
+
this.clientVersion = _chunkCSUGNNJYcjs.package_default.version;
|
|
129
192
|
}
|
|
130
193
|
|
|
131
194
|
__init() {this.snapshot = null}
|
|
@@ -146,7 +209,7 @@ var RemoteFeatureFlagManager = (_class = class {
|
|
|
146
209
|
return this.snapshot;
|
|
147
210
|
}
|
|
148
211
|
isFeatureEnabled(key, localDefault = false) {
|
|
149
|
-
if (
|
|
212
|
+
if (_chunk7TO3PDMVcjs.isLocalFeatureId.call(void 0, key)) {
|
|
150
213
|
return localDefault;
|
|
151
214
|
}
|
|
152
215
|
const flag = _optionalChain([this, 'access', _9 => _9.snapshot, 'optionalAccess', _10 => _10.flags, 'access', _11 => _11.find, 'call', _12 => _12((item) => item.key === key)]);
|
|
@@ -195,15 +258,15 @@ var RemoteFeatureFlagManager = (_class = class {
|
|
|
195
258
|
// src/commands/features.ts
|
|
196
259
|
function renderUsage() {
|
|
197
260
|
return [
|
|
198
|
-
"Usage: /
|
|
261
|
+
"Usage: /experiments [list|status|enable|disable|refresh]",
|
|
199
262
|
"",
|
|
200
263
|
"Commands:",
|
|
201
|
-
" /
|
|
202
|
-
" /
|
|
203
|
-
" /
|
|
204
|
-
" /
|
|
205
|
-
" /
|
|
206
|
-
" /
|
|
264
|
+
" /experiments",
|
|
265
|
+
" /experiments list",
|
|
266
|
+
" /experiments status <feature>",
|
|
267
|
+
" /experiments enable <feature>",
|
|
268
|
+
" /experiments disable <feature>",
|
|
269
|
+
" /experiments refresh"
|
|
207
270
|
].join("\n");
|
|
208
271
|
}
|
|
209
272
|
function requireConfig(config) {
|
|
@@ -214,11 +277,11 @@ async function setFeatureEnabled(config, featureId, enabled, remoteSnapshot) {
|
|
|
214
277
|
return renderUsage();
|
|
215
278
|
}
|
|
216
279
|
const snapshot = remoteSnapshot === void 0 ? await loadRemoteFeatureFlags(config) : remoteSnapshot;
|
|
217
|
-
const result =
|
|
280
|
+
const result = _chunk7TO3PDMVcjs.setFeatureState.call(void 0, config, featureId, enabled, { remoteSnapshot: snapshot });
|
|
218
281
|
if (!result.ok || !result.feature) {
|
|
219
282
|
return _nullishCoalesce(result.error, () => ( `Unknown feature "${featureId}".`));
|
|
220
283
|
}
|
|
221
|
-
await
|
|
284
|
+
await _chunkCNQKIWIScjs.saveConfig.call(void 0, config);
|
|
222
285
|
if (result.feature.source === "remote") {
|
|
223
286
|
if (enabled) {
|
|
224
287
|
return `Following remote state for ${result.feature.id} (currently ${result.feature.enabled ? "on" : "off"}).`;
|
|
@@ -232,7 +295,7 @@ async function setFeatureEnabled(config, featureId, enabled, remoteSnapshot) {
|
|
|
232
295
|
async function showInteractiveFeatures(config, remoteSnapshot) {
|
|
233
296
|
let toggleCount = 0;
|
|
234
297
|
const pendingSaves = [];
|
|
235
|
-
const states =
|
|
298
|
+
const states = _chunk7TO3PDMVcjs.listFeatureStates.call(void 0, config, { remoteSnapshot });
|
|
236
299
|
const initialStates = new Map(states.map((feature) => [feature.id, feature.enabled]));
|
|
237
300
|
const finalStates = new Map(initialStates);
|
|
238
301
|
const restartRequired = new Set(states.filter((feature) => feature.requiresRestart).map((feature) => feature.id));
|
|
@@ -242,19 +305,19 @@ async function showInteractiveFeatures(config, remoteSnapshot) {
|
|
|
242
305
|
checked: feature.enabled,
|
|
243
306
|
description: feature.description
|
|
244
307
|
}));
|
|
245
|
-
await
|
|
246
|
-
title: "
|
|
308
|
+
await _chunkDMM2BKSVcjs.showModal.call(void 0, {
|
|
309
|
+
title: "Experiments - space toggles, enter closes",
|
|
247
310
|
options,
|
|
248
311
|
multiSelect: true,
|
|
249
312
|
maxVisible: 12,
|
|
250
313
|
onToggle: (option, checked) => {
|
|
251
|
-
const result =
|
|
314
|
+
const result = _chunk7TO3PDMVcjs.setFeatureState.call(void 0, config, option.value, checked, { remoteSnapshot });
|
|
252
315
|
if (!result.ok) {
|
|
253
316
|
return;
|
|
254
317
|
}
|
|
255
318
|
toggleCount += 1;
|
|
256
319
|
finalStates.set(option.value, _nullishCoalesce(_optionalChain([result, 'access', _23 => _23.feature, 'optionalAccess', _24 => _24.enabled]), () => ( checked)));
|
|
257
|
-
pendingSaves.push(
|
|
320
|
+
pendingSaves.push(_chunkCNQKIWIScjs.saveConfig.call(void 0, config));
|
|
258
321
|
}
|
|
259
322
|
});
|
|
260
323
|
await Promise.all(pendingSaves);
|
|
@@ -319,10 +382,10 @@ async function features(ctx, args = []) {
|
|
|
319
382
|
if (ctx.interactive) {
|
|
320
383
|
return showInteractiveFeatures(required, remoteSnapshot);
|
|
321
384
|
}
|
|
322
|
-
return
|
|
385
|
+
return _chunk7TO3PDMVcjs.formatFeatureList.call(void 0, required, { remoteSnapshot });
|
|
323
386
|
case "status":
|
|
324
387
|
case "show":
|
|
325
|
-
return featureId ?
|
|
388
|
+
return featureId ? _chunk7TO3PDMVcjs.formatFeatureStatus.call(void 0, required, featureId, { remoteSnapshot }) : renderUsage();
|
|
326
389
|
case "enable":
|
|
327
390
|
case "on":
|
|
328
391
|
return setFeatureEnabled(required, featureId, true, remoteSnapshot);
|
|
@@ -335,21 +398,21 @@ async function features(ctx, args = []) {
|
|
|
335
398
|
}
|
|
336
399
|
return `Downloaded ${remoteSnapshot.flags.length} remote feature${remoteSnapshot.flags.length === 1 ? "" : "s"} from ${remoteSnapshot.environment}.`;
|
|
337
400
|
default:
|
|
338
|
-
if (
|
|
339
|
-
return
|
|
401
|
+
if (_chunk7TO3PDMVcjs.getFeatureState.call(void 0, required, subcommand, { remoteSnapshot })) {
|
|
402
|
+
return _chunk7TO3PDMVcjs.formatFeatureStatus.call(void 0, required, subcommand, { remoteSnapshot });
|
|
340
403
|
}
|
|
341
404
|
return renderUsage();
|
|
342
405
|
}
|
|
343
406
|
}
|
|
344
407
|
var metadata = {
|
|
345
|
-
command: "/
|
|
346
|
-
description: "list and toggle Autohand
|
|
408
|
+
command: "/experiments",
|
|
409
|
+
description: "list and toggle Autohand experiments",
|
|
347
410
|
implemented: true,
|
|
348
411
|
subcommands: [
|
|
349
|
-
{ name: "list", description: "List
|
|
350
|
-
{ name: "status", description: "Show one
|
|
351
|
-
{ name: "enable", description: "Enable
|
|
352
|
-
{ name: "disable", description: "Disable
|
|
412
|
+
{ name: "list", description: "List experiments and current state" },
|
|
413
|
+
{ name: "status", description: "Show one experiment" },
|
|
414
|
+
{ name: "enable", description: "Enable an experiment" },
|
|
415
|
+
{ name: "disable", description: "Disable an experiment" },
|
|
353
416
|
{ name: "refresh", description: "Download remote feature flags from the Autohand API" }
|
|
354
417
|
]
|
|
355
418
|
};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
safePrompt
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-NKW6CHXQ.js";
|
|
4
4
|
import {
|
|
5
5
|
showModal
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-LOSXLH7P.js";
|
|
7
7
|
import {
|
|
8
8
|
t
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-SJQU2ZFR.js";
|
|
10
10
|
|
|
11
11
|
// src/commands/hooks.ts
|
|
12
12
|
import chalk from "chalk";
|
|
@@ -19,6 +19,7 @@ var HOOK_EVENTS = [
|
|
|
19
19
|
"post-tool",
|
|
20
20
|
"file-modified",
|
|
21
21
|
"stop",
|
|
22
|
+
"post-response",
|
|
22
23
|
"subagent-stop",
|
|
23
24
|
"permission-request",
|
|
24
25
|
"notification",
|
|
@@ -35,6 +36,8 @@ var HOOK_EVENTS = [
|
|
|
35
36
|
// Learn events
|
|
36
37
|
"pre-learn",
|
|
37
38
|
"post-learn",
|
|
39
|
+
// Goal authoring events
|
|
40
|
+
"goal-written:completed",
|
|
38
41
|
// Team events
|
|
39
42
|
"team-created",
|
|
40
43
|
"teammate-spawned",
|
|
@@ -49,7 +52,12 @@ var HOOK_EVENTS = [
|
|
|
49
52
|
"review:failed",
|
|
50
53
|
"review:completed",
|
|
51
54
|
// Mode events
|
|
52
|
-
"mode-change"
|
|
55
|
+
"mode-change",
|
|
56
|
+
// Context lifecycle events
|
|
57
|
+
"context:compact",
|
|
58
|
+
"context:overflow",
|
|
59
|
+
"context:warning",
|
|
60
|
+
"context:critical"
|
|
53
61
|
];
|
|
54
62
|
var EVENT_DESCRIPTIONS = {
|
|
55
63
|
"session-start": "When a session begins",
|
|
@@ -77,6 +85,8 @@ var EVENT_DESCRIPTIONS = {
|
|
|
77
85
|
// Learn events
|
|
78
86
|
"pre-learn": "Before a learn operation begins",
|
|
79
87
|
"post-learn": "After a learn operation completes",
|
|
88
|
+
// Goal authoring events
|
|
89
|
+
"goal-written:completed": "After a goal objective is created",
|
|
80
90
|
// Team events
|
|
81
91
|
"team-created": "When a team is created",
|
|
82
92
|
"teammate-spawned": "When a teammate process starts",
|
|
@@ -145,7 +155,8 @@ function getHookIcon(hook) {
|
|
|
145
155
|
"permission-request": "\u{1F510}",
|
|
146
156
|
"notification": "\u{1F514}",
|
|
147
157
|
"subagent-stop": "\u{1F916}",
|
|
148
|
-
"pre-prompt": "\u{1F4AD}"
|
|
158
|
+
"pre-prompt": "\u{1F4AD}",
|
|
159
|
+
"goal-written:completed": "\u{1F3C1}"
|
|
149
160
|
};
|
|
150
161
|
return eventIcons[hook.event] || "\u2022";
|
|
151
162
|
}
|