autohand-cli 0.8.3 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +191 -74
- package/dist/{AgentRegistry-ODDXPAFR.js → AgentRegistry-GOV7FN2O.js} +2 -2
- package/dist/AgentRegistry-J2C6JBZ3.cjs +10 -0
- package/dist/{AutomodeManager-EOVHGRPP.js → AutomodeManager-APLLPEYJ.js} +31 -17
- package/dist/{AutomodeManager-6ATBE7Q5.cjs → AutomodeManager-MPSXT2RH.cjs} +38 -24
- package/dist/CommunitySkillsCache-22BB3J6H.cjs +8 -0
- package/dist/{CommunitySkillsCache-QLE57BN5.js → CommunitySkillsCache-ZACDPD4J.js} +2 -2
- package/dist/GitHubRegistryFetcher-CYJLF2XL.cjs +7 -0
- package/dist/{GitHubRegistryFetcher-NT5GFZXS.js → GitHubRegistryFetcher-J2BWPXJF.js} +1 -1
- package/dist/{HookManager-B2F35M27.js → HookManager-2S6AHOC3.js} +1 -1
- package/dist/{HookManager-PFAFE3FK.cjs → HookManager-TVEQI5ZU.cjs} +2 -2
- package/dist/{ImportWizard-OHRKBANZ.js → ImportWizard-AEBMAKXE.js} +33 -9
- package/dist/{ImportWizard-CJRZPPHL.cjs → ImportWizard-AF2XL6DS.cjs} +37 -13
- package/dist/LearnAdvisor-KKEQ5QCV.js +9 -0
- package/dist/LearnAdvisor-Q7RAYLPF.cjs +9 -0
- package/dist/{McpClientManager-NQ3EW2IF.cjs → McpClientManager-BNSKLHIN.cjs} +2 -2
- package/dist/{McpClientManager-VBIMGKXU.js → McpClientManager-SL35BR24.js} +1 -1
- package/dist/MemoryManager-PMNAEZMB.cjs +8 -0
- package/dist/{MemoryManager-2LAT7IHS.js → MemoryManager-QZRLTUB5.js} +2 -2
- package/dist/NVIDIAProvider-C3FWQOBZ.cjs +14 -0
- package/dist/NVIDIAProvider-SJPY3ONR.js +14 -0
- package/dist/{PermissionManager-7NQHRCHY.js → PermissionManager-MT7KBNNR.js} +3 -3
- package/dist/PermissionManager-URCNP5EC.cjs +11 -0
- package/dist/{ProjectProfiler-UG42W6WD.cjs → ProjectProfiler-CDAE7ECW.cjs} +1 -0
- package/dist/{ProjectProfiler-P4QJQWWA.js → ProjectProfiler-NZTJDRHD.js} +1 -0
- package/dist/ProviderFactory-56N3ECE4.cjs +12 -0
- package/dist/{ProviderFactory-2IYJ5OPW.js → ProviderFactory-RB4RVAF6.js} +4 -1
- package/dist/SessionManager-2IZGWASQ.cjs +10 -0
- package/dist/{SessionManager-4U4JFQ3C.js → SessionManager-554PHVPC.js} +2 -2
- package/dist/SkillsRegistry-GMRVONOQ.cjs +9 -0
- package/dist/{SkillsRegistry-RFEINXRT.js → SkillsRegistry-NHHMIUYJ.js} +2 -2
- package/dist/SubAgent-4GOR2FIJ.js +13 -0
- package/dist/SubAgent-ZJMDH4FI.cjs +13 -0
- package/dist/{SyncApiClient-B5RT2ECG.js → SyncApiClient-G3FM65IV.js} +1 -1
- package/dist/SyncApiClient-ODBDECOG.cjs +11 -0
- package/dist/about-3USFSGOH.js +15 -0
- package/dist/about-QR52U5DD.cjs +15 -0
- package/dist/acp-5Y2W6OZP.js +1556 -0
- package/dist/acp-GSYE75OB.cjs +1556 -0
- package/dist/actionExecutor-KHUU3Z3Q.cjs +28 -0
- package/dist/actionExecutor-PLQJZLZV.js +28 -0
- package/dist/add-dir-BTAD5OZS.cjs +11 -0
- package/dist/{add-dir-TUJM3PG5.js → add-dir-HCERJDBR.js} +3 -2
- package/dist/agent-B3EVT7NN.cjs +126 -0
- package/dist/agent-SATQ3WZ3.js +126 -0
- package/dist/agents/builtin/code-cleaner.md +1 -1
- package/dist/agents/builtin/docs-writer.md +1 -1
- package/dist/agents/builtin/researcher.md +2 -2
- package/dist/agents/builtin/reviewer.md +1 -1
- package/dist/agents/builtin/tester.md +1 -1
- package/dist/agents/builtin/todo-resolver.md +1 -1
- package/dist/agents-44CRJGM7.cjs +18 -0
- package/dist/agents-NN4ZAJ7R.js +18 -0
- package/dist/agents-new-6D6G4QS6.cjs +17 -0
- package/dist/agents-new-7GAQ25EK.js +17 -0
- package/dist/{autoSkill-LQEVQFIH.js → autoSkill-66PKCYTW.js} +2 -2
- package/dist/autoSkill-VQLGBELN.cjs +20 -0
- package/dist/automode-45DWV4TN.cjs +10 -0
- package/dist/{automode-R6P3VHLS.js → automode-BUF3VGXU.js} +2 -2
- package/dist/browserToolBridge-BXRQB4B4.cjs +58 -0
- package/dist/browserToolBridge-F5N66PE7.js +58 -0
- package/dist/chrome-Q2U73HZB.cjs +50 -0
- package/dist/chrome-Q54OALOK.cjs +21 -0
- package/dist/chrome-Y3T7EIHG.js +50 -0
- package/dist/chrome-ZNJ46OYW.js +21 -0
- package/dist/chromeSkill-53TH55PM.js +105 -0
- package/dist/chromeSkill-THW7N4IY.cjs +105 -0
- package/dist/{chunk-HXGBSJL5.cjs → chunk-22SCR3EV.cjs} +2 -2
- package/dist/chunk-26G7YGOW.js +367 -0
- package/dist/{chunk-3L53OA4E.cjs → chunk-2ESQR35E.cjs} +10 -10
- package/dist/chunk-2H5O745H.js +63 -0
- package/dist/{chunk-ULDM2SNB.js → chunk-2IW5YFJ4.js} +48 -47
- package/dist/{chunk-U55TWFJI.cjs → chunk-2VHB43IX.cjs} +24 -6
- package/dist/chunk-3EDDDZS2.cjs +5 -0
- package/dist/{chunk-X5VSP65C.cjs → chunk-3ICORF7M.cjs} +4 -4
- package/dist/chunk-3OF56EMA.cjs +197 -0
- package/dist/chunk-3UC6DMFI.cjs +93 -0
- package/dist/{chunk-64H4FRM3.cjs → chunk-3UHRCHKB.cjs} +32 -34
- package/dist/{chunk-JCLYQ2JC.js → chunk-3ZOOH44N.js} +12 -6
- package/dist/{chunk-TUD3Z3BD.js → chunk-44ZWOBTI.js} +136 -55
- package/dist/chunk-4567QNRB.js +444 -0
- package/dist/chunk-45CHNQM6.cjs +517 -0
- package/dist/chunk-46MTALKD.js +44 -0
- package/dist/{chunk-WHE2SWHU.js → chunk-4E7SHPNQ.js} +2 -2
- package/dist/chunk-4LMUDS2K.js +124 -0
- package/dist/{chunk-W7RYQJLO.cjs → chunk-4XFHP2SN.cjs} +46 -15
- package/dist/chunk-4XVLNOFA.js +360 -0
- package/dist/{chunk-GBHDROGL.js → chunk-575PXZX7.js} +16 -4
- package/dist/chunk-5A7ZL64N.js +139 -0
- package/dist/chunk-5GCQ5UMV.cjs +85 -0
- package/dist/chunk-5JTTM5SC.js +59 -0
- package/dist/{chunk-IETRBBMP.cjs → chunk-5K3CDSWZ.cjs} +108 -31
- package/dist/{chunk-KLWJIPU2.cjs → chunk-5SFV2NCY.cjs} +20 -16
- package/dist/chunk-5ZNYX4VH.cjs +71 -0
- package/dist/{chunk-A4IJHHV7.cjs → chunk-63ANVAOJ.cjs} +52 -11
- package/dist/{chunk-MYISNQH4.js → chunk-65LRPW5W.js} +1 -1
- package/dist/chunk-6AYJCDTA.js +360 -0
- package/dist/{chunk-X2MSVKDV.js → chunk-6HF6XSCC.js} +2 -2
- package/dist/{chunk-AEJH23FO.cjs → chunk-6JWCGQJU.cjs} +6 -6
- package/dist/chunk-6OECOAK5.cjs +360 -0
- package/dist/chunk-6R25D2H5.js +121 -0
- package/dist/chunk-7DJJGKM6.js +77 -0
- package/dist/{chunk-VG34MG2U.js → chunk-7IRQ7JEH.js} +9 -6
- package/dist/chunk-7MY4JHER.js +27 -0
- package/dist/chunk-7PJKTSRN.js +152 -0
- package/dist/{chunk-SKYG33B2.cjs → chunk-7PT646AL.cjs} +3 -3
- package/dist/chunk-7WAUCLLQ.js +229 -0
- package/dist/{chunk-U46VYPLR.cjs → chunk-7XTUL7ZD.cjs} +9 -9
- package/dist/chunk-AE2ILW25.cjs +152 -0
- package/dist/{chunk-T2M64VHA.cjs → chunk-AOKXYGBQ.cjs} +61 -41
- package/dist/chunk-AQ5PVHOC.cjs +113 -0
- package/dist/{chunk-N2BLVUPM.cjs → chunk-AZ47LKD5.cjs} +3 -3
- package/dist/chunk-B4HSNOIH.cjs +354 -0
- package/dist/chunk-B76FJKEJ.cjs +184 -0
- package/dist/chunk-BP37FVBM.js +85 -0
- package/dist/chunk-BQU3HAE7.js +21 -0
- package/dist/chunk-BYE7RQFZ.cjs +121 -0
- package/dist/chunk-C46B72VK.js +1034 -0
- package/dist/{chunk-HIVRCQS2.js → chunk-C5QIQQ37.js} +56 -25
- package/dist/chunk-CCIDL4SA.js +19931 -0
- package/dist/{chunk-XVUHNWMX.js → chunk-CECH6QQP.js} +17 -19
- package/dist/chunk-CFAWTLSC.js +13 -0
- package/dist/{chunk-ZYQMLKOK.cjs → chunk-CK4HAHVY.cjs} +212 -70
- package/dist/chunk-CO2AADYU.cjs +360 -0
- package/dist/chunk-CRTCZ4WL.cjs +19931 -0
- package/dist/chunk-CSTUTDTH.js +75 -0
- package/dist/{chunk-K2C56QGS.cjs → chunk-D546G7DA.cjs} +1650 -479
- package/dist/{chunk-CNBKZEX5.cjs → chunk-DA7NBAJK.cjs} +49 -17
- package/dist/{chunk-G4CAKI3V.js → chunk-DGBPWODD.js} +7 -2
- package/dist/chunk-DHUQZ53B.cjs +29 -0
- package/dist/{chunk-RGR6ME5J.cjs → chunk-DI57A4BX.cjs} +25 -28
- package/dist/{chunk-5K6NGAVM.js → chunk-DNSD7DVJ.js} +67 -52
- package/dist/{chunk-RDF37HKB.cjs → chunk-DSSCERHI.cjs} +3 -2
- package/dist/{chunk-NAJ4IZKD.cjs → chunk-EA2MS25U.cjs} +8 -6
- package/dist/{chunk-SJAVBCOA.js → chunk-EEHWALXA.js} +94 -3
- package/dist/chunk-ES2HJQ4N.js +37 -0
- package/dist/{chunk-G27PQQFD.js → chunk-EYHKL4QC.js} +1 -1
- package/dist/{chunk-SV2WA57F.js → chunk-FBQJZKFX.js} +38 -15
- package/dist/chunk-FFBDRUO5.cjs +59 -0
- package/dist/{chunk-N7LI55V4.js → chunk-FFHSCM5M.js} +15 -8
- package/dist/{chunk-SAHBLB3E.js → chunk-FP46B4X3.js} +208 -3
- package/dist/chunk-FQVG6ZHF.js +197 -0
- package/dist/{chunk-J2GSFVUV.cjs → chunk-GAOPJ5S3.cjs} +74 -59
- package/dist/{chunk-S52YW5ZQ.js → chunk-GNBBIAMD.js} +16 -19
- package/dist/chunk-GSDV75A5.js +715 -0
- package/dist/chunk-GWY26SUD.cjs +63 -0
- package/dist/{chunk-TUAITHWL.js → chunk-H426KOGY.js} +2 -1
- package/dist/{chunk-EZMINVLU.js → chunk-H4D2Q2AL.js} +5 -2
- package/dist/chunk-HC2Q6A3E.cjs +4967 -0
- package/dist/{chunk-3WVJEL7K.cjs → chunk-HDK2EHVH.cjs} +3 -1
- package/dist/{chunk-5IXII4HX.cjs → chunk-HG3ZASBH.cjs} +23 -16
- package/dist/chunk-HK5A54AV.cjs +280 -0
- package/dist/{chunk-LQGVEP3E.js → chunk-HQUSEWT4.js} +45 -13
- package/dist/chunk-HSWWM6AM.js +2340 -0
- package/dist/chunk-HTU4W3GB.js +183 -0
- package/dist/{chunk-HLHTG5ZU.cjs → chunk-HVCIB4SW.cjs} +14 -12
- package/dist/chunk-HXHE2KAO.js +385 -0
- package/dist/{chunk-LJFUXC56.cjs → chunk-HXQREVTA.cjs} +9 -6
- package/dist/{chunk-SLQAYV3W.js → chunk-HZWU6IO3.js} +11 -2
- package/dist/chunk-I2ZK3AOD.js +866 -0
- package/dist/chunk-IEPLQ47J.js +719 -0
- package/dist/chunk-J5HE6CUM.cjs +124 -0
- package/dist/{chunk-LIEXWM2M.js → chunk-JAQO6XDB.js} +19 -1
- package/dist/chunk-JB3JCYBJ.js +113 -0
- package/dist/chunk-JCUHCH37.cjs +247 -0
- package/dist/{chunk-FPHU2ES6.cjs → chunk-JM3ZTQUK.cjs} +19 -9
- package/dist/{chunk-NDMIPTV4.js → chunk-JMJRFSNJ.js} +8 -3
- package/dist/{chunk-ZLSGXMGQ.js → chunk-JMN3GZU6.js} +2 -0
- package/dist/chunk-JPFRI4L4.js +4967 -0
- package/dist/{chunk-BVKXEQVG.cjs → chunk-JV5HVCHU.cjs} +22 -10
- package/dist/chunk-KA2U6MY2.js +388 -0
- package/dist/{chunk-SEKD5FH3.cjs → chunk-KASXKDF2.cjs} +8 -3
- package/dist/chunk-KJ26T7GM.cjs +367 -0
- package/dist/chunk-KM7R5YPS.cjs +385 -0
- package/dist/{chunk-MBBY4ZIK.js → chunk-KMP6Y3LJ.js} +4 -1
- package/dist/chunk-KWXGDSYT.js +184 -0
- package/dist/{chunk-C5IJIM2V.cjs → chunk-L46OUKW5.cjs} +68 -37
- package/dist/{chunk-6UJMCWRY.js → chunk-L6OH44HL.js} +19 -9
- package/dist/chunk-LANGD5CO.js +280 -0
- package/dist/{chunk-APIXPPMT.js → chunk-LEZEWKPA.js} +1004 -39
- package/dist/{chunk-ULQ6MDSJ.cjs → chunk-LFDPTJYF.cjs} +43 -35
- package/dist/chunk-LJD7KR3L.cjs +44 -0
- package/dist/{chunk-NCC6ETZS.js → chunk-LUMV3DB2.js} +41 -33
- package/dist/{chunk-QXH5RCFI.js → chunk-M5DK524Z.js} +2 -2
- package/dist/chunk-M7B7RRBK.cjs +1034 -0
- package/dist/chunk-MANJ67D3.js +3897 -0
- package/dist/{chunk-HPHJ73GU.cjs → chunk-MGNXABSU.cjs} +9 -9
- package/dist/{chunk-6ZCULLCA.js → chunk-MMKZSJUN.js} +1 -1
- package/dist/{chunk-DVUHHH3B.cjs → chunk-MQQH4XQH.cjs} +4 -4
- package/dist/chunk-MUNUUFU7.cjs +21 -0
- package/dist/{chunk-DVZOENQ7.cjs → chunk-MZN6JBRZ.cjs} +9 -4
- package/dist/{chunk-OOKY3HPZ.js → chunk-NB6M6ESM.js} +50 -9
- package/dist/{chunk-BYONM7UM.js → chunk-NBGOIFKP.js} +265 -18
- package/dist/chunk-NHWHEW7M.cjs +75 -0
- package/dist/chunk-NQZH5CR2.cjs +468 -0
- package/dist/{chunk-EGPXJERY.cjs → chunk-NV6LCD2I.cjs} +119 -28
- package/dist/chunk-NVATU4V6.cjs +44 -0
- package/dist/{chunk-YZXUDM5X.js → chunk-NZ3ZWLUW.js} +204 -62
- package/dist/chunk-NZ7GCK7Y.cjs +92 -0
- package/dist/{chunk-VEKDGU2Q.cjs → chunk-NZQFKXM3.cjs} +49 -25
- package/dist/chunk-O5GI6SR3.js +59 -0
- package/dist/{chunk-56SWIDEL.cjs → chunk-OCATAKXV.cjs} +57 -56
- package/dist/{chunk-SKV2F3NM.js → chunk-OIGYWOL6.js} +1 -1
- package/dist/{chunk-IFFXSTOM.cjs → chunk-ONVYXTUT.cjs} +3 -3
- package/dist/chunk-OR67YXQK.cjs +13 -0
- package/dist/chunk-OV3T5MUH.cjs +715 -0
- package/dist/{chunk-OHUZKDGX.js → chunk-P4FUTSVK.js} +3 -3
- package/dist/chunk-P6SLT2F4.cjs +139 -0
- package/dist/{chunk-TNZRZQ7Q.js → chunk-PB7W7R72.js} +3 -78
- package/dist/chunk-PCM3N3CL.cjs +37 -0
- package/dist/{chunk-2AA5MFES.js → chunk-PGFLPURU.js} +8 -5
- package/dist/{chunk-DJDE4DTT.cjs → chunk-PIXQ2AVM.cjs} +25 -19
- package/dist/chunk-PNIAIOMZ.cjs +229 -0
- package/dist/{chunk-HTLINWX6.cjs → chunk-PQBYFEBL.cjs} +16 -13
- package/dist/{chunk-22D2CNTP.cjs → chunk-PSAH4ZQB.cjs} +5 -2
- package/dist/{chunk-3VTAFAL2.js → chunk-PTTZI4QZ.js} +16 -12
- package/dist/{chunk-WPVWQSL7.cjs → chunk-PY73W5MQ.cjs} +16 -13
- package/dist/{chunk-EGMZDTSL.js → chunk-PZZMIYII.js} +10 -2
- package/dist/{chunk-HBZU3RBZ.js → chunk-Q3BS6FPM.js} +34 -10
- package/dist/chunk-QBYGMMDD.js +517 -0
- package/dist/chunk-QLZOMZO5.cjs +388 -0
- package/dist/{chunk-ADUFCS4Q.cjs → chunk-QQ64HEHP.cjs} +160 -79
- package/dist/{chunk-L3TWPROA.js → chunk-QRQF3556.js} +44 -24
- package/dist/{chunk-YHD6TUIR.cjs → chunk-QW2RW2GY.cjs} +2 -0
- package/dist/chunk-RAKO7UN7.js +114 -0
- package/dist/{chunk-7TQH3CL4.cjs → chunk-RBXBH6EB.cjs} +78 -35
- package/dist/chunk-RFUKZIJF.cjs +78 -0
- package/dist/chunk-RS2E32YB.js +71 -0
- package/dist/{chunk-OLSBBZW6.cjs → chunk-S5JNQIGL.cjs} +5 -5
- package/dist/{chunk-FTYY5JJD.js → chunk-S5QKRA2V.js} +2 -2
- package/dist/chunk-SD3NTC7D.cjs +77 -0
- package/dist/{chunk-KPELYZ6L.js → chunk-SDLY4X3G.js} +2 -2
- package/dist/{chunk-IDFF5J2E.js → chunk-SFFEKZGC.js} +38 -7
- package/dist/{chunk-EGFT4PGW.js → chunk-SHRLFX6F.js} +8 -3
- package/dist/{chunk-3WICOC33.js → chunk-SNDDZG5H.js} +124 -84
- package/dist/{chunk-CZXGCVTR.cjs → chunk-SOVR7S3T.cjs} +2 -2
- package/dist/chunk-SPQ7QIQ6.js +78 -0
- package/dist/{chunk-XRZEUWKF.js → chunk-SRMGWMQO.js} +1 -1
- package/dist/{chunk-R33VKSH5.cjs → chunk-SVVP4UUZ.cjs} +11 -11
- package/dist/{chunk-7BTSG4ME.cjs → chunk-SY2P3Z5W.cjs} +1004 -39
- package/dist/chunk-SZD45IDG.js +468 -0
- package/dist/{chunk-3O3MOK5C.cjs → chunk-TE4SYTWR.cjs} +1114 -142
- package/dist/chunk-TH26BQJG.js +101 -0
- package/dist/{chunk-QNGEW5TC.js → chunk-TR6NECEZ.js} +1 -1
- package/dist/{chunk-YGN4CQIP.js → chunk-TYBPTKFT.js} +1 -1
- package/dist/{chunk-GJH7XMSK.js → chunk-U2QUMKCB.js} +8 -6
- package/dist/{chunk-47CKWKEX.cjs → chunk-U6PLSPMD.cjs} +9 -4
- package/dist/chunk-UOQECODR.js +34 -0
- package/dist/chunk-UR27UDTB.js +354 -0
- package/dist/chunk-UWZ4G3SQ.js +93 -0
- package/dist/{chunk-Y72HH2TF.cjs → chunk-V3SZLWEQ.cjs} +33 -24
- package/dist/chunk-V4HGZSKQ.cjs +183 -0
- package/dist/{chunk-3PDTTAKJ.js → chunk-V5ELP2XE.js} +19 -12
- package/dist/{chunk-3K2ESU53.cjs → chunk-VKOXFT4L.cjs} +2 -2
- package/dist/{chunk-XTB6VJVQ.cjs → chunk-VLGGMQUN.cjs} +6 -6
- package/dist/chunk-VQHSYAPZ.cjs +3897 -0
- package/dist/chunk-VUGOOGHB.js +400 -0
- package/dist/chunk-W5QLA6WP.cjs +866 -0
- package/dist/chunk-WBU4Q4GS.cjs +400 -0
- package/dist/{chunk-KWXVKLQ5.cjs → chunk-WGNMOVMT.cjs} +7 -82
- package/dist/chunk-WJYFLQ7G.cjs +27 -0
- package/dist/{chunk-RKJTGGMU.cjs → chunk-WKRDBCP2.cjs} +221 -16
- package/dist/{chunk-ZSPXQYG2.js → chunk-WNJXIACY.js} +7 -5
- package/dist/{chunk-AYS2ASM7.js → chunk-WPE2XHVX.js} +1 -1
- package/dist/chunk-WTB7AFL6.cjs +101 -0
- package/dist/{chunk-JYTDYJVW.js → chunk-X3TI5TJJ.js} +1 -1
- package/dist/chunk-X5P6QQOB.cjs +719 -0
- package/dist/{chunk-245KJE5Y.cjs → chunk-X7XMITIL.cjs} +14 -6
- package/dist/chunk-XF2WIKHR.cjs +34 -0
- package/dist/{chunk-DV2ZHK7B.cjs → chunk-XNIMSVS6.cjs} +49 -26
- package/dist/chunk-XW3XCK4E.cjs +59 -0
- package/dist/{chunk-N23UAW4I.js → chunk-XZVDYC5U.js} +7 -2
- package/dist/chunk-Y5BDE24P.cjs +444 -0
- package/dist/{chunk-NAGQ2PDC.js → chunk-YC5OBZQU.js} +1604 -433
- package/dist/chunk-YISPVAXO.cjs +2340 -0
- package/dist/{chunk-KQGPTCQJ.js → chunk-YQDI753V.js} +68 -25
- package/dist/{chunk-UJ2JSM6H.js → chunk-YVQI26H4.js} +2 -0
- package/dist/{chunk-NNPAM4HC.cjs → chunk-YWH55BWK.cjs} +15 -6
- package/dist/{chunk-X2YOZQIP.cjs → chunk-YWTIXHU6.cjs} +266 -19
- package/dist/{chunk-XX2ZO7DS.js → chunk-YXM6SA7P.js} +25 -16
- package/dist/chunk-YZWE7XSM.js +5 -0
- package/dist/chunk-ZASDSY7P.cjs +114 -0
- package/dist/{chunk-2UC22DJU.js → chunk-ZNGRLCFQ.js} +30 -4
- package/dist/{chunk-KANW6OYC.cjs → chunk-ZNYZB7XY.cjs} +34 -8
- package/dist/{chunk-NA6WQDYW.js → chunk-ZPLCAXJW.js} +1088 -116
- package/dist/{chunk-7UOUW76C.js → chunk-ZQAT5VT5.js} +101 -24
- package/dist/chunk-ZUYYHKQA.js +44 -0
- package/dist/clear-QJXU25IF.cjs +12 -0
- package/dist/{clear-A3N4GK2S.js → clear-Y5TO3RZA.js} +3 -3
- package/dist/communityInstaller-LXMVKVAV.cjs +22 -0
- package/dist/{communityInstaller-LOP2EDH5.js → communityInstaller-RVL4STPS.js} +8 -5
- package/dist/completion-JX4T2ONW.cjs +17 -0
- package/dist/completion-SE3XYG74.js +17 -0
- package/dist/config-3224PRW4.cjs +21 -0
- package/dist/{config-HPJPKTO6.js → config-7KPHKFTP.js} +7 -4
- package/dist/{constants-LISJW3DD.js → constants-EJFAWJQI.js} +1 -1
- package/dist/constants-MCCGUU5F.cjs +21 -0
- package/dist/{defaultHooks-IHSJR2AX.cjs → defaultHooks-2V2CQL63.cjs} +25 -10
- package/dist/{defaultHooks-KUKHK3AG.js → defaultHooks-TMHDU3FS.js} +25 -10
- package/dist/export-BJVIDZC4.js +15 -0
- package/dist/export-KU4557HK.cjs +15 -0
- package/dist/feature-K3LG5IJP.cjs +14 -0
- package/dist/feature-V4JF5TNJ.js +14 -0
- package/dist/features-5OJTLKS7.js +23 -0
- package/dist/features-VCBJQXCX.cjs +23 -0
- package/dist/feedback-D4437VE4.js +18 -0
- package/dist/feedback-VZPEHGFY.cjs +18 -0
- package/dist/fffSearchProvider-2YCNKOYD.js +412 -0
- package/dist/fffSearchProvider-W6627E2V.cjs +412 -0
- package/dist/{filesystem-Z7BWAWMZ.js → filesystem-L6DQKGWK.js} +3 -2
- package/dist/filesystem-PGUPCMVK.cjs +11 -0
- package/dist/go-X4E6BCD6.js +12 -0
- package/dist/go-XREVFS5I.cjs +12 -0
- package/dist/goal-4M3J6JS2.cjs +16 -0
- package/dist/goal-EI66BV7W.js +16 -0
- package/dist/help-GGFS7WHY.cjs +12 -0
- package/dist/{help-GFQXNZOK.js → help-MLIROWKM.js} +2 -2
- package/dist/{history-E3N6BJP7.js → history-GQJ6RZD6.js} +2 -2
- package/dist/history-J4LUIOSI.cjs +14 -0
- package/dist/hooks-FSRIUS6A.cjs +18 -0
- package/dist/hooks-PPFHCF7T.js +18 -0
- package/dist/i18n-CI6VFXL5.cjs +33 -0
- package/dist/{i18n-SY7QRM22.js → i18n-Q7UZJRPL.js} +1 -1
- package/dist/ide-BUSVE54P.js +15 -0
- package/dist/ide-YR27BPGM.cjs +15 -0
- package/dist/immediateCommandRouter-MTEHZXQX.js +15 -0
- package/dist/immediateCommandRouter-ROXU3MWT.cjs +15 -0
- package/dist/{import-W7SVLSTC.js → import-3VBKI6BN.js} +3 -3
- package/dist/{import-ADI37ZUR.cjs → import-C7S6UJMW.cjs} +3 -3
- package/dist/import-DBK4OCDF.cjs +10 -0
- package/dist/{import-KGKKZ3B7.js → import-U47DXCA7.js} +2 -2
- package/dist/index.cjs +837 -23011
- package/dist/index.d.cts +95 -0
- package/dist/index.d.ts +95 -0
- package/dist/index.js +864 -23038
- package/dist/init-OXTYS72D.cjs +10 -0
- package/dist/{init-7MFK626E.js → init-Q2O4R42R.js} +2 -2
- package/dist/inkMode-VUE6ZDLD.cjs +7 -0
- package/dist/inkMode-WBNFOSAT.js +7 -0
- package/dist/inputPrompt-3CFZDUBH.js +90 -0
- package/dist/inputPrompt-JMACL4EB.cjs +90 -0
- package/dist/language-EK3M6UBV.cjs +22 -0
- package/dist/language-Q3RUGGOW.js +22 -0
- package/dist/learn-3DSX7DYG.cjs +23 -0
- package/dist/learn-OPOH5L43.js +23 -0
- package/dist/login-GST7MWXJ.cjs +27 -0
- package/dist/login-Q7DZKAX4.js +27 -0
- package/dist/logout-2G7OUK7I.cjs +24 -0
- package/dist/logout-FNBBL2UI.js +24 -0
- package/dist/mcp-AH3MMUBU.js +21 -0
- package/dist/mcp-DW7R63IB.cjs +21 -0
- package/dist/{mcp-install-2FEROZTL.js → mcp-install-222PCKSW.js} +18 -10
- package/dist/{mcp-install-WM6BQRI5.cjs → mcp-install-IA4ZS2SV.cjs} +22 -14
- package/dist/memory-6NX3DAIY.cjs +10 -0
- package/dist/{memory-J73WZH2I.js → memory-VB46T5H3.js} +2 -2
- package/dist/model-64NAELFS.cjs +10 -0
- package/dist/{model-AES267IN.js → model-SJJG64AM.js} +2 -2
- package/dist/new-DU5SOOOY.cjs +12 -0
- package/dist/{new-5CLF3MKH.js → new-ERZ5C6CN.js} +3 -3
- package/dist/onboarding-2U2BV2KE.cjs +36 -0
- package/dist/onboarding-ZQXMPSMJ.js +36 -0
- package/dist/permissions-7ACNFK7A.js +10 -0
- package/dist/permissions-GSNNV7RJ.cjs +10 -0
- package/dist/plan-XEJMOT55.cjs +13 -0
- package/dist/{plan-65HMS5HQ.js → plan-YYUAXPTL.js} +3 -1
- package/dist/pr-review-CW6J7P62.cjs +9 -0
- package/dist/pr-review-YZSBQVT2.js +9 -0
- package/dist/{quit-XDZYRSPU.js → quit-WY6T267G.js} +2 -2
- package/dist/quit-XIRE2KRE.cjs +10 -0
- package/dist/rawMode-6W5AXAKI.cjs +7 -0
- package/dist/rawMode-GFNLXQPU.js +7 -0
- package/dist/{registry-PTHWERKC.js → registry-4DXUDKJN.js} +29 -44
- package/dist/{registry-IVT4G2RT.cjs → registry-UEO3ETZ7.cjs} +65 -80
- package/dist/repeat-P4FAPE3Y.cjs +17 -0
- package/dist/{repeat-EVCWUL6Z.js → repeat-RALE6AUO.js} +7 -3
- package/dist/resume-RQZ3WXBP.cjs +17 -0
- package/dist/resume-XSXZMDMD.js +17 -0
- package/dist/review-QHP2KP4Q.js +9 -0
- package/dist/review-UWHWQHCB.cjs +9 -0
- package/dist/ripgrep-67SCU2BA.cjs +9 -0
- package/dist/ripgrep-VHJQQ55W.js +9 -0
- package/dist/rpc-XH7QLN4H.js +3874 -0
- package/dist/rpc-YF54T7JU.cjs +3874 -0
- package/dist/search-VXXFGZWU.cjs +21 -0
- package/dist/search-YAWGX7P7.js +21 -0
- package/dist/{sessions-6GWEBMKS.js → sessions-NJYHJOEL.js} +2 -2
- package/dist/sessions-OSG3UJEZ.cjs +10 -0
- package/dist/settings-SO2UIGWV.cjs +42 -0
- package/dist/settings-ZXUQH3DO.js +42 -0
- package/dist/setup-KG7EGKF5.js +30 -0
- package/dist/setup-RSOPCQ57.cjs +30 -0
- package/dist/share-WFAGZ5PY.js +17 -0
- package/dist/share-ZU3SGACF.cjs +17 -0
- package/dist/skills-KBVAQAD2.cjs +29 -0
- package/dist/skills-NBTNDVAY.js +29 -0
- package/dist/{skills-ZZCIAS7C.js → skills-OB6RDW7D.js} +10 -7
- package/dist/{skills-PG542VEB.cjs → skills-ZROBG3RZ.cjs} +13 -10
- package/dist/{skills-install-SRC3Z2MS.js → skills-install-BHTIEMKH.js} +21 -70
- package/dist/{skills-install-67DOBPJC.cjs → skills-install-ILX6QVEF.cjs} +34 -83
- package/dist/skills-new-B45VQ2PP.cjs +18 -0
- package/dist/skills-new-YMRP2HNO.js +18 -0
- package/dist/slashCommands-53VYIBJU.js +105 -0
- package/dist/slashCommands-BG2RGGZ6.cjs +105 -0
- package/dist/status-CQ2IUOVK.cjs +24 -0
- package/dist/status-E7IGNVPC.js +24 -0
- package/dist/summarizer-DGPHE5IQ.js +17 -0
- package/dist/summarizer-JNXLUAQG.cjs +17 -0
- package/dist/sync-7C25MOT2.js +22 -0
- package/dist/{sync-VU2NSJ4O.js → sync-OCJN4ZSO.js} +3 -3
- package/dist/sync-XRP46IVG.cjs +40 -0
- package/dist/sync-ZMFVE7T4.cjs +22 -0
- package/dist/{teammate-SXRVXNQV.cjs → teammate-D77B6QRT.cjs} +31 -9
- package/dist/{teammate-SD26GR37.js → teammate-EZCMHOIL.js} +30 -8
- package/dist/templates-ARG2VRWW.cjs +11 -0
- package/dist/templates-UGVZV3KJ.js +11 -0
- package/dist/theme-KKRDE6P7.cjs +22 -0
- package/dist/theme-XF7XIWBQ.js +22 -0
- package/dist/tools-3PPTTKFV.js +9 -0
- package/dist/tools-THIQA7WC.cjs +9 -0
- package/dist/ui/questionModal.cjs +8 -5
- package/dist/ui/questionModal.js +7 -4
- package/dist/{undo-OL2EDBRY.js → undo-GNUTFXCW.js} +2 -2
- package/dist/undo-U4KN7QQM.cjs +10 -0
- package/dist/usage-QSTNSDAO.js +24 -0
- package/dist/usage-YDEMQBNQ.cjs +24 -0
- package/dist/web-3BA2WV37.cjs +37 -0
- package/dist/web-6FYGBX5K.js +37 -0
- package/dist/workspaceSafety-MDJGHK6D.cjs +9 -0
- package/dist/workspaceSafety-XOUMUBVB.js +9 -0
- package/dist/yolo-GF2YD7ZI.js +9 -0
- package/dist/yolo-OGDA7HNC.cjs +9 -0
- package/dist/yoloMode-3DJDA75U.cjs +17 -0
- package/dist/yoloMode-4JOOSU26.js +17 -0
- package/package.json +51 -49
- package/dist/AgentRegistry-HRPN6ZOF.cjs +0 -10
- package/dist/CommunitySkillsCache-KE435RAR.cjs +0 -8
- package/dist/GitHubRegistryFetcher-I45SESIL.cjs +0 -7
- package/dist/LearnAdvisor-FLBA6FDD.js +0 -9
- package/dist/LearnAdvisor-GG3CXQF3.cjs +0 -9
- package/dist/MemoryManager-2LQPIYVE.cjs +0 -8
- package/dist/PermissionManager-X57BXHJ6.cjs +0 -11
- package/dist/ProviderFactory-KPJOGQWF.cjs +0 -9
- package/dist/SessionManager-YBJAZXNO.cjs +0 -10
- package/dist/SkillsRegistry-7O72A6TZ.cjs +0 -9
- package/dist/SubAgent-JT4HZHN7.js +0 -11
- package/dist/SubAgent-VPNYDWAU.cjs +0 -11
- package/dist/SyncApiClient-HQXJL5BT.cjs +0 -11
- package/dist/about-4DB5KTHW.js +0 -12
- package/dist/about-LXAOXZFT.cjs +0 -12
- package/dist/actionExecutor-23JB2WUC.js +0 -19
- package/dist/actionExecutor-X5UEZSKH.cjs +0 -19
- package/dist/add-dir-YC37DMSF.cjs +0 -10
- package/dist/agents-YF3BSUU5.js +0 -12
- package/dist/agents-ZOUHPMYR.cjs +0 -12
- package/dist/agents-new-HSH4GQPG.js +0 -14
- package/dist/agents-new-VYUDOCE7.cjs +0 -14
- package/dist/autoSkill-X5W52WOE.cjs +0 -20
- package/dist/automode-SJGM7VEI.cjs +0 -10
- package/dist/chunk-ALYU6VTM.js +0 -105
- package/dist/chunk-B53A2NM2.js +0 -2030
- package/dist/chunk-BJXSNT46.js +0 -100
- package/dist/chunk-CB4E2T5N.cjs +0 -312
- package/dist/chunk-DNUOXBHL.js +0 -539
- package/dist/chunk-EFX2QSZX.cjs +0 -33
- package/dist/chunk-GCXYXLRA.cjs +0 -111
- package/dist/chunk-H2ZRHQQV.js +0 -33
- package/dist/chunk-HNRPK5MY.cjs +0 -85
- package/dist/chunk-HVKOZ2VP.cjs +0 -115
- package/dist/chunk-JJLYWH5Y.cjs +0 -100
- package/dist/chunk-LWUJFGOZ.js +0 -115
- package/dist/chunk-MERYP6AM.cjs +0 -539
- package/dist/chunk-MZAPWNAC.cjs +0 -207
- package/dist/chunk-NTSDP2WB.js +0 -226
- package/dist/chunk-OUZQXMHL.cjs +0 -226
- package/dist/chunk-PGESAU2W.cjs +0 -2030
- package/dist/chunk-SYVYLZZF.cjs +0 -24
- package/dist/chunk-SZOLA6FR.js +0 -111
- package/dist/chunk-VWDHR4HV.js +0 -168
- package/dist/chunk-Y45G6ZO5.cjs +0 -168
- package/dist/chunk-YRLYSQEQ.cjs +0 -105
- package/dist/chunk-ZYVS43MU.js +0 -312
- package/dist/clear-GK4IEUUS.cjs +0 -12
- package/dist/communityInstaller-XXC7RLE4.cjs +0 -19
- package/dist/completion-HWABSAEL.js +0 -14
- package/dist/completion-IUUVQG4D.cjs +0 -14
- package/dist/config-HF7WOLZF.cjs +0 -18
- package/dist/constants-PEO3P2SJ.cjs +0 -21
- package/dist/export-QJAV2FCZ.js +0 -12
- package/dist/export-XSRFXGWU.cjs +0 -12
- package/dist/feedback-4TCIL3ML.cjs +0 -15
- package/dist/feedback-SJ6VVEY3.js +0 -15
- package/dist/filesystem-W56QZUJF.cjs +0 -10
- package/dist/help-ISBVQL3S.cjs +0 -12
- package/dist/history-XQ4GTSFU.cjs +0 -14
- package/dist/hooks-CJNKJ5PF.js +0 -13
- package/dist/hooks-UTMBTAXT.cjs +0 -13
- package/dist/i18n-N7QQ7A5M.cjs +0 -33
- package/dist/ide-RTA4UJV4.js +0 -12
- package/dist/ide-VWVOLIFF.cjs +0 -12
- package/dist/immediateCommandRouter-BW34JNXL.js +0 -9
- package/dist/immediateCommandRouter-SHOVNB5X.cjs +0 -9
- package/dist/import-ZLJVONXH.cjs +0 -10
- package/dist/init-TBKAB4LZ.cjs +0 -10
- package/dist/language-MDSHEXHB.cjs +0 -18
- package/dist/language-PXTQSHIG.js +0 -18
- package/dist/learn-623TW5EK.cjs +0 -20
- package/dist/learn-BCPV7GM2.js +0 -20
- package/dist/localProjectPermissions-BHQXEWZJ.cjs +0 -18
- package/dist/localProjectPermissions-GMOUYQM6.js +0 -18
- package/dist/login-QMVEETWJ.js +0 -20
- package/dist/login-QYMXAL3K.cjs +0 -20
- package/dist/logout-2CMTDAOJ.js +0 -18
- package/dist/logout-ZOHVZAUK.cjs +0 -18
- package/dist/mcp-IUVKK65S.js +0 -18
- package/dist/mcp-TXC7PYG3.cjs +0 -18
- package/dist/memory-WRIHDEPK.cjs +0 -10
- package/dist/model-RLP75SF5.cjs +0 -10
- package/dist/new-HLSFL6A4.cjs +0 -12
- package/dist/permissions-GP6FTGZ2.js +0 -13
- package/dist/permissions-O6EKKPOG.cjs +0 -13
- package/dist/plan-MCAXDIM2.cjs +0 -11
- package/dist/quit-TQX6GXA5.cjs +0 -10
- package/dist/repeat-BSPS5TWD.cjs +0 -13
- package/dist/resume-2GOPDLL4.cjs +0 -13
- package/dist/resume-37IUVDA6.js +0 -13
- package/dist/search-7KUSHIBL.cjs +0 -17
- package/dist/search-OJGDRIMA.js +0 -17
- package/dist/sessions-CYYCHSQG.cjs +0 -10
- package/dist/settings-2D7CAO66.cjs +0 -30
- package/dist/settings-BXR6SBJP.js +0 -30
- package/dist/share-BXQY5IQU.js +0 -14
- package/dist/share-OSFXZBGS.cjs +0 -14
- package/dist/skills-FL6O6AOM.cjs +0 -26
- package/dist/skills-PNKQZRNK.js +0 -26
- package/dist/skills-new-XFMEHHIF.cjs +0 -15
- package/dist/skills-new-ZNZPHUKS.js +0 -15
- package/dist/slashCommands-LLCNPK3X.js +0 -76
- package/dist/slashCommands-RXZZS6RE.cjs +0 -76
- package/dist/status-BCECUJXT.cjs +0 -11
- package/dist/status-EFO7MQU3.js +0 -11
- package/dist/sync-IJYJ6KKM.js +0 -18
- package/dist/sync-LFT6SBPF.cjs +0 -18
- package/dist/sync-U7SDPBNZ.cjs +0 -40
- package/dist/theme-AWBHSG7J.cjs +0 -18
- package/dist/theme-TQLBPJ2E.js +0 -18
- package/dist/undo-IBBGP7A2.cjs +0 -10
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
|
|
2
2
|
|
|
3
|
+
var _chunkDSSCERHIcjs = require('./chunk-DSSCERHI.cjs');
|
|
3
4
|
|
|
4
5
|
|
|
5
|
-
var
|
|
6
|
+
var _chunkEA2MS25Ucjs = require('./chunk-EA2MS25U.cjs');
|
|
6
7
|
|
|
7
8
|
|
|
8
|
-
var _chunkRDF37HKBcjs = require('./chunk-RDF37HKB.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _chunkSVVP4UUZcjs = require('./chunk-SVVP4UUZ.cjs');
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _chunkPSAH4ZQBcjs = require('./chunk-PSAH4ZQB.cjs');
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var _chunkQW2RW2GYcjs = require('./chunk-QW2RW2GY.cjs');
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
var
|
|
21
|
+
var _chunkCK4HAHVYcjs = require('./chunk-CK4HAHVY.cjs');
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
var
|
|
25
|
+
var _chunkKASXKDF2cjs = require('./chunk-KASXKDF2.cjs');
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
var
|
|
28
|
+
var _chunkSY2P3Z5Wcjs = require('./chunk-SY2P3Z5W.cjs');
|
|
29
29
|
|
|
30
30
|
// src/commands/learn.ts
|
|
31
31
|
var _path = require('path'); var _path2 = _interopRequireDefault(_path);
|
|
@@ -36,11 +36,9 @@ var _fsextra = require('fs-extra'); var _fsextra2 = _interopRequireDefault(_fsex
|
|
|
36
36
|
|
|
37
37
|
var BLINK_ON = "\x1B[5m";
|
|
38
38
|
var BLINK_OFF = "\x1B[25m";
|
|
39
|
-
var StepProgress = class {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
this.stepCount = 0;
|
|
43
|
-
}
|
|
39
|
+
var StepProgress = (_class = class {constructor() { _class.prototype.__init.call(this);_class.prototype.__init2.call(this); }
|
|
40
|
+
__init() {this.currentLabel = ""}
|
|
41
|
+
__init2() {this.stepCount = 0}
|
|
44
42
|
/**
|
|
45
43
|
* Start the progress display with the first step.
|
|
46
44
|
*/
|
|
@@ -69,7 +67,7 @@ var StepProgress = class {
|
|
|
69
67
|
clear() {
|
|
70
68
|
this.currentLabel = "";
|
|
71
69
|
}
|
|
72
|
-
};
|
|
70
|
+
}, _class);
|
|
73
71
|
|
|
74
72
|
// src/commands/learn.ts
|
|
75
73
|
function useAnimatedProgress(ctx) {
|
|
@@ -82,11 +80,11 @@ function logProgress(ctx, message, progress) {
|
|
|
82
80
|
}
|
|
83
81
|
}
|
|
84
82
|
async function withModalPause(ctx, fn) {
|
|
85
|
-
_optionalChain([ctx, 'access', _3 => _3.onBeforeModal, 'optionalCall', _4 => _4()]);
|
|
83
|
+
await _optionalChain([ctx, 'access', _3 => _3.onBeforeModal, 'optionalCall', _4 => _4()]);
|
|
86
84
|
try {
|
|
87
85
|
return await fn();
|
|
88
86
|
} finally {
|
|
89
|
-
_optionalChain([ctx, 'access', _5 => _5.onAfterModal, 'optionalCall', _6 => _6()]);
|
|
87
|
+
await _optionalChain([ctx, 'access', _5 => _5.onAfterModal, 'optionalCall', _6 => _6()]);
|
|
90
88
|
}
|
|
91
89
|
}
|
|
92
90
|
function parseLearnArgs(args) {
|
|
@@ -111,16 +109,16 @@ async function handleLearnRecommend(ctx, deep) {
|
|
|
111
109
|
const analyzeLabel = deep ? "Deep-analyzing your project..." : "Analyzing your project...";
|
|
112
110
|
logProgress(ctx, analyzeLabel, progress);
|
|
113
111
|
_optionalChain([progress, 'optionalAccess', _7 => _7.start, 'call', _8 => _8(analyzeLabel)]);
|
|
114
|
-
const analyzer = new (0,
|
|
112
|
+
const analyzer = new (0, _chunkEA2MS25Ucjs.ProjectAnalyzer)(workspaceRoot);
|
|
115
113
|
const analysis = await analyzer.analyze();
|
|
116
|
-
const cache = new (0,
|
|
117
|
-
const fetcher = new (0,
|
|
114
|
+
const cache = new (0, _chunkPSAH4ZQBcjs.CommunitySkillsCache)();
|
|
115
|
+
const fetcher = new (0, _chunkQW2RW2GYcjs.GitHubRegistryFetcher)();
|
|
118
116
|
const loadLabel = "Loading community skills...";
|
|
119
117
|
logProgress(ctx, loadLabel, progress);
|
|
120
118
|
_optionalChain([progress, 'optionalAccess', _9 => _9.advance, 'call', _10 => _10(loadLabel)]);
|
|
121
119
|
let registry = null;
|
|
122
120
|
try {
|
|
123
|
-
registry = await
|
|
121
|
+
registry = await _chunkSVVP4UUZcjs.fetchRegistryWithFallback.call(void 0, cache, fetcher);
|
|
124
122
|
} catch (e) {
|
|
125
123
|
}
|
|
126
124
|
const installedSkills = skillsRegistry.listSkills();
|
|
@@ -128,7 +126,7 @@ async function handleLearnRecommend(ctx, deep) {
|
|
|
128
126
|
const evalLabel = "Evaluating skill matches...";
|
|
129
127
|
logProgress(ctx, evalLabel, progress);
|
|
130
128
|
_optionalChain([progress, 'optionalAccess', _12 => _12.advance, 'call', _13 => _13(evalLabel)]);
|
|
131
|
-
const advisor = new (0,
|
|
129
|
+
const advisor = new (0, _chunkDSSCERHIcjs.LearnAdvisor)(llm);
|
|
132
130
|
const result = await advisor.analyze(analysis, installedSkills, registrySkills);
|
|
133
131
|
_optionalChain([progress, 'optionalAccess', _14 => _14.finish, 'call', _15 => _15()]);
|
|
134
132
|
const lines = [];
|
|
@@ -164,11 +162,11 @@ async function handleLearnRecommend(ctx, deep) {
|
|
|
164
162
|
if (goodMatches.length === 0 && !isNonInteractive) {
|
|
165
163
|
const gapDesc = result.gapAnalysis ? `Based on gap analysis: ${result.gapAnalysis}` : `A custom skill tailored for your ${analysis.frameworks.join("/") || analysis.languages.join("/")} project.`;
|
|
166
164
|
lines.push(_chalk2.default.cyan(gapDesc));
|
|
167
|
-
const { renderTerminalMarkdown } = await Promise.resolve().then(() => _interopRequireWildcard(require("./immediateCommandRouter-
|
|
165
|
+
const { renderTerminalMarkdown } = await Promise.resolve().then(() => _interopRequireWildcard(require("./immediateCommandRouter-ROXU3MWT.cjs")));
|
|
168
166
|
console.log(renderTerminalMarkdown(lines.join("\n")));
|
|
169
167
|
const wantGenerate = await withModalPause(
|
|
170
168
|
ctx,
|
|
171
|
-
() =>
|
|
169
|
+
() => _chunkCK4HAHVYcjs.showConfirm.call(void 0, { title: "Generate a custom skill to fill this gap?" })
|
|
172
170
|
);
|
|
173
171
|
if (wantGenerate) {
|
|
174
172
|
return await handleGeneration(ctx, analysis, result);
|
|
@@ -184,7 +182,7 @@ async function handleGeneration(ctx, analysis, analysisResult) {
|
|
|
184
182
|
const genProgress = animated ? new StepProgress() : void 0;
|
|
185
183
|
logProgress(ctx, genLabel, genProgress);
|
|
186
184
|
_optionalChain([genProgress, 'optionalAccess', _18 => _18.start, 'call', _19 => _19(genLabel)]);
|
|
187
|
-
const advisor = new (0,
|
|
185
|
+
const advisor = new (0, _chunkDSSCERHIcjs.LearnAdvisor)(ctx.llm);
|
|
188
186
|
const lowScoring = analysisResult.recommendations.sort((a, b) => b.score - a.score).slice(0, 3);
|
|
189
187
|
const generated = await advisor.generateSkill(analysis, analysisResult.gapAnalysis, lowScoring);
|
|
190
188
|
_optionalChain([genProgress, 'optionalAccess', _20 => _20.finish, 'call', _21 => _21()]);
|
|
@@ -199,7 +197,7 @@ Generated: ${_chalk2.default.bold(generated.name)}`));
|
|
|
199
197
|
}
|
|
200
198
|
const scopeChoice = await withModalPause(
|
|
201
199
|
ctx,
|
|
202
|
-
() =>
|
|
200
|
+
() => _chunkCK4HAHVYcjs.showModal.call(void 0, {
|
|
203
201
|
title: "Where should this skill be installed?",
|
|
204
202
|
options: [
|
|
205
203
|
{ label: `Project (.autohand/skills/)`, value: "project" },
|
|
@@ -220,9 +218,9 @@ description: ${generated.description}
|
|
|
220
218
|
|
|
221
219
|
`;
|
|
222
220
|
let skillContent = frontmatter + generated.body + "\n";
|
|
223
|
-
const projectHash =
|
|
224
|
-
skillContent =
|
|
225
|
-
const targetDir = scope === "project" ? _path2.default.join(ctx.workspaceRoot,
|
|
221
|
+
const projectHash = _chunkSVVP4UUZcjs.computeProjectHash.call(void 0, analysis);
|
|
222
|
+
skillContent = _chunkSVVP4UUZcjs.injectGeneratedMetadata.call(void 0, skillContent, generated.name, projectHash);
|
|
223
|
+
const targetDir = scope === "project" ? _path2.default.join(ctx.workspaceRoot, _chunkKASXKDF2cjs.PROJECT_DIR_NAME, "skills") : _chunkKASXKDF2cjs.AUTOHAND_PATHS.skills;
|
|
226
224
|
const skillDir = _path2.default.join(targetDir, generated.name);
|
|
227
225
|
await _fsextra2.default.ensureDir(skillDir);
|
|
228
226
|
await _fsextra2.default.writeFile(_path2.default.join(skillDir, "SKILL.md"), skillContent, "utf-8");
|
|
@@ -237,9 +235,9 @@ async function handleLearnUpdate(ctx) {
|
|
|
237
235
|
const checkLabel = "Checking for skill updates...";
|
|
238
236
|
logProgress(ctx, checkLabel, progress);
|
|
239
237
|
_optionalChain([progress, 'optionalAccess', _23 => _23.start, 'call', _24 => _24(checkLabel)]);
|
|
240
|
-
const analyzer = new (0,
|
|
238
|
+
const analyzer = new (0, _chunkEA2MS25Ucjs.ProjectAnalyzer)(workspaceRoot);
|
|
241
239
|
const analysis = await analyzer.analyze();
|
|
242
|
-
const currentHash =
|
|
240
|
+
const currentHash = _chunkSVVP4UUZcjs.computeProjectHash.call(void 0, analysis);
|
|
243
241
|
const allSkills = skillsRegistry.listSkills();
|
|
244
242
|
const generatedSkills = allSkills.filter(
|
|
245
243
|
(s) => _optionalChain([s, 'access', _25 => _25.metadata, 'optionalAccess', _26 => _26["agentskill-source"]]) === "llm-generated"
|
|
@@ -247,7 +245,7 @@ async function handleLearnUpdate(ctx) {
|
|
|
247
245
|
if (generatedSkills.length === 0) {
|
|
248
246
|
return "No LLM-generated skills found. Use /learn to generate skills first.";
|
|
249
247
|
}
|
|
250
|
-
const advisor = new (0,
|
|
248
|
+
const advisor = new (0, _chunkDSSCERHIcjs.LearnAdvisor)(llm);
|
|
251
249
|
let updated = 0;
|
|
252
250
|
let unchanged = 0;
|
|
253
251
|
const lines = [];
|
|
@@ -277,7 +275,7 @@ description: ${generated.description}
|
|
|
277
275
|
|
|
278
276
|
`;
|
|
279
277
|
let content = frontmatter + generated.body + "\n";
|
|
280
|
-
content =
|
|
278
|
+
content = _chunkSVVP4UUZcjs.injectGeneratedMetadata.call(void 0, content, skill.name, currentHash);
|
|
281
279
|
try {
|
|
282
280
|
await _fsextra2.default.writeFile(skill.path, content, "utf-8");
|
|
283
281
|
updated++;
|
|
@@ -312,7 +310,7 @@ async function learn(ctx, args) {
|
|
|
312
310
|
}
|
|
313
311
|
var metadata = {
|
|
314
312
|
command: "/learn",
|
|
315
|
-
description:
|
|
313
|
+
description: _chunkSY2P3Z5Wcjs.t.call(void 0, "commands.learn.description"),
|
|
316
314
|
implemented: true,
|
|
317
315
|
subcommands: [
|
|
318
316
|
{ name: "deep", description: "Deep-analyze project for better skill matching" },
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
showModal
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-NZ3ZWLUW.js";
|
|
4
4
|
import {
|
|
5
5
|
t
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-LEZEWKPA.js";
|
|
7
7
|
|
|
8
8
|
// src/commands/ide.ts
|
|
9
9
|
import chalk from "chalk";
|
|
@@ -434,10 +434,16 @@ ${t("commands.ide.title")}`));
|
|
|
434
434
|
label: `${ide2.displayName}: ${ide2.workspacePath ?? t("common.unknown")}`,
|
|
435
435
|
value: ide2.kind
|
|
436
436
|
}));
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
437
|
+
await ctx.onBeforeModal?.();
|
|
438
|
+
let result;
|
|
439
|
+
try {
|
|
440
|
+
result = await showModal({
|
|
441
|
+
title: t("commands.ide.selectPrompt"),
|
|
442
|
+
options
|
|
443
|
+
});
|
|
444
|
+
} finally {
|
|
445
|
+
await ctx.onAfterModal?.();
|
|
446
|
+
}
|
|
441
447
|
if (!result) {
|
|
442
448
|
console.log(chalk.gray(`
|
|
443
449
|
${t("common.cancelled")}`));
|
|
@@ -2,25 +2,33 @@ import {
|
|
|
2
2
|
LearnClient,
|
|
3
3
|
fetchRegistryWithFallback,
|
|
4
4
|
installSkillWithSecurity
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-P4FUTSVK.js";
|
|
6
6
|
import {
|
|
7
7
|
CommunitySkillsCache
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-KMP6Y3LJ.js";
|
|
9
9
|
import {
|
|
10
10
|
GitHubRegistryFetcher
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-YVQI26H4.js";
|
|
12
12
|
import {
|
|
13
13
|
showConfirm,
|
|
14
14
|
showModal
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-NZ3ZWLUW.js";
|
|
16
16
|
import {
|
|
17
17
|
t
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-LEZEWKPA.js";
|
|
19
19
|
|
|
20
20
|
// src/commands/skills.ts
|
|
21
21
|
import path from "path";
|
|
22
22
|
import fse from "fs-extra";
|
|
23
23
|
import chalk from "chalk";
|
|
24
|
+
async function withModalPause(ctx, fn) {
|
|
25
|
+
await ctx.onBeforeModal?.();
|
|
26
|
+
try {
|
|
27
|
+
return await fn();
|
|
28
|
+
} finally {
|
|
29
|
+
await ctx.onAfterModal?.();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
24
32
|
async function skills(ctx, args = []) {
|
|
25
33
|
const { skillsRegistry } = ctx;
|
|
26
34
|
if (!skillsRegistry) {
|
|
@@ -53,6 +61,9 @@ async function skills(ctx, args = []) {
|
|
|
53
61
|
case "show":
|
|
54
62
|
return showSkillInfo(skillsRegistry, skillName);
|
|
55
63
|
default:
|
|
64
|
+
if (!ctx.isNonInteractive && process.stdout.isTTY) {
|
|
65
|
+
return browseInstalledSkills(ctx, skillsRegistry);
|
|
66
|
+
}
|
|
56
67
|
return listSkills(skillsRegistry);
|
|
57
68
|
}
|
|
58
69
|
}
|
|
@@ -96,24 +107,94 @@ function generateSkillSuggestion(skillName, description) {
|
|
|
96
107
|
}
|
|
97
108
|
return `Use ${skillName} to help with: ${description.slice(0, 50)}...`;
|
|
98
109
|
}
|
|
110
|
+
function getSkillSourceLabel(source) {
|
|
111
|
+
switch (source) {
|
|
112
|
+
case "autohand-user":
|
|
113
|
+
return "Autohand User";
|
|
114
|
+
case "autohand-project":
|
|
115
|
+
return "Project";
|
|
116
|
+
case "claude-user":
|
|
117
|
+
return "Claude User";
|
|
118
|
+
case "claude-project":
|
|
119
|
+
return "Claude Project";
|
|
120
|
+
case "codex-user":
|
|
121
|
+
return "Codex User";
|
|
122
|
+
case "codex-project":
|
|
123
|
+
return "Codex Project";
|
|
124
|
+
case "community":
|
|
125
|
+
return "Community";
|
|
126
|
+
default:
|
|
127
|
+
return source;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
function buildSkillPreview(skill) {
|
|
131
|
+
const lines = [
|
|
132
|
+
`Status: ${skill.isActive ? "\u{1F7E2} Active" : "\u26AA Inactive"}`,
|
|
133
|
+
`Source: ${getSkillSourceLabel(skill.source)}`,
|
|
134
|
+
`Path: ${skill.path}`,
|
|
135
|
+
"",
|
|
136
|
+
skill.description
|
|
137
|
+
];
|
|
138
|
+
if (skill.isActive) {
|
|
139
|
+
lines.push("");
|
|
140
|
+
lines.push(`Try: ${generateSkillSuggestion(skill.name, skill.description)}`);
|
|
141
|
+
lines.push(`/skills deactivate ${skill.name}`);
|
|
142
|
+
} else {
|
|
143
|
+
lines.push("");
|
|
144
|
+
lines.push(`/skills use ${skill.name}`);
|
|
145
|
+
}
|
|
146
|
+
lines.push(`/skills info ${skill.name}`);
|
|
147
|
+
return lines.join("\n");
|
|
148
|
+
}
|
|
149
|
+
async function browseInstalledSkills(ctx, registry) {
|
|
150
|
+
const allSkills = registry.listSkills();
|
|
151
|
+
const activeSkills = registry.getActiveSkills();
|
|
152
|
+
if (allSkills.length === 0) {
|
|
153
|
+
return listSkills(registry);
|
|
154
|
+
}
|
|
155
|
+
const options = allSkills.map((skill) => ({
|
|
156
|
+
label: `${skill.isActive ? "\u{1F7E2}" : "\u26AA"} ${skill.name} \xB7 ${getSkillSourceLabel(skill.source)}`,
|
|
157
|
+
value: skill.name,
|
|
158
|
+
preview: buildSkillPreview(skill)
|
|
159
|
+
}));
|
|
160
|
+
options.push({
|
|
161
|
+
label: "\u{1F310} Browse community skills",
|
|
162
|
+
value: "__skills_install__",
|
|
163
|
+
description: "Open the community skills browser to search and install new skills."
|
|
164
|
+
});
|
|
165
|
+
const initialIndex = Math.max(allSkills.findIndex((skill) => skill.isActive), 0);
|
|
166
|
+
const selected = await withModalPause(ctx, () => showModal({
|
|
167
|
+
title: `\u{1F4DA} ${t("commands.skills.title")} (${allSkills.length} available, ${activeSkills.length} active)`,
|
|
168
|
+
options,
|
|
169
|
+
initialIndex,
|
|
170
|
+
maxVisible: 12
|
|
171
|
+
}));
|
|
172
|
+
if (!selected) {
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
if (selected.value === "__skills_install__") {
|
|
176
|
+
return handleSkillsInstall(ctx);
|
|
177
|
+
}
|
|
178
|
+
return showSkillInfo(registry, selected.value);
|
|
179
|
+
}
|
|
99
180
|
function listSkills(registry) {
|
|
100
181
|
const allSkills = registry.listSkills();
|
|
101
182
|
const activeSkills = registry.getActiveSkills();
|
|
102
183
|
const lines = [];
|
|
103
184
|
lines.push("");
|
|
104
|
-
lines.push(`\u{1F4DA}
|
|
185
|
+
lines.push(`\u{1F4DA} ${t("commands.skills.title")}`);
|
|
105
186
|
lines.push("");
|
|
106
187
|
if (allSkills.length === 0) {
|
|
107
188
|
lines.push(t("commands.skills.noSkills"));
|
|
108
189
|
lines.push("");
|
|
109
|
-
lines.push("
|
|
190
|
+
lines.push("Get started:");
|
|
110
191
|
lines.push("");
|
|
111
|
-
lines.push(
|
|
112
|
-
lines.push(
|
|
192
|
+
lines.push(` \u{1F310} Browse Community Skills \u2192 /skills install`);
|
|
193
|
+
lines.push(` \u2728 Create New Skill \u2192 /skills new`);
|
|
113
194
|
lines.push("");
|
|
114
|
-
lines.push("
|
|
115
|
-
lines.push("
|
|
116
|
-
lines.push("
|
|
195
|
+
lines.push("Skills can be added in:");
|
|
196
|
+
lines.push(" ~/.autohand/skills/<skill-name>/SKILL.md");
|
|
197
|
+
lines.push(" <project>/.autohand/skills/<skill-name>/SKILL.md");
|
|
117
198
|
return lines.join("\n");
|
|
118
199
|
}
|
|
119
200
|
const bySource = /* @__PURE__ */ new Map();
|
|
@@ -130,28 +211,32 @@ function listSkills(registry) {
|
|
|
130
211
|
"autohand-project": "\u{1F4C1} Project Skills"
|
|
131
212
|
};
|
|
132
213
|
for (const [source, skills2] of bySource) {
|
|
133
|
-
lines.push(
|
|
214
|
+
lines.push(`${sourceLabels[source] || source}`);
|
|
134
215
|
lines.push("");
|
|
135
216
|
for (const skill of skills2) {
|
|
136
217
|
const isActive = skill.isActive;
|
|
137
218
|
const statusIcon = isActive ? "\u{1F7E2}" : "\u26AA";
|
|
138
|
-
const statusText = isActive ? "
|
|
139
|
-
lines.push(
|
|
140
|
-
lines.push(`
|
|
219
|
+
const statusText = isActive ? " (active)" : "";
|
|
220
|
+
lines.push(` ${statusIcon} ${skill.name}${statusText}`);
|
|
221
|
+
lines.push(` ${skill.description}`);
|
|
141
222
|
if (isActive) {
|
|
142
223
|
const suggestion = generateSkillSuggestion(skill.name, skill.description);
|
|
143
|
-
lines.push(`
|
|
224
|
+
lines.push(` \u{1F4A1} Try: "${suggestion}"`);
|
|
225
|
+
lines.push(` \u2139\uFE0F Info: /skills info ${skill.name}`);
|
|
226
|
+
lines.push(` \u23F8\uFE0F Deactivate: /skills deactivate ${skill.name}`);
|
|
144
227
|
} else {
|
|
145
|
-
lines.push(`
|
|
228
|
+
lines.push(` \u25B6\uFE0F Activate: /skills use ${skill.name}`);
|
|
229
|
+
lines.push(` \u2139\uFE0F Info: /skills info ${skill.name}`);
|
|
146
230
|
}
|
|
147
231
|
lines.push("");
|
|
148
232
|
}
|
|
149
233
|
}
|
|
150
234
|
lines.push("\u2500".repeat(40));
|
|
151
|
-
lines.push(`\u{1F4CA}
|
|
235
|
+
lines.push(`\u{1F4CA} ${allSkills.length} skills available, ${activeSkills.length} active`);
|
|
152
236
|
lines.push("");
|
|
153
|
-
lines.push("
|
|
154
|
-
lines.push(
|
|
237
|
+
lines.push("Quick Actions:");
|
|
238
|
+
lines.push(` \u{1F310} Browse Community \u2192 /skills install`);
|
|
239
|
+
lines.push(` \u2728 Create New \u2192 /skills new`);
|
|
155
240
|
return lines.join("\n");
|
|
156
241
|
}
|
|
157
242
|
function activateSkill(registry, name) {
|
|
@@ -209,48 +294,43 @@ function showSkillInfo(registry, name) {
|
|
|
209
294
|
}
|
|
210
295
|
const lines = [];
|
|
211
296
|
lines.push("");
|
|
212
|
-
lines.push(`\u{1F4CB}
|
|
213
|
-
lines.push("");
|
|
214
|
-
if (skill.isActive) {
|
|
215
|
-
lines.push(`**Status:** \u{1F7E2} Active`);
|
|
216
|
-
const suggestion = generateSkillSuggestion(skill.name, skill.description);
|
|
217
|
-
lines.push("");
|
|
218
|
-
lines.push(`{{action:\u{1F4A1} Try it now|${suggestion}}} {{action:\u23F8\uFE0F Deactivate|/skills deactivate ${skill.name}}}`);
|
|
219
|
-
} else {
|
|
220
|
-
lines.push(`**Status:** \u26AA Inactive`);
|
|
221
|
-
lines.push("");
|
|
222
|
-
lines.push(`{{action:\u25B6\uFE0F Activate|/skills use ${skill.name}}}`);
|
|
223
|
-
}
|
|
224
|
-
lines.push("");
|
|
225
|
-
lines.push("\u2500".repeat(40));
|
|
297
|
+
lines.push(`\u{1F4CB} Skill: ${skill.name}`);
|
|
226
298
|
lines.push("");
|
|
227
|
-
lines.push(
|
|
228
|
-
lines.push(
|
|
229
|
-
lines.push(
|
|
299
|
+
lines.push(`Status: ${skill.isActive ? "\u{1F7E2} Active" : "\u26AA Inactive"}`);
|
|
300
|
+
lines.push(`Description: ${skill.description}`);
|
|
301
|
+
lines.push(`Source: ${getSkillSourceLabel(skill.source)}`);
|
|
302
|
+
lines.push(`Path: ${skill.path}`);
|
|
230
303
|
if (skill.license) {
|
|
231
|
-
lines.push(
|
|
304
|
+
lines.push(`License: ${skill.license}`);
|
|
232
305
|
}
|
|
233
306
|
if (skill.compatibility) {
|
|
234
|
-
lines.push(
|
|
307
|
+
lines.push(`Compatibility: ${skill.compatibility}`);
|
|
235
308
|
}
|
|
236
309
|
if (skill["allowed-tools"]) {
|
|
237
|
-
lines.push(
|
|
310
|
+
lines.push(`Allowed Tools: ${skill["allowed-tools"]}`);
|
|
311
|
+
}
|
|
312
|
+
lines.push("");
|
|
313
|
+
if (skill.isActive) {
|
|
314
|
+
lines.push(`Recommended Prompt: ${generateSkillSuggestion(skill.name, skill.description)}`);
|
|
315
|
+
lines.push(`Deactivate: /skills deactivate ${skill.name}`);
|
|
316
|
+
} else {
|
|
317
|
+
lines.push(`Activate: /skills use ${skill.name}`);
|
|
238
318
|
}
|
|
239
319
|
if (skill.metadata && Object.keys(skill.metadata).length > 0) {
|
|
240
320
|
lines.push("");
|
|
241
|
-
lines.push("
|
|
321
|
+
lines.push("Metadata:");
|
|
242
322
|
for (const [key, value] of Object.entries(skill.metadata)) {
|
|
243
|
-
lines.push(
|
|
323
|
+
lines.push(` - ${key}: ${value}`);
|
|
244
324
|
}
|
|
245
325
|
}
|
|
246
326
|
lines.push("");
|
|
247
|
-
lines.push("
|
|
248
|
-
lines.push("```");
|
|
327
|
+
lines.push("Content Preview:");
|
|
249
328
|
const bodyPreview = skill.body.length > 500 ? skill.body.slice(0, 500) + "\n... (truncated)" : skill.body;
|
|
250
|
-
|
|
251
|
-
|
|
329
|
+
for (const line of (bodyPreview || "(no body content)").split("\n")) {
|
|
330
|
+
lines.push(` ${line}`);
|
|
331
|
+
}
|
|
252
332
|
lines.push("");
|
|
253
|
-
lines.push("
|
|
333
|
+
lines.push("Back: /skills");
|
|
254
334
|
return lines.join("\n");
|
|
255
335
|
}
|
|
256
336
|
async function handleSkillsInstall(ctx, skillName) {
|
|
@@ -258,7 +338,7 @@ async function handleSkillsInstall(ctx, skillName) {
|
|
|
258
338
|
if (!workspaceRoot) {
|
|
259
339
|
return "Workspace root not available.";
|
|
260
340
|
}
|
|
261
|
-
const { skillsInstall } = await import("./skills-install-
|
|
341
|
+
const { skillsInstall } = await import("./skills-install-BHTIEMKH.js");
|
|
262
342
|
const result = await skillsInstall(
|
|
263
343
|
{
|
|
264
344
|
skillsRegistry,
|
|
@@ -292,10 +372,10 @@ async function handleSkillsSearch(ctx, query) {
|
|
|
292
372
|
label: `${s.name} - ${s.description}`,
|
|
293
373
|
value: s.id
|
|
294
374
|
}));
|
|
295
|
-
const selected = await showModal({
|
|
375
|
+
const selected = await withModalPause(ctx, () => showModal({
|
|
296
376
|
title: t("commands.learn.selectPrompt"),
|
|
297
377
|
options
|
|
298
|
-
});
|
|
378
|
+
}));
|
|
299
379
|
if (!selected) {
|
|
300
380
|
return t("commands.learn.noResults", { query });
|
|
301
381
|
}
|
|
@@ -331,7 +411,7 @@ async function handleSkillsTrending() {
|
|
|
331
411
|
const featured = skill.isFeatured ? chalk.yellow(" [featured]") : "";
|
|
332
412
|
const downloads = skill.downloadCount ? chalk.gray(` (${skill.downloadCount} installs)`) : "";
|
|
333
413
|
lines.push(`${idx} ${name}${featured}${downloads}`);
|
|
334
|
-
lines.push(`
|
|
414
|
+
lines.push(` ${skill.description}`);
|
|
335
415
|
lines.push(` {{action:Install|/skills install @${skill.author ?? "community"}/${skill.id}}}`);
|
|
336
416
|
lines.push("");
|
|
337
417
|
}
|
|
@@ -349,10 +429,10 @@ async function handleSkillsRemove(ctx, slug) {
|
|
|
349
429
|
return t("commands.learn.removeNotFound", { name: slug });
|
|
350
430
|
}
|
|
351
431
|
if (!ctx.isNonInteractive) {
|
|
352
|
-
const confirmed = await showConfirm({
|
|
432
|
+
const confirmed = await withModalPause(ctx, () => showConfirm({
|
|
353
433
|
title: t("commands.learn.confirmRemove", { name: target.name }),
|
|
354
434
|
defaultValue: false
|
|
355
|
-
});
|
|
435
|
+
}));
|
|
356
436
|
if (!confirmed) return null;
|
|
357
437
|
}
|
|
358
438
|
const skillDir = path.dirname(target.path);
|
|
@@ -389,7 +469,8 @@ var metadata = {
|
|
|
389
469
|
{ name: "search", description: "Search community skills" },
|
|
390
470
|
{ name: "trending", description: "Show trending community skills" },
|
|
391
471
|
{ name: "remove", description: "Remove an installed skill" },
|
|
392
|
-
{ name: "info", description: "Show detailed skill info" }
|
|
472
|
+
{ name: "info", description: "Show detailed skill info" },
|
|
473
|
+
{ name: "new", description: "Create a new project skill" }
|
|
393
474
|
]
|
|
394
475
|
};
|
|
395
476
|
var useMetadata = {
|