autohand-cli 0.9.0 → 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 +118 -76
- package/dist/AgentRegistry-BBQRODQC.cjs +18 -0
- package/dist/AgentRegistry-JBXZUPML.js +18 -0
- package/dist/{CommunitySkillsCache-ZEQWP6YM.js → CommunitySkillsCache-CI7UN2DX.js} +2 -2
- package/dist/CommunitySkillsCache-XTQ6RMTA.cjs +8 -0
- package/dist/{HookManager-CWLTFKWO.js → HookManager-BELBPQQI.js} +1 -1
- package/dist/{HookManager-TMAJQU4S.cjs → HookManager-ZL2CLAJW.cjs} +2 -2
- package/dist/{ImportWizard-MQXEED2U.cjs → ImportWizard-U6CIJREW.cjs} +13 -13
- package/dist/{ImportWizard-QBKQEXDW.js → ImportWizard-VJFSWSUQ.js} +4 -4
- 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-2HR737UE.js → NVIDIAProvider-AFNJNWJM.js} +1 -1
- package/dist/NVIDIAProvider-L5GTYRCQ.cjs +14 -0
- package/dist/{PermissionManager-KMYILJ4Z.js → PermissionManager-N2LDSOYF.js} +3 -3
- package/dist/PermissionManager-ZNURIEYR.cjs +11 -0
- package/dist/ProviderFactory-3BFS65V7.cjs +13 -0
- package/dist/{ProviderFactory-HFPRVQ25.js → ProviderFactory-XUT6BSGB.js} +4 -2
- package/dist/SessionManager-LGPQIA57.cjs +10 -0
- package/dist/{SessionManager-PNBTJJTQ.js → SessionManager-OR4KDDDS.js} +2 -2
- package/dist/{SkillsRegistry-4RRD5GMX.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/{SyncApiClient-LRPFNCKJ.js → SyncApiClient-G3FM65IV.js} +1 -1
- package/dist/SyncApiClient-ODBDECOG.cjs +11 -0
- package/dist/{about-BW3PDZUU.js → about-OYVGQMJJ.js} +5 -4
- package/dist/about-U2BH7HDR.cjs +15 -0
- package/dist/{acp-VHEL7BOW.js → acp-JWHGXZL5.js} +207 -102
- package/dist/{acp-EOETGAHC.cjs → acp-S37JOBCS.cjs} +226 -121
- package/dist/actionExecutor-2QEPMELQ.cjs +28 -0
- package/dist/actionExecutor-6NCCORRB.js +28 -0
- package/dist/add-dir-KFUHSIR2.cjs +11 -0
- package/dist/{add-dir-VFX7QT4E.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-EVTGPTA4.js +17 -0
- package/dist/{autoSkill-EFMK6WU6.js → autoSkill-HEWKJ5JV.js} +2 -2
- package/dist/autoSkill-YL6PN6AV.cjs +20 -0
- package/dist/automode-4BJ7FNPL.cjs +10 -0
- package/dist/{automode-BMYSRM34.js → automode-S4U7A7Q2.js} +2 -2
- package/dist/chrome-45ZXHL5N.cjs +22 -0
- package/dist/{chrome-NHJ44WUN.js → chrome-BBSRVG6S.js} +2 -2
- package/dist/chrome-IFVZRHAT.cjs +50 -0
- package/dist/chrome-MYE6DNA2.js +22 -0
- package/dist/chunk-24CEJYEG.cjs +579 -0
- package/dist/{chunk-47PHDKNW.cjs → chunk-255GIVM2.cjs} +6 -6
- package/dist/{chunk-DIZTWFVR.cjs → chunk-2BDSR2OW.cjs} +238 -61
- package/dist/{chunk-BL2UC7HC.js → chunk-2BPIR7LA.js} +121 -4
- package/dist/{chunk-BQ22N3TX.cjs → chunk-2NY7OHBF.cjs} +47 -27
- package/dist/chunk-2WUNHTXL.js +303 -0
- package/dist/{chunk-HQWQZML5.cjs → chunk-34B6ZO6W.cjs} +124 -7
- package/dist/{chunk-5JTTM5SC.js → chunk-3BJN7GAH.js} +1 -1
- package/dist/{chunk-4256YRCO.cjs → chunk-3CAXECWJ.cjs} +30 -17
- package/dist/{chunk-KNTUI4TZ.cjs → chunk-3CBYUBZC.cjs} +5 -5
- package/dist/chunk-3DF3GZQ7.js +277 -0
- package/dist/{chunk-E26KKI46.cjs → chunk-3JURXAL6.cjs} +61 -8
- package/dist/{chunk-MOJ7ADW4.cjs → chunk-3KWAP2Y3.cjs} +88 -9
- package/dist/{chunk-OHWMWKJQ.js → chunk-3MCK6UBL.js} +1 -1
- package/dist/{chunk-5VHP6HDQ.js → chunk-3TH7IK4M.js} +62 -9
- package/dist/{chunk-ACDQGA4Z.js → chunk-3V77OB3W.js} +7 -72
- package/dist/{chunk-HS4USDND.cjs → chunk-3Y5UEK7K.cjs} +4 -4
- package/dist/{chunk-XV2HXRHX.js → chunk-4GPPSBEZ.js} +3 -3
- package/dist/chunk-5CMBAJ6K.js +377 -0
- package/dist/{chunk-MO4KP6XS.cjs → chunk-5YRXFBYZ.cjs} +35 -6
- package/dist/chunk-5ZNYX4VH.cjs +71 -0
- package/dist/chunk-6AC2TT26.js +156 -0
- package/dist/{chunk-UGFVM77J.cjs → chunk-6EIQ6A6U.cjs} +2 -2
- package/dist/{chunk-SWCQM52V.js → chunk-6HSEDXVF.js} +4 -4
- package/dist/{chunk-QQ7PANOP.js → chunk-6NUXK62F.js} +1 -1
- package/dist/{chunk-5CMYEM3R.cjs → chunk-6TGCAPYH.cjs} +62 -9
- package/dist/{chunk-NMQ47RCG.js → chunk-6W3SZCSP.js} +1 -1
- package/dist/{chunk-VRMZO6TB.js → chunk-73LV3DDZ.js} +7 -6
- package/dist/{chunk-3GUEUCZK.js → chunk-7BGGLIQF.js} +85 -1
- package/dist/{chunk-RBHANOYY.js → chunk-7DJJGKM6.js} +47 -3
- package/dist/{chunk-LQBONA55.cjs → chunk-7EEK7CRR.cjs} +85 -1
- package/dist/chunk-7TO3PDMV.cjs +324 -0
- package/dist/chunk-7UU22RSH.cjs +277 -0
- package/dist/{chunk-E6GFD7VR.cjs → chunk-A3GAM6FM.cjs} +11 -11
- package/dist/{chunk-DEQVRSV5.cjs → chunk-A7DJU75T.cjs} +8 -8
- package/dist/{chunk-DPSIGY6L.cjs → chunk-AAAO4ERQ.cjs} +9 -9
- package/dist/{chunk-FQAVGSPW.js → chunk-AAJLMP57.js} +2 -2
- package/dist/chunk-ABR756QN.js +529 -0
- package/dist/{chunk-JYKPWK5O.js → chunk-APFGDIPD.js} +3 -1
- package/dist/{chunk-Y3M2DABP.js → chunk-APQYRMYL.js} +4 -4
- package/dist/{chunk-Q2IL4DDI.cjs → chunk-AZKOIF2G.cjs} +62 -19
- package/dist/{chunk-MXVIDIC6.cjs → chunk-AZLHUPNC.cjs} +2 -2
- package/dist/chunk-B55VCYSQ.cjs +30 -0
- package/dist/{chunk-WZV6UVPY.js → chunk-BLQUMSM3.js} +1 -1
- package/dist/{chunk-PHJO5YAL.cjs → chunk-BXKPX6K4.cjs} +9 -9
- package/dist/{chunk-3KLSNNRW.cjs → chunk-C66FN2LP.cjs} +4 -4
- package/dist/{chunk-OV3PVUYN.js → chunk-CH7KUFAS.js} +9 -9
- package/dist/{chunk-CWINVFRI.cjs → chunk-CILSXOPI.cjs} +17 -17
- package/dist/{chunk-3UT7R3XV.js → chunk-CM24K6ZT.js} +145 -12
- package/dist/chunk-CMEZ42F2.cjs +303 -0
- package/dist/{chunk-46C73ZKK.cjs → chunk-CNQKIWIS.cjs} +152 -19
- package/dist/{chunk-5JFTY3VU.js → chunk-CSTUTDTH.js} +2 -1
- package/dist/{chunk-REMGR23V.cjs → chunk-CSUGNNJY.cjs} +10 -4
- package/dist/{chunk-TBOLJDUG.js → chunk-D6HB3H3L.js} +31 -11
- package/dist/{chunk-OM24WXEE.js → chunk-D7AYKVKW.js} +2 -2
- package/dist/{chunk-6GUODJKM.cjs → chunk-DLCXWOWT.cjs} +23 -23
- package/dist/{chunk-CH2J4PVE.cjs → chunk-DMM2BKSV.cjs} +121 -28
- package/dist/{chunk-M4KNC5BQ.js → chunk-DW3DPV77.js} +1 -1
- package/dist/chunk-ECQD2QC3.cjs +33 -0
- package/dist/{chunk-UEIXJG45.js → chunk-EEYOS3UC.js} +116 -80
- package/dist/{chunk-7HPWMALN.js → chunk-EF2EN5CR.js} +2 -2
- package/dist/{chunk-7LWQCE4Y.cjs → chunk-EFXFURDY.cjs} +192 -58
- package/dist/chunk-EK34UZPB.cjs +40 -0
- package/dist/{chunk-7JLT2VNW.cjs → chunk-FJR6EZLO.cjs} +9666 -7201
- package/dist/{chunk-GZ6DV2UG.js → chunk-FPO7YNPQ.js} +1 -1
- package/dist/{chunk-O64I2GYI.js → chunk-FS4I6BNR.js} +1 -1
- package/dist/{chunk-MX75JYIY.js → chunk-FSJ2MNOC.js} +3 -3
- package/dist/{chunk-7RFJB75Y.js → chunk-GEHZMC4G.js} +11 -8
- package/dist/{chunk-UWFG2R2I.cjs → chunk-GO6C2RAR.cjs} +36 -9
- package/dist/{chunk-WGLBC5AY.cjs → chunk-GSMR6V36.cjs} +4 -4
- package/dist/{chunk-Z3XSSF7B.js → chunk-GSZWATME.js} +1 -1
- package/dist/{chunk-7MU7LWF3.cjs → chunk-GYLGCR6F.cjs} +5 -5
- package/dist/{chunk-O6TQP7U7.cjs → chunk-H3OOWNYQ.cjs} +3 -3
- package/dist/{chunk-2QL6MNXG.js → chunk-H65446XW.js} +115 -20
- package/dist/chunk-H7HXRRHK.js +324 -0
- package/dist/{chunk-ZZ63NW7A.cjs → chunk-HN2JTDN5.cjs} +17 -17
- package/dist/{chunk-AOKCI722.cjs → chunk-HNXUZ5OY.cjs} +2 -2
- package/dist/{chunk-AUYSIEVV.cjs → chunk-HOYT3E65.cjs} +3 -3
- package/dist/{chunk-DMRXF5DU.js → chunk-HTPY5ESD.js} +3 -3
- package/dist/chunk-HTU4W3GB.js +183 -0
- package/dist/{chunk-3DDL2E55.cjs → chunk-HVLWH2AF.cjs} +10 -10
- package/dist/{chunk-HSCUPEA4.cjs → chunk-HZTEU4W5.cjs} +74 -105
- package/dist/{chunk-XGMI6IYB.cjs → chunk-I5T7LPFP.cjs} +7 -7
- package/dist/{chunk-XIVFAD2L.js → chunk-IB5CJXE7.js} +173 -12
- package/dist/chunk-INNXFLDR.cjs +388 -0
- package/dist/{chunk-75EDROHL.cjs → chunk-JFLEP3T7.cjs} +10 -10
- package/dist/chunk-JJGDOBFL.js +40 -0
- package/dist/{chunk-VBOFPU5M.cjs → chunk-JM3ZTQUK.cjs} +13 -9
- package/dist/{chunk-HJIXWGQZ.js → chunk-JSU46T6K.js} +1 -1
- package/dist/{chunk-AT7OWLY5.js → chunk-K6WN6BT4.js} +1 -1
- package/dist/{chunk-LN7D3EJZ.js → chunk-KA2U6MY2.js} +4 -3
- package/dist/{chunk-3S563FNF.cjs → chunk-KIQH3SMT.cjs} +34 -31
- package/dist/{chunk-BWF4VDYE.js → chunk-KPRXHIE2.js} +54 -85
- package/dist/{chunk-Z4LIPMPM.js → chunk-L6OH44HL.js} +13 -9
- package/dist/{chunk-A7HHCIDQ.js → chunk-LIO3RX2Z.js} +2 -2
- package/dist/{chunk-DLP436GI.js → chunk-LOSXLH7P.js} +110 -17
- package/dist/{chunk-IEXKKKOF.cjs → chunk-LSOR72PB.cjs} +23 -23
- package/dist/{chunk-IAGCRVJ3.js → chunk-MA3AVDCC.js} +55 -12
- package/dist/{chunk-B5CGDNMR.js → chunk-ME3S2WIR.js} +3 -3
- package/dist/{chunk-HKYZSUQ5.js → chunk-NC2I2M4P.js} +4 -4
- package/dist/{chunk-GBMDFWJX.cjs → chunk-NC4A4LVC.cjs} +13 -13
- package/dist/{chunk-E46DJH5S.js → chunk-NGEK5FCJ.js} +176 -3
- package/dist/{chunk-TQ33WBY5.cjs → chunk-NHWHEW7M.cjs} +2 -1
- package/dist/{chunk-62RTC3XX.js → chunk-NKW6CHXQ.js} +1 -1
- package/dist/{chunk-3PXKRVCW.js → chunk-NOWCRKP2.js} +10 -4
- package/dist/{chunk-HXJEGMGB.js → chunk-NUB2LMB6.js} +2 -2
- package/dist/chunk-NVATU4V6.cjs +44 -0
- package/dist/chunk-O246MKIW.cjs +267 -0
- package/dist/{chunk-QCHIDZBA.js → chunk-OGFWL2PS.js} +1 -1
- package/dist/{chunk-JJ4KA7HK.cjs → chunk-ONNGAR6W.cjs} +415 -551
- package/dist/{chunk-TKKN34TV.js → chunk-OOFR6A62.js} +33 -4
- package/dist/{chunk-6NVAK6CK.js → chunk-OZ7FHO7J.js} +2 -2
- package/dist/{chunk-2CGE7ZV3.cjs → chunk-P5EWGUI2.cjs} +201 -28
- package/dist/{chunk-GGLKUENP.js → chunk-P6BQJPAI.js} +191 -14
- package/dist/{chunk-TWQDAUZU.js → chunk-PG2JIU5M.js} +60 -7
- package/dist/chunk-PI27G2ED.cjs +377 -0
- package/dist/{chunk-YV63VW4K.js → chunk-PI7LRPL6.js} +1 -1
- package/dist/{chunk-TXPSTCG7.cjs → chunk-PMPEC5HN.cjs} +18 -15
- package/dist/{chunk-ROLA6EFO.cjs → chunk-PYUP7AKY.cjs} +14 -14
- package/dist/{chunk-BFQDQRDE.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-3LJJG5YY.cjs → chunk-QLZOMZO5.cjs} +4 -3
- package/dist/chunk-QVXMSQOG.js +430 -0
- package/dist/{chunk-ZHJ7JGME.cjs → chunk-R4UKBKDY.cjs} +11 -11
- package/dist/{chunk-IGMPWJ2I.cjs → chunk-R75AWII3.cjs} +118 -23
- package/dist/{chunk-VGEV44V2.cjs → chunk-RD5PLUIX.cjs} +191 -30
- package/dist/{chunk-I24CWKKK.js → chunk-RGB34CV5.js} +3 -3
- package/dist/{chunk-CHI52KFR.cjs → chunk-RJCZLFHE.cjs} +246 -39
- package/dist/{chunk-D2OSPLYC.cjs → chunk-RKWNM2BJ.cjs} +2 -2
- package/dist/{chunk-FGT6KK6T.js → chunk-RMVONICR.js} +3 -3
- package/dist/{chunk-Q6AC3PHY.cjs → chunk-RPSYRJL7.cjs} +10 -4
- package/dist/chunk-RS2E32YB.js +71 -0
- package/dist/chunk-RWKU2X7O.js +388 -0
- package/dist/chunk-RZLEGVMH.cjs +565 -0
- package/dist/{chunk-5F6ZKSHO.js → chunk-S2L3Y677.js} +1 -1
- package/dist/{chunk-ARBEHFCG.js → chunk-S7KVUIOS.js} +1 -1
- package/dist/{chunk-AC7DZ6SK.cjs → chunk-SACJJ6NO.cjs} +5 -3
- package/dist/{chunk-IKUMVBCW.cjs → chunk-SD3NTC7D.cjs} +48 -4
- package/dist/{chunk-CBFH2J3O.js → chunk-SJQU2ZFR.js} +246 -39
- package/dist/{chunk-GWO66KBI.js → chunk-SKAQKQFF.js} +12 -2
- package/dist/chunk-T4DXP5OP.js +30 -0
- package/dist/{chunk-CFFE4VA3.js → chunk-T6FTB6K2.js} +1 -1
- package/dist/{chunk-U4C3HW6P.js → chunk-T6N6GRFT.js} +13 -10
- package/dist/{chunk-D6GZBSOX.js → chunk-TJFKA6A7.js} +82 -3
- package/dist/{chunk-2HOLOHVK.js → chunk-TJZUPS4Z.js} +163 -299
- package/dist/{chunk-RBZ7AFX7.cjs → chunk-TLKHZ425.cjs} +2 -2
- package/dist/{chunk-J2K57QM7.cjs → chunk-TQ24NLXO.cjs} +6 -6
- package/dist/{chunk-LUMV3DB2.js → chunk-TWBAU46X.js} +1 -1
- package/dist/{chunk-OPNI6O7F.cjs → chunk-TZB5XADL.cjs} +4 -4
- package/dist/{chunk-6HH236FV.cjs → chunk-UAYXZXWU.cjs} +4 -4
- package/dist/{chunk-MPULXVC4.cjs → chunk-UKBFNBDO.cjs} +11 -11
- package/dist/chunk-UMJYX5KD.js +565 -0
- package/dist/chunk-USKYTHDL.cjs +235 -0
- package/dist/chunk-V4HGZSKQ.cjs +183 -0
- package/dist/{chunk-MQESBFBZ.cjs → chunk-VAJUSZMC.cjs} +21 -20
- package/dist/{chunk-PQLKJCIE.js → chunk-VGQG4NBJ.js} +2 -2
- package/dist/chunk-VLUIVJ3J.js +235 -0
- package/dist/chunk-VOBINVMV.cjs +430 -0
- package/dist/{chunk-L4F7SUYL.js → chunk-VSHKKCSH.js} +16 -5
- package/dist/{chunk-LDJQ5QHG.cjs → chunk-VSZU3MGA.cjs} +28 -17
- package/dist/{chunk-YFXTE422.cjs → chunk-VWHAUB77.cjs} +8 -3
- package/dist/{chunk-EZJHLOWP.js → chunk-VXGYFX45.js} +20 -7
- package/dist/{chunk-JIMSII7R.js → chunk-WH6YUQDB.js} +193 -59
- package/dist/{chunk-VKBIE6I6.js → chunk-WQ6TD55V.js} +2 -2
- package/dist/{chunk-ZR46OJNZ.js → chunk-WQWECXTY.js} +3 -3
- package/dist/{chunk-SOLBYSLY.cjs → chunk-WVDJUJH6.cjs} +2 -2
- package/dist/{chunk-QKP772OZ.js → chunk-X24VIVDZ.js} +963 -103
- package/dist/{chunk-37M5UM6I.js → chunk-X4NRTLXD.js} +7 -1
- package/dist/chunk-X53SHYCG.js +27 -0
- package/dist/{chunk-PUD76XQT.cjs → chunk-XB2Z4ZAK.cjs} +5 -5
- package/dist/chunk-Y47OJGLB.cjs +27 -0
- package/dist/{chunk-WRTXCQ3V.cjs → chunk-Y4MN27V3.cjs} +1080 -220
- package/dist/{chunk-ZK6HOR62.js → chunk-YEHFYZFU.js} +7 -2
- package/dist/{chunk-FFBDRUO5.cjs → chunk-YICIUY23.cjs} +1 -1
- package/dist/{chunk-PDHT7LQS.cjs → chunk-YMXYC777.cjs} +3 -3
- package/dist/{chunk-TJNBASFD.cjs → chunk-Z3GRWK6O.cjs} +8 -8
- package/dist/{chunk-JP3YHTQ2.cjs → chunk-Z5GG2KSL.cjs} +4 -4
- package/dist/{chunk-ZPD2AO3U.js → chunk-ZER7DYQK.js} +2 -2
- package/dist/{chunk-UXLW45ZE.cjs → chunk-ZFDXZEZJ.cjs} +25 -90
- package/dist/chunk-ZFV4HJA6.js +579 -0
- package/dist/chunk-ZHMYTI5D.cjs +529 -0
- package/dist/{chunk-CCVMREXI.js → chunk-ZLR2TFBC.js} +35 -8
- package/dist/{chunk-J5ADZN6V.cjs → chunk-ZTWNU5QZ.cjs} +20 -20
- package/dist/chunk-ZUYYHKQA.js +44 -0
- package/dist/{chunk-AUFNACED.js → chunk-ZVLVLDYN.js} +9086 -6621
- package/dist/clear-AJGXD2BB.cjs +12 -0
- package/dist/{clear-OFLFQ3MR.js → clear-HAHDSWKW.js} +3 -3
- package/dist/communityInstaller-IRR6M3N6.cjs +22 -0
- package/dist/{communityInstaller-COB2KTOW.js → communityInstaller-OLKEUGMX.js} +6 -6
- package/dist/completion-G7Z436TF.cjs +17 -0
- package/dist/{completion-PT4VM2H2.js → completion-ZS3AXJ6A.js} +5 -5
- package/dist/{config-R4O7GBTY.js → config-OWYAQPCX.js} +5 -3
- package/dist/config-W2BHT2QE.cjs +22 -0
- package/dist/{constants-HVCHVQAF.js → constants-AS6K67AA.js} +5 -3
- package/dist/constants-B4W5BT7F.cjs +23 -0
- package/dist/{export-3PK3VFCE.js → export-5HIU3KMD.js} +5 -5
- 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-OPNVMB2E.js +14 -0
- 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-X3OAZ3CY.js → help-TCWD2IRH.js} +2 -2
- package/dist/{history-YKFPHBJN.js → history-ATOR5OQV.js} +2 -2
- package/dist/history-UUSGX2AL.cjs +14 -0
- package/dist/{hooks-7TA4PIIB.js → hooks-R3Z5QKUP.js} +6 -6
- package/dist/hooks-RWM5UY67.cjs +18 -0
- package/dist/{i18n-2KBUU7XL.js → i18n-4QI4TD4I.js} +1 -1
- package/dist/i18n-MFAEU5RV.cjs +33 -0
- package/dist/ide-6PBTCCUQ.js +15 -0
- package/dist/ide-UE3G7NMQ.cjs +15 -0
- package/dist/{import-I7T4ZHYL.cjs → import-2IG76KAN.cjs} +6 -4
- package/dist/{import-JWPYKXCZ.js → import-E47QL4DW.js} +2 -2
- package/dist/import-NQDNBFUL.cjs +10 -0
- package/dist/{import-4CHYLS4K.js → import-VQIHGJWS.js} +6 -4
- package/dist/index.cjs +512 -305
- package/dist/index.d.cts +40 -0
- package/dist/index.d.ts +40 -0
- package/dist/index.js +402 -195
- package/dist/init-DX3RDGDT.cjs +10 -0
- package/dist/{init-262MWZV4.js → init-Q54OAAFZ.js} +2 -2
- package/dist/{inputPrompt-YGBHDUEP.js → inputPrompt-V2VBDRM7.js} +3 -3
- 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-5O6PUL4G.js → mcp-EN73YFGZ.js} +8 -6
- package/dist/mcp-TADZCPJQ.cjs +22 -0
- package/dist/{mcp-install-P6DHES7V.cjs → mcp-install-2GKWWBAS.cjs} +15 -13
- package/dist/{mcp-install-6XWXLFVY.js → mcp-install-3TBTVSHW.js} +10 -8
- package/dist/memory-GRXFTDIN.cjs +10 -0
- package/dist/{memory-Q54CESNM.js → memory-K2P3CDCH.js} +2 -2
- package/dist/{model-6AJ77PJG.js → model-DEG22OWA.js} +2 -2
- package/dist/model-OSD74T7Z.cjs +10 -0
- package/dist/new-4NWBOATU.cjs +12 -0
- package/dist/{new-ZXHEWC2S.js → new-KJAP2MB6.js} +3 -3
- package/dist/onboarding-2U5WE2OA.js +39 -0
- package/dist/onboarding-5DZFCO5Q.cjs +39 -0
- package/dist/permissions-KY5I6YQ3.cjs +10 -0
- package/dist/{permissions-YHJMVA6L.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-34GL6BNJ.js → registry-EZ4V4TUQ.js} +1339 -1
- package/dist/{registry-V24W7YK6.cjs → registry-LCWYI4IB.cjs} +1378 -40
- package/dist/resume-4VWJXARX.cjs +17 -0
- package/dist/resume-TLHWWWFN.js +17 -0
- package/dist/{review-QHP2KP4Q.js → review-CSK4IYTO.js} +1 -1
- package/dist/review-XLJEUH5K.cjs +9 -0
- package/dist/{rpc-S3DGW6KV.js → rpc-3DLQBDWU.js} +301 -130
- package/dist/{rpc-NPS3PU4O.cjs → rpc-O36WUU3L.cjs} +399 -228
- 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-IYAXMK23.js → sessions-VWMDIPOS.js} +2 -2
- package/dist/settings-FT2LZZUV.js +45 -0
- 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-CGB6MAVJ.js +17 -0
- package/dist/skills/builtin/code-reviewer/SKILL.md +64 -0
- package/dist/skills/builtin/goal-writer/SKILL.md +124 -0
- package/dist/{skills-VWOMV3CR.js → skills-7DKR3HRZ.js} +8 -8
- package/dist/{skills-MVIZNHT4.js → skills-BBBENOEY.js} +9 -9
- package/dist/skills-OQM7IHAF.cjs +29 -0
- package/dist/{skills-GGMZOVIE.cjs → skills-RA2PKL63.cjs} +10 -10
- package/dist/{skills-install-VTAMCNNY.cjs → skills-install-D7K476SL.cjs} +16 -16
- package/dist/{skills-install-QBA5RCV6.js → skills-install-T4SOKJSL.js} +9 -9
- package/dist/skills-new-S33NGEU3.js +18 -0
- 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-7BILIQHP.js → sync-J6I2ZUKQ.js} +6 -4
- package/dist/{sync-7OKF6636.js → sync-Z3LVSEEV.js} +8 -5
- package/dist/{teammate-J6PHGL23.cjs → teammate-EXR76PEQ.cjs} +9 -8
- package/dist/{teammate-GZQSCIMS.js → teammate-K4DAOFEQ.js} +8 -7
- package/dist/templates-ARG2VRWW.cjs +11 -0
- package/dist/templates-UGVZV3KJ.js +11 -0
- package/dist/theme-MVQDSU47.js +23 -0
- package/dist/theme-QAKEYWJG.cjs +23 -0
- package/dist/ui/questionModal.cjs +6 -6
- package/dist/ui/questionModal.js +5 -5
- package/dist/{undo-SZEHLX7X.js → undo-5AU47JHF.js} +2 -2
- package/dist/undo-ME6WKUXZ.cjs +10 -0
- package/dist/usage-QTKO2YMD.js +25 -0
- package/dist/usage-TYNJKVER.cjs +25 -0
- package/package.json +10 -4
- package/dist/AgentRegistry-EGBDIUAK.cjs +0 -10
- package/dist/AgentRegistry-XPWSVO3Q.js +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/MemoryManager-WJMLPWGU.js +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-33I47NZS.js +0 -24
- 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-N6O3XUZ2.cjs +0 -23
- 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/onboarding-JYNMK6NI.js +0 -35
- package/dist/permissions-YBNSANIA.cjs +0 -10
- package/dist/plan-XEJMOT55.cjs +0 -13
- package/dist/quit-B43SJ6E4.cjs +0 -10
- package/dist/quit-GWTNHQSP.js +0 -10
- package/dist/resume-DYVOQN5L.cjs +0 -16
- package/dist/resume-M25UQKOX.js +0 -16
- package/dist/review-UWHWQHCB.cjs +0 -9
- package/dist/search-CPX4PWHP.js +0 -20
- package/dist/search-VUF3M4N3.cjs +0 -20
- package/dist/sessions-JODKER5D.cjs +0 -10
- package/dist/settings-55BNW6BF.js +0 -33
- 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
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
PROJECT_DIR_NAME
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-PG2JIU5M.js";
|
|
4
4
|
|
|
5
5
|
// src/skills/autoSkill.ts
|
|
6
6
|
import fs from "fs-extra";
|
|
@@ -440,8 +440,8 @@ async function runAutoSkillGeneration(workspaceRoot, llm) {
|
|
|
440
440
|
console.log(chalk.gray(`Detected: ${detected}`));
|
|
441
441
|
console.log(chalk.gray(`Platform: ${analysis.platform}`));
|
|
442
442
|
console.log(chalk.cyan("Generating targeted skill via LearnAdvisor..."));
|
|
443
|
-
const { LearnAdvisor } = await import("./LearnAdvisor-
|
|
444
|
-
const { computeProjectHash, injectGeneratedMetadata } = await import("./communityInstaller-
|
|
443
|
+
const { LearnAdvisor } = await import("./LearnAdvisor-RFOBXFG7.js");
|
|
444
|
+
const { computeProjectHash, injectGeneratedMetadata } = await import("./communityInstaller-OLKEUGMX.js");
|
|
445
445
|
const advisor = new LearnAdvisor(llm);
|
|
446
446
|
const generated = await advisor.generateSkill(analysis, null, []);
|
|
447
447
|
if (!generated) {
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
CommunitySkillsCache
|
|
3
|
-
} from "./chunk-5F6ZKSHO.js";
|
|
4
1
|
import {
|
|
5
2
|
GitHubRegistryFetcher
|
|
6
3
|
} from "./chunk-YVQI26H4.js";
|
|
@@ -8,14 +5,17 @@ import {
|
|
|
8
5
|
LearnClient,
|
|
9
6
|
fetchRegistryWithFallback,
|
|
10
7
|
installSkillWithSecurity
|
|
11
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-HTPY5ESD.js";
|
|
9
|
+
import {
|
|
10
|
+
CommunitySkillsCache
|
|
11
|
+
} from "./chunk-S2L3Y677.js";
|
|
12
12
|
import {
|
|
13
13
|
showConfirm,
|
|
14
14
|
showModal
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-LOSXLH7P.js";
|
|
16
16
|
import {
|
|
17
17
|
t
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-SJQU2ZFR.js";
|
|
19
19
|
|
|
20
20
|
// src/commands/skills.ts
|
|
21
21
|
import path from "path";
|
|
@@ -109,6 +109,8 @@ function generateSkillSuggestion(skillName, description) {
|
|
|
109
109
|
}
|
|
110
110
|
function getSkillSourceLabel(source) {
|
|
111
111
|
switch (source) {
|
|
112
|
+
case "builtin":
|
|
113
|
+
return "Built-in";
|
|
112
114
|
case "autohand-user":
|
|
113
115
|
return "Autohand User";
|
|
114
116
|
case "autohand-project":
|
|
@@ -204,6 +206,7 @@ function listSkills(registry) {
|
|
|
204
206
|
bySource.set(skill.source, existing);
|
|
205
207
|
}
|
|
206
208
|
const sourceLabels = {
|
|
209
|
+
"builtin": "Built-in Skills",
|
|
207
210
|
"codex-user": "\u{1F4C1} Codex User Skills",
|
|
208
211
|
"claude-user": "\u{1F4C1} Claude User Skills",
|
|
209
212
|
"claude-project": "\u{1F4C1} Project Skills",
|
|
@@ -338,7 +341,7 @@ async function handleSkillsInstall(ctx, skillName) {
|
|
|
338
341
|
if (!workspaceRoot) {
|
|
339
342
|
return "Workspace root not available.";
|
|
340
343
|
}
|
|
341
|
-
const { skillsInstall } = await import("./skills-install-
|
|
344
|
+
const { skillsInstall } = await import("./skills-install-T4SOKJSL.js");
|
|
342
345
|
const result = await skillsInstall(
|
|
343
346
|
{
|
|
344
347
|
skillsRegistry,
|
|
@@ -461,7 +464,7 @@ function handleSkillsFeedback(slug, rating, _comment) {
|
|
|
461
464
|
}
|
|
462
465
|
var metadata = {
|
|
463
466
|
command: "/skills",
|
|
464
|
-
description:
|
|
467
|
+
description: "discover and install skills for your project",
|
|
465
468
|
implemented: true,
|
|
466
469
|
subcommands: [
|
|
467
470
|
{ name: "use", description: "Activate a skill" },
|
|
@@ -3,6 +3,36 @@
|
|
|
3
3
|
|
|
4
4
|
var _chunk3OF56EMAcjs = require('./chunk-3OF56EMA.cjs');
|
|
5
5
|
|
|
6
|
+
// src/providers/usage.ts
|
|
7
|
+
function readTokenCount(record, keys) {
|
|
8
|
+
for (const key of keys) {
|
|
9
|
+
const value = record[key];
|
|
10
|
+
if (typeof value === "number" && Number.isFinite(value) && value >= 0) {
|
|
11
|
+
return Math.floor(value);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return void 0;
|
|
15
|
+
}
|
|
16
|
+
function normalizeLLMUsage(rawUsage) {
|
|
17
|
+
if (!rawUsage || typeof rawUsage !== "object" || Array.isArray(rawUsage)) {
|
|
18
|
+
return void 0;
|
|
19
|
+
}
|
|
20
|
+
const usage = rawUsage;
|
|
21
|
+
const promptTokens = readTokenCount(usage, ["prompt_tokens", "input_tokens", "promptTokens", "inputTokens"]);
|
|
22
|
+
const completionTokens = readTokenCount(usage, ["completion_tokens", "output_tokens", "completionTokens", "outputTokens"]);
|
|
23
|
+
const reportedTotal = readTokenCount(usage, ["total_tokens", "totalTokens"]);
|
|
24
|
+
const hasAnyActualCount = promptTokens !== void 0 || completionTokens !== void 0 || reportedTotal !== void 0;
|
|
25
|
+
if (!hasAnyActualCount) {
|
|
26
|
+
return void 0;
|
|
27
|
+
}
|
|
28
|
+
const totalTokens = _nullishCoalesce(reportedTotal, () => ( (_nullishCoalesce(promptTokens, () => ( 0))) + (_nullishCoalesce(completionTokens, () => ( 0)))));
|
|
29
|
+
return {
|
|
30
|
+
promptTokens: _nullishCoalesce(promptTokens, () => ( 0)),
|
|
31
|
+
completionTokens: _nullishCoalesce(completionTokens, () => ( 0)),
|
|
32
|
+
totalTokens
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
|
|
6
36
|
// src/providers/NVIDIAClient.ts
|
|
7
37
|
function sanitizeMessages(messages) {
|
|
8
38
|
return messages.map((msg) => {
|
|
@@ -183,14 +213,7 @@ var NVIDIAClient = class {
|
|
|
183
213
|
}
|
|
184
214
|
}));
|
|
185
215
|
}
|
|
186
|
-
|
|
187
|
-
if (_optionalChain([json, 'optionalAccess', _19 => _19.usage])) {
|
|
188
|
-
usage = {
|
|
189
|
-
promptTokens: _nullishCoalesce(json.usage.prompt_tokens, () => ( 0)),
|
|
190
|
-
completionTokens: _nullishCoalesce(json.usage.completion_tokens, () => ( 0)),
|
|
191
|
-
totalTokens: _nullishCoalesce(json.usage.total_tokens, () => ( 0))
|
|
192
|
-
};
|
|
193
|
-
}
|
|
216
|
+
const usage = normalizeLLMUsage(_optionalChain([json, 'optionalAccess', _19 => _19.usage]));
|
|
194
217
|
return {
|
|
195
218
|
id: _nullishCoalesce(json.id, () => ( "nvidia-response")),
|
|
196
219
|
created: _nullishCoalesce(json.created, () => ( Date.now())),
|
|
@@ -385,6 +408,9 @@ var NVIDIAProvider = class {
|
|
|
385
408
|
getName() {
|
|
386
409
|
return "nvidia";
|
|
387
410
|
}
|
|
411
|
+
getCapabilities() {
|
|
412
|
+
return { nativeToolCalling: true };
|
|
413
|
+
}
|
|
388
414
|
setModel(model) {
|
|
389
415
|
this.model = model;
|
|
390
416
|
this.client.setDefaultModel(model);
|
|
@@ -412,7 +438,8 @@ var NVIDIAProvider = class {
|
|
|
412
438
|
|
|
413
439
|
|
|
414
440
|
|
|
415
|
-
|
|
441
|
+
|
|
442
|
+
exports.normalizeLLMUsage = normalizeLLMUsage; exports.NVIDIA_DEFAULT_BASE_URL = NVIDIA_DEFAULT_BASE_URL2; exports.NVIDIA_MODELS = NVIDIA_MODELS; exports.NVIDIA_DEFAULT_MODEL = NVIDIA_DEFAULT_MODEL; exports.NVIDIAProvider = NVIDIAProvider;
|
|
416
443
|
/**
|
|
417
444
|
* @license
|
|
418
445
|
* Copyright 2025 Autohand AI LLC
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkRJCZLFHEcjs = require('./chunk-RJCZLFHE.cjs');
|
|
4
4
|
|
|
5
5
|
// src/commands/permissions.ts
|
|
6
6
|
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
@@ -31,9 +31,9 @@ function renderSection(title, section) {
|
|
|
31
31
|
async function permissions(ctx) {
|
|
32
32
|
const snapshot = ctx.permissionManager.getPermissionSnapshot(_nullishCoalesce(ctx.configPath, () => ( "(user config unknown)")));
|
|
33
33
|
console.log();
|
|
34
|
-
console.log(_chalk2.default.bold.cyan(
|
|
34
|
+
console.log(_chalk2.default.bold.cyan(_chunkRJCZLFHEcjs.t.call(void 0, "commands.permissions.title")));
|
|
35
35
|
console.log(_chalk2.default.gray("\u2500".repeat(50)));
|
|
36
|
-
console.log(_chalk2.default.gray(
|
|
36
|
+
console.log(_chalk2.default.gray(_chunkRJCZLFHEcjs.t.call(void 0, "commands.permissions.mode", { mode: snapshot.mode || "interactive" })));
|
|
37
37
|
console.log(_chalk2.default.gray(`Remember session decisions: ${snapshot.rememberSession ? "Yes" : "No"}`));
|
|
38
38
|
console.log();
|
|
39
39
|
renderSection("Session", snapshot.session);
|
|
@@ -44,7 +44,7 @@ async function permissions(ctx) {
|
|
|
44
44
|
}
|
|
45
45
|
var metadata = {
|
|
46
46
|
command: "/permissions",
|
|
47
|
-
description:
|
|
47
|
+
description: _chunkRJCZLFHEcjs.t.call(void 0, "commands.permissions.description"),
|
|
48
48
|
implemented: true
|
|
49
49
|
};
|
|
50
50
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkDMM2BKSVcjs = require('./chunk-DMM2BKSV.cjs');
|
|
7
7
|
|
|
8
8
|
// src/utils/prompt.ts
|
|
9
9
|
async function safePrompt(questions) {
|
|
@@ -17,7 +17,7 @@ async function safePrompt(questions) {
|
|
|
17
17
|
label: choice.message,
|
|
18
18
|
value: choice.name
|
|
19
19
|
}));
|
|
20
|
-
const result = await
|
|
20
|
+
const result = await _chunkDMM2BKSVcjs.showModal.call(void 0, {
|
|
21
21
|
title: selectConfig.message,
|
|
22
22
|
options,
|
|
23
23
|
initialIndex: selectConfig.initial
|
|
@@ -25,19 +25,19 @@ async function safePrompt(questions) {
|
|
|
25
25
|
value = _optionalChain([result, 'optionalAccess', _ => _.value]);
|
|
26
26
|
} else if (question.type === "confirm") {
|
|
27
27
|
const confirmConfig = question;
|
|
28
|
-
value = await
|
|
28
|
+
value = await _chunkDMM2BKSVcjs.showConfirm.call(void 0, {
|
|
29
29
|
title: confirmConfig.message,
|
|
30
30
|
defaultValue: confirmConfig.initial
|
|
31
31
|
});
|
|
32
32
|
} else if (question.type === "password") {
|
|
33
33
|
const inputConfig = question;
|
|
34
|
-
value = await
|
|
34
|
+
value = await _chunkDMM2BKSVcjs.showPassword.call(void 0, {
|
|
35
35
|
title: inputConfig.message,
|
|
36
36
|
validate: inputConfig.validate
|
|
37
37
|
});
|
|
38
38
|
} else if (question.type === "input") {
|
|
39
39
|
const inputConfig = question;
|
|
40
|
-
value = await
|
|
40
|
+
value = await _chunkDMM2BKSVcjs.showInput.call(void 0, {
|
|
41
41
|
title: inputConfig.message,
|
|
42
42
|
defaultValue: inputConfig.initial,
|
|
43
43
|
validate: inputConfig.validate
|
|
@@ -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 _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkRJCZLFHEcjs = require('./chunk-RJCZLFHE.cjs');
|
|
4
4
|
|
|
5
5
|
// src/commands/sessions.ts
|
|
6
6
|
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
7
7
|
var metadata = {
|
|
8
8
|
command: "/sessions",
|
|
9
|
-
description:
|
|
9
|
+
description: _chunkRJCZLFHEcjs.t.call(void 0, "commands.sessions.description"),
|
|
10
10
|
implemented: true
|
|
11
11
|
};
|
|
12
12
|
async function sessions(ctx) {
|
|
@@ -16,7 +16,7 @@ async function sessions(ctx) {
|
|
|
16
16
|
projectFilter ? { project: projectFilter } : void 0
|
|
17
17
|
);
|
|
18
18
|
if (allSessions.length === 0) {
|
|
19
|
-
console.log(_chalk2.default.gray(
|
|
19
|
+
console.log(_chalk2.default.gray(_chunkRJCZLFHEcjs.t.call(void 0, "commands.sessions.noSessions")));
|
|
20
20
|
return null;
|
|
21
21
|
}
|
|
22
22
|
console.log(_chalk2.default.cyan(`
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AUTOHAND_HOME
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-PG2JIU5M.js";
|
|
4
4
|
import {
|
|
5
5
|
getSyncApiClient
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-L6OH44HL.js";
|
|
7
7
|
|
|
8
8
|
// src/sync/types.ts
|
|
9
9
|
var DEFAULT_SYNC_CONFIG = {
|
|
@@ -36,6 +36,9 @@ var SYNC_INCLUDE_DEFAULT = [
|
|
|
36
36
|
"share/",
|
|
37
37
|
"skills/"
|
|
38
38
|
];
|
|
39
|
+
function isMemorySyncPath(filePath) {
|
|
40
|
+
return filePath === "memory" || filePath.startsWith("memory/");
|
|
41
|
+
}
|
|
39
42
|
|
|
40
43
|
// src/sync/encryption.ts
|
|
41
44
|
import crypto from "crypto";
|
|
@@ -137,7 +140,7 @@ function decryptConfig(config, authToken) {
|
|
|
137
140
|
try {
|
|
138
141
|
result[key] = decrypt(value, authToken);
|
|
139
142
|
} catch {
|
|
140
|
-
|
|
143
|
+
continue;
|
|
141
144
|
}
|
|
142
145
|
} else {
|
|
143
146
|
result[key] = value;
|
|
@@ -160,6 +163,32 @@ var MANIFEST_VERSION = 1;
|
|
|
160
163
|
var SYNC_STATE_FILE = ".sync-state.json";
|
|
161
164
|
var SYNC_LOCK_FILE = ".sync-lock";
|
|
162
165
|
var MAX_TOTAL_SIZE = 100 * 1024 * 1024;
|
|
166
|
+
function isJsonObject(value) {
|
|
167
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
168
|
+
}
|
|
169
|
+
function stripUnsyncedConfigFields(config) {
|
|
170
|
+
const rest = { ...config };
|
|
171
|
+
delete rest.auth;
|
|
172
|
+
return rest;
|
|
173
|
+
}
|
|
174
|
+
function mergeDownloadedConfig(downloaded, local) {
|
|
175
|
+
const sanitizedDownloaded = stripUnsyncedConfigFields(downloaded);
|
|
176
|
+
if (local && Object.prototype.hasOwnProperty.call(local, "auth")) {
|
|
177
|
+
return {
|
|
178
|
+
...sanitizedDownloaded,
|
|
179
|
+
auth: local.auth
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
return sanitizedDownloaded;
|
|
183
|
+
}
|
|
184
|
+
function isRemoteNewer(localFile, remoteFile) {
|
|
185
|
+
const localTime = Date.parse(localFile.modifiedAt);
|
|
186
|
+
const remoteTime = Date.parse(remoteFile.modifiedAt);
|
|
187
|
+
if (Number.isNaN(localTime) || Number.isNaN(remoteTime)) {
|
|
188
|
+
return true;
|
|
189
|
+
}
|
|
190
|
+
return remoteTime > localTime;
|
|
191
|
+
}
|
|
163
192
|
var SyncService = class {
|
|
164
193
|
authToken;
|
|
165
194
|
userId;
|
|
@@ -275,13 +304,21 @@ var SyncService = class {
|
|
|
275
304
|
const url = downloadUrls[file.path];
|
|
276
305
|
if (!url) continue;
|
|
277
306
|
try {
|
|
278
|
-
const content = await this.client.downloadFile(url);
|
|
307
|
+
const content = await this.client.downloadFile(url, this.authToken);
|
|
279
308
|
const localPath = path.join(this.basePath, file.path);
|
|
280
309
|
if (file.path === "config.json") {
|
|
281
310
|
const config = JSON.parse(content.toString("utf8"));
|
|
282
|
-
const
|
|
311
|
+
const localConfig = await fs.readJson(localPath).catch(() => null);
|
|
312
|
+
const decrypted = decryptConfig(
|
|
313
|
+
isJsonObject(config) ? config : {},
|
|
314
|
+
this.authToken
|
|
315
|
+
);
|
|
316
|
+
const merged = mergeDownloadedConfig(
|
|
317
|
+
decrypted,
|
|
318
|
+
isJsonObject(localConfig) ? localConfig : null
|
|
319
|
+
);
|
|
283
320
|
await fs.ensureDir(path.dirname(localPath));
|
|
284
|
-
await fs.writeJson(localPath,
|
|
321
|
+
await fs.writeJson(localPath, merged, { spaces: 2 });
|
|
285
322
|
} else {
|
|
286
323
|
await fs.ensureDir(path.dirname(localPath));
|
|
287
324
|
await fs.writeFile(localPath, content);
|
|
@@ -319,12 +356,13 @@ var SyncService = class {
|
|
|
319
356
|
let content;
|
|
320
357
|
if (file.path === "config.json") {
|
|
321
358
|
const config = await fs.readJson(localPath);
|
|
322
|
-
const
|
|
359
|
+
const syncedConfig = stripUnsyncedConfigFields(isJsonObject(config) ? config : {});
|
|
360
|
+
const encrypted = encryptConfig(syncedConfig, this.authToken);
|
|
323
361
|
content = Buffer.from(JSON.stringify(encrypted, null, 2), "utf8");
|
|
324
362
|
} else {
|
|
325
363
|
content = await fs.readFile(localPath);
|
|
326
364
|
}
|
|
327
|
-
await this.client.uploadFile(url, content);
|
|
365
|
+
await this.client.uploadFile(url, content, this.authToken);
|
|
328
366
|
uploaded++;
|
|
329
367
|
this.onEvent({ type: "file_uploaded", path: file.path, size: content.length });
|
|
330
368
|
} catch (error) {
|
|
@@ -408,11 +446,11 @@ var SyncService = class {
|
|
|
408
446
|
if (await fs.pathExists(fullPath)) {
|
|
409
447
|
const stat = await fs.stat(fullPath);
|
|
410
448
|
if (stat.isFile()) {
|
|
411
|
-
const content = await
|
|
449
|
+
const content = await this.readManifestContent(relativePath, fullPath);
|
|
412
450
|
files.push({
|
|
413
451
|
path: relativePath,
|
|
414
452
|
hash: computeHash(content),
|
|
415
|
-
size:
|
|
453
|
+
size: content.length,
|
|
416
454
|
modifiedAt: stat.mtime.toISOString(),
|
|
417
455
|
encrypted: relativePath === "config.json"
|
|
418
456
|
});
|
|
@@ -471,11 +509,11 @@ var SyncService = class {
|
|
|
471
509
|
if (entry.isFile()) {
|
|
472
510
|
try {
|
|
473
511
|
const stat = await fs.stat(fullPath);
|
|
474
|
-
const content = await
|
|
512
|
+
const content = await this.readManifestContent(relativePath, fullPath);
|
|
475
513
|
files.push({
|
|
476
514
|
path: relativePath,
|
|
477
515
|
hash: computeHash(content),
|
|
478
|
-
size:
|
|
516
|
+
size: content.length,
|
|
479
517
|
modifiedAt: stat.mtime.toISOString()
|
|
480
518
|
});
|
|
481
519
|
} catch {
|
|
@@ -488,6 +526,14 @@ var SyncService = class {
|
|
|
488
526
|
}
|
|
489
527
|
return files;
|
|
490
528
|
}
|
|
529
|
+
async readManifestContent(relativePath, fullPath) {
|
|
530
|
+
if (relativePath !== "config.json") {
|
|
531
|
+
return fs.readFile(fullPath);
|
|
532
|
+
}
|
|
533
|
+
const config = await fs.readJson(fullPath).catch(() => null);
|
|
534
|
+
const syncedConfig = stripUnsyncedConfigFields(isJsonObject(config) ? config : {});
|
|
535
|
+
return Buffer.from(JSON.stringify(syncedConfig, null, 2), "utf8");
|
|
536
|
+
}
|
|
491
537
|
/**
|
|
492
538
|
* Check if a path matches any exclude pattern
|
|
493
539
|
*/
|
|
@@ -526,7 +572,11 @@ var SyncService = class {
|
|
|
526
572
|
if (!remoteFile) {
|
|
527
573
|
actions.uploads.push(localFile);
|
|
528
574
|
} else if (localFile.hash !== remoteFile.hash) {
|
|
529
|
-
|
|
575
|
+
if (isRemoteNewer(localFile, remoteFile)) {
|
|
576
|
+
actions.conflicts.push(remoteFile);
|
|
577
|
+
} else {
|
|
578
|
+
actions.uploads.push(localFile);
|
|
579
|
+
}
|
|
530
580
|
}
|
|
531
581
|
}
|
|
532
582
|
for (const [filePath, remoteFile] of remoteFiles) {
|
|
@@ -550,14 +600,49 @@ var SyncService = class {
|
|
|
550
600
|
error: "No remote data to download"
|
|
551
601
|
};
|
|
552
602
|
}
|
|
603
|
+
return this.forceDownloadFiles(remoteManifest.files);
|
|
604
|
+
}
|
|
605
|
+
/**
|
|
606
|
+
* Force download a subset of cloud files by path.
|
|
607
|
+
*/
|
|
608
|
+
async forceDownloadPaths(paths) {
|
|
609
|
+
const remoteManifest = await this.client.getRemoteManifest(this.authToken);
|
|
610
|
+
if (!remoteManifest) {
|
|
611
|
+
return {
|
|
612
|
+
success: false,
|
|
613
|
+
uploaded: 0,
|
|
614
|
+
downloaded: 0,
|
|
615
|
+
conflicts: 0,
|
|
616
|
+
error: "No remote data to download"
|
|
617
|
+
};
|
|
618
|
+
}
|
|
619
|
+
const requestedPaths = new Set(paths);
|
|
620
|
+
const files = remoteManifest.files.filter((file) => requestedPaths.has(file.path));
|
|
621
|
+
return this.forceDownloadFiles(files);
|
|
622
|
+
}
|
|
623
|
+
async forceDownloadFiles(files) {
|
|
624
|
+
if (files.length === 0) {
|
|
625
|
+
return {
|
|
626
|
+
success: true,
|
|
627
|
+
uploaded: 0,
|
|
628
|
+
downloaded: 0,
|
|
629
|
+
conflicts: 0
|
|
630
|
+
};
|
|
631
|
+
}
|
|
553
632
|
const actions = {
|
|
554
633
|
uploads: [],
|
|
555
|
-
downloads:
|
|
634
|
+
downloads: files,
|
|
556
635
|
conflicts: [],
|
|
557
636
|
localDeletes: [],
|
|
558
637
|
remoteDeletes: []
|
|
559
638
|
};
|
|
560
|
-
return this.performSyncActions(actions,
|
|
639
|
+
return this.performSyncActions(actions, {
|
|
640
|
+
version: MANIFEST_VERSION,
|
|
641
|
+
userId: this.userId,
|
|
642
|
+
lastModified: (/* @__PURE__ */ new Date()).toISOString(),
|
|
643
|
+
files,
|
|
644
|
+
checksum: computeHash(JSON.stringify(files))
|
|
645
|
+
});
|
|
561
646
|
}
|
|
562
647
|
/**
|
|
563
648
|
* Force a full upload (overwrite cloud with local)
|
|
@@ -590,13 +675,21 @@ var SyncService = class {
|
|
|
590
675
|
const url = downloadUrls[file.path];
|
|
591
676
|
if (!url) continue;
|
|
592
677
|
try {
|
|
593
|
-
const content = await this.client.downloadFile(url);
|
|
678
|
+
const content = await this.client.downloadFile(url, this.authToken);
|
|
594
679
|
const localPath = path.join(this.basePath, file.path);
|
|
595
680
|
if (file.path === "config.json") {
|
|
596
681
|
const config = JSON.parse(content.toString("utf8"));
|
|
597
|
-
const
|
|
682
|
+
const localConfig = await fs.readJson(localPath).catch(() => null);
|
|
683
|
+
const decrypted = decryptConfig(
|
|
684
|
+
isJsonObject(config) ? config : {},
|
|
685
|
+
this.authToken
|
|
686
|
+
);
|
|
687
|
+
const merged = mergeDownloadedConfig(
|
|
688
|
+
decrypted,
|
|
689
|
+
isJsonObject(localConfig) ? localConfig : null
|
|
690
|
+
);
|
|
598
691
|
await fs.ensureDir(path.dirname(localPath));
|
|
599
|
-
await fs.writeJson(localPath,
|
|
692
|
+
await fs.writeJson(localPath, merged, { spaces: 2 });
|
|
600
693
|
} else {
|
|
601
694
|
await fs.ensureDir(path.dirname(localPath));
|
|
602
695
|
await fs.writeFile(localPath, content);
|
|
@@ -620,12 +713,13 @@ var SyncService = class {
|
|
|
620
713
|
let content;
|
|
621
714
|
if (file.path === "config.json") {
|
|
622
715
|
const config = await fs.readJson(localPath);
|
|
623
|
-
const
|
|
716
|
+
const syncedConfig = stripUnsyncedConfigFields(isJsonObject(config) ? config : {});
|
|
717
|
+
const encrypted = encryptConfig(syncedConfig, this.authToken);
|
|
624
718
|
content = Buffer.from(JSON.stringify(encrypted, null, 2), "utf8");
|
|
625
719
|
} else {
|
|
626
720
|
content = await fs.readFile(localPath);
|
|
627
721
|
}
|
|
628
|
-
await this.client.uploadFile(url, content);
|
|
722
|
+
await this.client.uploadFile(url, content, this.authToken);
|
|
629
723
|
uploaded++;
|
|
630
724
|
} catch {
|
|
631
725
|
}
|
|
@@ -680,6 +774,7 @@ export {
|
|
|
680
774
|
SYNC_EXCLUDE_ALWAYS,
|
|
681
775
|
SYNC_CONSENT_REQUIRED,
|
|
682
776
|
SYNC_INCLUDE_DEFAULT,
|
|
777
|
+
isMemorySyncPath,
|
|
683
778
|
deriveKey,
|
|
684
779
|
encrypt,
|
|
685
780
|
decrypt,
|