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.
Files changed (414) hide show
  1. package/README.md +97 -2
  2. package/assets/icon.png +0 -0
  3. package/dist/AgentRegistry-7LDL5HJH.js +10 -0
  4. package/dist/AgentRegistry-NQCLWABO.cjs +10 -0
  5. package/dist/{AutomodeManager-NGRAO2MH.js → AutomodeManager-MWLKGPZK.js} +2 -0
  6. package/dist/{AutomodeManager-ZKQMBM4T.cjs → AutomodeManager-NYIZNODK.cjs} +3 -1
  7. package/dist/CommunitySkillsCache-6QPRMTJO.js +8 -0
  8. package/dist/CommunitySkillsCache-GTQMOCCO.cjs +8 -0
  9. package/dist/{GitHubRegistryFetcher-US2JJID4.js → GitHubRegistryFetcher-6JQ5JEDZ.js} +1 -0
  10. package/dist/{GitHubRegistryFetcher-K744NNAJ.cjs → GitHubRegistryFetcher-S7QFUEKV.cjs} +1 -0
  11. package/dist/HookManager-Q2KYMCP4.cjs +7 -0
  12. package/dist/HookManager-TTP4Y6DC.js +7 -0
  13. package/dist/ImportWizard-35YBJ4AM.cjs +466 -0
  14. package/dist/ImportWizard-XH7CINCH.js +466 -0
  15. package/dist/LearnAdvisor-A4Q5PPBI.js +9 -0
  16. package/dist/LearnAdvisor-GASQD7HT.cjs +9 -0
  17. package/dist/McpClientManager-7RM6YT35.js +8 -0
  18. package/dist/McpClientManager-RKD7C6OY.cjs +8 -0
  19. package/dist/MemoryManager-GUNLRP5S.js +8 -0
  20. package/dist/MemoryManager-TNSGKDKX.cjs +8 -0
  21. package/dist/{PermissionManager-U5OMGR3L.js → PermissionManager-ATUV34LQ.js} +4 -3
  22. package/dist/PermissionManager-KMN53FJP.cjs +11 -0
  23. package/dist/ProjectProfiler-UMJJSOCE.js +194 -0
  24. package/dist/ProjectProfiler-ZDWR2ODG.cjs +194 -0
  25. package/dist/ProviderFactory-MR5B23QJ.js +9 -0
  26. package/dist/ProviderFactory-VFGCJJX6.cjs +9 -0
  27. package/dist/SessionManager-FEUAU3ZJ.cjs +10 -0
  28. package/dist/SessionManager-IKWAK2PI.js +10 -0
  29. package/dist/SkillsRegistry-KPQFTRIT.cjs +9 -0
  30. package/dist/SkillsRegistry-XJSKPDF2.js +9 -0
  31. package/dist/SubAgent-NYH6GWQ3.js +11 -0
  32. package/dist/SubAgent-PZKBDUBA.cjs +11 -0
  33. package/dist/{SyncApiClient-AYXYSOJM.js → SyncApiClient-LVIO4C2S.js} +1 -0
  34. package/dist/{SyncApiClient-ID3KXEMA.cjs → SyncApiClient-ZNYMT36M.cjs} +1 -0
  35. package/dist/about-HHTF2YFL.js +12 -0
  36. package/dist/about-JGRVNNQC.cjs +12 -0
  37. package/dist/actionExecutor-U6IBN2TU.cjs +19 -0
  38. package/dist/actionExecutor-XT5FW3W6.js +19 -0
  39. package/dist/add-dir-247K3XRY.js +10 -0
  40. package/dist/add-dir-GS4DXKKH.cjs +10 -0
  41. package/dist/agents/builtin/code-cleaner.md +14 -0
  42. package/dist/agents/builtin/docs-writer.md +14 -0
  43. package/dist/agents/builtin/researcher.md +14 -0
  44. package/dist/agents/builtin/reviewer.md +15 -0
  45. package/dist/agents/builtin/tester.md +15 -0
  46. package/dist/agents/builtin/todo-resolver.md +15 -0
  47. package/dist/agents-R6ZEFTVR.cjs +12 -0
  48. package/dist/agents-WJPQWQF2.js +12 -0
  49. package/dist/agents-new-HKVEIBDJ.js +14 -0
  50. package/dist/agents-new-X6GTHIO6.cjs +14 -0
  51. package/dist/assets/icon.png +0 -0
  52. package/dist/autoSkill-6TGBTEQD.js +20 -0
  53. package/dist/autoSkill-H4T6VVDA.cjs +20 -0
  54. package/dist/automode-BC6NVECO.js +10 -0
  55. package/dist/automode-WN2RSOGW.cjs +10 -0
  56. package/dist/{cc-UTTLESTY.js → cc-7LEIJ3KF.js} +1 -0
  57. package/dist/{cc-2W6M7J45.cjs → cc-Q5MM4AWC.cjs} +1 -0
  58. package/dist/{chunk-N4ZSG6JJ.cjs → chunk-22D2CNTP.cjs} +2 -2
  59. package/dist/chunk-245KJE5Y.cjs +55 -0
  60. package/dist/chunk-24QIWILL.js +51 -0
  61. package/dist/{chunk-MYNHJHDZ.js → chunk-2AA5MFES.js} +1 -1
  62. package/dist/{chunk-TSY7JHIV.cjs → chunk-33A755XB.cjs} +2 -2
  63. package/dist/chunk-33RSHBDH.js +131 -0
  64. package/dist/{chunk-QRGPAUST.js → chunk-34M3HWLR.js} +2 -2
  65. package/dist/{chunk-U7CZFKPL.cjs → chunk-3K2ESU53.cjs} +2 -2
  66. package/dist/{chunk-SIGWDEPS.cjs → chunk-3L53OA4E.cjs} +10 -10
  67. package/dist/chunk-3OEDGIFW.js +42 -0
  68. package/dist/chunk-3OTU3RS3.cjs +1607 -0
  69. package/dist/{chunk-MNSTWHK3.cjs → chunk-3PCTTUNW.cjs} +11 -11
  70. package/dist/{chunk-P5VDZ6PV.js → chunk-3PDTTAKJ.js} +1 -1
  71. package/dist/chunk-47CKWKEX.cjs +59 -0
  72. package/dist/{chunk-Z4J4W6YQ.cjs → chunk-4JNNTOGF.cjs} +2 -48
  73. package/dist/{chunk-GVZPIQWB.js → chunk-4PKF7WPD.js} +11 -5
  74. package/dist/{chunk-3S4DEIJP.cjs → chunk-5IXII4HX.cjs} +2 -2
  75. package/dist/{chunk-CRQKDBLD.js → chunk-5P2NXKP3.js} +98 -64
  76. package/dist/{chunk-DSKVMFRM.cjs → chunk-643VRA5S.cjs} +12 -4
  77. package/dist/{chunk-VVBBEYTH.cjs → chunk-6HYLHBQG.cjs} +10 -10
  78. package/dist/{chunk-L5ZFPWHY.js → chunk-6OYHF6MF.js} +12 -4
  79. package/dist/{chunk-BPTBKO7D.js → chunk-6RF7UKUS.js} +224 -37
  80. package/dist/{chunk-YHGTBPEC.js → chunk-6ZCULLCA.js} +1 -1
  81. package/dist/{chunk-VHBUKGRG.js → chunk-72FKPBT5.js} +4 -4
  82. package/dist/{chunk-2U5HFVRO.cjs → chunk-7BTSG4ME.cjs} +5165 -2194
  83. package/dist/chunk-7UOUW76C.js +603 -0
  84. package/dist/{chunk-FEVHH525.cjs → chunk-A4IJHHV7.cjs} +11 -5
  85. package/dist/{chunk-B6EBHCK2.cjs → chunk-AEJH23FO.cjs} +6 -6
  86. package/dist/{chunk-WLTVF77A.js → chunk-ALYU6VTM.js} +1 -1
  87. package/dist/{chunk-NMWEDN4Z.js → chunk-APIXPPMT.js} +5165 -2194
  88. package/dist/chunk-AS6RTLN7.cjs +203 -0
  89. package/dist/{chunk-BHV7CBNT.js → chunk-AYS2ASM7.js} +1 -1
  90. package/dist/{chunk-GRSVQ5YZ.js → chunk-AYSFIUFW.js} +44 -12
  91. package/dist/{chunk-NUHYCFHW.cjs → chunk-BVKXEQVG.cjs} +54 -65
  92. package/dist/chunk-BWN2CLLM.cjs +298 -0
  93. package/dist/{chunk-4HA7IHLJ.cjs → chunk-C5IJIM2V.cjs} +38 -16
  94. package/dist/{chunk-SRLY7K6J.js → chunk-CAMZTXV6.js} +2 -2
  95. package/dist/chunk-CDBPBM2K.cjs +29 -0
  96. package/dist/chunk-CNBKZEX5.cjs +109 -0
  97. package/dist/{chunk-WQUQ5JMM.js → chunk-CWMZKFTT.js} +4 -4
  98. package/dist/{chunk-CKN2BLHK.cjs → chunk-CZXGCVTR.cjs} +2 -2
  99. package/dist/{chunk-SZP4ULM5.cjs → chunk-DJDE4DTT.cjs} +17 -17
  100. package/dist/chunk-DN573ME7.cjs +1675 -0
  101. package/dist/chunk-DRE2RXBZ.js +4498 -0
  102. package/dist/chunk-DSPQEHDT.js +29 -0
  103. package/dist/{chunk-SFNT5DYE.cjs → chunk-DVUHHH3B.cjs} +4 -4
  104. package/dist/chunk-DVZOENQ7.cjs +58 -0
  105. package/dist/{chunk-PWLLLJHU.js → chunk-EGFT4PGW.js} +3 -1
  106. package/dist/chunk-EGMZDTSL.js +55 -0
  107. package/dist/chunk-EZMINVLU.js +123 -0
  108. package/dist/chunk-FHK7UDOJ.cjs +42 -0
  109. package/dist/{chunk-KWRUQRXR.js → chunk-FKSDEWDH.js} +44 -10
  110. package/dist/chunk-FMB3TSWP.cjs +218 -0
  111. package/dist/chunk-FW774QXH.js +1838 -0
  112. package/dist/{chunk-MY3TZER2.js → chunk-G27PQQFD.js} +1 -1
  113. package/dist/{chunk-Y2ZSH3YF.cjs → chunk-G3V4SFET.cjs} +57 -23
  114. package/dist/chunk-G4CAKI3V.js +58 -0
  115. package/dist/{chunk-FB6JWNJS.js → chunk-GBHDROGL.js} +54 -65
  116. package/dist/{chunk-DEAEO7RI.js → chunk-GJH7XMSK.js} +15 -1
  117. package/dist/chunk-GLBAF54O.js +218 -0
  118. package/dist/{chunk-S47TCZDL.js → chunk-H5SWOLG6.js} +7 -7
  119. package/dist/chunk-HBXAA3XB.js +83 -0
  120. package/dist/{chunk-63BXZQZW.js → chunk-HIVRCQS2.js} +26 -4
  121. package/dist/{chunk-WOGJXDBU.cjs → chunk-HLHTG5ZU.cjs} +18 -4
  122. package/dist/{chunk-FK2DVRPJ.js → chunk-HLQV64Y5.js} +170 -4
  123. package/dist/chunk-HOAHWIQ5.cjs +260 -0
  124. package/dist/{chunk-D2XFTCRP.js → chunk-HQ7YZKXE.js} +1 -1
  125. package/dist/{chunk-L42HTMMR.cjs → chunk-HTLINWX6.cjs} +2 -2
  126. package/dist/{chunk-PKOAXQKW.cjs → chunk-HVKOZ2VP.cjs} +11 -11
  127. package/dist/chunk-HXGBSJL5.cjs +27 -0
  128. package/dist/chunk-I5IW3T2Y.js +310 -0
  129. package/dist/chunk-IETRBBMP.cjs +603 -0
  130. package/dist/{chunk-MTALRU7R.cjs → chunk-IFFXSTOM.cjs} +3 -3
  131. package/dist/{chunk-V7YTCNMN.cjs → chunk-IKGWDOGU.cjs} +174 -8
  132. package/dist/chunk-IQ5RXU6O.js +1675 -0
  133. package/dist/{chunk-ZBIBLOZL.js → chunk-IVM5F2AE.js} +500 -317
  134. package/dist/chunk-J4Q7XR3G.js +260 -0
  135. package/dist/{chunk-XL77XYI2.cjs → chunk-J6QET7EF.cjs} +27 -7
  136. package/dist/{chunk-TQB222ZB.js → chunk-JCLYQ2JC.js} +2 -2
  137. package/dist/chunk-JSBRDJBE.js +30 -0
  138. package/dist/{chunk-XPOHYKR3.js → chunk-JX3DFKBI.js} +2 -2
  139. package/dist/chunk-JYTDYJVW.js +27 -0
  140. package/dist/{chunk-6SHHB2VD.js → chunk-KPELYZ6L.js} +2 -2
  141. package/dist/{chunk-ZLOTP56B.cjs → chunk-KWXVKLQ5.cjs} +5 -5
  142. package/dist/chunk-L3WAH3EM.cjs +131 -0
  143. package/dist/{chunk-ZXIQCYYV.cjs → chunk-LA7H35XM.cjs} +9 -9
  144. package/dist/chunk-LENHP55G.cjs +1838 -0
  145. package/dist/chunk-LJFUXC56.cjs +123 -0
  146. package/dist/{chunk-R5OO7MEB.cjs → chunk-LNMYK2F5.cjs} +22 -22
  147. package/dist/chunk-LQGVEP3E.js +109 -0
  148. package/dist/{chunk-KXAAEROY.js → chunk-LWUJFGOZ.js} +2 -2
  149. package/dist/chunk-MAKMSQMQ.cjs +504 -0
  150. package/dist/{chunk-BG4OQUKP.js → chunk-MBBY4ZIK.js} +1 -1
  151. package/dist/chunk-MSED7RH2.cjs +267 -0
  152. package/dist/{chunk-NMGF2KUN.js → chunk-MYISNQH4.js} +1 -1
  153. package/dist/chunk-N23UAW4I.js +59 -0
  154. package/dist/chunk-N254NRHT.cjs +30 -0
  155. package/dist/{chunk-TOTDRAWG.js → chunk-NDMIPTV4.js} +1 -1
  156. package/dist/{chunk-AIH6GUGB.cjs → chunk-NNPAM4HC.cjs} +5 -5
  157. package/dist/{chunk-HSPWX4Z2.cjs → chunk-O4IF4NJT.cjs} +231 -44
  158. package/dist/{chunk-DZHR34H6.cjs → chunk-OGV4WJ5L.cjs} +8 -8
  159. package/dist/chunk-OHUZKDGX.js +348 -0
  160. package/dist/{chunk-BRXIEKJ3.cjs → chunk-OLSBBZW6.cjs} +5 -5
  161. package/dist/{chunk-MILZEEUV.js → chunk-OOKY3HPZ.js} +9 -3
  162. package/dist/chunk-P47WPOXN.js +298 -0
  163. package/dist/{chunk-ULMPJUJW.cjs → chunk-PRRCJFU3.cjs} +23 -23
  164. package/dist/{chunk-SMHY3Q7B.cjs → chunk-Q7XSCYND.cjs} +54 -22
  165. package/dist/chunk-QCLYBIMM.cjs +51 -0
  166. package/dist/chunk-QMAKTSZB.cjs +48 -0
  167. package/dist/{chunk-DTFR3WD6.js → chunk-QNGEW5TC.js} +1 -1
  168. package/dist/chunk-QOXPOR5D.js +267 -0
  169. package/dist/chunk-R33VKSH5.cjs +348 -0
  170. package/dist/{chunk-RJP3SZ7Q.cjs → chunk-RD5XAJR2.cjs} +492 -309
  171. package/dist/chunk-RGR6ME5J.cjs +844 -0
  172. package/dist/{chunk-EOGKE5GD.cjs → chunk-RKJTGGMU.cjs} +221 -126
  173. package/dist/{chunk-GD4AFYJ3.js → chunk-RO6WYEWH.js} +24 -4
  174. package/dist/chunk-S52YW5ZQ.js +844 -0
  175. package/dist/{chunk-6DWXHBAY.js → chunk-SAHBLB3E.js} +222 -127
  176. package/dist/{chunk-JHOQABEF.js → chunk-SCXX4LW5.js} +5 -5
  177. package/dist/{chunk-GIZL57FE.cjs → chunk-SEKD5FH3.cjs} +3 -1
  178. package/dist/{chunk-JWPI6O5Z.js → chunk-SKV2F3NM.js} +31 -4
  179. package/dist/{chunk-FHUNAB2K.cjs → chunk-SKYG33B2.cjs} +33 -6
  180. package/dist/{chunk-BISFR6ZL.js → chunk-SLQAYV3W.js} +1 -1
  181. package/dist/{chunk-RFNCTE4V.cjs → chunk-SYVYLZZF.cjs} +2 -2
  182. package/dist/{chunk-3XJD56Z4.js → chunk-T73IDKDF.js} +10 -3
  183. package/dist/chunk-TBEGGJNC.cjs +310 -0
  184. package/dist/{chunk-RRZS5A53.js → chunk-TNZRZQ7Q.js} +1 -1
  185. package/dist/{chunk-CH4SPVFD.cjs → chunk-TXSDBGKX.cjs} +10 -3
  186. package/dist/chunk-U3WDY42C.cjs +42 -0
  187. package/dist/{chunk-425MT6Y5.cjs → chunk-U46VYPLR.cjs} +9 -9
  188. package/dist/{chunk-OLG7LZBD.js → chunk-VG34MG2U.js} +1 -1
  189. package/dist/{chunk-XDVG3NM4.js → chunk-W3X6PAC7.js} +2 -48
  190. package/dist/{chunk-LYMTYC67.js → chunk-WHE2SWHU.js} +2 -2
  191. package/dist/chunk-WM5PAOTQ.cjs +4498 -0
  192. package/dist/chunk-WNUVPKBW.js +42 -0
  193. package/dist/{chunk-EV53SLSB.cjs → chunk-WPVWQSL7.cjs} +4 -4
  194. package/dist/chunk-WQ3VJXZB.js +118 -0
  195. package/dist/{chunk-HMRDNRTH.js → chunk-X2MSVKDV.js} +2 -2
  196. package/dist/chunk-X3WS5LDG.js +504 -0
  197. package/dist/{chunk-43XS26AQ.cjs → chunk-X5VSP65C.cjs} +4 -4
  198. package/dist/{chunk-DSCQPWUB.cjs → chunk-X5YJ34FZ.cjs} +15 -15
  199. package/dist/chunk-XAV24VYN.js +48 -0
  200. package/dist/chunk-XDLH4EDL.cjs +118 -0
  201. package/dist/{chunk-X765A7J5.js → chunk-XRZEUWKF.js} +1 -1
  202. package/dist/{chunk-ZKZRFH37.cjs → chunk-XTB6VJVQ.cjs} +6 -6
  203. package/dist/{chunk-H3GBSPK5.js → chunk-XX2ZO7DS.js} +14 -6
  204. package/dist/{chunk-RUZB43HU.cjs → chunk-Y72HH2TF.cjs} +22 -14
  205. package/dist/chunk-YFXTE422.cjs +92 -0
  206. package/dist/{chunk-OSUWEUZE.js → chunk-YGN4CQIP.js} +1 -1
  207. package/dist/{chunk-KC5FPUOF.cjs → chunk-YRLYSQEQ.cjs} +2 -2
  208. package/dist/{chunk-3KBBARKO.js → chunk-YZXUDM5X.js} +85 -28
  209. package/dist/chunk-Z36XBUMX.cjs +83 -0
  210. package/dist/chunk-ZK6HOR62.js +92 -0
  211. package/dist/{chunk-PDKNHU5G.cjs → chunk-ZQE72E6W.cjs} +22 -16
  212. package/dist/chunk-ZVY2XD6T.js +1607 -0
  213. package/dist/{chunk-XBUMKEFN.cjs → chunk-ZYQMLKOK.cjs} +91 -34
  214. package/dist/clear-UO4MNWZW.cjs +12 -0
  215. package/dist/clear-ZJ5NYP6E.js +12 -0
  216. package/dist/communityInstaller-6KCFN7YZ.js +19 -0
  217. package/dist/communityInstaller-PVSOFDZD.cjs +19 -0
  218. package/dist/completion-MMF2PN2H.js +14 -0
  219. package/dist/completion-UI5WKHXI.cjs +14 -0
  220. package/dist/config-E7RINK4R.cjs +18 -0
  221. package/dist/config-ZN66VXPS.js +18 -0
  222. package/dist/constants-6CPCJ3DY.cjs +21 -0
  223. package/dist/{constants-V6J54N3X.js → constants-UFM5B232.js} +2 -1
  224. package/dist/{defaultHooks-WLMRQUXG.cjs → defaultHooks-RCXPHF4M.cjs} +3 -1
  225. package/dist/{defaultHooks-R56VYG7I.js → defaultHooks-RDRMER3Z.js} +2 -0
  226. package/dist/export-N4XIVDSL.cjs +12 -0
  227. package/dist/export-W22L4D5C.js +12 -0
  228. package/dist/extractSessionMemories-SDW2MVBQ.cjs +7 -0
  229. package/dist/extractSessionMemories-V7K42ZHW.js +7 -0
  230. package/dist/feedback-DR6ADSNE.cjs +15 -0
  231. package/dist/feedback-FEEAP4QW.js +15 -0
  232. package/dist/filesystem-3SGCW2BF.js +10 -0
  233. package/dist/filesystem-MCFXJQ6R.cjs +10 -0
  234. package/dist/formatters-6K7QVWQL.cjs +10 -0
  235. package/dist/formatters-DQHO5I36.js +10 -0
  236. package/dist/{help-LKKQU2TN.js → help-2BLR7L43.js} +3 -2
  237. package/dist/help-AQHGTS7P.cjs +12 -0
  238. package/dist/{history-AV4XBFRK.js → history-5FZ3M2AK.js} +3 -2
  239. package/dist/history-NIUDRMKA.cjs +14 -0
  240. package/dist/hooks-2EY4IPKV.js +13 -0
  241. package/dist/hooks-LJVORRIG.cjs +13 -0
  242. package/dist/i18n-ARDG2SMC.cjs +33 -0
  243. package/dist/{i18n-BSAPXM56.js → i18n-K7QOWIBH.js} +2 -1
  244. package/dist/ide-GFW6IJHD.js +12 -0
  245. package/dist/ide-N2ZNSSB3.cjs +12 -0
  246. package/dist/import-DFVN3KNZ.js +10 -0
  247. package/dist/import-QEME3E4T.cjs +170 -0
  248. package/dist/import-UXM3VK7B.js +170 -0
  249. package/dist/import-ZS6DPGU5.cjs +10 -0
  250. package/dist/index.cjs +11233 -11804
  251. package/dist/index.js +12594 -13165
  252. package/dist/init-PY75HA3S.cjs +10 -0
  253. package/dist/init-QNMWLAVY.js +10 -0
  254. package/dist/language-5UE4G2BT.cjs +18 -0
  255. package/dist/language-UXMHEZUJ.js +18 -0
  256. package/dist/learn-HJ3FLNZC.cjs +20 -0
  257. package/dist/learn-MVYS3RU5.js +20 -0
  258. package/dist/{lint-44UQJ673.cjs → lint-D5UOJWIK.cjs} +1 -0
  259. package/dist/{lint-TA2ZHVLM.js → lint-NJPZWVN2.js} +1 -0
  260. package/dist/{localProjectPermissions-WQYMGI42.js → localProjectPermissions-N77HA3XK.js} +3 -2
  261. package/dist/localProjectPermissions-UFSMNTBJ.cjs +18 -0
  262. package/dist/login-DSE7H63A.js +20 -0
  263. package/dist/login-V3MEWPKN.cjs +20 -0
  264. package/dist/logout-BMVCLKKW.js +18 -0
  265. package/dist/logout-XEG7FHOZ.cjs +18 -0
  266. package/dist/mcp-PYUR4PHO.js +18 -0
  267. package/dist/mcp-SG6JFLGC.cjs +18 -0
  268. package/dist/{mcp-install-2KVKRAMQ.cjs → mcp-install-G27HSS3Z.cjs} +26 -14
  269. package/dist/{mcp-install-77UXRN6R.js → mcp-install-VESN42PI.js} +21 -9
  270. package/dist/memory-4ZMMEZ2Z.js +10 -0
  271. package/dist/memory-QSGMVVGH.cjs +10 -0
  272. package/dist/message-JUBOK2VU.js +9 -0
  273. package/dist/message-ZJ5AYAMT.cjs +9 -0
  274. package/dist/model-NANLBZ4Z.cjs +10 -0
  275. package/dist/model-ZXNV4AF7.js +10 -0
  276. package/dist/new-5QJY5JP2.js +12 -0
  277. package/dist/new-PMMG55UX.cjs +12 -0
  278. package/dist/{patch-BAAQIYSW.js → patch-5F6VBIT3.js} +2 -0
  279. package/dist/{patch-J32X2QQP.cjs → patch-MOD7QC3D.cjs} +3 -1
  280. package/dist/permissions-LECTCJ4H.cjs +13 -0
  281. package/dist/permissions-VP5VGIBL.js +13 -0
  282. package/dist/{plan-JFGNRL2S.js → plan-G5CEKJI4.js} +1 -0
  283. package/dist/{plan-B3CW5DXJ.cjs → plan-QKOHE3LH.cjs} +1 -0
  284. package/dist/quit-BKOOPHU5.cjs +10 -0
  285. package/dist/quit-FVFNYACP.js +10 -0
  286. package/dist/registry-KWZGYJC2.js +2108 -0
  287. package/dist/registry-YN4FQPOO.cjs +2108 -0
  288. package/dist/resume-EXFQSQPH.js +13 -0
  289. package/dist/resume-PP2IQM5S.cjs +13 -0
  290. package/dist/search-C56FBN67.cjs +17 -0
  291. package/dist/search-XGZDYBF4.js +17 -0
  292. package/dist/{session-T3TAZ5ZU.cjs → session-BSU2L5UI.cjs} +1 -0
  293. package/dist/{session-H5QWKE5E.js → session-SZMRN5KG.js} +1 -0
  294. package/dist/sessions-54KI3F2Q.js +10 -0
  295. package/dist/sessions-DDTSPNVW.cjs +10 -0
  296. package/dist/settings-BDO37TTO.cjs +30 -0
  297. package/dist/settings-FHRDFPLK.js +30 -0
  298. package/dist/share-IERCTBGN.cjs +14 -0
  299. package/dist/share-TGROUE6R.js +14 -0
  300. package/dist/skills-6OL4OSGA.js +76 -0
  301. package/dist/skills-FYY6F2WV.cjs +76 -0
  302. package/dist/skills-OM4IGBAA.cjs +26 -0
  303. package/dist/skills-S3GRN323.js +26 -0
  304. package/dist/{skills-install-MQINL3EC.js → skills-install-6CSWC24P.js} +97 -26
  305. package/dist/{skills-install-IKJZN4G2.cjs → skills-install-O3LZ2ETC.cjs} +106 -35
  306. package/dist/skills-new-ALD2PTHN.js +15 -0
  307. package/dist/skills-new-PWLKK7GW.cjs +15 -0
  308. package/dist/slashCommands-L4ZD33LJ.js +75 -0
  309. package/dist/slashCommands-YY2VUUDF.cjs +75 -0
  310. package/dist/status-3PC5XWSS.cjs +11 -0
  311. package/dist/status-KCLVOYPD.js +11 -0
  312. package/dist/sync-6SDWG5RK.js +18 -0
  313. package/dist/sync-7JMZVEQD.cjs +40 -0
  314. package/dist/{sync-EXYX7HXW.js → sync-KWX67OUN.js} +3 -2
  315. package/dist/sync-WHURZL3U.cjs +18 -0
  316. package/dist/tasks-5FPBIFLC.js +9 -0
  317. package/dist/tasks-TXGKGNH6.cjs +9 -0
  318. package/dist/team-5YXP3JGR.js +9 -0
  319. package/dist/team-IIWEZKNR.cjs +9 -0
  320. package/dist/teammate-2KMKJXAM.cjs +139 -0
  321. package/dist/teammate-L6EZQ3I2.js +139 -0
  322. package/dist/theme-BE5A4FPN.cjs +18 -0
  323. package/dist/theme-YMFCQP7J.js +18 -0
  324. package/dist/ui/questionModal.cjs +7 -25
  325. package/dist/ui/questionModal.js +6 -24
  326. package/dist/undo-KZHUUZTD.cjs +10 -0
  327. package/dist/undo-NEIEHQVX.js +10 -0
  328. package/dist/update-TVAJMMBC.js +82 -0
  329. package/dist/update-Z6BIIQDC.cjs +82 -0
  330. package/package.json +10 -3
  331. package/dist/CommunitySkillsCache-ILWHWE5P.js +0 -7
  332. package/dist/CommunitySkillsCache-KHC6RUJW.cjs +0 -7
  333. package/dist/HookManager-X47HCM5G.cjs +0 -6
  334. package/dist/HookManager-ZXKHCD7U.js +0 -6
  335. package/dist/MemoryManager-6ZT7IDO5.cjs +0 -7
  336. package/dist/MemoryManager-AJGS5AKB.js +0 -7
  337. package/dist/PermissionManager-HG6W2DGU.cjs +0 -10
  338. package/dist/SessionManager-BJ2G6VV4.cjs +0 -9
  339. package/dist/SessionManager-ENPGYK5J.js +0 -9
  340. package/dist/SkillsRegistry-6ZFOCT25.cjs +0 -8
  341. package/dist/SkillsRegistry-C2SHOZ5D.js +0 -8
  342. package/dist/about-3BJTNSLK.js +0 -11
  343. package/dist/about-EABQNJGV.cjs +0 -11
  344. package/dist/add-dir-7FD4DMDA.cjs +0 -9
  345. package/dist/add-dir-LOYJ4YB5.js +0 -9
  346. package/dist/agents-2Y6ASV7C.js +0 -10
  347. package/dist/agents-UOSPKLQL.cjs +0 -10
  348. package/dist/agents-new-23NSGAM5.js +0 -13
  349. package/dist/agents-new-WI2EL7IJ.cjs +0 -13
  350. package/dist/automode-LGWTY3UX.js +0 -9
  351. package/dist/automode-WLBQ7MN7.cjs +0 -9
  352. package/dist/chunk-5UBW2BGC.js +0 -33
  353. package/dist/chunk-I6DBWNLN.cjs +0 -169
  354. package/dist/chunk-IZBCMJHJ.cjs +0 -33
  355. package/dist/completion-7WGMHKOR.cjs +0 -13
  356. package/dist/completion-KH33NSGP.js +0 -13
  357. package/dist/constants-RBQTR32A.cjs +0 -20
  358. package/dist/export-3QN3IH7A.js +0 -11
  359. package/dist/export-BI54X3MP.cjs +0 -11
  360. package/dist/feedback-CI4OIPOS.cjs +0 -14
  361. package/dist/feedback-GFPL5STE.js +0 -14
  362. package/dist/formatters-N5IJKYZY.cjs +0 -8
  363. package/dist/formatters-UG6VZJJ5.js +0 -8
  364. package/dist/help-CWMUGD3V.cjs +0 -11
  365. package/dist/history-73VBEMSI.cjs +0 -13
  366. package/dist/hooks-62UDQBGH.cjs +0 -12
  367. package/dist/hooks-XORDJD5X.js +0 -12
  368. package/dist/i18n-X2IU2EZD.cjs +0 -32
  369. package/dist/ide-RPKZALQV.js +0 -11
  370. package/dist/ide-YMNXJB6A.cjs +0 -11
  371. package/dist/init-J5HR4R7U.js +0 -9
  372. package/dist/init-JCC7RVMC.cjs +0 -9
  373. package/dist/language-AZISJCEZ.js +0 -16
  374. package/dist/language-F65RA6FZ.cjs +0 -16
  375. package/dist/localProjectPermissions-2EATUDZM.cjs +0 -17
  376. package/dist/login-5HLPMECE.js +0 -18
  377. package/dist/login-ISWYYBXP.cjs +0 -18
  378. package/dist/logout-3EKZM5J3.cjs +0 -16
  379. package/dist/logout-GE7TSZ24.js +0 -16
  380. package/dist/mcp-EW64QRFA.cjs +0 -15
  381. package/dist/mcp-VHS7AMF2.js +0 -15
  382. package/dist/memory-2I473RU3.js +0 -9
  383. package/dist/memory-JZ6NPSP3.cjs +0 -9
  384. package/dist/model-GXZLARPT.js +0 -9
  385. package/dist/model-Y274DBDO.cjs +0 -9
  386. package/dist/new-BG5VIGZ7.cjs +0 -9
  387. package/dist/new-YXFDQOA7.js +0 -9
  388. package/dist/permissions-QILEAGBP.cjs +0 -12
  389. package/dist/permissions-WVEOVMWO.js +0 -12
  390. package/dist/quit-NC32OEJG.cjs +0 -9
  391. package/dist/quit-WRRIGU33.js +0 -9
  392. package/dist/resume-GJIKIDPR.cjs +0 -12
  393. package/dist/resume-RMJNCAOK.js +0 -12
  394. package/dist/search-UIWIXB73.js +0 -14
  395. package/dist/search-WQNXDA2E.cjs +0 -14
  396. package/dist/sessions-HPFX2GDD.js +0 -9
  397. package/dist/sessions-SAQU6MFA.cjs +0 -9
  398. package/dist/share-2WH5ZVOO.cjs +0 -13
  399. package/dist/share-PSSWWVV5.js +0 -13
  400. package/dist/skills-LJZA6PVJ.js +0 -13
  401. package/dist/skills-YTYGART7.cjs +0 -13
  402. package/dist/skills-new-3WCU3CWB.js +0 -14
  403. package/dist/skills-new-O5LFVFZU.cjs +0 -14
  404. package/dist/slashCommands-7IRDOXOQ.cjs +0 -55
  405. package/dist/slashCommands-C6CAQA25.js +0 -55
  406. package/dist/status-4EDV2LSY.cjs +0 -10
  407. package/dist/status-NU7TJDCE.js +0 -10
  408. package/dist/sync-3GFSEIAZ.js +0 -16
  409. package/dist/sync-6M3WRKMH.cjs +0 -39
  410. package/dist/sync-CQNQDNTJ.cjs +0 -16
  411. package/dist/theme-EMJGULMI.cjs +0 -16
  412. package/dist/theme-FGDSXNU3.js +0 -16
  413. package/dist/undo-CTXQYE7C.cjs +0 -9
  414. package/dist/undo-HX2ZMECP.js +0 -9
@@ -0,0 +1,504 @@
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 }; }
2
+
3
+ var _chunkSEKD5FH3cjs = require('./chunk-SEKD5FH3.cjs');
4
+
5
+ // src/skills/autoSkill.ts
6
+ var _fsextra = require('fs-extra'); var _fsextra2 = _interopRequireDefault(_fsextra);
7
+ var _os = require('os'); var _os2 = _interopRequireDefault(_os);
8
+ var _path = require('path'); var _path2 = _interopRequireDefault(_path);
9
+ var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
10
+ var AVAILABLE_TOOLS = {
11
+ file: [
12
+ "read_file",
13
+ "write_file",
14
+ "append_file",
15
+ "apply_patch",
16
+ "search",
17
+ "search_replace",
18
+ "search_with_context",
19
+ "semantic_search",
20
+ "list_tree",
21
+ "file_stats",
22
+ "create_directory",
23
+ "delete_path",
24
+ "rename_path",
25
+ "copy_path",
26
+ "multi_file_edit"
27
+ ],
28
+ git: [
29
+ "git_status",
30
+ "git_diff",
31
+ "git_diff_range",
32
+ "git_log",
33
+ "git_add",
34
+ "git_commit",
35
+ "git_branch",
36
+ "git_switch",
37
+ "git_stash",
38
+ "git_stash_list",
39
+ "git_stash_pop",
40
+ "git_merge",
41
+ "git_rebase",
42
+ "git_cherry_pick",
43
+ "git_fetch",
44
+ "git_pull",
45
+ "git_push",
46
+ "auto_commit"
47
+ ],
48
+ command: [
49
+ "run_command",
50
+ "custom_command"
51
+ ],
52
+ dependencies: [
53
+ "add_dependency",
54
+ "remove_dependency"
55
+ ],
56
+ memory: [
57
+ "save_memory",
58
+ "recall_memory"
59
+ ],
60
+ planning: [
61
+ "plan",
62
+ "todo_write"
63
+ ]
64
+ };
65
+ function getAllTools() {
66
+ return Object.values(AVAILABLE_TOOLS).flat();
67
+ }
68
+ function getToolsByCategory(category) {
69
+ return AVAILABLE_TOOLS[category];
70
+ }
71
+ var JS_FRAMEWORKS = {
72
+ react: ["react", "react-dom"],
73
+ nextjs: ["next"],
74
+ vue: ["vue"],
75
+ angular: ["@angular/core"],
76
+ svelte: ["svelte"],
77
+ express: ["express"],
78
+ fastify: ["fastify"],
79
+ nestjs: ["@nestjs/core"],
80
+ electron: ["electron"],
81
+ tauri: ["@tauri-apps/api"]
82
+ };
83
+ var PYTHON_FRAMEWORKS = {
84
+ flask: ["flask"],
85
+ django: ["django"],
86
+ fastapi: ["fastapi"],
87
+ pytest: ["pytest"],
88
+ numpy: ["numpy", "pandas"],
89
+ tensorflow: ["tensorflow"],
90
+ pytorch: ["torch"]
91
+ };
92
+ var ProjectAnalyzer = class {
93
+ constructor(projectRoot) {
94
+ this.projectRoot = projectRoot;
95
+ }
96
+ /**
97
+ * Perform full project analysis
98
+ */
99
+ async analyze() {
100
+ const analysis = {
101
+ projectName: _path2.default.basename(this.projectRoot),
102
+ languages: [],
103
+ frameworks: [],
104
+ patterns: [],
105
+ dependencies: [],
106
+ filePatterns: [],
107
+ platform: this.detectPlatform(),
108
+ hasGit: false,
109
+ hasTests: false,
110
+ hasCI: false,
111
+ packageManager: null
112
+ };
113
+ analysis.hasGit = await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, ".git"));
114
+ analysis.hasCI = await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, ".github", "workflows")) || await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, ".gitlab-ci.yml")) || await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, ".circleci"));
115
+ await this.analyzePackageJson(analysis);
116
+ await this.analyzePython(analysis);
117
+ await this.analyzeRust(analysis);
118
+ await this.analyzeGo(analysis);
119
+ await this.detectPatterns(analysis);
120
+ return analysis;
121
+ }
122
+ /**
123
+ * Detect the current platform
124
+ */
125
+ detectPlatform() {
126
+ const platform = _os2.default.platform();
127
+ if (platform === "darwin" || platform === "linux" || platform === "win32") {
128
+ return platform;
129
+ }
130
+ return "unknown";
131
+ }
132
+ /**
133
+ * Analyze package.json for Node.js projects
134
+ */
135
+ async analyzePackageJson(analysis) {
136
+ const packageJsonPath = _path2.default.join(this.projectRoot, "package.json");
137
+ if (!await _fsextra2.default.pathExists(packageJsonPath)) {
138
+ return;
139
+ }
140
+ try {
141
+ const pkg = await _fsextra2.default.readJson(packageJsonPath);
142
+ analysis.projectName = pkg.name || analysis.projectName;
143
+ const allDeps = {
144
+ ...pkg.dependencies,
145
+ ...pkg.devDependencies
146
+ };
147
+ const depNames = Object.keys(allDeps);
148
+ analysis.dependencies.push(...depNames);
149
+ if (await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, "bun.lockb"))) {
150
+ analysis.packageManager = "bun";
151
+ } else if (await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, "pnpm-lock.yaml"))) {
152
+ analysis.packageManager = "pnpm";
153
+ } else if (await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, "yarn.lock"))) {
154
+ analysis.packageManager = "yarn";
155
+ } else if (await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, "package-lock.json"))) {
156
+ analysis.packageManager = "npm";
157
+ }
158
+ if (allDeps.typescript) {
159
+ analysis.languages.push("typescript");
160
+ analysis.languages.push("javascript");
161
+ }
162
+ if (!allDeps.typescript) {
163
+ const jsFiles = await this.findFiles("*.js", 3);
164
+ if (jsFiles.length > 0) {
165
+ analysis.languages.push("javascript");
166
+ }
167
+ }
168
+ for (const [framework, deps] of Object.entries(JS_FRAMEWORKS)) {
169
+ if (deps.some((d) => allDeps[d])) {
170
+ analysis.frameworks.push(framework);
171
+ }
172
+ }
173
+ if (pkg.bin || allDeps.commander || allDeps.yargs || allDeps.meow || allDeps.inquirer) {
174
+ analysis.patterns.push("cli");
175
+ }
176
+ if (allDeps.vitest || allDeps.jest || allDeps.mocha || allDeps.ava) {
177
+ analysis.patterns.push("testing");
178
+ analysis.hasTests = true;
179
+ }
180
+ if (pkg.workspaces) {
181
+ analysis.patterns.push("monorepo");
182
+ }
183
+ if (allDeps.webpack || allDeps.vite || allDeps.esbuild || allDeps.rollup || allDeps.tsup) {
184
+ analysis.patterns.push("bundling");
185
+ }
186
+ if (allDeps.eslint || allDeps.prettier || allDeps.biome) {
187
+ analysis.patterns.push("linting");
188
+ }
189
+ } catch (e) {
190
+ }
191
+ }
192
+ /**
193
+ * Analyze Python project files
194
+ */
195
+ async analyzePython(analysis) {
196
+ const requirementsPath = _path2.default.join(this.projectRoot, "requirements.txt");
197
+ const pyprojectPath = _path2.default.join(this.projectRoot, "pyproject.toml");
198
+ let hasPython = false;
199
+ if (await _fsextra2.default.pathExists(requirementsPath)) {
200
+ hasPython = true;
201
+ analysis.packageManager = "pip";
202
+ try {
203
+ const content = await _fsextra2.default.readFile(requirementsPath, "utf-8");
204
+ const lines = content.toLowerCase();
205
+ for (const [framework, deps] of Object.entries(PYTHON_FRAMEWORKS)) {
206
+ if (deps.some((d) => lines.includes(d))) {
207
+ analysis.frameworks.push(framework);
208
+ }
209
+ }
210
+ if (lines.includes("pytest")) {
211
+ analysis.hasTests = true;
212
+ analysis.patterns.push("testing");
213
+ }
214
+ } catch (e2) {
215
+ }
216
+ }
217
+ if (await _fsextra2.default.pathExists(pyprojectPath)) {
218
+ hasPython = true;
219
+ }
220
+ if (hasPython) {
221
+ analysis.languages.push("python");
222
+ }
223
+ }
224
+ /**
225
+ * Analyze Rust project
226
+ */
227
+ async analyzeRust(analysis) {
228
+ const cargoPath = _path2.default.join(this.projectRoot, "Cargo.toml");
229
+ if (await _fsextra2.default.pathExists(cargoPath)) {
230
+ analysis.languages.push("rust");
231
+ analysis.packageManager = "cargo";
232
+ }
233
+ }
234
+ /**
235
+ * Analyze Go project
236
+ */
237
+ async analyzeGo(analysis) {
238
+ const goModPath = _path2.default.join(this.projectRoot, "go.mod");
239
+ if (await _fsextra2.default.pathExists(goModPath)) {
240
+ analysis.languages.push("go");
241
+ analysis.packageManager = "go";
242
+ }
243
+ }
244
+ /**
245
+ * Detect additional project patterns
246
+ */
247
+ async detectPatterns(analysis) {
248
+ if (await _fsextra2.default.pathExists(_path2.default.join(this.projectRoot, "Dockerfile"))) {
249
+ analysis.patterns.push("docker");
250
+ }
251
+ const dbFiles = await this.findFiles("**/migrations/**", 2);
252
+ if (dbFiles.length > 0) {
253
+ analysis.patterns.push("database");
254
+ }
255
+ if (analysis.frameworks.includes("express") || analysis.frameworks.includes("fastify") || analysis.frameworks.includes("nestjs") || analysis.frameworks.includes("flask") || analysis.frameworks.includes("fastapi") || analysis.frameworks.includes("django")) {
256
+ analysis.patterns.push("api");
257
+ }
258
+ }
259
+ /**
260
+ * Find files matching a pattern (shallow search)
261
+ */
262
+ async findFiles(pattern, maxDepth) {
263
+ const results = [];
264
+ async function walk(dir, depth) {
265
+ if (depth > maxDepth) return;
266
+ try {
267
+ const entries = await _fsextra2.default.readdir(dir, { withFileTypes: true });
268
+ for (const entry of entries) {
269
+ const fullPath = _path2.default.join(dir, entry.name);
270
+ if (entry.isDirectory() && !entry.name.startsWith(".") && entry.name !== "node_modules") {
271
+ await walk(fullPath, depth + 1);
272
+ } else if (entry.isFile()) {
273
+ const ext = _path2.default.extname(entry.name);
274
+ if (pattern === "*.js" && ext === ".js") {
275
+ results.push(fullPath);
276
+ } else if (pattern === "*.ts" && ext === ".ts") {
277
+ results.push(fullPath);
278
+ } else if (pattern.includes("migrations") && fullPath.includes("migrations")) {
279
+ results.push(fullPath);
280
+ }
281
+ }
282
+ }
283
+ } catch (e3) {
284
+ }
285
+ }
286
+ await walk(this.projectRoot, 0);
287
+ return results;
288
+ }
289
+ };
290
+ function buildSkillGenerationPrompt(analysis) {
291
+ const parts = [];
292
+ parts.push(`# Project Analysis for Skill Generation`);
293
+ parts.push("");
294
+ parts.push(`**Project:** ${analysis.projectName}`);
295
+ parts.push(`**Platform:** ${analysis.platform === "win32" ? "Windows (use PowerShell commands)" : analysis.platform === "darwin" ? "macOS (use bash commands)" : "Linux (use bash commands)"}`);
296
+ if (analysis.languages.length > 0) {
297
+ parts.push(`**Languages:** ${analysis.languages.join(", ")}`);
298
+ }
299
+ if (analysis.frameworks.length > 0) {
300
+ parts.push(`**Frameworks:** ${analysis.frameworks.join(", ")}`);
301
+ }
302
+ if (analysis.patterns.length > 0) {
303
+ parts.push(`**Patterns:** ${analysis.patterns.join(", ")}`);
304
+ }
305
+ if (analysis.packageManager) {
306
+ parts.push(`**Package Manager:** ${analysis.packageManager}`);
307
+ }
308
+ parts.push(`**Has Git:** ${analysis.hasGit ? "Yes" : "No"}`);
309
+ parts.push(`**Has Tests:** ${analysis.hasTests ? "Yes" : "No"}`);
310
+ parts.push(`**Has CI/CD:** ${analysis.hasCI ? "Yes" : "No"}`);
311
+ if (analysis.dependencies.length > 0) {
312
+ const topDeps = analysis.dependencies.slice(0, 30);
313
+ parts.push(`**Key Dependencies:** ${topDeps.join(", ")}`);
314
+ }
315
+ parts.push("");
316
+ parts.push("# Available Tools");
317
+ parts.push("Skills can specify which tools they need. Available tools by category:");
318
+ parts.push("");
319
+ parts.push("**File Operations:** " + AVAILABLE_TOOLS.file.join(", "));
320
+ parts.push("**Git Operations:** " + AVAILABLE_TOOLS.git.join(", "));
321
+ parts.push("**Commands:** " + AVAILABLE_TOOLS.command.join(", "));
322
+ parts.push("**Dependencies:** " + AVAILABLE_TOOLS.dependencies.join(", "));
323
+ parts.push("**Memory:** " + AVAILABLE_TOOLS.memory.join(", "));
324
+ parts.push("**Planning:** " + AVAILABLE_TOOLS.planning.join(", "));
325
+ return parts.join("\n");
326
+ }
327
+ function getSkillGenerationSystemPrompt() {
328
+ return `You are an expert at creating Agent Skills - modular packages that extend AI coding assistants with specialized workflows.
329
+
330
+ ## Your Task
331
+ Generate 3 high-quality, actionable skills based on the project analysis provided. Each skill should be practical and immediately useful.
332
+
333
+ ## Skill Quality Guidelines
334
+
335
+ 1. **Clear Purpose**: Each skill should solve a specific, recurring problem
336
+ 2. **Concrete Examples**: Include 2-3 usage examples showing exact prompts
337
+ 3. **Actionable Steps**: Provide step-by-step workflows, not vague guidance
338
+ 4. **Tool Awareness**: Specify which tools the skill needs in allowed-tools
339
+ 5. **Platform Aware**: Use appropriate commands for the detected OS
340
+
341
+ ## Required Skill Categories (pick 3 most relevant)
342
+
343
+ 1. **Changelog Generator**: For any project with git - turns commits into user-friendly release notes
344
+ 2. **Code Reviewer**: Analyzes code for the specific stack (TypeScript patterns, React best practices, etc.)
345
+ 3. **Test Generator**: Creates tests appropriate for the detected testing framework
346
+ 4. **Documentation Generator**: Creates docs matching the project's patterns
347
+ 5. **Refactoring Guide**: Stack-specific refactoring patterns and best practices
348
+ 6. **Debug Helper**: Debugging workflows for the specific stack
349
+ 7. **Deployment Guide**: CI/CD and deployment workflows based on detected patterns
350
+ 8. **Performance Analyzer**: Performance optimization for the detected frameworks
351
+
352
+ ## Response Format
353
+
354
+ Return a JSON array with exactly 3 skills. Each skill object must have:
355
+ - name: kebab-case, descriptive (e.g., "typescript-refactoring-guide")
356
+ - description: 1-2 sentences explaining when to use this skill
357
+ - allowedTools: array of tool names from the available tools list
358
+ - body: Markdown content with sections:
359
+ - Purpose/overview (2-3 sentences)
360
+ - "## When to Use This Skill" (bullet list)
361
+ - "## How to Use" with example prompts
362
+ - "## Workflow" with numbered steps
363
+ - "## Tips" (optional but recommended)
364
+
365
+ ## Example Skill Structure
366
+
367
+ {
368
+ "name": "changelog-generator",
369
+ "description": "Creates user-facing changelogs from git commits. Use when preparing releases or documenting updates.",
370
+ "allowedTools": ["git_log", "git_diff_range", "read_file", "write_file", "run_command"],
371
+ "body": "# Changelog Generator\\n\\nTransforms git commits into polished, user-friendly changelogs.\\n\\n## When to Use This Skill\\n\\n- Preparing release notes\\n- Creating weekly update summaries\\n- Documenting changes for customers\\n\\n## How to Use\\n\\n\`\`\`\\nCreate a changelog from commits since the last release\\n\`\`\`\\n\\n\`\`\`\\nGenerate release notes for version 2.5.0\\n\`\`\`\\n\\n## Workflow\\n\\n1. Scan git history for the specified range\\n2. Categorize commits (features, fixes, breaking changes)\\n3. Transform technical commits into user-friendly language\\n4. Format as clean markdown\\n\\n## Tips\\n\\n- Run from repository root\\n- Specify date ranges for focused changelogs\\n- Review output before publishing"
372
+ }
373
+
374
+ Return ONLY the JSON array, no other text.`;
375
+ }
376
+ async function generateAutoSkills(analysis, llm) {
377
+ const prompt = buildSkillGenerationPrompt(analysis);
378
+ try {
379
+ const response = await llm.complete({
380
+ messages: [
381
+ {
382
+ role: "system",
383
+ content: getSkillGenerationSystemPrompt()
384
+ },
385
+ {
386
+ role: "user",
387
+ content: prompt
388
+ }
389
+ ],
390
+ maxTokens: 4e3
391
+ });
392
+ const content = response.content.trim();
393
+ if (!content) {
394
+ return [];
395
+ }
396
+ let skills = [];
397
+ try {
398
+ skills = JSON.parse(content);
399
+ } catch (e4) {
400
+ const jsonMatch = content.match(/\[[\s\S]*\]/);
401
+ if (!jsonMatch) {
402
+ return [];
403
+ }
404
+ try {
405
+ skills = JSON.parse(jsonMatch[0]);
406
+ } catch (e5) {
407
+ return [];
408
+ }
409
+ }
410
+ return skills.filter(
411
+ (s) => s && typeof s.name === "string" && typeof s.description === "string" && typeof s.body === "string" && /^[a-z0-9-]+$/.test(s.name)
412
+ );
413
+ } catch (e6) {
414
+ return [];
415
+ }
416
+ }
417
+ async function runAutoSkillGeneration(workspaceRoot, llm) {
418
+ const result = {
419
+ success: false,
420
+ skillsGenerated: 0,
421
+ skills: []
422
+ };
423
+ console.log(_chalk2.default.cyan("Analyzing project structure..."));
424
+ const analyzer = new ProjectAnalyzer(workspaceRoot);
425
+ let analysis;
426
+ try {
427
+ analysis = await analyzer.analyze();
428
+ } catch (e7) {
429
+ result.error = "Failed to analyze project";
430
+ return result;
431
+ }
432
+ if (analysis.languages.length === 0 && analysis.frameworks.length === 0) {
433
+ console.log(_chalk2.default.yellow("Could not detect project type. No skills generated."));
434
+ result.error = "Could not detect project type";
435
+ return result;
436
+ }
437
+ const detected = [...analysis.languages, ...analysis.frameworks, ...analysis.patterns].join(", ");
438
+ console.log(_chalk2.default.gray(`Detected: ${detected}`));
439
+ console.log(_chalk2.default.gray(`Platform: ${analysis.platform}`));
440
+ console.log(_chalk2.default.cyan("Generating targeted skill via LearnAdvisor..."));
441
+ const { LearnAdvisor } = await Promise.resolve().then(() => _interopRequireWildcard(require("./LearnAdvisor-GASQD7HT.cjs")));
442
+ const { computeProjectHash, injectGeneratedMetadata } = await Promise.resolve().then(() => _interopRequireWildcard(require("./communityInstaller-PVSOFDZD.cjs")));
443
+ const advisor = new LearnAdvisor(llm);
444
+ const generated = await advisor.generateSkill(analysis, null, []);
445
+ if (!generated) {
446
+ console.log(_chalk2.default.yellow("No skills generated."));
447
+ result.error = "No skills generated";
448
+ return result;
449
+ }
450
+ const skillsDir = _path2.default.join(workspaceRoot, _chunkSEKD5FH3cjs.PROJECT_DIR_NAME, "skills");
451
+ const projectHash = computeProjectHash(analysis);
452
+ let frontmatter = `---
453
+ name: ${generated.name}
454
+ description: ${generated.description}`;
455
+ if (generated.allowedTools.length > 0) {
456
+ frontmatter += `
457
+ allowed-tools: ${generated.allowedTools.join(" ")}`;
458
+ }
459
+ frontmatter += `
460
+ ---
461
+
462
+ `;
463
+ let content = frontmatter + generated.body + "\n";
464
+ content = injectGeneratedMetadata(content, generated.name, projectHash);
465
+ const skillDir = _path2.default.join(skillsDir, generated.name);
466
+ const skillPath = _path2.default.join(skillDir, "SKILL.md");
467
+ try {
468
+ await _fsextra2.default.ensureDir(skillDir);
469
+ await _fsextra2.default.writeFile(skillPath, content, "utf-8");
470
+ result.skillsGenerated = 1;
471
+ result.skills.push(generated.name);
472
+ console.log(_chalk2.default.green(` \u2713 ${generated.name}`));
473
+ if (generated.allowedTools.length > 0) {
474
+ console.log(_chalk2.default.gray(` Tools: ${generated.allowedTools.slice(0, 5).join(", ")}${generated.allowedTools.length > 5 ? "..." : ""}`));
475
+ }
476
+ console.log(_chalk2.default.gray(` Project hash: ${projectHash}`));
477
+ } catch (e8) {
478
+ result.error = "Failed to save generated skill";
479
+ return result;
480
+ }
481
+ result.success = true;
482
+ console.log(_chalk2.default.green(`
483
+ \u2713 Generated 1 targeted skill in ${skillsDir}`));
484
+ console.log(_chalk2.default.gray(` Use "/skills" to view and "/skills use <name>" to activate`));
485
+ console.log(_chalk2.default.gray(` Use "/learn update" to regenerate when your project evolves`));
486
+ return result;
487
+ }
488
+
489
+
490
+
491
+
492
+
493
+
494
+
495
+
496
+
497
+ exports.AVAILABLE_TOOLS = AVAILABLE_TOOLS; exports.getAllTools = getAllTools; exports.getToolsByCategory = getToolsByCategory; exports.ProjectAnalyzer = ProjectAnalyzer; exports.buildSkillGenerationPrompt = buildSkillGenerationPrompt; exports.generateAutoSkills = generateAutoSkills; exports.runAutoSkillGeneration = runAutoSkillGeneration;
498
+ /**
499
+ * @license
500
+ * Copyright 2025 Autohand AI LLC
501
+ * SPDX-License-Identifier: Apache-2.0
502
+ *
503
+ * Auto-Skill Generation - Analyzes project structure and generates world-class skills
504
+ */
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  AUTOHAND_HOME
3
- } from "./chunk-PWLLLJHU.js";
3
+ } from "./chunk-EGFT4PGW.js";
4
4
 
5
5
  // src/skills/CommunitySkillsCache.ts
6
6
  import fs from "fs-extra";