autohand-cli 0.7.14 → 0.8.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 +97 -2
- package/assets/icon.png +0 -0
- package/dist/AgentRegistry-7LDL5HJH.js +10 -0
- package/dist/AgentRegistry-NQCLWABO.cjs +10 -0
- package/dist/{AutomodeManager-NGRAO2MH.js → AutomodeManager-MWLKGPZK.js} +2 -0
- package/dist/{AutomodeManager-ZKQMBM4T.cjs → AutomodeManager-NYIZNODK.cjs} +3 -1
- package/dist/CommunitySkillsCache-6QPRMTJO.js +8 -0
- package/dist/CommunitySkillsCache-GTQMOCCO.cjs +8 -0
- package/dist/{GitHubRegistryFetcher-US2JJID4.js → GitHubRegistryFetcher-6JQ5JEDZ.js} +1 -0
- package/dist/{GitHubRegistryFetcher-K744NNAJ.cjs → GitHubRegistryFetcher-S7QFUEKV.cjs} +1 -0
- package/dist/HookManager-Q2KYMCP4.cjs +7 -0
- package/dist/HookManager-TTP4Y6DC.js +7 -0
- package/dist/ImportWizard-35YBJ4AM.cjs +466 -0
- package/dist/ImportWizard-XH7CINCH.js +466 -0
- package/dist/LearnAdvisor-A4Q5PPBI.js +9 -0
- package/dist/LearnAdvisor-GASQD7HT.cjs +9 -0
- package/dist/McpClientManager-7RM6YT35.js +8 -0
- package/dist/McpClientManager-RKD7C6OY.cjs +8 -0
- package/dist/MemoryManager-GUNLRP5S.js +8 -0
- package/dist/MemoryManager-TNSGKDKX.cjs +8 -0
- package/dist/{PermissionManager-U5OMGR3L.js → PermissionManager-ATUV34LQ.js} +4 -3
- package/dist/PermissionManager-KMN53FJP.cjs +11 -0
- package/dist/ProjectProfiler-UMJJSOCE.js +194 -0
- package/dist/ProjectProfiler-ZDWR2ODG.cjs +194 -0
- package/dist/ProviderFactory-MR5B23QJ.js +9 -0
- package/dist/ProviderFactory-VFGCJJX6.cjs +9 -0
- package/dist/SessionManager-FEUAU3ZJ.cjs +10 -0
- package/dist/SessionManager-IKWAK2PI.js +10 -0
- package/dist/SkillsRegistry-KPQFTRIT.cjs +9 -0
- package/dist/SkillsRegistry-XJSKPDF2.js +9 -0
- package/dist/SubAgent-NYH6GWQ3.js +11 -0
- package/dist/SubAgent-PZKBDUBA.cjs +11 -0
- package/dist/{SyncApiClient-AYXYSOJM.js → SyncApiClient-LVIO4C2S.js} +1 -0
- package/dist/{SyncApiClient-ID3KXEMA.cjs → SyncApiClient-ZNYMT36M.cjs} +1 -0
- package/dist/about-HHTF2YFL.js +12 -0
- package/dist/about-JGRVNNQC.cjs +12 -0
- package/dist/actionExecutor-U6IBN2TU.cjs +19 -0
- package/dist/actionExecutor-XT5FW3W6.js +19 -0
- package/dist/add-dir-247K3XRY.js +10 -0
- package/dist/add-dir-GS4DXKKH.cjs +10 -0
- package/dist/agents/builtin/code-cleaner.md +14 -0
- package/dist/agents/builtin/docs-writer.md +14 -0
- package/dist/agents/builtin/researcher.md +14 -0
- package/dist/agents/builtin/reviewer.md +15 -0
- package/dist/agents/builtin/tester.md +15 -0
- package/dist/agents/builtin/todo-resolver.md +15 -0
- package/dist/agents-R6ZEFTVR.cjs +12 -0
- package/dist/agents-WJPQWQF2.js +12 -0
- package/dist/agents-new-HKVEIBDJ.js +14 -0
- package/dist/agents-new-X6GTHIO6.cjs +14 -0
- package/dist/assets/icon.png +0 -0
- package/dist/autoSkill-6TGBTEQD.js +20 -0
- package/dist/autoSkill-H4T6VVDA.cjs +20 -0
- package/dist/automode-BC6NVECO.js +10 -0
- package/dist/automode-WN2RSOGW.cjs +10 -0
- package/dist/{cc-UTTLESTY.js → cc-7LEIJ3KF.js} +1 -0
- package/dist/{cc-2W6M7J45.cjs → cc-Q5MM4AWC.cjs} +1 -0
- package/dist/{chunk-N4ZSG6JJ.cjs → chunk-22D2CNTP.cjs} +2 -2
- package/dist/chunk-245KJE5Y.cjs +55 -0
- package/dist/chunk-24QIWILL.js +51 -0
- package/dist/{chunk-MYNHJHDZ.js → chunk-2AA5MFES.js} +1 -1
- package/dist/{chunk-TSY7JHIV.cjs → chunk-33A755XB.cjs} +2 -2
- package/dist/chunk-33RSHBDH.js +131 -0
- package/dist/{chunk-QRGPAUST.js → chunk-34M3HWLR.js} +2 -2
- package/dist/{chunk-U7CZFKPL.cjs → chunk-3K2ESU53.cjs} +2 -2
- package/dist/{chunk-SIGWDEPS.cjs → chunk-3L53OA4E.cjs} +10 -10
- package/dist/chunk-3OEDGIFW.js +42 -0
- package/dist/chunk-3OTU3RS3.cjs +1607 -0
- package/dist/{chunk-MNSTWHK3.cjs → chunk-3PCTTUNW.cjs} +11 -11
- package/dist/{chunk-P5VDZ6PV.js → chunk-3PDTTAKJ.js} +1 -1
- package/dist/chunk-47CKWKEX.cjs +59 -0
- package/dist/{chunk-Z4J4W6YQ.cjs → chunk-4JNNTOGF.cjs} +2 -48
- package/dist/{chunk-GVZPIQWB.js → chunk-4PKF7WPD.js} +11 -5
- package/dist/{chunk-3S4DEIJP.cjs → chunk-5IXII4HX.cjs} +2 -2
- package/dist/{chunk-CRQKDBLD.js → chunk-5P2NXKP3.js} +98 -64
- package/dist/{chunk-DSKVMFRM.cjs → chunk-643VRA5S.cjs} +12 -4
- package/dist/{chunk-VVBBEYTH.cjs → chunk-6HYLHBQG.cjs} +10 -10
- package/dist/{chunk-L5ZFPWHY.js → chunk-6OYHF6MF.js} +12 -4
- package/dist/{chunk-BPTBKO7D.js → chunk-6RF7UKUS.js} +224 -37
- package/dist/{chunk-YHGTBPEC.js → chunk-6ZCULLCA.js} +1 -1
- package/dist/{chunk-VHBUKGRG.js → chunk-72FKPBT5.js} +4 -4
- package/dist/{chunk-2U5HFVRO.cjs → chunk-7BTSG4ME.cjs} +5165 -2194
- package/dist/chunk-7UOUW76C.js +603 -0
- package/dist/{chunk-FEVHH525.cjs → chunk-A4IJHHV7.cjs} +11 -5
- package/dist/{chunk-B6EBHCK2.cjs → chunk-AEJH23FO.cjs} +6 -6
- package/dist/{chunk-WLTVF77A.js → chunk-ALYU6VTM.js} +1 -1
- package/dist/{chunk-NMWEDN4Z.js → chunk-APIXPPMT.js} +5165 -2194
- package/dist/chunk-AS6RTLN7.cjs +203 -0
- package/dist/{chunk-BHV7CBNT.js → chunk-AYS2ASM7.js} +1 -1
- package/dist/{chunk-GRSVQ5YZ.js → chunk-AYSFIUFW.js} +44 -12
- package/dist/{chunk-NUHYCFHW.cjs → chunk-BVKXEQVG.cjs} +54 -65
- package/dist/chunk-BWN2CLLM.cjs +298 -0
- package/dist/{chunk-4HA7IHLJ.cjs → chunk-C5IJIM2V.cjs} +38 -16
- package/dist/{chunk-SRLY7K6J.js → chunk-CAMZTXV6.js} +2 -2
- package/dist/chunk-CDBPBM2K.cjs +29 -0
- package/dist/chunk-CNBKZEX5.cjs +109 -0
- package/dist/{chunk-WQUQ5JMM.js → chunk-CWMZKFTT.js} +4 -4
- package/dist/{chunk-CKN2BLHK.cjs → chunk-CZXGCVTR.cjs} +2 -2
- package/dist/{chunk-SZP4ULM5.cjs → chunk-DJDE4DTT.cjs} +17 -17
- package/dist/chunk-DN573ME7.cjs +1675 -0
- package/dist/chunk-DRE2RXBZ.js +4498 -0
- package/dist/chunk-DSPQEHDT.js +29 -0
- package/dist/{chunk-SFNT5DYE.cjs → chunk-DVUHHH3B.cjs} +4 -4
- package/dist/chunk-DVZOENQ7.cjs +58 -0
- package/dist/{chunk-PWLLLJHU.js → chunk-EGFT4PGW.js} +3 -1
- package/dist/chunk-EGMZDTSL.js +55 -0
- package/dist/chunk-EZMINVLU.js +123 -0
- package/dist/chunk-FHK7UDOJ.cjs +42 -0
- package/dist/{chunk-KWRUQRXR.js → chunk-FKSDEWDH.js} +44 -10
- package/dist/chunk-FMB3TSWP.cjs +218 -0
- package/dist/chunk-FW774QXH.js +1838 -0
- package/dist/{chunk-MY3TZER2.js → chunk-G27PQQFD.js} +1 -1
- package/dist/{chunk-Y2ZSH3YF.cjs → chunk-G3V4SFET.cjs} +57 -23
- package/dist/chunk-G4CAKI3V.js +58 -0
- package/dist/{chunk-FB6JWNJS.js → chunk-GBHDROGL.js} +54 -65
- package/dist/{chunk-DEAEO7RI.js → chunk-GJH7XMSK.js} +15 -1
- package/dist/chunk-GLBAF54O.js +218 -0
- package/dist/{chunk-S47TCZDL.js → chunk-H5SWOLG6.js} +7 -7
- package/dist/chunk-HBXAA3XB.js +83 -0
- package/dist/{chunk-63BXZQZW.js → chunk-HIVRCQS2.js} +26 -4
- package/dist/{chunk-WOGJXDBU.cjs → chunk-HLHTG5ZU.cjs} +18 -4
- package/dist/{chunk-FK2DVRPJ.js → chunk-HLQV64Y5.js} +170 -4
- package/dist/chunk-HOAHWIQ5.cjs +260 -0
- package/dist/{chunk-D2XFTCRP.js → chunk-HQ7YZKXE.js} +1 -1
- package/dist/{chunk-L42HTMMR.cjs → chunk-HTLINWX6.cjs} +2 -2
- package/dist/{chunk-PKOAXQKW.cjs → chunk-HVKOZ2VP.cjs} +11 -11
- package/dist/chunk-HXGBSJL5.cjs +27 -0
- package/dist/chunk-I5IW3T2Y.js +310 -0
- package/dist/chunk-IETRBBMP.cjs +603 -0
- package/dist/{chunk-MTALRU7R.cjs → chunk-IFFXSTOM.cjs} +3 -3
- package/dist/{chunk-V7YTCNMN.cjs → chunk-IKGWDOGU.cjs} +174 -8
- package/dist/chunk-IQ5RXU6O.js +1675 -0
- package/dist/{chunk-ZBIBLOZL.js → chunk-IVM5F2AE.js} +500 -317
- package/dist/chunk-J4Q7XR3G.js +260 -0
- package/dist/{chunk-XL77XYI2.cjs → chunk-J6QET7EF.cjs} +27 -7
- package/dist/{chunk-TQB222ZB.js → chunk-JCLYQ2JC.js} +2 -2
- package/dist/chunk-JSBRDJBE.js +30 -0
- package/dist/{chunk-XPOHYKR3.js → chunk-JX3DFKBI.js} +2 -2
- package/dist/chunk-JYTDYJVW.js +27 -0
- package/dist/{chunk-6SHHB2VD.js → chunk-KPELYZ6L.js} +2 -2
- package/dist/{chunk-ZLOTP56B.cjs → chunk-KWXVKLQ5.cjs} +5 -5
- package/dist/chunk-L3WAH3EM.cjs +131 -0
- package/dist/{chunk-ZXIQCYYV.cjs → chunk-LA7H35XM.cjs} +9 -9
- package/dist/chunk-LENHP55G.cjs +1838 -0
- package/dist/chunk-LJFUXC56.cjs +123 -0
- package/dist/{chunk-R5OO7MEB.cjs → chunk-LNMYK2F5.cjs} +22 -22
- package/dist/chunk-LQGVEP3E.js +109 -0
- package/dist/{chunk-KXAAEROY.js → chunk-LWUJFGOZ.js} +2 -2
- package/dist/chunk-MAKMSQMQ.cjs +504 -0
- package/dist/{chunk-BG4OQUKP.js → chunk-MBBY4ZIK.js} +1 -1
- package/dist/chunk-MSED7RH2.cjs +267 -0
- package/dist/{chunk-NMGF2KUN.js → chunk-MYISNQH4.js} +1 -1
- package/dist/chunk-N23UAW4I.js +59 -0
- package/dist/chunk-N254NRHT.cjs +30 -0
- package/dist/{chunk-TOTDRAWG.js → chunk-NDMIPTV4.js} +1 -1
- package/dist/{chunk-AIH6GUGB.cjs → chunk-NNPAM4HC.cjs} +5 -5
- package/dist/{chunk-HSPWX4Z2.cjs → chunk-O4IF4NJT.cjs} +231 -44
- package/dist/{chunk-DZHR34H6.cjs → chunk-OGV4WJ5L.cjs} +8 -8
- package/dist/chunk-OHUZKDGX.js +348 -0
- package/dist/{chunk-BRXIEKJ3.cjs → chunk-OLSBBZW6.cjs} +5 -5
- package/dist/{chunk-MILZEEUV.js → chunk-OOKY3HPZ.js} +9 -3
- package/dist/chunk-P47WPOXN.js +298 -0
- package/dist/{chunk-ULMPJUJW.cjs → chunk-PRRCJFU3.cjs} +23 -23
- package/dist/{chunk-SMHY3Q7B.cjs → chunk-Q7XSCYND.cjs} +54 -22
- package/dist/chunk-QCLYBIMM.cjs +51 -0
- package/dist/chunk-QMAKTSZB.cjs +48 -0
- package/dist/{chunk-DTFR3WD6.js → chunk-QNGEW5TC.js} +1 -1
- package/dist/chunk-QOXPOR5D.js +267 -0
- package/dist/chunk-R33VKSH5.cjs +348 -0
- package/dist/{chunk-RJP3SZ7Q.cjs → chunk-RD5XAJR2.cjs} +492 -309
- package/dist/chunk-RGR6ME5J.cjs +844 -0
- package/dist/{chunk-EOGKE5GD.cjs → chunk-RKJTGGMU.cjs} +221 -126
- package/dist/{chunk-GD4AFYJ3.js → chunk-RO6WYEWH.js} +24 -4
- package/dist/chunk-S52YW5ZQ.js +844 -0
- package/dist/{chunk-6DWXHBAY.js → chunk-SAHBLB3E.js} +222 -127
- package/dist/{chunk-JHOQABEF.js → chunk-SCXX4LW5.js} +5 -5
- package/dist/{chunk-GIZL57FE.cjs → chunk-SEKD5FH3.cjs} +3 -1
- package/dist/{chunk-JWPI6O5Z.js → chunk-SKV2F3NM.js} +31 -4
- package/dist/{chunk-FHUNAB2K.cjs → chunk-SKYG33B2.cjs} +33 -6
- package/dist/{chunk-BISFR6ZL.js → chunk-SLQAYV3W.js} +1 -1
- package/dist/{chunk-RFNCTE4V.cjs → chunk-SYVYLZZF.cjs} +2 -2
- package/dist/{chunk-3XJD56Z4.js → chunk-T73IDKDF.js} +10 -3
- package/dist/chunk-TBEGGJNC.cjs +310 -0
- package/dist/{chunk-RRZS5A53.js → chunk-TNZRZQ7Q.js} +1 -1
- package/dist/{chunk-CH4SPVFD.cjs → chunk-TXSDBGKX.cjs} +10 -3
- package/dist/chunk-U3WDY42C.cjs +42 -0
- package/dist/{chunk-425MT6Y5.cjs → chunk-U46VYPLR.cjs} +9 -9
- package/dist/{chunk-OLG7LZBD.js → chunk-VG34MG2U.js} +1 -1
- package/dist/{chunk-XDVG3NM4.js → chunk-W3X6PAC7.js} +2 -48
- package/dist/{chunk-LYMTYC67.js → chunk-WHE2SWHU.js} +2 -2
- package/dist/chunk-WM5PAOTQ.cjs +4498 -0
- package/dist/chunk-WNUVPKBW.js +42 -0
- package/dist/{chunk-EV53SLSB.cjs → chunk-WPVWQSL7.cjs} +4 -4
- package/dist/chunk-WQ3VJXZB.js +118 -0
- package/dist/{chunk-HMRDNRTH.js → chunk-X2MSVKDV.js} +2 -2
- package/dist/chunk-X3WS5LDG.js +504 -0
- package/dist/{chunk-43XS26AQ.cjs → chunk-X5VSP65C.cjs} +4 -4
- package/dist/{chunk-DSCQPWUB.cjs → chunk-X5YJ34FZ.cjs} +15 -15
- package/dist/chunk-XAV24VYN.js +48 -0
- package/dist/chunk-XDLH4EDL.cjs +118 -0
- package/dist/{chunk-X765A7J5.js → chunk-XRZEUWKF.js} +1 -1
- package/dist/{chunk-ZKZRFH37.cjs → chunk-XTB6VJVQ.cjs} +6 -6
- package/dist/{chunk-H3GBSPK5.js → chunk-XX2ZO7DS.js} +14 -6
- package/dist/{chunk-RUZB43HU.cjs → chunk-Y72HH2TF.cjs} +22 -14
- package/dist/chunk-YFXTE422.cjs +92 -0
- package/dist/{chunk-OSUWEUZE.js → chunk-YGN4CQIP.js} +1 -1
- package/dist/{chunk-KC5FPUOF.cjs → chunk-YRLYSQEQ.cjs} +2 -2
- package/dist/{chunk-3KBBARKO.js → chunk-YZXUDM5X.js} +85 -28
- package/dist/chunk-Z36XBUMX.cjs +83 -0
- package/dist/chunk-ZK6HOR62.js +92 -0
- package/dist/{chunk-PDKNHU5G.cjs → chunk-ZQE72E6W.cjs} +22 -16
- package/dist/chunk-ZVY2XD6T.js +1607 -0
- package/dist/{chunk-XBUMKEFN.cjs → chunk-ZYQMLKOK.cjs} +91 -34
- package/dist/clear-UO4MNWZW.cjs +12 -0
- package/dist/clear-ZJ5NYP6E.js +12 -0
- package/dist/communityInstaller-6KCFN7YZ.js +19 -0
- package/dist/communityInstaller-PVSOFDZD.cjs +19 -0
- package/dist/completion-MMF2PN2H.js +14 -0
- package/dist/completion-UI5WKHXI.cjs +14 -0
- package/dist/config-E7RINK4R.cjs +18 -0
- package/dist/config-ZN66VXPS.js +18 -0
- package/dist/constants-6CPCJ3DY.cjs +21 -0
- package/dist/{constants-V6J54N3X.js → constants-UFM5B232.js} +2 -1
- package/dist/{defaultHooks-WLMRQUXG.cjs → defaultHooks-RCXPHF4M.cjs} +3 -1
- package/dist/{defaultHooks-R56VYG7I.js → defaultHooks-RDRMER3Z.js} +2 -0
- package/dist/export-N4XIVDSL.cjs +12 -0
- package/dist/export-W22L4D5C.js +12 -0
- package/dist/extractSessionMemories-SDW2MVBQ.cjs +7 -0
- package/dist/extractSessionMemories-V7K42ZHW.js +7 -0
- package/dist/feedback-DR6ADSNE.cjs +15 -0
- package/dist/feedback-FEEAP4QW.js +15 -0
- package/dist/filesystem-3SGCW2BF.js +10 -0
- package/dist/filesystem-MCFXJQ6R.cjs +10 -0
- package/dist/formatters-6K7QVWQL.cjs +10 -0
- package/dist/formatters-DQHO5I36.js +10 -0
- package/dist/{help-LKKQU2TN.js → help-2BLR7L43.js} +3 -2
- package/dist/help-AQHGTS7P.cjs +12 -0
- package/dist/{history-AV4XBFRK.js → history-5FZ3M2AK.js} +3 -2
- package/dist/history-NIUDRMKA.cjs +14 -0
- package/dist/hooks-2EY4IPKV.js +13 -0
- package/dist/hooks-LJVORRIG.cjs +13 -0
- package/dist/i18n-ARDG2SMC.cjs +33 -0
- package/dist/{i18n-BSAPXM56.js → i18n-K7QOWIBH.js} +2 -1
- package/dist/ide-GFW6IJHD.js +12 -0
- package/dist/ide-N2ZNSSB3.cjs +12 -0
- package/dist/import-DFVN3KNZ.js +10 -0
- package/dist/import-QEME3E4T.cjs +170 -0
- package/dist/import-UXM3VK7B.js +170 -0
- package/dist/import-ZS6DPGU5.cjs +10 -0
- package/dist/index.cjs +11233 -11804
- package/dist/index.js +12594 -13165
- package/dist/init-PY75HA3S.cjs +10 -0
- package/dist/init-QNMWLAVY.js +10 -0
- package/dist/language-5UE4G2BT.cjs +18 -0
- package/dist/language-UXMHEZUJ.js +18 -0
- package/dist/learn-HJ3FLNZC.cjs +20 -0
- package/dist/learn-MVYS3RU5.js +20 -0
- package/dist/{lint-44UQJ673.cjs → lint-D5UOJWIK.cjs} +1 -0
- package/dist/{lint-TA2ZHVLM.js → lint-NJPZWVN2.js} +1 -0
- package/dist/{localProjectPermissions-WQYMGI42.js → localProjectPermissions-N77HA3XK.js} +3 -2
- package/dist/localProjectPermissions-UFSMNTBJ.cjs +18 -0
- package/dist/login-DSE7H63A.js +20 -0
- package/dist/login-V3MEWPKN.cjs +20 -0
- package/dist/logout-BMVCLKKW.js +18 -0
- package/dist/logout-XEG7FHOZ.cjs +18 -0
- package/dist/mcp-PYUR4PHO.js +18 -0
- package/dist/mcp-SG6JFLGC.cjs +18 -0
- package/dist/{mcp-install-2KVKRAMQ.cjs → mcp-install-G27HSS3Z.cjs} +26 -14
- package/dist/{mcp-install-77UXRN6R.js → mcp-install-VESN42PI.js} +21 -9
- package/dist/memory-4ZMMEZ2Z.js +10 -0
- package/dist/memory-QSGMVVGH.cjs +10 -0
- package/dist/message-JUBOK2VU.js +9 -0
- package/dist/message-ZJ5AYAMT.cjs +9 -0
- package/dist/model-NANLBZ4Z.cjs +10 -0
- package/dist/model-ZXNV4AF7.js +10 -0
- package/dist/new-5QJY5JP2.js +12 -0
- package/dist/new-PMMG55UX.cjs +12 -0
- package/dist/{patch-BAAQIYSW.js → patch-5F6VBIT3.js} +2 -0
- package/dist/{patch-J32X2QQP.cjs → patch-MOD7QC3D.cjs} +3 -1
- package/dist/permissions-LECTCJ4H.cjs +13 -0
- package/dist/permissions-VP5VGIBL.js +13 -0
- package/dist/{plan-JFGNRL2S.js → plan-G5CEKJI4.js} +1 -0
- package/dist/{plan-B3CW5DXJ.cjs → plan-QKOHE3LH.cjs} +1 -0
- package/dist/quit-BKOOPHU5.cjs +10 -0
- package/dist/quit-FVFNYACP.js +10 -0
- package/dist/registry-KWZGYJC2.js +2108 -0
- package/dist/registry-YN4FQPOO.cjs +2108 -0
- package/dist/resume-EXFQSQPH.js +13 -0
- package/dist/resume-PP2IQM5S.cjs +13 -0
- package/dist/search-C56FBN67.cjs +17 -0
- package/dist/search-XGZDYBF4.js +17 -0
- package/dist/{session-T3TAZ5ZU.cjs → session-BSU2L5UI.cjs} +1 -0
- package/dist/{session-H5QWKE5E.js → session-SZMRN5KG.js} +1 -0
- package/dist/sessions-54KI3F2Q.js +10 -0
- package/dist/sessions-DDTSPNVW.cjs +10 -0
- package/dist/settings-BDO37TTO.cjs +30 -0
- package/dist/settings-FHRDFPLK.js +30 -0
- package/dist/share-IERCTBGN.cjs +14 -0
- package/dist/share-TGROUE6R.js +14 -0
- package/dist/skills-6OL4OSGA.js +76 -0
- package/dist/skills-FYY6F2WV.cjs +76 -0
- package/dist/skills-OM4IGBAA.cjs +26 -0
- package/dist/skills-S3GRN323.js +26 -0
- package/dist/{skills-install-MQINL3EC.js → skills-install-6CSWC24P.js} +97 -26
- package/dist/{skills-install-IKJZN4G2.cjs → skills-install-O3LZ2ETC.cjs} +106 -35
- package/dist/skills-new-ALD2PTHN.js +15 -0
- package/dist/skills-new-PWLKK7GW.cjs +15 -0
- package/dist/slashCommands-L4ZD33LJ.js +75 -0
- package/dist/slashCommands-YY2VUUDF.cjs +75 -0
- package/dist/status-3PC5XWSS.cjs +11 -0
- package/dist/status-KCLVOYPD.js +11 -0
- package/dist/sync-6SDWG5RK.js +18 -0
- package/dist/sync-7JMZVEQD.cjs +40 -0
- package/dist/{sync-EXYX7HXW.js → sync-KWX67OUN.js} +3 -2
- package/dist/sync-WHURZL3U.cjs +18 -0
- package/dist/tasks-5FPBIFLC.js +9 -0
- package/dist/tasks-TXGKGNH6.cjs +9 -0
- package/dist/team-5YXP3JGR.js +9 -0
- package/dist/team-IIWEZKNR.cjs +9 -0
- package/dist/teammate-2KMKJXAM.cjs +139 -0
- package/dist/teammate-L6EZQ3I2.js +139 -0
- package/dist/theme-BE5A4FPN.cjs +18 -0
- package/dist/theme-YMFCQP7J.js +18 -0
- package/dist/ui/questionModal.cjs +7 -25
- package/dist/ui/questionModal.js +6 -24
- package/dist/undo-KZHUUZTD.cjs +10 -0
- package/dist/undo-NEIEHQVX.js +10 -0
- package/dist/update-TVAJMMBC.js +82 -0
- package/dist/update-Z6BIIQDC.cjs +82 -0
- package/package.json +10 -3
- package/dist/CommunitySkillsCache-ILWHWE5P.js +0 -7
- package/dist/CommunitySkillsCache-KHC6RUJW.cjs +0 -7
- package/dist/HookManager-X47HCM5G.cjs +0 -6
- package/dist/HookManager-ZXKHCD7U.js +0 -6
- package/dist/MemoryManager-6ZT7IDO5.cjs +0 -7
- package/dist/MemoryManager-AJGS5AKB.js +0 -7
- package/dist/PermissionManager-HG6W2DGU.cjs +0 -10
- package/dist/SessionManager-BJ2G6VV4.cjs +0 -9
- package/dist/SessionManager-ENPGYK5J.js +0 -9
- package/dist/SkillsRegistry-6ZFOCT25.cjs +0 -8
- package/dist/SkillsRegistry-C2SHOZ5D.js +0 -8
- package/dist/about-3BJTNSLK.js +0 -11
- package/dist/about-EABQNJGV.cjs +0 -11
- package/dist/add-dir-7FD4DMDA.cjs +0 -9
- package/dist/add-dir-LOYJ4YB5.js +0 -9
- package/dist/agents-2Y6ASV7C.js +0 -10
- package/dist/agents-UOSPKLQL.cjs +0 -10
- package/dist/agents-new-23NSGAM5.js +0 -13
- package/dist/agents-new-WI2EL7IJ.cjs +0 -13
- package/dist/automode-LGWTY3UX.js +0 -9
- package/dist/automode-WLBQ7MN7.cjs +0 -9
- package/dist/chunk-5UBW2BGC.js +0 -33
- package/dist/chunk-I6DBWNLN.cjs +0 -169
- package/dist/chunk-IZBCMJHJ.cjs +0 -33
- package/dist/completion-7WGMHKOR.cjs +0 -13
- package/dist/completion-KH33NSGP.js +0 -13
- package/dist/constants-RBQTR32A.cjs +0 -20
- package/dist/export-3QN3IH7A.js +0 -11
- package/dist/export-BI54X3MP.cjs +0 -11
- package/dist/feedback-CI4OIPOS.cjs +0 -14
- package/dist/feedback-GFPL5STE.js +0 -14
- package/dist/formatters-N5IJKYZY.cjs +0 -8
- package/dist/formatters-UG6VZJJ5.js +0 -8
- package/dist/help-CWMUGD3V.cjs +0 -11
- package/dist/history-73VBEMSI.cjs +0 -13
- package/dist/hooks-62UDQBGH.cjs +0 -12
- package/dist/hooks-XORDJD5X.js +0 -12
- package/dist/i18n-X2IU2EZD.cjs +0 -32
- package/dist/ide-RPKZALQV.js +0 -11
- package/dist/ide-YMNXJB6A.cjs +0 -11
- package/dist/init-J5HR4R7U.js +0 -9
- package/dist/init-JCC7RVMC.cjs +0 -9
- package/dist/language-AZISJCEZ.js +0 -16
- package/dist/language-F65RA6FZ.cjs +0 -16
- package/dist/localProjectPermissions-2EATUDZM.cjs +0 -17
- package/dist/login-5HLPMECE.js +0 -18
- package/dist/login-ISWYYBXP.cjs +0 -18
- package/dist/logout-3EKZM5J3.cjs +0 -16
- package/dist/logout-GE7TSZ24.js +0 -16
- package/dist/mcp-EW64QRFA.cjs +0 -15
- package/dist/mcp-VHS7AMF2.js +0 -15
- package/dist/memory-2I473RU3.js +0 -9
- package/dist/memory-JZ6NPSP3.cjs +0 -9
- package/dist/model-GXZLARPT.js +0 -9
- package/dist/model-Y274DBDO.cjs +0 -9
- package/dist/new-BG5VIGZ7.cjs +0 -9
- package/dist/new-YXFDQOA7.js +0 -9
- package/dist/permissions-QILEAGBP.cjs +0 -12
- package/dist/permissions-WVEOVMWO.js +0 -12
- package/dist/quit-NC32OEJG.cjs +0 -9
- package/dist/quit-WRRIGU33.js +0 -9
- package/dist/resume-GJIKIDPR.cjs +0 -12
- package/dist/resume-RMJNCAOK.js +0 -12
- package/dist/search-UIWIXB73.js +0 -14
- package/dist/search-WQNXDA2E.cjs +0 -14
- package/dist/sessions-HPFX2GDD.js +0 -9
- package/dist/sessions-SAQU6MFA.cjs +0 -9
- package/dist/share-2WH5ZVOO.cjs +0 -13
- package/dist/share-PSSWWVV5.js +0 -13
- package/dist/skills-LJZA6PVJ.js +0 -13
- package/dist/skills-YTYGART7.cjs +0 -13
- package/dist/skills-new-3WCU3CWB.js +0 -14
- package/dist/skills-new-O5LFVFZU.cjs +0 -14
- package/dist/slashCommands-7IRDOXOQ.cjs +0 -55
- package/dist/slashCommands-C6CAQA25.js +0 -55
- package/dist/status-4EDV2LSY.cjs +0 -10
- package/dist/status-NU7TJDCE.js +0 -10
- package/dist/sync-3GFSEIAZ.js +0 -16
- package/dist/sync-6M3WRKMH.cjs +0 -39
- package/dist/sync-CQNQDNTJ.cjs +0 -16
- package/dist/theme-EMJGULMI.cjs +0 -16
- package/dist/theme-FGDSXNU3.js +0 -16
- package/dist/undo-CTXQYE7C.cjs +0 -9
- package/dist/undo-HX2ZMECP.js +0 -9
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkXDLH4EDLcjs = require('./chunk-XDLH4EDL.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkNNPAM4HCcjs = require('./chunk-NNPAM4HC.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
var _chunkBWN2CLLMcjs = require('./chunk-BWN2CLLM.cjs');
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
var _chunkSEKD5FH3cjs = require('./chunk-SEKD5FH3.cjs');
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
var _chunk7BTSG4MEcjs = require('./chunk-7BTSG4ME.cjs');
|
|
10
17
|
|
|
11
18
|
// src/commands/mcp.ts
|
|
12
19
|
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
20
|
+
var _path = require('path'); var _path2 = _interopRequireDefault(_path);
|
|
13
21
|
|
|
14
22
|
// src/ui/ink/components/McpServerList.tsx
|
|
15
23
|
var _react = require('react');
|
|
@@ -111,14 +119,14 @@ async function showMcpServerList(options) {
|
|
|
111
119
|
let completed = false;
|
|
112
120
|
let instance;
|
|
113
121
|
const renderList = () => {
|
|
114
|
-
const element = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
122
|
+
const element = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNPAM4HCcjs.I18nProvider, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
115
123
|
McpServerList,
|
|
116
124
|
{
|
|
117
125
|
servers: currentServers,
|
|
118
126
|
onToggle: async (name, status) => {
|
|
119
127
|
currentServers = await options.onToggle(name, status);
|
|
120
128
|
instance.rerender(
|
|
121
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
129
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNNPAM4HCcjs.I18nProvider, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
122
130
|
McpServerList,
|
|
123
131
|
{
|
|
124
132
|
servers: currentServers,
|
|
@@ -155,8 +163,34 @@ async function showMcpServerList(options) {
|
|
|
155
163
|
}
|
|
156
164
|
|
|
157
165
|
// src/commands/mcp.ts
|
|
166
|
+
function normalizeMcpScope(scopeInput) {
|
|
167
|
+
const scope = (_nullishCoalesce(scopeInput, () => ( "user"))).toLowerCase();
|
|
168
|
+
if (scope === "user" || scope === "project") {
|
|
169
|
+
return scope;
|
|
170
|
+
}
|
|
171
|
+
return null;
|
|
172
|
+
}
|
|
173
|
+
async function loadConfigForScope(scopeInput, workspaceRoot) {
|
|
174
|
+
const scope = normalizeMcpScope(scopeInput);
|
|
175
|
+
if (!scope) {
|
|
176
|
+
throw new Error(`Invalid scope "${scopeInput}". Use: user or project.`);
|
|
177
|
+
}
|
|
178
|
+
if (scope === "user") {
|
|
179
|
+
return { config: await _chunkBWN2CLLMcjs.loadConfig.call(void 0, ), scope };
|
|
180
|
+
}
|
|
181
|
+
if (!workspaceRoot) {
|
|
182
|
+
throw new Error("Workspace root is required for project scope.");
|
|
183
|
+
}
|
|
184
|
+
const projectConfigPath = _path2.default.join(workspaceRoot, _chunkSEKD5FH3cjs.PROJECT_DIR_NAME, "config.json");
|
|
185
|
+
return { config: await _chunkBWN2CLLMcjs.loadConfig.call(void 0, projectConfigPath), scope };
|
|
186
|
+
}
|
|
187
|
+
function syncRuntimeConfig(runtimeConfig, updatedConfig) {
|
|
188
|
+
if (!runtimeConfig) return;
|
|
189
|
+
if (runtimeConfig.configPath !== updatedConfig.configPath) return;
|
|
190
|
+
runtimeConfig.mcp = updatedConfig.mcp;
|
|
191
|
+
}
|
|
158
192
|
async function mcp(ctx, args = []) {
|
|
159
|
-
const { mcpManager, config } = ctx;
|
|
193
|
+
const { mcpManager, config, workspaceRoot } = ctx;
|
|
160
194
|
if (!mcpManager) {
|
|
161
195
|
return "MCP manager not available.";
|
|
162
196
|
}
|
|
@@ -170,10 +204,10 @@ async function mcp(ctx, args = []) {
|
|
|
170
204
|
case "tools":
|
|
171
205
|
return handleListTools(mcpManager);
|
|
172
206
|
case "add":
|
|
173
|
-
return handleAdd(mcpManager, config, args.slice(1));
|
|
207
|
+
return handleAdd(mcpManager, config, args.slice(1), workspaceRoot);
|
|
174
208
|
case "remove":
|
|
175
209
|
case "rm":
|
|
176
|
-
return handleRemove(mcpManager, config, args.slice(1));
|
|
210
|
+
return handleRemove(mcpManager, config, args.slice(1), workspaceRoot);
|
|
177
211
|
default:
|
|
178
212
|
return showInteractiveList(mcpManager, config);
|
|
179
213
|
}
|
|
@@ -183,7 +217,8 @@ function buildServerItems(manager, config) {
|
|
|
183
217
|
const items = runtimeServers.map((s) => ({
|
|
184
218
|
name: s.name,
|
|
185
219
|
status: s.status,
|
|
186
|
-
toolCount: s.toolCount
|
|
220
|
+
toolCount: s.toolCount,
|
|
221
|
+
error: s.error
|
|
187
222
|
}));
|
|
188
223
|
const runtimeNames = new Set(runtimeServers.map((s) => s.name));
|
|
189
224
|
const configServers = _nullishCoalesce(_optionalChain([config, 'optionalAccess', _4 => _4.mcp, 'optionalAccess', _5 => _5.servers]), () => ( []));
|
|
@@ -203,13 +238,14 @@ async function showInteractiveList(manager, config) {
|
|
|
203
238
|
if (items.length === 0) {
|
|
204
239
|
const lines = [];
|
|
205
240
|
lines.push("");
|
|
206
|
-
lines.push(_chalk2.default.bold.cyan(
|
|
241
|
+
lines.push(_chalk2.default.bold.cyan(_chunk7BTSG4MEcjs.t.call(void 0, "commands.mcp.title")));
|
|
207
242
|
lines.push(_chalk2.default.gray("\u2500".repeat(50)));
|
|
208
243
|
lines.push("");
|
|
209
|
-
lines.push(
|
|
244
|
+
lines.push(_chunk7BTSG4MEcjs.t.call(void 0, "commands.mcp.noServers"));
|
|
210
245
|
lines.push("");
|
|
211
246
|
lines.push(_chalk2.default.gray("Add a server:"));
|
|
212
|
-
lines.push(_chalk2.default.gray(" /mcp add <name> <command> [args...]"));
|
|
247
|
+
lines.push(_chalk2.default.gray(" /mcp add [--scope user|project] <name> <command> [args...]"));
|
|
248
|
+
lines.push(_chalk2.default.gray(" /mcp add --transport http <name> <url>"));
|
|
213
249
|
lines.push("");
|
|
214
250
|
lines.push(_chalk2.default.gray("Browse community servers:"));
|
|
215
251
|
lines.push(_chalk2.default.gray(" /mcp install"));
|
|
@@ -256,7 +292,7 @@ async function handleConnect(manager, config, args) {
|
|
|
256
292
|
return `Server "${serverName}" not found in config. Use /mcp add to add it first.`;
|
|
257
293
|
}
|
|
258
294
|
try {
|
|
259
|
-
console.log(_chalk2.default.cyan(
|
|
295
|
+
console.log(_chalk2.default.cyan(_chunk7BTSG4MEcjs.t.call(void 0, "commands.mcp.connecting")));
|
|
260
296
|
await manager.connect(serverConfig);
|
|
261
297
|
const tools = manager.getToolsForServer(serverName);
|
|
262
298
|
return `Connected to ${serverName} (${tools.length} tools available)`;
|
|
@@ -305,76 +341,227 @@ function handleListTools(manager) {
|
|
|
305
341
|
lines.push(_chalk2.default.gray(`Total: ${tools.length} tools from ${byServer.size} servers`));
|
|
306
342
|
return lines.join("\n");
|
|
307
343
|
}
|
|
308
|
-
async function handleAdd(manager, config, args) {
|
|
309
|
-
|
|
310
|
-
|
|
344
|
+
async function handleAdd(manager, config, args, workspaceRoot) {
|
|
345
|
+
let transport = "stdio";
|
|
346
|
+
let scopeInput;
|
|
347
|
+
const positional = [];
|
|
348
|
+
for (let i = 0; i < args.length; i++) {
|
|
349
|
+
const token = args[i];
|
|
350
|
+
if (token === "--transport" || token === "-t") {
|
|
351
|
+
const value = args[i + 1];
|
|
352
|
+
if (!value) {
|
|
353
|
+
return "Usage: /mcp add [--transport <stdio|http|sse>] [--scope <user|project>] <name> <command-or-url> [args...]";
|
|
354
|
+
}
|
|
355
|
+
const lowered = value.toLowerCase();
|
|
356
|
+
if (lowered !== "stdio" && lowered !== "http" && lowered !== "sse") {
|
|
357
|
+
return `Invalid transport "${value}". Use: stdio or http.`;
|
|
358
|
+
}
|
|
359
|
+
transport = lowered;
|
|
360
|
+
i++;
|
|
361
|
+
continue;
|
|
362
|
+
}
|
|
363
|
+
if (token === "--scope" || token === "-s") {
|
|
364
|
+
const value = args[i + 1];
|
|
365
|
+
if (!value) {
|
|
366
|
+
return "Usage: /mcp add [--transport <stdio|http|sse>] [--scope <user|project>] <name> <command-or-url> [args...]";
|
|
367
|
+
}
|
|
368
|
+
scopeInput = value;
|
|
369
|
+
i++;
|
|
370
|
+
continue;
|
|
371
|
+
}
|
|
372
|
+
positional.push(token);
|
|
373
|
+
}
|
|
374
|
+
if (positional.length < 2) {
|
|
375
|
+
return "Usage: /mcp add [--transport <stdio|http|sse>] [--scope <user|project>] <name> <command-or-url> [args...]";
|
|
376
|
+
}
|
|
377
|
+
const [name, target, ...serverArgs] = positional;
|
|
378
|
+
if (transport === "sse") {
|
|
379
|
+
return "SSE transport is not implemented yet. Use --transport http or stdio.";
|
|
380
|
+
}
|
|
381
|
+
if (transport === "http" && serverArgs.length > 0) {
|
|
382
|
+
return `Transport "${transport}" does not accept extra args. Usage: /mcp add --transport ${transport} <name> <url>`;
|
|
383
|
+
}
|
|
384
|
+
let targetConfig = config;
|
|
385
|
+
let scopeLabel;
|
|
386
|
+
if (scopeInput) {
|
|
387
|
+
try {
|
|
388
|
+
const scoped = await loadConfigForScope(scopeInput, workspaceRoot);
|
|
389
|
+
targetConfig = scoped.config;
|
|
390
|
+
scopeLabel = scoped.scope;
|
|
391
|
+
} catch (error) {
|
|
392
|
+
return error instanceof Error ? error.message : String(error);
|
|
393
|
+
}
|
|
311
394
|
}
|
|
312
|
-
if (!
|
|
395
|
+
if (!targetConfig) {
|
|
313
396
|
return "Config not available.";
|
|
314
397
|
}
|
|
315
|
-
const
|
|
316
|
-
|
|
317
|
-
|
|
398
|
+
const normalized = _chunkXDLH4EDLcjs.normalizeMcpCommandForConfig.call(void 0,
|
|
399
|
+
target,
|
|
400
|
+
serverArgs.length > 0 ? serverArgs : void 0
|
|
401
|
+
);
|
|
402
|
+
const normalizedCommand = _nullishCoalesce(normalized.command, () => ( target));
|
|
403
|
+
const normalizedArgs = normalized.args;
|
|
404
|
+
if (!targetConfig.mcp) {
|
|
405
|
+
targetConfig.mcp = {};
|
|
318
406
|
}
|
|
319
|
-
if (!
|
|
320
|
-
|
|
407
|
+
if (!targetConfig.mcp.servers) {
|
|
408
|
+
targetConfig.mcp.servers = [];
|
|
321
409
|
}
|
|
322
|
-
|
|
323
|
-
|
|
410
|
+
const wasMcpDisabled = targetConfig.mcp.enabled === false;
|
|
411
|
+
if (wasMcpDisabled) {
|
|
412
|
+
targetConfig.mcp.enabled = true;
|
|
324
413
|
}
|
|
325
|
-
const newServer = {
|
|
414
|
+
const newServer = transport === "stdio" ? {
|
|
326
415
|
name,
|
|
327
416
|
transport: "stdio",
|
|
328
|
-
command,
|
|
329
|
-
args:
|
|
417
|
+
command: normalizedCommand,
|
|
418
|
+
args: normalizedArgs,
|
|
419
|
+
autoConnect: true
|
|
420
|
+
} : {
|
|
421
|
+
name,
|
|
422
|
+
transport: "http",
|
|
423
|
+
url: target,
|
|
330
424
|
autoConnect: true
|
|
331
425
|
};
|
|
332
|
-
|
|
426
|
+
const displayTarget = transport === "stdio" ? `${normalizedCommand} ${(_nullishCoalesce(normalizedArgs, () => ( []))).join(" ")}`.trim() : target;
|
|
427
|
+
const existing = targetConfig.mcp.servers.find((s) => s.name === name);
|
|
428
|
+
const scopeSuffix = scopeLabel ? ` in ${scopeLabel} config` : "";
|
|
429
|
+
if (existing) {
|
|
430
|
+
const sameConfig = transport === "stdio" ? existing.transport === "stdio" && existing.command === normalizedCommand && JSON.stringify(existing.args) === JSON.stringify(normalizedArgs) : existing.transport === transport && existing.url === target;
|
|
431
|
+
if (sameConfig) {
|
|
432
|
+
const wasAutoConnectDisabled = existing.autoConnect === false;
|
|
433
|
+
if (!wasAutoConnectDisabled && !wasMcpDisabled) {
|
|
434
|
+
return `Server "${name}" is already configured with the same settings${scopeSuffix}.`;
|
|
435
|
+
}
|
|
436
|
+
existing.autoConnect = true;
|
|
437
|
+
const reenabledParts = [];
|
|
438
|
+
if (wasMcpDisabled) reenabledParts.push("MCP support");
|
|
439
|
+
if (wasAutoConnectDisabled) reenabledParts.push("auto-connect");
|
|
440
|
+
const reenabled = reenabledParts.join(" and ");
|
|
441
|
+
try {
|
|
442
|
+
await _chunkBWN2CLLMcjs.saveConfig.call(void 0, targetConfig);
|
|
443
|
+
syncRuntimeConfig(config, targetConfig);
|
|
444
|
+
try {
|
|
445
|
+
await manager.connect(existing);
|
|
446
|
+
const tools = manager.getToolsForServer(name);
|
|
447
|
+
return `Server "${name}" is already configured${scopeSuffix}. Re-enabled ${reenabled} and connected (${tools.length} tools available).`;
|
|
448
|
+
} catch (connectError) {
|
|
449
|
+
return `Server "${name}" is already configured${scopeSuffix}. Re-enabled ${reenabled} but failed to connect: ${connectError instanceof Error ? connectError.message : "Unknown error"}`;
|
|
450
|
+
}
|
|
451
|
+
} catch (error) {
|
|
452
|
+
return `Failed to save config: ${error instanceof Error ? error.message : "Unknown error"}`;
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
existing.transport = newServer.transport;
|
|
456
|
+
if (newServer.transport === "stdio") {
|
|
457
|
+
existing.command = newServer.command;
|
|
458
|
+
existing.args = newServer.args;
|
|
459
|
+
existing.url = void 0;
|
|
460
|
+
} else {
|
|
461
|
+
existing.url = newServer.url;
|
|
462
|
+
existing.command = void 0;
|
|
463
|
+
existing.args = void 0;
|
|
464
|
+
}
|
|
465
|
+
existing.autoConnect = true;
|
|
466
|
+
try {
|
|
467
|
+
await _chunkBWN2CLLMcjs.saveConfig.call(void 0, targetConfig);
|
|
468
|
+
syncRuntimeConfig(config, targetConfig);
|
|
469
|
+
try {
|
|
470
|
+
await manager.disconnect(name);
|
|
471
|
+
} catch (e3) {
|
|
472
|
+
}
|
|
473
|
+
try {
|
|
474
|
+
await manager.connect(existing);
|
|
475
|
+
const tools = manager.getToolsForServer(name);
|
|
476
|
+
return `Updated and reconnected "${name}"${scopeSuffix} (${transport}: ${displayTarget}, ${tools.length} tools available)`;
|
|
477
|
+
} catch (connectError) {
|
|
478
|
+
return `Updated "${name}" config${scopeSuffix} but failed to reconnect: ${connectError instanceof Error ? connectError.message : "Unknown error"}`;
|
|
479
|
+
}
|
|
480
|
+
} catch (error) {
|
|
481
|
+
return `Failed to save config: ${error instanceof Error ? error.message : "Unknown error"}`;
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
targetConfig.mcp.servers.push(newServer);
|
|
333
485
|
try {
|
|
334
|
-
await
|
|
486
|
+
await _chunkBWN2CLLMcjs.saveConfig.call(void 0, targetConfig);
|
|
487
|
+
syncRuntimeConfig(config, targetConfig);
|
|
335
488
|
try {
|
|
336
489
|
await manager.connect(newServer);
|
|
337
490
|
const tools = manager.getToolsForServer(name);
|
|
338
|
-
return `Added and connected to "${name}" (${tools.length} tools available)`;
|
|
491
|
+
return `Added and connected to "${name}"${scopeSuffix} (${transport}: ${displayTarget}, ${tools.length} tools available)`;
|
|
339
492
|
} catch (connectError) {
|
|
340
|
-
return `Added "${name}" to config but failed to connect: ${connectError instanceof Error ? connectError.message : "Unknown error"}`;
|
|
493
|
+
return `Added "${name}" to config${scopeSuffix} but failed to connect: ${connectError instanceof Error ? connectError.message : "Unknown error"}`;
|
|
341
494
|
}
|
|
342
495
|
} catch (error) {
|
|
343
496
|
return `Failed to save config: ${error instanceof Error ? error.message : "Unknown error"}`;
|
|
344
497
|
}
|
|
345
498
|
}
|
|
346
|
-
async function handleRemove(manager, config, args) {
|
|
347
|
-
|
|
499
|
+
async function handleRemove(manager, config, args, workspaceRoot) {
|
|
500
|
+
let scopeInput;
|
|
501
|
+
const positional = [];
|
|
502
|
+
for (let i = 0; i < args.length; i++) {
|
|
503
|
+
const token = args[i];
|
|
504
|
+
if (token === "--scope" || token === "-s") {
|
|
505
|
+
const value = args[i + 1];
|
|
506
|
+
if (!value) {
|
|
507
|
+
return "Usage: /mcp remove [--scope <user|project>] <server-name>";
|
|
508
|
+
}
|
|
509
|
+
scopeInput = value;
|
|
510
|
+
i++;
|
|
511
|
+
continue;
|
|
512
|
+
}
|
|
513
|
+
positional.push(token);
|
|
514
|
+
}
|
|
515
|
+
const serverName = positional[0];
|
|
348
516
|
if (!serverName) {
|
|
349
|
-
return "Usage: /mcp remove <server-name>";
|
|
517
|
+
return "Usage: /mcp remove [--scope <user|project>] <server-name>";
|
|
350
518
|
}
|
|
351
|
-
|
|
519
|
+
let targetConfig = config;
|
|
520
|
+
let scopeLabel;
|
|
521
|
+
if (scopeInput) {
|
|
522
|
+
try {
|
|
523
|
+
const scoped = await loadConfigForScope(scopeInput, workspaceRoot);
|
|
524
|
+
targetConfig = scoped.config;
|
|
525
|
+
scopeLabel = scoped.scope;
|
|
526
|
+
} catch (error) {
|
|
527
|
+
return error instanceof Error ? error.message : String(error);
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
if (!targetConfig) {
|
|
352
531
|
return "Config not available.";
|
|
353
532
|
}
|
|
354
|
-
const serverIndex = _optionalChain([
|
|
533
|
+
const serverIndex = _optionalChain([targetConfig, 'access', _14 => _14.mcp, 'optionalAccess', _15 => _15.servers, 'optionalAccess', _16 => _16.findIndex, 'call', _17 => _17((s) => s.name === serverName)]);
|
|
355
534
|
if (serverIndex === void 0 || serverIndex < 0) {
|
|
356
|
-
return `Server "${serverName}" not found in config.`;
|
|
535
|
+
return `Server "${serverName}" not found in ${scopeLabel ? `${scopeLabel} config` : "config"}.`;
|
|
357
536
|
}
|
|
358
537
|
try {
|
|
359
538
|
await manager.disconnect(serverName);
|
|
360
|
-
} catch (
|
|
539
|
+
} catch (e4) {
|
|
361
540
|
}
|
|
362
|
-
|
|
541
|
+
targetConfig.mcp.servers.splice(serverIndex, 1);
|
|
363
542
|
try {
|
|
364
|
-
await
|
|
365
|
-
|
|
543
|
+
await _chunkBWN2CLLMcjs.saveConfig.call(void 0, targetConfig);
|
|
544
|
+
syncRuntimeConfig(config, targetConfig);
|
|
545
|
+
return `Removed "${serverName}" from ${scopeLabel ? `${scopeLabel} config` : "config"}`;
|
|
366
546
|
} catch (error) {
|
|
367
547
|
return `Failed to save config: ${error instanceof Error ? error.message : "Unknown error"}`;
|
|
368
548
|
}
|
|
369
549
|
}
|
|
370
550
|
var metadata = {
|
|
371
551
|
command: "/mcp",
|
|
372
|
-
description:
|
|
373
|
-
implemented: true
|
|
552
|
+
description: _chunk7BTSG4MEcjs.t.call(void 0, "commands.mcp.description"),
|
|
553
|
+
implemented: true,
|
|
554
|
+
subcommands: [
|
|
555
|
+
{ name: "connect", description: "Connect to a configured MCP server" },
|
|
556
|
+
{ name: "disconnect", description: "Disconnect from a server" },
|
|
557
|
+
{ name: "list", description: "List available tools from servers" },
|
|
558
|
+
{ name: "add", description: "Add a server to config" },
|
|
559
|
+
{ name: "remove", description: "Remove a server from config" }
|
|
560
|
+
]
|
|
374
561
|
};
|
|
375
562
|
var installMetadata = {
|
|
376
563
|
command: "/mcp install",
|
|
377
|
-
description:
|
|
564
|
+
description: _chunk7BTSG4MEcjs.t.call(void 0, "commands.mcp.installDescription"),
|
|
378
565
|
implemented: true
|
|
379
566
|
};
|
|
380
567
|
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkBWN2CLLMcjs = require('./chunk-BWN2CLLM.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunk7BTSG4MEcjs = require('./chunk-7BTSG4ME.cjs');
|
|
8
8
|
|
|
9
9
|
// src/commands/sync.ts
|
|
10
10
|
var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
|
|
11
11
|
var _readline = require('readline'); var _readline2 = _interopRequireDefault(_readline);
|
|
12
12
|
var metadata = {
|
|
13
13
|
command: "/sync",
|
|
14
|
-
description:
|
|
14
|
+
description: _chunk7BTSG4MEcjs.t.call(void 0, "commands.sync.description"),
|
|
15
15
|
implemented: true
|
|
16
16
|
};
|
|
17
17
|
var globalSyncService = null;
|
|
@@ -22,7 +22,7 @@ function getSyncService() {
|
|
|
22
22
|
return globalSyncService;
|
|
23
23
|
}
|
|
24
24
|
async function sync(ctx) {
|
|
25
|
-
const config = await
|
|
25
|
+
const config = await _chunkBWN2CLLMcjs.loadConfig.call(void 0, );
|
|
26
26
|
const isLoggedIn = Boolean(_optionalChain([config, 'access', _ => _.auth, 'optionalAccess', _2 => _2.token]) && _optionalChain([config, 'access', _3 => _3.auth, 'optionalAccess', _4 => _4.user]));
|
|
27
27
|
if (!isLoggedIn) {
|
|
28
28
|
console.log(_chalk2.default.yellow("\nSettings sync requires authentication."));
|
|
@@ -119,7 +119,7 @@ function renderSyncUI(data, ctx) {
|
|
|
119
119
|
} else {
|
|
120
120
|
console.log(_chalk2.default.red(`Sync failed: ${result.error}`));
|
|
121
121
|
}
|
|
122
|
-
const config = await
|
|
122
|
+
const config = await _chunkBWN2CLLMcjs.loadConfig.call(void 0, );
|
|
123
123
|
Object.assign(data, await gatherSyncData(ctx, config));
|
|
124
124
|
} catch (err) {
|
|
125
125
|
console.log(_chalk2.default.red(`Sync error: ${err}`));
|
|
@@ -131,13 +131,13 @@ function renderSyncUI(data, ctx) {
|
|
|
131
131
|
}
|
|
132
132
|
if (char === "e") {
|
|
133
133
|
try {
|
|
134
|
-
const config = await
|
|
134
|
+
const config = await _chunkBWN2CLLMcjs.loadConfig.call(void 0, );
|
|
135
135
|
const newEnabled = _optionalChain([config, 'access', _16 => _16.sync, 'optionalAccess', _17 => _17.enabled]) === false;
|
|
136
136
|
config.sync = { ...config.sync, enabled: newEnabled };
|
|
137
|
-
await
|
|
137
|
+
await _chunkBWN2CLLMcjs.saveConfig.call(void 0, config);
|
|
138
138
|
data.enabled = newEnabled;
|
|
139
139
|
console.log(_chalk2.default.cyan(`
|
|
140
|
-
${newEnabled ?
|
|
140
|
+
${newEnabled ? _chunk7BTSG4MEcjs.t.call(void 0, "commands.sync.enabled") : _chunk7BTSG4MEcjs.t.call(void 0, "commands.sync.disabled")}`));
|
|
141
141
|
await sleep(1e3);
|
|
142
142
|
render();
|
|
143
143
|
} catch (err) {
|