eser 4.1.36 → 4.1.39

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 (294) hide show
  1. package/chunks/add-V7YYHLFH.js +8 -0
  2. package/chunks/{anthropic-2MXDKLNX.js → anthropic-QBGNUIP3.js} +1 -1
  3. package/chunks/approve-HVIH2A3C.js +2 -0
  4. package/chunks/ask-PMB64QWG.js +3 -0
  5. package/chunks/block-JSK5CJPO.js +2 -0
  6. package/chunks/browser-JGBNWUEQ.js +2 -0
  7. package/chunks/{build-EJLFNB4I.js → build-HUKFUVPB.js} +2 -2
  8. package/chunks/bun-HIMXX54I.js +2 -0
  9. package/chunks/changelog-gen-JV3EHOMV.js +10 -0
  10. package/chunks/{chunk-GJ4LCA6D.js → chunk-2KKLYXSA.js} +1 -1
  11. package/chunks/{chunk-JYNHFD6B.js → chunk-2XNFZXHY.js} +1 -1
  12. package/chunks/{chunk-2EVWKUN6.js → chunk-3AA3RXKD.js} +1 -1
  13. package/chunks/{chunk-CUIMSX4V.js → chunk-3IZX4OZ7.js} +1 -1
  14. package/chunks/{chunk-KPWEJXPI.js → chunk-3QF3I2RD.js} +1 -1
  15. package/chunks/{chunk-K6H7JTIH.js → chunk-4EHAL3NK.js} +1 -1
  16. package/chunks/chunk-4FGLERUG.js +2 -0
  17. package/chunks/{chunk-IDMI5OBK.js → chunk-4QDEJUAF.js} +1 -1
  18. package/chunks/{chunk-4MVO4LD5.js → chunk-5224ZYEW.js} +1 -1
  19. package/chunks/{chunk-LCG4SK6K.js → chunk-5DWJ7WEE.js} +1 -1
  20. package/chunks/chunk-5WJ6AUNY.js +2 -0
  21. package/chunks/chunk-6E6JUBFH.js +2 -0
  22. package/chunks/chunk-7UASU4NU.js +10 -0
  23. package/chunks/chunk-A3JJKZ4C.js +4 -0
  24. package/chunks/chunk-A3MZV73T.js +32 -0
  25. package/chunks/chunk-A6K5L4SG.js +3 -0
  26. package/chunks/{chunk-YVIGHK4H.js → chunk-AHKNU2JM.js} +1 -1
  27. package/chunks/{chunk-BCPCQHDL.js → chunk-BBOEAL63.js} +1 -1
  28. package/chunks/chunk-BQT5RJZB.js +2 -0
  29. package/chunks/{chunk-EBCQCAQ7.js → chunk-BWDCKK63.js} +1 -1
  30. package/chunks/{chunk-FORPNESQ.js → chunk-CMSPX2RN.js} +1 -1
  31. package/chunks/{chunk-H4SPMUT6.js → chunk-DKFL6XPX.js} +1 -1
  32. package/chunks/{chunk-HVLKXRPA.js → chunk-DWLFTRZS.js} +1 -1
  33. package/chunks/{chunk-PVPMHMKP.js → chunk-ECY4MUD3.js} +1 -1
  34. package/chunks/{chunk-IIIMOOFE.js → chunk-EGMYM4TM.js} +1 -1
  35. package/chunks/{chunk-I4C675WP.js → chunk-F35K7YVH.js} +1 -1
  36. package/chunks/{chunk-IZONBJSX.js → chunk-F5HQDZLN.js} +1 -1
  37. package/chunks/{chunk-A6RDYP6R.js → chunk-FFWPJP7A.js} +1 -1
  38. package/chunks/chunk-H2O5G3XB.js +2 -0
  39. package/chunks/{chunk-Y53YTL4C.js → chunk-HLKFDKLZ.js} +1 -1
  40. package/chunks/{chunk-SOBOSRJB.js → chunk-HP5W5XT6.js} +1 -1
  41. package/chunks/{chunk-BP3IFAPO.js → chunk-HTJLIAH4.js} +1 -1
  42. package/chunks/{chunk-7BFBOLLC.js → chunk-HVTJ5LVU.js} +1 -1
  43. package/chunks/chunk-HZ2ALFWG.js +66 -0
  44. package/chunks/{chunk-YQVWAWMO.js → chunk-ILROPD5P.js} +1 -1
  45. package/chunks/{chunk-QSION3QA.js → chunk-ISQIZSXN.js} +1 -1
  46. package/chunks/chunk-JI536JLJ.js +2 -0
  47. package/chunks/{chunk-UJPVEQX7.js → chunk-K2MKYDPY.js} +1 -1
  48. package/chunks/{chunk-T2DRBZ4X.js → chunk-KEOTIPA6.js} +1 -1
  49. package/chunks/chunk-L2E2H7YT.js +2 -0
  50. package/chunks/chunk-L7UCWRDZ.js +3 -0
  51. package/chunks/{chunk-4WQGB7NO.js → chunk-LBMJGMDD.js} +1 -1
  52. package/chunks/{chunk-2VEVVX6U.js → chunk-LFNUSULJ.js} +1 -1
  53. package/chunks/{chunk-5GGGQJ4P.js → chunk-MBCPGD5L.js} +1 -1
  54. package/chunks/chunk-MEZCXQAX.js +2 -0
  55. package/chunks/{chunk-B6EATLKL.js → chunk-MOY4CXAZ.js} +2 -2
  56. package/chunks/{chunk-P74JF7XR.js → chunk-MQ4EMT35.js} +1 -1
  57. package/chunks/chunk-NEHZOG23.js +7 -0
  58. package/chunks/{chunk-QZ44TAIY.js → chunk-NJUIBCQR.js} +1 -1
  59. package/chunks/{chunk-5MWX3POX.js → chunk-NZRU3N6C.js} +1 -1
  60. package/chunks/{chunk-N2VBT43E.js → chunk-O2TA7OHJ.js} +1 -1
  61. package/chunks/{chunk-ER4ZWF4Y.js → chunk-OAFB4A6D.js} +1 -1
  62. package/chunks/chunk-OAT2D23A.js +2 -0
  63. package/chunks/{chunk-3QIPK7NI.js → chunk-OPPOHKNZ.js} +1 -1
  64. package/chunks/{chunk-ZNGLZECE.js → chunk-OWV223WQ.js} +1 -1
  65. package/chunks/{chunk-3BEX5FYF.js → chunk-P2MUEKFT.js} +1 -1
  66. package/chunks/{chunk-455V3AE5.js → chunk-P72TUTYK.js} +1 -1
  67. package/chunks/{chunk-Q2KSOC32.js → chunk-PPSDIDOI.js} +1 -1
  68. package/chunks/chunk-PXCM4FHO.js +2 -0
  69. package/chunks/{chunk-KVTG56GS.js → chunk-QFFGKP3M.js} +1 -1
  70. package/chunks/{chunk-PZNCE6QK.js → chunk-QXATB6Z5.js} +1 -1
  71. package/chunks/chunk-RGUPFAEE.js +68 -0
  72. package/chunks/{chunk-SP43S32B.js → chunk-RVJZFWN7.js} +1 -1
  73. package/chunks/{chunk-B5IPHVXT.js → chunk-SBAXURB7.js} +1 -1
  74. package/chunks/{chunk-7NUMDHE2.js → chunk-T4WKRBQZ.js} +1 -1
  75. package/chunks/{chunk-UJ6LH5FY.js → chunk-TEOMM3RD.js} +1 -1
  76. package/chunks/{chunk-QOX7VSID.js → chunk-TLVGNOK3.js} +1 -1
  77. package/chunks/{chunk-HYT26FYU.js → chunk-U5Q5MC74.js} +1 -1
  78. package/chunks/chunk-ULNEO3RY.js +4 -0
  79. package/chunks/{chunk-MXGRYONZ.js → chunk-UMKCOU3N.js} +1 -1
  80. package/chunks/{chunk-536RBSFU.js → chunk-UQ2BC7UA.js} +1 -1
  81. package/chunks/{chunk-HVOPUZOM.js → chunk-VIQLCQOI.js} +1 -1
  82. package/chunks/chunk-VWQLQJVX.js +2 -0
  83. package/chunks/{chunk-CKNA5LIK.js → chunk-WAEXOK7L.js} +1 -1
  84. package/chunks/{chunk-NP723K5L.js → chunk-WILZ4OR2.js} +1 -1
  85. package/chunks/chunk-WJKE6XHF.js +2 -0
  86. package/chunks/{chunk-KQE6FMKW.js → chunk-XYUJCTPP.js} +1 -1
  87. package/chunks/{chunk-P2TABZ4A.js → chunk-YEWODYET.js} +1 -1
  88. package/chunks/{chunk-3SXTMY75.js → chunk-YVN2NZL4.js} +1 -1
  89. package/chunks/{chunk-GBM3TZFD.js → chunk-ZC4F4MYU.js} +1 -1
  90. package/chunks/{chunk-KBFKBL6A.js → chunk-ZWMJQZQF.js} +1 -1
  91. package/chunks/claude-code-ELUDT5TV.js +2 -0
  92. package/chunks/{clone-H3UAEVVP.js → clone-YEBQK7CG.js} +1 -1
  93. package/chunks/cmd-2DAVTVOF.js +2 -0
  94. package/chunks/{commitmsg-7XZGGERO.js → commitmsg-FQ3IZ3TH.js} +2 -2
  95. package/chunks/concern-TIGYH5DX.js +2 -0
  96. package/chunks/deno-XQHOVHKR.js +2 -0
  97. package/chunks/dev-BNGJJR2O.js +4 -0
  98. package/chunks/dist-QVOR7USR.js +13 -0
  99. package/chunks/done-GGPPHJW2.js +2 -0
  100. package/chunks/file-tools-shared-KBTCO2FV.js +2 -0
  101. package/chunks/{gemini-F4KLO5VU.js → gemini-43AWJEWI.js} +1 -1
  102. package/chunks/gh-Q7VEABJS.js +4 -0
  103. package/chunks/gh-contributors-4KGARSNL.js +12 -0
  104. package/chunks/init-45ODFAV3.js +2 -0
  105. package/chunks/{init-J4IHOVZL.js → init-RV7K5JC4.js} +3 -3
  106. package/chunks/{install-KNZDCGIB.js → install-6XIQS5E7.js} +2 -2
  107. package/chunks/invoke-hook-Q3NMJXDO.js +11 -0
  108. package/chunks/kiro-NZ7LM6HA.js +2 -0
  109. package/chunks/list-BOLPKAEY.js +2 -0
  110. package/chunks/{list-N4ZKDFW7.js → list-NYLFIF2U.js} +1 -1
  111. package/chunks/list-UQMPOF5Y.js +2 -0
  112. package/chunks/load-config-G4DHKB5K.js +2 -0
  113. package/chunks/{main-HJQEBLLN.js → main-236QYA7G.js} +2 -2
  114. package/chunks/manifest-3VJ4O6HR.js +2 -0
  115. package/chunks/{mod-4ILLF5PK.js → mod-5JT4O5L3.js} +1 -1
  116. package/chunks/mod-BQJDMCYC.js +2 -0
  117. package/chunks/mod-DXA25A4J.js +2 -0
  118. package/chunks/mod-EWLBSEHA.js +2 -0
  119. package/chunks/mod-GSWVSC2C.js +28 -0
  120. package/chunks/mod-IHYN4TEM.js +3 -0
  121. package/chunks/mod-IXVUQHXS.js +2 -0
  122. package/chunks/mod-P4AVZJNK.js +2 -0
  123. package/chunks/mod-PZSJGUM7.js +2 -0
  124. package/chunks/mod-QWYXFGRG.js +2 -0
  125. package/chunks/{mod-OS3BCM2G.js → mod-SXL6PDQM.js} +1 -1
  126. package/chunks/mod-YH5Z6G4Q.js +2 -0
  127. package/chunks/multipart-parser-SSRHOBFH.js +3 -0
  128. package/chunks/{new-BOGCXTIY.js → new-U5U4E6HR.js} +1 -1
  129. package/chunks/next-AQ4TIEL7.js +9 -0
  130. package/chunks/node-IN5OQP4N.js +68 -0
  131. package/chunks/node-ZGM6SXXI.js +2 -0
  132. package/chunks/ollama-LHWMXMLY.js +2 -0
  133. package/chunks/openai-2KONKHWL.js +2 -0
  134. package/chunks/openai-IRQY5SCR.js +24 -0
  135. package/chunks/opencode-24O2MW3L.js +2 -0
  136. package/chunks/purge-RM6OD5PV.js +5 -0
  137. package/chunks/recipe-applier-TTZEZGSC.js +2 -0
  138. package/chunks/registry-fetcher-SPENFEOH.js +2 -0
  139. package/chunks/release-UEX6YK4K.js +9 -0
  140. package/chunks/release-notes-GA7CTA54.js +4 -0
  141. package/chunks/release-tag-VJWBXG5G.js +2 -0
  142. package/chunks/reset-WHYTPTFB.js +2 -0
  143. package/chunks/rule-ZQOGLQQI.js +3 -0
  144. package/chunks/run-IX74MQTI.js +4 -0
  145. package/chunks/run-L35K3KRF.js +5 -0
  146. package/chunks/scripts-VI2TKQOH.js +2 -0
  147. package/chunks/sdk-L2SQCWYV.js +41 -0
  148. package/chunks/serve-AVVEYGQB.js +4 -0
  149. package/chunks/{server-KNWQV2HW.js → server-R347ON4B.js} +1 -1
  150. package/chunks/spec-KMKZDLV2.js +2 -0
  151. package/chunks/src-6SFGTAGT.js +4 -0
  152. package/chunks/status-MLX4O37A.js +2 -0
  153. package/chunks/sync-PB4KWB3R.js +2 -0
  154. package/chunks/system-BXJ2LV5O.js +2 -0
  155. package/chunks/system-YLXVXRXW.js +2 -0
  156. package/chunks/{unstable_chmod-GDQI7NKH.js → unstable_chmod-2W47KJY3.js} +1 -1
  157. package/chunks/update-522VXIKX.js +6 -0
  158. package/chunks/validate-bom-JCMRVAUT.js +2 -0
  159. package/chunks/validate-case-conflict-WZQCMKSZ.js +2 -0
  160. package/chunks/validate-circular-deps-7R4F2YDV.js +2 -0
  161. package/chunks/validate-commit-msg-PH7Y3JEI.js +2 -0
  162. package/chunks/validate-docs-WCIOHNYP.js +2 -0
  163. package/chunks/validate-eof-KRYQLTFQ.js +2 -0
  164. package/chunks/validate-export-names-OCQ2XSY6.js +2 -0
  165. package/chunks/validate-filenames-46O7FCXF.js +2 -0
  166. package/chunks/validate-json-3EZ2L64H.js +2 -0
  167. package/chunks/validate-large-files-7YX6MSOB.js +2 -0
  168. package/chunks/validate-licenses-OC7JRVAH.js +2 -0
  169. package/chunks/validate-line-endings-2DM5UGCJ.js +2 -0
  170. package/chunks/validate-merge-conflict-UDMWYMJ5.js +2 -0
  171. package/chunks/validate-mod-exports-W24IV367.js +2 -0
  172. package/chunks/validate-package-configs-3Y55ZLUY.js +2 -0
  173. package/chunks/validate-secrets-66VXCCUF.js +2 -0
  174. package/chunks/validate-shebangs-AMEAHVLB.js +2 -0
  175. package/chunks/validate-submodules-DYCE27WK.js +2 -0
  176. package/chunks/validate-symlinks-QN744GUH.js +2 -0
  177. package/chunks/validate-toml-5K2XNHAE.js +2 -0
  178. package/chunks/validate-trailing-whitespace-QYWHHIAK.js +2 -0
  179. package/chunks/validate-yaml-VGKLHEAQ.js +2 -0
  180. package/chunks/versions-FYALONNL.js +2 -0
  181. package/chunks/{vertexai-EXTYPVHK.js → vertexai-2F2A3VTE.js} +1 -1
  182. package/chunks/watch-P56QT3Q2.js +9 -0
  183. package/chunks/workerd-LOWXXQEU.js +2 -0
  184. package/eser.js +1 -1
  185. package/package.json +1 -1
  186. package/chunks/add-5SDE43IH.js +0 -8
  187. package/chunks/approve-XNUZYGYJ.js +0 -2
  188. package/chunks/ask-L3N6REQI.js +0 -3
  189. package/chunks/block-NWIP4USQ.js +0 -2
  190. package/chunks/browser-SG2DBNGS.js +0 -2
  191. package/chunks/bun-3AACRJXG.js +0 -2
  192. package/chunks/changelog-gen-MX6L2Z24.js +0 -10
  193. package/chunks/chunk-2HBVIH7V.js +0 -3
  194. package/chunks/chunk-32HV3K27.js +0 -2
  195. package/chunks/chunk-46ZWBKIW.js +0 -2
  196. package/chunks/chunk-4DOMGQOO.js +0 -2
  197. package/chunks/chunk-AHLJCH32.js +0 -2
  198. package/chunks/chunk-CDPSH56U.js +0 -2
  199. package/chunks/chunk-DAK2I7UC.js +0 -2
  200. package/chunks/chunk-DAYSTLLV.js +0 -2
  201. package/chunks/chunk-DTO2YJWZ.js +0 -2
  202. package/chunks/chunk-DYRTLYTU.js +0 -3
  203. package/chunks/chunk-G6NAG2EK.js +0 -2
  204. package/chunks/chunk-JAQN64PH.js +0 -13
  205. package/chunks/chunk-JOTAKQMZ.js +0 -2
  206. package/chunks/chunk-LNNNLUZT.js +0 -2
  207. package/chunks/chunk-MRCBHVSB.js +0 -2
  208. package/chunks/chunk-OIZ7HL2C.js +0 -61
  209. package/chunks/chunk-PE2TDUXD.js +0 -19
  210. package/chunks/chunk-RGUETQSC.js +0 -4
  211. package/chunks/chunk-STI6DX7K.js +0 -2
  212. package/chunks/chunk-TFPT4BDY.js +0 -15
  213. package/chunks/chunk-UESOCN2G.js +0 -2
  214. package/chunks/chunk-W3RVRCUB.js +0 -2
  215. package/chunks/chunk-WG6J7DFO.js +0 -7
  216. package/chunks/chunk-XVSIRN6G.js +0 -4
  217. package/chunks/chunk-Y4ARZGGL.js +0 -2
  218. package/chunks/claude-code-VUBEU7RR.js +0 -2
  219. package/chunks/concern-ZO533WR2.js +0 -2
  220. package/chunks/deno-7BSPHDRG.js +0 -2
  221. package/chunks/dev-PTMXZEVC.js +0 -4
  222. package/chunks/done-DIN56LXZ.js +0 -2
  223. package/chunks/file-tools-shared-G36OYF5S.js +0 -2
  224. package/chunks/fileFromPath-MB3IRZVW.js +0 -7
  225. package/chunks/gh-L25JQWOY.js +0 -5
  226. package/chunks/gh-contributors-E7IZ2LFS.js +0 -12
  227. package/chunks/init-3B7XMH2J.js +0 -2
  228. package/chunks/invoke-hook-I2T7HYRT.js +0 -10
  229. package/chunks/kiro-HQLXD6ZU.js +0 -2
  230. package/chunks/list-5TGTYMAU.js +0 -2
  231. package/chunks/list-PY3A762R.js +0 -2
  232. package/chunks/load-config-FTQMJVEW.js +0 -2
  233. package/chunks/manifest-NF2EK757.js +0 -2
  234. package/chunks/mod-FEGQZ3ZY.js +0 -2
  235. package/chunks/mod-HKYPZOU7.js +0 -2
  236. package/chunks/mod-JI2A2546.js +0 -2
  237. package/chunks/mod-JZNE2HH6.js +0 -2
  238. package/chunks/mod-MLRQFSBE.js +0 -2
  239. package/chunks/mod-NCF6OSXO.js +0 -2
  240. package/chunks/mod-PFWQZF3T.js +0 -28
  241. package/chunks/mod-T5VHCXJT.js +0 -2
  242. package/chunks/mod-W3DBWTCY.js +0 -11
  243. package/chunks/mod-YX3JRMSI.js +0 -2
  244. package/chunks/next-TMHSP2BS.js +0 -4
  245. package/chunks/node-KCQF6QQA.js +0 -60
  246. package/chunks/node-MFKYO4CY.js +0 -2
  247. package/chunks/ollama-36F5QAOO.js +0 -2
  248. package/chunks/openai-EU5TJZ5T.js +0 -2
  249. package/chunks/openai-IKXRJYI3.js +0 -20
  250. package/chunks/opencode-7J3JDC44.js +0 -2
  251. package/chunks/purge-XYNNHOEN.js +0 -5
  252. package/chunks/recipe-applier-6QZYAZ57.js +0 -2
  253. package/chunks/registry-fetcher-76ISLGRR.js +0 -2
  254. package/chunks/release-J3PVDROM.js +0 -9
  255. package/chunks/release-notes-AARDYXYA.js +0 -4
  256. package/chunks/release-tag-H2YWUXRU.js +0 -2
  257. package/chunks/reset-EYLAZVKO.js +0 -2
  258. package/chunks/rule-JMNIMEH3.js +0 -3
  259. package/chunks/run-NSJ5YV6R.js +0 -4
  260. package/chunks/run-RGEZUAPM.js +0 -5
  261. package/chunks/scripts-JK6W2MCO.js +0 -2
  262. package/chunks/sdk-MXV452BR.js +0 -19
  263. package/chunks/serve-XVAIQ37L.js +0 -4
  264. package/chunks/spec-3UGU4UBE.js +0 -2
  265. package/chunks/status-6SC3L7U2.js +0 -2
  266. package/chunks/sync-M7MKXMYN.js +0 -2
  267. package/chunks/system-L2JVPTCT.js +0 -2
  268. package/chunks/system-WTPEDJU6.js +0 -2
  269. package/chunks/update-4C4WNXCE.js +0 -6
  270. package/chunks/validate-bom-QVE5HNBO.js +0 -2
  271. package/chunks/validate-case-conflict-XFS3URQN.js +0 -2
  272. package/chunks/validate-circular-deps-BMPAT3PF.js +0 -2
  273. package/chunks/validate-commit-msg-BPESCI7P.js +0 -2
  274. package/chunks/validate-docs-ITL4L6KY.js +0 -2
  275. package/chunks/validate-eof-DTFV74VL.js +0 -2
  276. package/chunks/validate-export-names-HLOH7D73.js +0 -2
  277. package/chunks/validate-filenames-J4RTDEBD.js +0 -2
  278. package/chunks/validate-json-KMODGNSU.js +0 -2
  279. package/chunks/validate-large-files-X5YF7D7T.js +0 -2
  280. package/chunks/validate-licenses-OZ7DXQTY.js +0 -2
  281. package/chunks/validate-line-endings-PFF6QJ3W.js +0 -2
  282. package/chunks/validate-merge-conflict-KB2X6QLW.js +0 -2
  283. package/chunks/validate-mod-exports-VHK2NVKI.js +0 -2
  284. package/chunks/validate-package-configs-ZNCAIYRO.js +0 -2
  285. package/chunks/validate-secrets-RM6DMZVG.js +0 -2
  286. package/chunks/validate-shebangs-WC66D7RK.js +0 -2
  287. package/chunks/validate-submodules-SPAXASAG.js +0 -2
  288. package/chunks/validate-symlinks-4LOWK2MQ.js +0 -2
  289. package/chunks/validate-toml-SG4IITMN.js +0 -2
  290. package/chunks/validate-trailing-whitespace-GRE2PJ6T.js +0 -2
  291. package/chunks/validate-yaml-RA22QNW6.js +0 -2
  292. package/chunks/versions-ODYWYT7U.js +0 -2
  293. package/chunks/watch-YKYNWTZF.js +0 -9
  294. package/chunks/workerd-VVSAKLDZ.js +0 -2
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as C,d as U}from"./chunk-P74JF7XR.js";import{a as E}from"./chunk-UESOCN2G.js";import{a as S}from"./chunk-LNNNLUZT.js";import{d as f,e as h,j as g}from"./chunk-WG6J7DFO.js";import"./chunk-JYNHFD6B.js";import{f as d,h as w,k as u}from"./chunk-GBM3TZFD.js";import{c as n,d as i,f as l,g as m}from"./chunk-3SXTMY75.js";import{a as o,b as p}from"./chunk-A6RDYP6R.js";import{t as c}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var G=async y=>{let e=d({renderer:u.ansi(),sink:w.stdout()}),s=c.process.cwd(),t=await f(s),$=await g(s);if(t.phase!=="EXECUTING")return e.writeln(l(`Cannot complete in phase: ${t.phase}`)),e.writeln(i("Only EXECUTING phase can transition to DONE.")),await e.close(),p({exitCode:1});let r=E(t,"DONE");if(await h(s,r),r.spec!==null&&(await C(s,r.spec,"done"),await U(s,r.spec,"done")),e.writeln(m("\u2714")," Spec completed!"),e.writeln(""),e.writeln(" Spec: ",n(t.spec??"unknown")),e.writeln(` Iterations: ${t.execution.iteration}`),e.writeln(` Decisions: ${t.decisions.length}`),t.decisions.length>0){let a=t.decisions.filter(k=>k.promoted);a.length>0&&e.writeln(i(` Promoted to rules: ${a.length}`))}return e.writeln(""),e.writeln("Start a new spec with: ",n(`${S('spec new "..."',$)}`)),await e.close(),o(void 0)};export{G as main};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b,c,d,e,f,g,h}from"./chunk-HVLKXRPA.js";import"./chunk-NBA6EFWU.js";import"./chunk-PVPMHMKP.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{a as DEFAULT_EXCLUDES,g as applyMutations,e as isBinaryBytes,d as loadBytes,c as loadContent,f as matchesAnyPattern,b as walkSourceFiles,h as writeMutations};
@@ -1,7 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{c as h,d as j}from"./chunk-PE2TDUXD.js";import{a as M,c as g,e as P}from"./chunk-G6NAG2EK.js";var m=g((v,d)=>{if(!globalThis.DOMException)try{let{MessageChannel:e}=M("worker_threads"),t=new e().port1,r=new ArrayBuffer;t.postMessage(r,[r,r])}catch(e){e.constructor.name==="DOMException"&&(globalThis.DOMException=e.constructor)}d.exports=globalThis.DOMException});var b=P(m(),1);import{statSync as S,createReadStream as T,promises as w}from"fs";import{basename as _}from"path";var E=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase();function F(e){if(E(e)!=="object")return!1;let t=Object.getPrototypeOf(e);return t==null?!0:(t.constructor&&t.constructor.toString())===Object.toString()}var p=F;var u=function(e,t,r,o,i){if(o==="m")throw new TypeError("Private method is not writable");if(o==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return o==="a"?i.call(e,r):i?i.value=r:t.set(e,r),r},a=function(e,t,r,o){if(r==="a"&&!o)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!o:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?o:r==="a"?o.call(e):o?o.value:t.get(e)},s,c,x="The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.",f=class e{constructor(t){s.set(this,void 0),c.set(this,void 0),u(this,s,t.path,"f"),u(this,c,t.start||0,"f"),this.name=_(a(this,s,"f")),this.size=t.size,this.lastModified=t.lastModified}slice(t,r){return new e({path:a(this,s,"f"),lastModified:this.lastModified,size:r-t,start:t})}async*stream(){let{mtimeMs:t}=await w.stat(a(this,s,"f"));if(t>this.lastModified)throw new b.default(x,"NotReadableError");this.size&&(yield*T(a(this,s,"f"),{start:a(this,c,"f"),end:a(this,c,"f")+this.size-1}))}get[(s=new WeakMap,c=new WeakMap,Symbol.toStringTag)](){return"File"}};function y(e,{mtimeMs:t,size:r},o,i={}){let n;p(o)?[i,n]=[o,void 0]:n=o;let l=new f({path:e,size:r,lastModified:t});return n||(n=l.name),new h([l],n,{...i,lastModified:l.lastModified})}function G(e,t,r={}){let o=S(e);return y(e,o,t,r)}async function A(e,t,r){let o=await w.stat(e);return y(e,o,t,r)}export{A as fileFromPath,G as fileFromPathSync,j as isFile};
3
- /*! Bundled license information:
4
-
5
- node-domexception/index.js:
6
- (*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
7
- */
@@ -1,5 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as l}from"./chunk-4DOMGQOO.js";import"./chunk-WF6JNPZS.js";import"./chunk-J2Z7NG2X.js";import"./chunk-VAIRJES2.js";import"./chunk-S7S2I2K5.js";import"./chunk-NBA6EFWU.js";import"./chunk-GBM3TZFD.js";import"./chunk-7DPLGQHN.js";import{b as o,f as r,i}from"./chunk-3SXTMY75.js";import{g as t}from"./chunk-A6RDYP6R.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var c=l(),m=()=>{c.writeln(i("\u2139"),o(` eser codebase gh \u2014 GitHub operations
3
- `)),console.log("Subcommands:"),console.log(" contributors Update contributor list in README.md"),console.log(" release-notes Sync CHANGELOG to GitHub Releases"),console.log(" release-tag Create and push release git tags"),console.log(`
4
- Run 'eser codebase gh <subcommand> --help' for details.`)},w=async u=>{let n=u??[],s=n[0],e=n.slice(1);if(s===void 0||s==="--help"||s==="-h")return m(),t.ok(void 0);switch(s){case"contributors":return await(await import("./gh-contributors-E7IZ2LFS.js")).main(e);case"release-notes":return await(await import("./release-notes-AARDYXYA.js")).main(e);case"release-tag":return await(await import("./release-tag-H2YWUXRU.js")).main(e);default:return c.writeln(r("\u2717"),o(` Unknown gh subcommand: ${s}
5
- `)),m(),t.fail({exitCode:1})}};export{w as main};
@@ -1,12 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import"./chunk-SOSF762G.js";import"./chunk-JOTAKQMZ.js";import{a as A}from"./chunk-2VEVVX6U.js";import{a as y,b as $}from"./chunk-4DOMGQOO.js";import"./chunk-WF6JNPZS.js";import"./chunk-J2Z7NG2X.js";import"./chunk-VAIRJES2.js";import"./chunk-S7S2I2K5.js";import"./chunk-NBA6EFWU.js";import{f as R}from"./chunk-3BEX5FYF.js";import"./chunk-GBM3TZFD.js";import"./chunk-7DPLGQHN.js";import{b as c,f as C,g,i as x}from"./chunk-3SXTMY75.js";import{e as l}from"./chunk-PVPMHMKP.js";import"./chunk-PWLF3WXM.js";import"./chunk-KVTG56GS.js";import"./chunk-PZNCE6QK.js";import{a as w}from"./chunk-MG65QJY6.js";import{g as a}from"./chunk-A6RDYP6R.js";import"./chunk-2BOCLC67.js";import"./chunk-N7DXBY3O.js";import{n as b}from"./chunk-7ATUODBM.js";import"./chunk-AP72BKVG.js";import{v as p}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var d=y(),m="<!-- CONTRIBUTORS:START -->",u="<!-- CONTRIBUTORS:END -->",O=async()=>{let t=await l.exec`gh repo view --json owner,name`.text(),e=JSON.parse(t);return{owner:e.owner.login,name:e.name}},U=async(t,e)=>{let n=await l.exec`gh api repos/${t}/${e}/contributors --paginate`.text();return JSON.parse(n).filter(o=>!o.login.includes("[bot]"))},M=(t,e=8)=>{if(t.length===0)return`${m}
3
- ${u}`;let n=[];for(let r=0;r<t.length;r+=e){let i=t.slice(r,r+e).map(s=>` <td align="center"><a href="${s.html_url}"><img src="${s.avatar_url}?s=80" width="80" /><br /><sub>${s.login}</sub></a></td>`);n.push(` <tr>
4
- ${i.join(`
5
- `)}
6
- </tr>`)}return`${m}
7
- <table>
8
- ${n.join(`
9
- `)}
10
- </table>
11
- ${u}`},T=(t,e)=>{let n=t.indexOf(m),r=t.indexOf(u);if(n===-1||r===-1)throw new Error(`Could not find contributor markers in README. Add '${m}' and '${u}' markers to the file.`);let o=t.slice(0,n),i=t.slice(r+u.length),s=`${o}${e}${i}`;return{content:s,changed:s!==t}},k=async(t={})=>{let{readmePath:e="README.md",columnsPerRow:n=8,commit:r=!1}=t,o=b(e),i=await O(),s=await U(i.owner,i.name),E=M(s,n),P=await p.runtime.fs.readTextFile(o),{content:v,changed:h}=T(P,E),f=!1;return h&&(await p.runtime.fs.writeTextFile(o,v),r&&(await l.exec`git add ${o}`.spawn(),await l.exec`git -c user.name=${"github-actions[bot]"} -c user.email=${"github-actions[bot]@users.noreply.github.com"} commit -m ${"docs: update contributors list"}`.spawn(),await l.exec`git push`.spawn(),f=!0)),{contributorCount:s.length,readmePath:o,updated:h,committed:f}},N=t=>R.fromPromise(()=>k(t)),S=t=>{let e=t.flags.columns,n=e!==void 0?Number(e):void 0;return a.ok({readmePath:t.flags.readme??void 0,columnsPerRow:n,commit:t.flags.commit===!0})},I=t=>{if(a.isFail(t)){let n=t.error,r=n instanceof Error?n.message:n.message??String(n);return d.writeln(C("\u2717"),c(" "+r)),a.fail({exitCode:1})}let{value:e}=t;return e.updated?e.committed?d.writeln(g("\u2713"),c(` Updated ${e.contributorCount} contributors and committed changes.`)):d.writeln(g("\u2713"),c(` Updated ${e.contributorCount} contributors in ${e.readmePath}.`)):d.writeln(x("\u2139"),c(` No changes \u2014 ${e.contributorCount} contributors already up to date.`)),a.ok(void 0)},D=A.createTrigger({handler:N,adaptInput:S,adaptOutput:I}),G=async t=>{let e=w(t??[],{string:["columns","readme"],boolean:["commit"],alias:{h:"help"}});if(e.help)return console.log(`eser codebase gh contributors \u2014 Update contributor list
12
- `),console.log("Options:"),console.log(" --columns <n> Number of columns per row (default: 8)"),console.log(" --readme <path> Path to README.md (default: README.md)"),console.log(" --commit Auto-commit and push changes"),console.log(" --help, -h Show this help"),a.ok(void 0);let n=$("gh-contributors",e);return await D(n)};export{U as fetchContributors,M as generateContributorMarkdown,O as getRepoInfo,D as handleCli,G as main,T as replaceContributorSection,k as updateContributors,N as updateContributorsHandler};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as ee,b as te}from"./chunk-SP43S32B.js";import{d as Z}from"./chunk-5GGGQJ4P.js";import{a as V}from"./chunk-AHLJCH32.js";import{a as Q,b as X}from"./chunk-JAQN64PH.js";import"./chunk-DAYSTLLV.js";import{b}from"./chunk-OCPEFZBJ.js";import{a as I}from"./chunk-LNNNLUZT.js";import{d as Y}from"./chunk-2EVWKUN6.js";import{a as J,b as G,e as _,j as q,k as B,m as H,o as K,q as U}from"./chunk-WG6J7DFO.js";import"./chunk-7ZYDAZBD.js";import{a as P,b as M,e as S,f as W,g as z,h as r,i as h}from"./chunk-JOTAKQMZ.js";import"./chunk-JYNHFD6B.js";import{a as F}from"./chunk-46ZWBKIW.js";import"./chunk-GE3LJ6QM.js";import"./chunk-BNQAZLIQ.js";import"./chunk-GBM3TZFD.js";import"./chunk-3SXTMY75.js";import"./chunk-J7YTWK67.js";import"./chunk-PVPMHMKP.js";import"./chunk-4MVO4LD5.js";import"./chunk-KVTG56GS.js";import"./chunk-PZNCE6QK.js";import"./chunk-MG65QJY6.js";import{a as T}from"./chunk-A6RDYP6R.js";import{q as E,t as f}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var se=F;var de=async t=>{try{return await f.fs.stat(t),!0}catch{return!1}},ue=[{id:"claude-code",paths:["CLAUDE.md",".claude"]},{id:"cursor",paths:[".cursorrules",".cursor"]},{id:"kiro",paths:[".kiro"]},{id:"copilot",paths:[".github/copilot-instructions.md"]},{id:"windsurf",paths:[".windsurfrules"]}],ne=async t=>{let e=[];for(let o of ue)for(let s of o.paths)if(await de(`${t}/${s}`)){e.push(o.id);break}return e};var a=async t=>{try{return await f.fs.stat(t),!0}catch{return!1}},oe=async(t,e)=>{try{let o=await f.fs.readTextFile(t);return JSON.parse(o)[e]??null}catch{return null}},fe=async t=>{let e=[];return(await a(`${t}/package.json`)||await a(`${t}/deno.json`))&&e.push("typescript"),await a(`${t}/go.mod`)&&e.push("go"),await a(`${t}/Cargo.toml`)&&e.push("rust"),(await a(`${t}/pyproject.toml`)||await a(`${t}/setup.py`))&&e.push("python"),e},me=async t=>{let e=[],o=await oe(`${t}/package.json`,"dependencies");return o!==null&&("react"in o&&e.push("react"),"vue"in o&&e.push("vue"),"svelte"in o&&e.push("svelte"),"next"in o&&e.push("nextjs"),"express"in o&&e.push("express"),"hono"in o&&e.push("hono")),e},ge=async t=>{let e=[];return await a(`${t}/.github/workflows`)&&e.push("github-actions"),await a(`${t}/.gitlab-ci.yml`)&&e.push("gitlab-ci"),await a(`${t}/Jenkinsfile`)&&e.push("jenkins"),await a(`${t}/.circleci`)&&e.push("circleci"),e},he=async t=>{if(await a(`${t}/deno.json`))return"deno";let e=await oe(`${t}/package.json`,"devDependencies");if(e!==null){if("vitest"in e)return"vitest";if("jest"in e)return"jest";if("playwright"in e)return"playwright"}return null},ie=async t=>{let[e,o,s,d]=await Promise.all([fe(t),me(t),ge(t),he(t)]);return{languages:e,frameworks:o,ci:s,testRunner:d}};var Me=async t=>{let e=f.process.cwd(),o=ee(t),s=M({target:o==="agent"?"non-interactive":"interactive"}),d=te(t),w=re(d,"--concerns"),m=re(d,"--tools"),u=d.includes("--non-interactive")||o==="agent";if(await U(e)){let n=await q(e);return r.warn(s,"noskills is already initialized in this project."),r.info(s,`Run \`${I("sync",n)}\` to regenerate tool files.`),T(void 0)}W(s,"noskills init");let x=h(s,"Scanning project...");x.start();let g=await ie(e);x.succeed("Project scanned");for(let n of g.languages)r.step(s,` ${n}`);for(let n of g.frameworks)r.step(s,` ${n}`);for(let n of g.ci)r.step(s,` ${n}`);g.testRunner!==null&&r.step(s,` test runner: ${g.testRunner}`);let j=h(s,"Detecting coding tools...");j.start();let D=await ne(e),y=Z(),A=y!==null&&!D.includes(y)?[y]:[],C=[...new Set([...A,...D])];j.succeed(`${C.length} coding tool(s) detected`);for(let n of C){let i=n===y?" (current)":"";r.step(s,` ${n}${i}`)}let p;if(m!==null){let n=["claude-code","cursor","kiro","copilot","windsurf"],i=m.filter(l=>n.includes(l));p=[...new Set([...A,...i])]}else u?p=[...C]:p=await Ce(s,C,y);let L=h(s,"Detecting AI providers...");L.start();let $=(await se()).filter(n=>n.available).map(n=>n.name);L.succeed(`${$.length} provider(s) detected`);let k=await b(),c;if(w!==null){let n=k.map(i=>i.id);c=w.filter(i=>n.includes(i)).sort((i,l)=>n.indexOf(i)-n.indexOf(l))}else if(u)c=[];else{let n=k.map(l=>({value:l.id,label:l.name,hint:l.description.slice(0,60)})),i=await S(s,{message:"What kind of project is this? (space to toggle, enter to confirm)",options:n});c=P(i)?[]:[...i]}c.length>0?r.success(s,`Concerns: ${c.join(", ")}`):r.info(s,"No concerns selected. Add later with `concern add <id>`.");let N=await ve(),O=h(s,"Initializing...");O.start(),await K(e);let ae=k.filter(n=>c.includes(n.id));for(let n of ae)await H(e,n);let v={...G(c,p,$,g),command:N};await B(e,v);let R=J();if(await _(e,R),O.succeed("Scaffolded `.eser/`"),p.length>0){let n=h(s,"Syncing tool files...");n.start();let i=await X(e,p,v);n.succeed(`Synced ${i.length} tool(s)`)}else r.warn(s,"No tools selected. noskills will work in agentless CLI mode only."),r.info(s,"Add tools later with `noskills sync`.");if(r.success(s,`Done. ${p.length} tool(s), ${$.length} provider(s), ${c.length} concern(s).`),r.info(s,`Command prefix: ${N}`),o==="agent"){let i=(await b()).filter(le=>c.includes(le.id)),l=await Q(e),ce=V(R,i,l,v);await Y(ce,"json")}else z(s,`Start a spec with: ${I('spec new "..."',v)}`);return T(void 0)},ye=[{value:"claude-code",label:"Claude Code"},{value:"cursor",label:"Cursor"},{value:"kiro",label:"Kiro"},{value:"copilot",label:"GitHub Copilot"},{value:"windsurf",label:"Windsurf"}],Ce=async(t,e,o)=>{let s=e.length===0?"No coding tools detected. Which tools do you use? (space to toggle)":"Any additional tools? (space to toggle, enter to skip)",d=new Set(e),w=await S(t,{message:s,options:ye.map(u=>({...u,hint:u.value===o?"you're running inside it":d.has(u.value)?"detected":void 0,disabled:u.value===o})),initialValues:[...e],required:!1});if(P(w))return[...e];let m=[...w];return o!==null&&!m.includes(o)&&m.unshift(o),m},re=(t,e)=>{if(t===void 0)return null;for(let o of t)if(o.startsWith(`${e}=`))return o.slice(e.length+1).split(",").map(s=>s.trim()).filter(Boolean);return null},ve=async()=>{try{return`${await E({command:"eser",devCommand:"deno task cli",npmPackage:"eser@latest",jsrPackage:"@eser/cli"})} noskills`}catch{return"npx eser@latest noskills"}};export{Me as main};
@@ -1,10 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as D}from"./chunk-AHLJCH32.js";import{a as C}from"./chunk-JAQN64PH.js";import"./chunk-DAYSTLLV.js";import"./chunk-OCPEFZBJ.js";import{a as d}from"./chunk-LNNNLUZT.js";import{c as g,d as $,j as y,n as x,q as v}from"./chunk-WG6J7DFO.js";import"./chunk-JYNHFD6B.js";import{a as r}from"./chunk-A6RDYP6R.js";import{t as i}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var S=async()=>{let e=i.process.stdin.getReader(),s=[];try{for(;;){let{done:o,value:a}=await e.read();if(o||a===void 0)break;s.push(a)}}finally{e.releaseLock()}let t=0,c=new Uint8Array(s.reduce((o,a)=>o+a.length,0));for(let o of s)c.set(o,t),t+=o.length;let n=new TextDecoder().decode(c);try{return JSON.parse(n)}catch{return{}}},P=async e=>{let s=new TextEncoder,t=i.process.stdout.getWriter();await t.write(s.encode(JSON.stringify(e))),t.releaseLock()},W=async e=>{switch(e?.[0]){case"pre-tool-use":return await T();case"stop":return await F();case"post-file-write":return await E();case"post-bash":return await I();case"session-start":return await N();default:return r(void 0)}},T=async()=>{let e=await S(),s=e.tool_name??"unknown",t=e.tool_input??{},c=e.cwd??i.process.cwd(),n=await y(c),o={};try{o=await $(c)}catch{return r(void 0)}let a=async u=>{await P({hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:`noskills: ${u}`}})};if(o.pendingClear===!0)return await a(`Task accepted. You must run \`/clear\` and then \`${d("next",n)}\` before continuing.`),r(void 0);if(s==="Bash"){let u=(t.command??"").trim();if(!(n?.allowGit??!1)){let w=["git add","git commit","git push","git merge","git rebase","git checkout","git stash","git reset","git cherry-pick","git tag","git branch -d","git branch -D","git branch -m","git revert","git am","git mv","git rm"];for(let p of w)if(u.startsWith(p)||u.includes(` && ${p}`)||u.includes(`; ${p}`))return await a("git is read-only for agents. The user controls git. You may use `git log`, `git diff`, `git status`, `git show`, `git blame`."),r(void 0)}return r(void 0)}if(!["Write","Edit","MultiEdit"].includes(s))return r(void 0);let m=t.file_path??t.path??"";if(m.includes(".eser/")||m.includes(".claude/"))return r(void 0);let f=o.phase??"UNKNOWN";if(f==="EXECUTING")return r(void 0);let k={IDLE:`No active spec. Run \`${d("spec new",n)}\``,UNINITIALIZED:`noskills not initialized. Run \`${d("init",n)}\``,DISCOVERY:`Discovery in progress. Run \`${d("next",n)}\` to continue.`,SPEC_DRAFT:`Spec needs review. Run \`${d("approve",n)}\``,SPEC_APPROVED:`Start execution first: \`${d('next --answer="start"',n)}\``,BLOCKED:`Execution blocked. Resolve with \`${d('next --answer="resolution"',n)}\``,DONE:`Spec complete. Start a new one or run \`${d("reset",n)}\``};return await a(k[f]??`Run \`${d("next",n)}\` first.`),r(void 0)},F=async()=>{let e=await S();if(e.stop_hook_active===!0)return r(void 0);let s=e.cwd??i.process.cwd(),t;try{let l=await i.fs.readTextFile(`${s}/${g.stateFile}`);t=JSON.parse(l)}catch{return r(void 0)}if(t.phase!=="EXECUTING")return r(void 0);let c=t.execution??{},n=`${s}/${g.stateDir}/files-changed.jsonl`,o=[];try{let w=(await i.fs.readTextFile(n)).trim().split(`
3
- `).filter(Boolean);o=[...new Set(w.map(p=>{try{return JSON.parse(p).file}catch{return null}}).filter(p=>p!==null))]}catch{}let a=[],h="no changes";try{let{execSync:l}=await import("node:child_process");a=l("git diff --name-only",{cwd:s,encoding:"utf-8",timeout:5e3}).trim().split(`
4
- `).filter(Boolean);let R=l("git diff --stat",{cwd:s,encoding:"utf-8",timeout:5e3}).trim().split(`
5
- `);h=R[R.length-1]??"no changes"}catch{}let m=[...new Set([...o,...a])],f=(c.iteration??0)+1,k=`${s}/${g.stateDir}/iterations`;try{await i.fs.mkdir(k,{recursive:!0}),await i.fs.writeTextFile(`${k}/iteration-${f}.json`,JSON.stringify({iteration:f,files:m,gitStat:h.trim(),timestamp:new Date().toISOString()},null,2)+`
6
- `)}catch{}let u=15;try{let l=await y(s);l!==null&&(u=l.maxIterationsBeforeRestart)}catch{}t.execution={...c,iteration:f,modifiedFiles:m,lastProgress:h.trim()||c.lastProgress||null},t.lastCalledAt=new Date().toISOString();try{await i.fs.writeTextFile(`${s}/${g.stateFile}`,JSON.stringify(t,null,2)+`
7
- `)}catch{}try{await i.fs.writeTextFile(n,"")}catch{}if(f>=u){let l=new TextEncoder,w=i.process.stderr.getWriter();await w.write(l.encode(`noskills: iteration ${f} reached threshold (${u}). Consider starting a fresh conversation.
8
- `)),w.releaseLock()}return r(void 0)},E=async()=>{let e=await S(),s=e.tool_input??{},t=s.file_path??s.path??"";if(!t||t.includes(".eser/")||t.includes(".claude/"))return r(void 0);let c=e.cwd??i.process.cwd(),n=`${c}/${g.stateDir}/files-changed.jsonl`,o=JSON.stringify({file:t,tool:e.tool_name,ts:new Date().toISOString()});try{await i.fs.mkdir(`${c}/${g.stateDir}`,{recursive:!0});let a="";try{a=await i.fs.readTextFile(n)}catch{}await i.fs.writeTextFile(n,a+o+`
9
- `)}catch{}return r(void 0)},I=async()=>{let e=await S(),t=(e.tool_input??{}).command??"";if(!t.includes("noskills"))return r(void 0);let c=e.cwd??i.process.cwd(),n=`${c}/${g.stateDir}/noskills-calls.jsonl`,o=JSON.stringify({command:t,ts:new Date().toISOString()});try{await i.fs.mkdir(`${c}/${g.stateDir}`,{recursive:!0});let a="";try{a=await i.fs.readTextFile(n)}catch{}await i.fs.writeTextFile(n,a+o+`
10
- `)}catch{}return r(void 0)},N=async()=>{let e=i.process.cwd();if(!await v(e))return r(void 0);let s=await $(e),t=await y(e),n=(await x(e)).filter(h=>t!==null&&t.concerns.includes(h.id)),o=await C(e),a=D(s,n,o,t);return await P(a),r(void 0)};export{W as main};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b}from"./chunk-YVIGHK4H.js";import"./chunk-455V3AE5.js";import"./chunk-J7YTWK67.js";import"./chunk-PVPMHMKP.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{a as KiroModel,b as kiroFactory};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as p}from"./chunk-46ZWBKIW.js";import{f as o,h as m,k as d}from"./chunk-GBM3TZFD.js";import{c as t,d as a,g as l,m as n}from"./chunk-3SXTMY75.js";import"./chunk-PVPMHMKP.js";import{a as i}from"./chunk-A6RDYP6R.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var $=async b=>{let e=o({renderer:d.ansi(),sink:m.stdout()});e.writeln(t("AI Providers")),e.writeln("");let r=await p(),v=r.map(s=>[s.available?l("\u25CF"):a("\u25CB"),s.available?t(`${s.name} (${s.alias})`):a(`${s.name} (${s.alias})`),a(s.type),s.available?s.detail:a(s.detail)]);e.writeln(n(["","Provider","Type","Status"],v));let u=r.filter(s=>s.available).length;return e.writeln(a(`${u}/${r.length} providers available`)),await e.close(),i(void 0)};export{$ as main};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as R,d as h}from"./chunk-3BEX5FYF.js";import{k as S}from"./chunk-UJ6LH5FY.js";import{f as m,h as f,k as y}from"./chunk-GBM3TZFD.js";import{c as p,d as l,k as d}from"./chunk-3SXTMY75.js";import{a as u}from"./chunk-MG65QJY6.js";import{a as n,b as o,c as g}from"./chunk-A6RDYP6R.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var w=["project","structure","utility"],C={project:"PROJECTS",structure:"STRUCTURES",utility:"UTILITIES"},k=t=>R(async r=>{try{let s=await S(t.registrySource,{local:t.local}),e=[...s.recipes];if(t.language!==void 0&&(e=e.filter(i=>i.language===t.language)),t.scale!==void 0&&(e=e.filter(i=>i.scale===t.scale)),t.tag!==void 0&&(e=e.filter(i=>i.tags!==void 0&&i.tags.includes(t.tag))),e.length===0)return r.out.writeln("No recipes found matching your filters."),r.out.writeln("Run ",l("`eser kit list`")," without filters to see all recipes."),n({manifest:s,recipes:e});r.out.writeln(p(`${s.name} \u2014 ${s.description}`)),r.out.writeln();for(let i of w){let c=e.filter(a=>a.scale===i);if(c.length!==0){r.out.writeln(d(C[i]));for(let a of c)r.out.writeln(` ${a.name.padEnd(20)} ${a.description} `,l(`[${a.language}]`));r.out.writeln()}}return n({manifest:s,recipes:e})}catch(s){let e=s instanceof Error?s.message:String(s);return o({_tag:"RegistryError",message:e})}});var $=async t=>{let r=u(t??[],{string:["registry","language","scale","tag"],boolean:["local"]}),s=m({renderer:y.ansi(),sink:f.stdout()}),e=await h(k({registrySource:r.registry,language:r.language,scale:r.scale,tag:r.tag,local:r.local===!0}),{out:s});return await s.close(),g(e)?n(void 0):o({exitCode:1})};export{$ as main};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a}from"./chunk-ZNGLZECE.js";import"./chunk-GTHXGAMQ.js";import"./chunk-LCG4SK6K.js";import"./chunk-7DPLGQHN.js";import"./chunk-3SXTMY75.js";import"./chunk-N7DXBY3O.js";import"./chunk-AP72BKVG.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{a as loadConfig};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b,c}from"./chunk-W3RVRCUB.js";import"./chunk-JYNHFD6B.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{a as MANIFEST_FILENAMES,c as getManifestPath,b as loadManifest};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b,c,d,e,f as g,g as h,h as i,i as j,j as k,k as l}from"./chunk-GBM3TZFD.js";import{p as f}from"./chunk-3SXTMY75.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{b as PipelineError,a as StreamError,c as TimeoutError,d as createChunk,e as defineLayer,k as layers,g as output,h as pipeline,l as renderers,i as sinks,j as sources,f as span};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{d as S}from"./chunk-NBA6EFWU.js";import{e as q}from"./chunk-LCG4SK6K.js";import"./chunk-7DPLGQHN.js";import"./chunk-3SXTMY75.js";import{t as n}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var h=q.getLogger(["laroux","image-optimizer"]),$=null;async function j(){return $===null&&($=await import("npm:sharp@^0.33.5")),$.default??$}var F={formats:["webp","original"],widths:[640,768,1024,1280,1920],quality:{webp:80,avif:75,jpeg:85,png:90},generateBlurPlaceholder:!0,placeholderWidth:10};async function B(i){let r=[],o=["jpg","jpeg","png","gif","webp"];async function a(t){try{for await(let e of n.fs.readDir(t)){let s=n.path.resolve(t,e.name);e.isDirectory?await a(s):e.isFile&&S(e.name.toLowerCase(),o)&&r.push(s)}}catch{}}return await a(i),r}async function E(i,r){return`data:image/webp;base64,${(await(await j())(i).resize(r,void 0,{fit:"inside"}).blur(5).webp({quality:20}).toBuffer()).toString("base64")}`}async function C(i,r,o,a={}){let t=await j(),e={...F,...a},s=t(i),l=await s.metadata();if(l.width===void 0||l.height===void 0)throw new Error(`Could not read image dimensions: ${i}`);let u=l.width,w=l.height,y=u/w,m=n.path.extname(i),p=m.slice(1).toLowerCase(),f=n.path.basename(i,m),x=`${o}/${f}`,I=[];for(let c of e.widths){if(c>u)continue;let O=Math.round(c/y);for(let b of e.formats){let z,d;b==="original"?(d=p,z=n.path.resolve(r,`${f}-${c}w.${p}`)):(d=b,z=n.path.resolve(r,`${f}-${c}w.${b}`)),await n.fs.ensureDir(n.path.dirname(z));let g=s.clone().resize(c,O,{fit:"cover"});b==="webp"?g=g.webp({quality:e.quality.webp}):b==="avif"?g=g.avif({quality:e.quality.avif}):d==="jpg"||d==="jpeg"?g=g.jpeg({quality:e.quality.jpeg}):d==="png"&&(g=g.png({quality:e.quality.png}));let P=await g.toBuffer();await n.fs.writeFile(z,P),I.push({path:z,format:d,width:c,height:O,size:P.length})}}let v;return e.generateBlurPlaceholder&&(v=await E(i,e.placeholderWidth)),{originalPath:i,publicPath:x,originalWidth:u,originalHeight:w,variants:I,blurDataUrl:v,aspectRatio:y}}async function V(i,r,o="/images",a={}){h.info(`Scanning for images in ${i}...`);let t=await B(i);if(t.length===0)return h.debug("No images found to optimize"),{timestamp:Date.now(),images:{}};h.info(`Found ${t.length} image(s) to optimize`);let e={},s=0,l=0;for(let m of t)try{let p=await n.fs.stat(m);s+=p.size;let f=await C(m,r,o,a);e[m]=f;let x=f.variants.reduce((I,v)=>I+v.size,0);l+=x,h.debug(`Optimized: ${n.path.basename(m)} \u2192 ${f.variants.length} variants`)}catch(p){h.warn(`Failed to optimize ${m}: ${p instanceof Error?p.message:String(p)}`)}let u={timestamp:Date.now(),images:e},w=n.path.resolve(r,"image-manifest.json");await n.fs.ensureDir(n.path.dirname(w)),await n.fs.writeTextFile(w,JSON.stringify(u,null,2));let y=s>0?((1-l/s)*100).toFixed(1):0;return h.info(`Image optimization complete: ${t.length} images, ${y}% size reduction`),u}function M(i,r="webp"){return i.variants.filter(a=>a.format===r).sort((a,t)=>a.width-t.width).map(a=>`${a.path} ${a.width}w`).join(", ")}function D(i,r,o="webp"){let a=i.variants.filter(t=>t.format===o).sort((t,e)=>t.width-e.width);return a.find(t=>t.width>=r)??a.at(-1)}export{M as generateSrcset,D as getBestVariant,C as optimizeImage,V as optimizeImages,B as scanImages};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b,c,d}from"./chunk-PVPMHMKP.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{b as CommandBuilder,a as CommandError,d as exec,c as parseCommand};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n}from"./chunk-KPWEJXPI.js";import"./chunk-CUIMSX4V.js";import"./chunk-NBA6EFWU.js";import"./chunk-LCG4SK6K.js";import"./chunk-7DPLGQHN.js";import"./chunk-3SXTMY75.js";import"./chunk-PVPMHMKP.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{e as ABOVE_FOLD_PATTERNS,d as CRITICAL_LAYERS,f as CRITICAL_PROPERTY_PATTERNS,m as DEFAULT_CRITICAL_UNIVERSAL_CSS,b as compileTailwind,n as createTailwindPlugin,c as expandApplyDirectives,h as extractCriticalPageCss,j as extractCriticalUniversalCss,l as extractThemeLayer,i as generateAsyncCssLoader,k as generateCriticalUniversalCss,g as getDefaultCriticalCssConfig,a as loadStylesheet};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as e,b as f,c as g,d as h,e as i,f as j,g as k,h as l,i as m,j as n,k as o,l as r,m as s,n as t,o as u,p as v,q as w,r as x,s as A,t as B,u as C}from"./chunk-MRCBHVSB.js";import{b as y,c as z}from"./chunk-Y4ARZGGL.js";import{a as p,b as q}from"./chunk-STI6DX7K.js";import{a,b,c,d}from"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{c as AlreadyExistsError,b as NotFoundError,d as ProcessError,a as RuntimeCapabilityError,u as buildCommand,z as clearWorkerdEnv,A as createRuntime,C as current,x as detectExecutionContext,t as detectInvoker,e as detectRuntime,l as getArch,w as getCliCommand,m as getHomedir,k as getPlatform,o as getPlatformInfo,f as getRuntimeVersion,n as getTmpdir,h as isBrowser,v as isCommandInPath,j as isEdge,g as isRuntime,i as isServer,y as populateEnvFromContext,q as posixPath,s as resolvePathDirs,B as runtime,r as searchFileHierarchy,p as toPosix};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b,c,d,e,f,g,h,i,j,k,l,m,n,q as o,r as p,s as q,t as r}from"./chunk-7BFBOLLC.js";import"./chunk-LCG4SK6K.js";import"./chunk-7DPLGQHN.js";import"./chunk-3SXTMY75.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{j as chunkToInlineScript,l as createInlineRSCStream,k as createInlineTransformStream,q as createReactHtmlShellBuilder,o as createReactRenderer,m as generateInlineBootstrapScript,n as generateInlineCompletionScript,c as generateRSCPayloadScript,e as loadModuleMap,r as reactHtmlShellBuilder,p as reactRenderer,i as renderApp,f as renderRSC,h as renderRSCResponse,a as renderSSR,d as renderToReadableStream,b as serializeRSCPayload,g as streamToResponse};
@@ -1,28 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as re}from"./chunk-JYNHFD6B.js";import{d as _}from"./chunk-NBA6EFWU.js";import{f as G,h as U,k as H}from"./chunk-GBM3TZFD.js";import{b as w,d as S,f as C,g as q,k as z}from"./chunk-3SXTMY75.js";import{d as N}from"./chunk-PVPMHMKP.js";import{a as O}from"./chunk-MG65QJY6.js";import{a as E,b as $,d as V,f as D}from"./chunk-A6RDYP6R.js";import{t as l}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import{b as v}from"./chunk-DTO2YJWZ.js";import{e as te}from"./chunk-G6NAG2EK.js";var x=class extends TransformStream{constructor(t){let e;super({transform(s,a){if(e!==void 0){let n=new Uint8Array(e.length+s.length);n.set(e),n.set(s,e.length),s=n}for(let n=t;n<=s.length;n+=t)a.enqueue(s.slice(n-t,n));let f=-s.length%t;e=f?s.slice(f):void 0},flush(s){e?.length&&s.enqueue(e)}})}};var P=class{#s;#n;#t;#e=[];#r=!1;constructor(){let{readable:t,writable:e}=new TransformStream;this.#s=ReadableStream.from(this.#i()),this.#n=e,this.#t=t.pipeThrough(new x(512)).getReader()}async#a(){let{done:t,value:e}=await this.#t.read();if(!t){if(e.length!==512)throw new RangeError(`Cannot extract the tar archive: The tarball chunk has an unexpected number of bytes (${e.length})`);return this.#e.push(e),this.#e.shift()}}async*#i(){for(let e=0;e<2;++e){let{done:s,value:a}=await this.#t.read();if(s||a.length!==512)throw new RangeError("Cannot extract the tar archive: The tarball is too small to be valid");this.#e.push(a)}let t=new TextDecoder;for(;;){for(;this.#r;)await new Promise(n=>setTimeout(n,0));if(this.#e.every(n=>n.every(o=>o===0))){await this.#t.cancel("Tar stream finished prematurely");return}let e=await this.#a();if(e==null){if(this.#e.every(n=>n.every(o=>o===0)))break;throw new TypeError("Cannot extract the tar archive: The tarball has invalid ending")}let s=parseInt(t.decode(e.subarray(148,156)),8);if(e.fill(32,148,156),e.reduce((n,o)=>n+o)!==s)throw new SyntaxError("Cannot extract the tar archive: An archive entry has invalid header checksum");let a={name:t.decode(e.subarray(0,100)).split("\0")[0],mode:parseInt(t.decode(e.subarray(100,108)),8),uid:parseInt(t.decode(e.subarray(108,116)),8),gid:parseInt(t.decode(e.subarray(116,124)),8),size:parseInt(t.decode(e.subarray(124,136)).trimEnd(),8),mtime:parseInt(t.decode(e.subarray(136,147)),8),typeflag:t.decode(e.subarray(156,157)),linkname:t.decode(e.subarray(157,257)).split("\0")[0]};a.typeflag==="\0"&&(a.typeflag="0"),[117,115,116,97,114,0,48,48].every((n,o)=>e[o+257]===n)&&(a={...a,magic:t.decode(e.subarray(257,263)),version:t.decode(e.subarray(263,265)),uname:t.decode(e.subarray(265,297)).split("\0")[0],gname:t.decode(e.subarray(297,329)).split("\0")[0],devmajor:t.decode(e.subarray(329,337)).replaceAll("\0",""),devminor:t.decode(e.subarray(337,345)).replaceAll("\0",""),prefix:t.decode(e.subarray(345,500)).split("\0")[0]});let f={path:("prefix"in a&&a.prefix.length?a.prefix+"/":"")+a.name,header:a};["1","2","3","4","5","6"].includes(a.typeflag)||(f.readable=this.#l(a.size)),yield f}}async*#o(t){for(let e=Math.ceil(t/512);e>0;--e){let s=await this.#a();if(s==null)throw new SyntaxError("Cannot extract the tar archive: Unexpected end of Tarball");e===1&&t%512?yield s.subarray(0,t%512):yield s}}#l(t){this.#r=!0;let e=()=>this.#r=!1,s=this.#o(t);return new ReadableStream({type:"bytes",async pull(a){let{done:f,value:n}=await s.next();if(f)return e(),a.close(),a.byobRequest?.respond(0);if(a.byobRequest?.view){let o=new Uint8Array(a.byobRequest.view.buffer),i=o.length;i<n.length?(o.set(n.slice(0,i)),a.byobRequest.respond(i),a.enqueue(n.slice(i))):(o.set(n),a.byobRequest.respond(n.length))}else a.enqueue(n)},async cancel(){for await(let a of s);e()}})}get readable(){return this.#s}get writable(){return this.#n}};var L=async(r,t,e={})=>{let{stripComponents:s=0,subpath:a}=e,f=a!==void 0?l.path.normalize(a).replace(/^\/+/,""):void 0,o=r.pipeThrough(new DecompressionStream("gzip")).pipeThrough(new P);for await(let i of o){let c=l.path.normalize(i.path);if(c.startsWith("..")||l.path.isAbsolute(c)){i.readable!==void 0&&await i.readable.cancel();continue}let u=c.split(l.path.sep).slice(s);if(u.length===0){i.readable!==void 0&&await i.readable.cancel();continue}let d=u.join(l.path.sep);if(f!==void 0){if(!d.startsWith(f)){i.readable!==void 0&&await i.readable.cancel();continue}if(d.slice(f.length).replace(/^\/+/,"")===""){i.readable!==void 0&&await i.readable.cancel();continue}}let h=f!==void 0?l.path.join(t,d.slice(f.length).replace(/^\/+/,"")):l.path.join(t,d);if(await l.fs.ensureDir(l.path.dirname(h)),i.readable!==void 0){let b=new Response(i.readable),m=new Uint8Array(await b.arrayBuffer());await l.fs.writeFile(h,m)}}};var ne="main",ae=r=>{let[t,e]=r.split("#");if(t===void 0)throw new Error(`Invalid GitHub specifier: ${r}`);let s=t.split("/");if(s.length<2)throw new Error(`Invalid GitHub specifier: ${r}. Expected format: owner/repo[/path][#ref]`);let[a,f,...n]=s;if(a===void 0||f===void 0)throw new Error(`Invalid GitHub specifier: ${r}. Expected format: owner/repo[/path][#ref]`);return{provider:"github",raw:r,owner:a,repo:f,ref:e??ne,path:n.length>0?n.join("/"):void 0}},ie=async(r,t)=>{let e=r,{owner:s,repo:a,ref:f,path:n}=e,o=`https://codeload.github.com/${s}/${a}/tar.gz/${f}`,i=await fetch(o);if(!i.ok)throw i.status===404?new Error(`Repository not found: ${s}/${a} (ref: ${f})`):new Error(`Failed to fetch template: ${i.status} ${i.statusText}`);if(i.body===null)throw new Error("Response body is empty");await L(i.body,t,{stripComponents:1,subpath:n})},B={name:"github",prefixes:["github","gh"],isDefault:!0,parse:ae,fetch:ie};var g={providers:new Map,defaultProvider:null,initialized:!1},A=()=>{g.initialized||(g.initialized=!0,M(B))},M=r=>{g.providers.set(r.name,r);for(let t of r.prefixes)g.providers.set(t,r);r.isDefault===!0&&(g.defaultProvider=r)},oe=r=>(A(),g.providers.get(r)??null),le=()=>(A(),g.defaultProvider),W=r=>{A();let t=r.indexOf(":");if(t!==-1){let e=r.slice(0,t),s=r.slice(t+1),a=g.providers.get(e);if(a===void 0)throw new Error(`Unknown provider prefix: ${e}`);return{provider:a,ref:a.parse(s)}}if(g.defaultProvider===null)throw new Error("No default provider registered");return{provider:g.defaultProvider,ref:g.defaultProvider.parse(r)}},I=async(r,t)=>{let{provider:e,ref:s}=W(r);return await e.fetch(s,t),s};var Y=te(re(),1);var J=[".eser/manifest.yml",".eser/manifest.yaml",".manifest.yml",".manifest.yaml"],j=async r=>{for(let t of J){let e=l.path.join(r,t);try{let s=await l.fs.readTextFile(e),a=Y.parse(s);if(typeof a.name!="string"||a.name==="")throw new Error(`Template config missing required 'name' field: ${e}`);return a}catch(s){if(s instanceof v)continue;throw s}}return null},fe=r=>{let t=r.description??r.name,e=r.default!==void 0?` [${r.default}]`:"",s=r.required===!0?" (required)":"",a=`${t}${s}${e}: `,f=globalThis.prompt(a);return f===null||f===""?r.default??null:f},X=(r,t)=>r.pattern===void 0||new RegExp(r.pattern).test(t)?null:`Value '${t}' does not match pattern '${r.pattern}'`,F=(r,t)=>{let{provided:e,interactive:s}=t,a=r.variables??[],f={...e},n=[];for(let o of a){let{name:i,required:c,default:p}=o;if(f[i]!==void 0){let u=X(o,f[i]);u!==null&&n.push(`${i}: ${u}`);continue}if(s){let u=fe(o);if(u!==null){let d=X(o,u);d!==null?n.push(`${i}: ${d}`):f[i]=u;continue}}if(p!==void 0){f[i]=p;continue}c===!0&&n.push(`Missing required variable: ${i}`)}if(n.length>0)throw new Error(`Variable resolution failed:
3
- ${n.join(`
4
- `)}`);return f},K=async r=>{for(let t of J){let e=l.path.join(r,t);try{return await l.fs.stat(e),e}catch{continue}}return null};var Q=/\{\{\s*\.(\w+)\s*\}\}/g,ce=["png","jpg","jpeg","gif","ico","webp","svg","woff","woff2","ttf","eot","otf","zip","tar","gz","bz2","xz","7z","pdf","doc","docx","xls","xlsx","ppt","pptx","exe","dll","so","dylib","mp3","mp4","avi","mov","webm"],pe=r=>_(r.toLowerCase(),ce),de=(r,t)=>{for(let e of t)if(e.startsWith("*")){let s=e.slice(1);if(r.endsWith(s))return!0}else if(e.includes("*")){let s=e.replace(/[.+?^${}()|[\]\\-]/g,"\\$&").replace(/\*\*/g,"\0GLOBSTAR\0").replace(/\*/g,"[^/]*").replace(/\0GLOBSTAR\0/g,".*");if(new RegExp(`^${s}$`).test(r))return!0}else if(r===e||r.startsWith(e+"/"))return!0;return!1},T=(r,t)=>r.replace(Q,(e,s)=>{let a=t[s];return a===void 0?`{{.${s}}}`:a}),R=r=>Q.test(r),Z=async(r,t)=>{let{variables:e,ignore:s}=t,a=[],f=[];for await(let n of l.fs.walk(r,{includeDirs:!0})){let o=l.path.relative(r,n.path);o!==""&&(de(o,s)||(n.isDirectory?R(n.name)&&f.push(n.path):n.isFile&&a.push(n.path)))}for(let n of a){let o=l.path.basename(n),i=l.path.dirname(n);if(!pe(n))try{let c=await l.fs.readTextFile(n);if(R(c)){let p=T(c,e);await l.fs.writeTextFile(n,p)}}catch(c){if(!(c instanceof Error&&c.name==="InvalidData"))throw c}if(R(o)){let c=T(o,e),p=l.path.join(i,c);p!==n&&await l.fs.rename(n,p)}}f.sort((n,o)=>o.split(l.path.sep).length-n.split(l.path.sep).length);for(let n of f){let o=l.path.basename(n),i=l.path.dirname(n),c=T(o,e),p=l.path.join(i,c);p!==n&&await l.fs.rename(n,p)}},ee=async r=>{try{await l.fs.remove(r)}catch(t){if(!(t instanceof v))throw t}};var k=async r=>{let{specifier:t,targetDir:e,variables:s={},force:a=!1,skipPostInstall:f=!1,interactive:n=!1}=r,o=l.path.isAbsolute(e)?e:l.path.join(l.process.cwd(),e);try{let m=[];for await(let y of l.fs.readDir(o)){m.push(y);break}if(m.length>0&&!a)throw new Error(`Target directory is not empty: ${o}. Use --force to overwrite.`)}catch(m){if(!(m instanceof v))throw m}await l.fs.ensureDir(o),await I(t,o);let i=await j(o),c=i?.name??t,p=i!==null?F(i,{provided:s,interactive:n}):s,u=[".git",".eser/manifest.yml",".eser/manifest.yaml",...i?.ignore??[]];await Z(o,{variables:p,ignore:u});let d=await K(o);d!==null&&await ee(d);let h=i?.postInstall??[],b=[];if(!f&&h.length>0)for(let m of h)try{(await N`${m}`.cwd(o).stdout("inherit").stderr("inherit").noThrow().spawn()).success?b.push(m):console.warn(`Post-install command failed: ${m}`)}catch(y){console.warn(`Post-install command error: ${m}`,y)}return{templateName:c,targetDir:o,variables:p,postInstallCommands:b}};var Ge=async r=>{let t=O(r??l.process.args,{string:["path","var"],boolean:["force","interactive","skip-post-install","help"],alias:{p:"path",f:"force",i:"interactive",h:"help"},collect:["var"]});if(t.help)return console.log(`Usage: scaffold <specifier> [options]
5
-
6
- Options:
7
- -p, --path <dir> Target directory (default: .)
8
- -f, --force Overwrite existing files
9
- -i, --interactive Prompt for missing variables
10
- --var key=value Set a template variable (repeatable)
11
- --skip-post-install Skip post-install commands
12
- -h, --help Show this help message
13
-
14
- Examples:
15
- scaffold eser/ajan
16
- scaffold gh:eser/ajan#v1.0 -p ./my-project
17
- scaffold eser/ajan --var name=my-app --var author=me`),E(void 0);let e=H.ansi(),s=G({renderer:e,sink:U.stdout()});if(t._.length===0)return await s.close(),$({message:`${e.render([C("Error: Template specifier is required")])}
18
-
19
- Usage: scaffold <specifier> [options]
20
-
21
- Examples:
22
- scaffold eser/ajan
23
- scaffold gh:eser/ajan#v1.0
24
- scaffold eser/ajan -p ./my-project`,exitCode:1});let a=String(t._[0]),f=t.path??".",n=t.force??!1,o=t["skip-post-install"]??!1,i=t.interactive??!1,c=t.var,p={};if(c!==void 0)for(let h of c){let[b,...m]=String(h).split("=");b!==void 0&&(p[b]=m.join("="))}s.writeln(w("Scaffolding from "),z(a),w("..."));let u=await D(()=>k({specifier:a,targetDir:f,variables:p,force:n,skipPostInstall:o,interactive:i}),h=>({message:h.message}));if(V(u))return await s.close(),$({message:e.render([C(`
25
- Scaffolding failed: ${u.error.message}`)]),exitCode:1});let d=u.value;if(s.writeln(q(`
26
- Scaffolded ${d.templateName} to ${d.targetDir}`)),Object.keys(d.variables).length>0){s.writeln(w(`
27
- Variables applied:`));for(let[h,b]of Object.entries(d.variables))s.writeln(w(" "),S(h),w(`: ${b}`))}if(d.postInstallCommands.length>0){s.writeln(w(`
28
- Post-install commands executed:`));for(let h of d.postInstallCommands)s.writeln(w(" "),S(h))}return await s.close(),E(void 0)};export{I as fetchTemplate,le as getDefaultProvider,oe as getProvider,R as hasVariables,j as loadTemplateConfig,Ge as main,W as parseSpecifier,M as registerProvider,F as resolveVariables,k as scaffold,T as substituteVariables};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a,b,c,d,e,f}from"./chunk-OIZ7HL2C.js";import"./chunk-5GGGQJ4P.js";import"./chunk-J2Z7NG2X.js";import"./chunk-GBM3TZFD.js";import"./chunk-3SXTMY75.js";import"./chunk-PVPMHMKP.js";import"./chunk-QSION3QA.js";import"./chunk-A6RDYP6R.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";export{d as completionsHandler,f as doctorHandler,a as installHandler,b as uninstallHandler,c as updateHandler,e as versionHandler};
@@ -1,11 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as Fe,c as Re}from"./chunk-H4SPMUT6.js";import{a as Pe}from"./chunk-T2DRBZ4X.js";import{a as $e}from"./chunk-GJ4LCA6D.js";import{a as ve,c as ye}from"./chunk-ER4ZWF4Y.js";import{a as ke,c as he}from"./chunk-7NUMDHE2.js";import{a as xe,c as be}from"./chunk-3QIPK7NI.js";import{a as Ve,c as we}from"./chunk-32HV3K27.js";import{a as Ce}from"./chunk-EBCQCAQ7.js";import{a as Se}from"./chunk-QZ44TAIY.js";import{a as De}from"./chunk-IZONBJSX.js";import{a as Te}from"./chunk-IIIMOOFE.js";import"./chunk-KBFKBL6A.js";import{a as ee,c as te}from"./chunk-CKNA5LIK.js";import{a as ae,c as se}from"./chunk-5MWX3POX.js";import{a as oe,c as ie}from"./chunk-QOX7VSID.js";import{a as re,c as ne}from"./chunk-FORPNESQ.js";import{a as le,c as de}from"./chunk-HVOPUZOM.js";import{a as ce,c as pe}from"./chunk-HYT26FYU.js";import{a as me,c as ue}from"./chunk-K6H7JTIH.js";import{a as fe,c as ge}from"./chunk-N2VBT43E.js";import{a as K,c as U}from"./chunk-BCPCQHDL.js";import{a as X,c as H}from"./chunk-YQVWAWMO.js";import{a as Q,c as Z}from"./chunk-NP723K5L.js";import{a as G}from"./chunk-RGUETQSC.js";import"./chunk-HVLKXRPA.js";import{b as B,c as Y}from"./chunk-W3RVRCUB.js";import"./chunk-DYRTLYTU.js";import"./chunk-GTHXGAMQ.js";import"./chunk-3XJLLDR5.js";import"./chunk-P7WCO724.js";import"./chunk-JYNHFD6B.js";import"./chunk-2VEVVX6U.js";import"./chunk-4DOMGQOO.js";import"./chunk-WF6JNPZS.js";import"./chunk-J2Z7NG2X.js";import"./chunk-VAIRJES2.js";import"./chunk-S7S2I2K5.js";import{b as _}from"./chunk-NBA6EFWU.js";import"./chunk-3BEX5FYF.js";import{f as W,h as J,k as z}from"./chunk-GBM3TZFD.js";import"./chunk-7DPLGQHN.js";import{b as g,d as y,f as x,g as R,h as L,k as q}from"./chunk-3SXTMY75.js";import"./chunk-PVPMHMKP.js";import{a as O}from"./chunk-MG65QJY6.js";import{a as T,b as A}from"./chunk-A6RDYP6R.js";import{t as F}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var C=async t=>{let s=await B(t);return s===null?null:s},Me=async t=>await Y(t);var P={name:"validate-circular-deps",description:"Detect circular package dependencies",requiredStacks:[],async validate(t){let s=await De({root:t.root});return{name:"validate-circular-deps",passed:!s.hasCycles,issues:s.cycles.map(a=>({severity:"error",message:`Circular dependency: ${a.join(" \u2192 ")}`})),stats:{packagesChecked:s.packagesChecked}}}};var $={name:"validate-mod-exports",description:"Validate mod.ts exports all files",requiredStacks:["javascript"],async validate(t){let s=await Pe({root:t.root});return{name:"validate-mod-exports",passed:s.isComplete,issues:s.missingExports.map(a=>({severity:"error",message:`Missing export in ${a.packageName}: ${a.file}`,file:a.file})),stats:{packagesChecked:s.packagesChecked}}}};var E={name:"validate-export-names",description:"Validate export naming conventions",requiredStacks:["javascript"],async validate(t){let s=await Te({root:t.root});return{name:"validate-export-names",passed:s.isValid,issues:s.violations.map(a=>({severity:"error",message:`${a.packageName}: "${a.exportPath}" should be "${a.suggestion}"`})),stats:{packagesChecked:s.packagesChecked}}}};var j={name:"validate-docs",description:"Validate JSDoc documentation",requiredStacks:["javascript"],async validate(t){let s=t.options?.requireExamples,a=await Se({root:t.root,requireExamples:s});return{name:"validate-docs",passed:a.isValid,issues:a.issues.map(e=>({severity:"error",message:`${e.symbol}: ${e.issue}`,file:e.file,line:e.line})),stats:{filesChecked:a.filesChecked,symbolsChecked:a.symbolsChecked}}}};var M={name:"validate-package-configs",description:"Validate deno.json/package.json consistency",requiredStacks:["javascript"],async validate(t){let s=await $e({root:t.root}),a=[];for(let e of s.inconsistencies)a.push({severity:"error",message:`${e.packageName}: ${e.field} mismatch - deno.json: ${JSON.stringify(e.denoValue)}, package.json: ${JSON.stringify(e.packageValue)}`});for(let e of s.dependencyInconsistencies){let i=`${e.packageName}: ${e.dependencyName} - ${e.issue}`;e.expected!==void 0&&e.actual!==void 0&&(i+=` (expected: ${e.expected}, actual: ${e.actual})`),a.push({severity:"error",message:i})}return{name:"validate-package-configs",passed:s.isConsistent,issues:a,stats:{packagesChecked:s.packagesChecked}}}};var qe=[{pattern:/\bDeno\.cwd\(\)/,replacement:"runtime.process.cwd()"},{pattern:/\bDeno\.env\.get\b/,replacement:"runtime.env.get()"},{pattern:/\bDeno\.env\.set\b/,replacement:"runtime.env.set()"},{pattern:/\bDeno\.env\.delete\b/,replacement:"runtime.env.delete()"},{pattern:/\bDeno\.env\.has\b/,replacement:"runtime.env.has()"},{pattern:/\bDeno\.env\.toObject\b/,replacement:"runtime.env.toObject()"},{pattern:/\bDeno\.readTextFile\b/,replacement:"runtime.fs.readTextFile()"},{pattern:/\bDeno\.readFile\b/,replacement:"runtime.fs.readFile()"},{pattern:/\bDeno\.writeTextFile\b/,replacement:"runtime.fs.writeTextFile()"},{pattern:/\bDeno\.writeFile\b/,replacement:"runtime.fs.writeFile()"},{pattern:/\bDeno\.mkdir\b/,replacement:"runtime.fs.mkdir()"},{pattern:/\bDeno\.remove\b/,replacement:"runtime.fs.remove()"},{pattern:/\bDeno\.stat\b/,replacement:"runtime.fs.stat()"},{pattern:/\bDeno\.lstat\b/,replacement:"runtime.fs.lstat()"},{pattern:/\bDeno\.readDir\b/,replacement:"runtime.fs.readDir()"},{pattern:/\bDeno\.copyFile\b/,replacement:"runtime.fs.copyFile()"},{pattern:/\bDeno\.rename\b/,replacement:"runtime.fs.rename()"},{pattern:/\bDeno\.open\b/,replacement:"runtime.fs (or @eser/streams)"},{pattern:/\bDeno\.exit\b/,replacement:"runtime.process.exit()"},{pattern:/\bnew Deno\.Command\b/,replacement:"runtime.exec.spawn() (or @eser/shell/exec)"},{pattern:/\bDeno\.args\b/,replacement:"runtime.process.args"}],We=[],Je=t=>We.some(s=>s.test(t)),ze=(t,s)=>{let a=t.slice(0,s);return a.includes("//")||a.includes("/*")&&!a.includes("*/")},_e=(t,s)=>{let a=!1,e=!1,i=!1;for(let n=0;n<s;n++){let l=t[n];(n>0?t[n-1]:"")!=="\\"&&(l==="'"&&!e&&!i&&(a=!a),l==='"'&&!a&&!i&&(e=!e),l==="`"&&!a&&!e&&(i=!i))}return a||e||i},b=G({name:"validate-runtime-js-apis",description:"Detect direct usage of runtime-specific APIs (use @eser/standards/cross-runtime instead)",canFix:!1,stacks:["javascript"],defaults:{},extensions:_,checkFile(t,s){if(s===void 0)return[];if(Je(t.path))return[];let a=[],e=s.split(`
3
- `);for(let i=0;i<e.length;i++){let n=e[i];for(let{pattern:l,replacement:d}of qe){let c=l.exec(n);c!==null&&(ze(n,c.index)||_e(n,c.index)||a.push({path:t.path,line:i+1,message:`direct Deno API usage: ${c[0]} \u2014 use @eser/standards/cross-runtime (${d})`}))}}return a}}),ct=b.run,Ee=b.validator,pt=b.main;var k={validators:new Map,initialized:!1},Ye=()=>{o(P),o($),o(E),o(j),o(M),o(U),o(H),o(Z),o(te),o(se),o(ie),o(ne),o(de),o(pe),o(ue),o(ge),o(ye),o(he),o(be),o(we),o(Re),o(Ee)},I=()=>{k.initialized||(k.initialized=!0,Ye())},o=t=>{k.validators.set(t.name,t)},Ge=t=>(I(),k.validators.get(t)??null),N=()=>(I(),[...k.validators.values()]),Ke=()=>(I(),[...k.validators.keys()]),Ue=t=>({name:t.config.name,description:t.config.description,run:async s=>{let a=await t.run(s);return{name:a.name,passed:a.issues.length===0,issues:a.issues.map(e=>({path:e.path,line:e.line,message:e.message,fixed:e.fixed})),mutations:a.mutations.map(e=>({path:e.path,oldContent:e.oldContent,newContent:e.newContent})),stats:{filesChecked:a.filesChecked,issuesFound:a.issues.length}}}}),Xe=t=>({name:t.name,description:t.description,run:async s=>{let a=await t.validate({root:s.root??".",options:s});return{name:a.name,passed:a.passed,issues:a.issues.map(e=>({path:e.file,line:e.line,message:e.message})),mutations:[],stats:a.stats}}}),He=()=>{let t=[],s=[K,X,Q,ee,ae,oe,re,le,ce,me,fe,ve,ke,xe,Ve,Fe,b];for(let e of s)t.push(Ue(e));let a=[P,$,E,j,M];for(let e of a)t.push(Xe(e));return t.push({name:"validate-commit-msg",description:"Validate conventional commit format",run:async e=>{let i=e.commitMsgFile??e._args?.[0]??".git/COMMIT_EDITMSG",{runtime:n}=await import("./mod-MLRQFSBE.js"),l;try{l=await n.fs.readTextFile(i)}catch{return{name:"validate-commit-msg",passed:!1,issues:[{message:`cannot read commit message file: ${i}`}],mutations:[],stats:{}}}let d=Ce(l,{allowAsterisk:e.allowAsterisk,allowMultipleScopes:e.allowMultipleScopes,forceScope:e.forceScope,types:e.types});return{name:"validate-commit-msg",passed:d.valid,issues:d.issues.map(c=>({message:c})),mutations:[],stats:{}}}}),t};var Qe=async(t={})=>{let s=t.root??F.process.cwd(),e=(await C(s))?.stack??[],i=[...t.skip??[]],n=t.only??[],l=N(),d=[],c=[],V=[];for(let p of l){if(n.length>0&&!n.includes(p.name))continue;if(i.includes(p.name)){V.push(p.name);continue}if(p.requiredStacks.length>0&&e.length>0&&!p.requiredStacks.some(w=>e.includes(w))){c.push({name:p.name,reason:`Requires '${p.requiredStacks.join("' or '")}' stack`});continue}let S={...t.fix!==void 0?{fix:t.fix}:{}},m=await p.validate({root:s,options:S});d.push(m)}return{passed:d.every(p=>p.passed),results:d,skipped:c,disabled:V}},Ot=async t=>{let s=O(t??F.process.args,{string:["root","only","skip"],boolean:["fix","help"],alias:{h:"help"}});if(s.help)return console.log("Usage: deno run --allow-all ./validation/mod.ts [options]"),console.log(),console.log("Options:"),console.log(" --root <dir> Root directory (default: cwd)"),console.log(" --only <validators> Run only specific validators (comma-separated)"),console.log(" --skip <validators> Skip specific validators (comma-separated)"),console.log(" --fix Auto-fix issues where supported"),console.log(" -h, --help Show this help message"),T(void 0);let a=z.ansi(),e=W({renderer:a,sink:J.stdout()}),i=s.root,n=s.fix,l=s.only,d=s.skip,c=l!==void 0?l.split(",").map(r=>r.trim()):void 0,V=d!==void 0?d.split(",").map(r=>r.trim()):void 0,S=(await C(i??"."))?.stack?.join(", ")??"all (no .eser/manifest.yml)";e.writeln(g(`Validating codebase...
4
- `)),e.writeln(g("Stack: "),q(S),g(`
5
- `));let m=await Qe({root:i,only:c,skip:V,fix:n});for(let r of m.results){let u=r.passed?R("PASS"):x("FAIL"),v=Object.entries(r.stats).map(([f,D])=>`${D} ${f}`).join(", ");e.writeln(g(` ${r.name.padEnd(18)} `),u,g(` (${v})`))}if(m.skipped.length>0){e.writeln(y(`
6
- Skipped (stack not configured):`));for(let r of m.skipped)e.writeln(y(` - ${r.name}: ${r.reason}`))}if(m.disabled.length>0){e.writeln(y(`
7
- Disabled:`));for(let r of m.disabled)e.writeln(y(` - ${r}`))}let h=m.results.flatMap(r=>r.issues.map(u=>({validator:r.name,...u})));if(h.length>0){e.writeln(x(`
8
- Issues (${h.length}):
9
- `));let r=new Map;for(let u of h){let v=u.file??u.validator,f=r.get(v)??[];f.push(u),r.set(v,f)}for(let[u,v]of r){e.writeln(y(` ${u}`));for(let f of v){let D=f.severity==="error"?x("error"):L("warning"),je=f.line!==void 0?`:${f.line}`:"";e.writeln(g(" "),D,g(`${je}: ${f.message}`))}e.writeln()}}let w=m.results.filter(r=>!r.passed).length;return w>0?(await e.close(),A({message:a.render([x(`
10
- ${w} check(s) failed with ${h.length} issue(s)`)]),exitCode:1})):(e.writeln(R(`
11
- All checks passed!`)),await e.close(),T(void 0))};export{Me as getProjectConfigPath,Ge as getValidator,Ke as getValidatorNames,N as getValidators,He as getWorkflowTools,C as loadProjectConfig,Ot as main,o as registerValidator,Qe as validate};
@@ -1,2 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as G,b as v}from"./chunk-Q2KSOC32.js";import{a as P,b as g}from"./chunk-B5IPHVXT.js";import{a as S,b as J}from"./chunk-Y53YTL4C.js";import{a as K,b as V}from"./chunk-536RBSFU.js";import{a as h,b as O,c as k,d as R,e as B,f as E}from"./chunk-TDQRRGDJ.js";import"./chunk-BNQAZLIQ.js";import{a as f,b as u}from"./chunk-4WQGB7NO.js";import{a as A,b as C}from"./chunk-KQE6FMKW.js";import{a as M,b as w}from"./chunk-MXGRYONZ.js";import{a as I,b as T}from"./chunk-YVIGHK4H.js";import{a as l,b as m,c as s,d,e as y,f as F,g as x}from"./chunk-455V3AE5.js";import"./chunk-J7YTWK67.js";import"./chunk-PVPMHMKP.js";import"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var o=null,b=async()=>{if(o!==null)return o;let{anthropicFactory:e}=await import("./anthropic-2MXDKLNX.js"),{openaiFactory:r}=await import("./openai-EU5TJZ5T.js"),{geminiFactory:t}=await import("./gemini-F4KLO5VU.js"),{vertexaiFactory:a}=await import("./vertexai-EXTYPVHK.js"),{claudeCodeFactory:i}=await import("./claude-code-VUBEU7RR.js"),{ollamaFactory:c}=await import("./ollama-36F5QAOO.js"),{openCodeFactory:n}=await import("./opencode-7J3JDC44.js"),{kiroFactory:p}=await import("./kiro-HQLXD6ZU.js");return o=[e,r,t,a,i,c,n,p],o};export{G as AnthropicModel,f as ClaudeCodeModel,S as GeminiModel,I as KiroModel,A as OllamaModel,P as OpenAIModel,M as OpenCodeModel,K as VertexAIModel,v as anthropicFactory,y as captureStderr,F as classifyExitCode,E as classifyGenAIError,u as claudeCodeFactory,b as defaultFactories,x as formatMessagesAsText,J as geminiFactory,T as kiroFactory,O as mapContentBlockToGenAIPart,B as mapGenAIResponseToResult,k as mapMessagesToGenAI,h as mapRoleToGenAI,R as mapToolsToGenAI,C as ollamaFactory,w as openCodeFactory,g as openaiFactory,s as parseJsonlStream,d as parseTextOutput,l as resolveBinary,m as spawnCliProcess,V as vertexaiFactory};
@@ -1,4 +0,0 @@
1
- import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
2
- import{a as _}from"./chunk-XVSIRN6G.js";import{a as B,b as H,c as Q,d as z}from"./chunk-P74JF7XR.js";import{a as v}from"./chunk-IDMI5OBK.js";import{a as P}from"./chunk-AHLJCH32.js";import{a as b}from"./chunk-JAQN64PH.js";import{b as U,c as L,d as N}from"./chunk-DAYSTLLV.js";import"./chunk-OCPEFZBJ.js";import{a as j,c as A,d as G,f as J,h as W}from"./chunk-UESOCN2G.js";import{a as V}from"./chunk-LNNNLUZT.js";import{a as q,b as M,d as x}from"./chunk-2EVWKUN6.js";import{c as O,d as E,j as I,n as $,p as y,q as T}from"./chunk-WG6J7DFO.js";import"./chunk-JYNHFD6B.js";import{a as F,b as D}from"./chunk-A6RDYP6R.js";import{t as h}from"./chunk-MRCBHVSB.js";import"./chunk-Y4ARZGGL.js";import"./chunk-STI6DX7K.js";import"./chunk-DTO2YJWZ.js";import"./chunk-G6NAG2EK.js";var Z=o=>o.split(`
3
- `).map(e=>e.replace(/^[-*]\s+/,"").trim()).filter(e=>e.length>0&&!e.startsWith("#")),ee=async(o,e)=>{let i=[],n=(e.startsWith(o)?e.slice(o.length+1):e).split("/");n.pop();for(let t=n.length;t>=0;t--){let r=`${t===0?o:`${o}/${n.slice(0,t).join("/")}`}/.folder-rules.md`,c=t===0?".":n.slice(0,t).join("/");try{let p=await h.fs.readTextFile(r),g=Z(p);for(let f of g)i.push({folder:c,rule:f})}catch{}}return i},k=async(o,e)=>{let i=new Set,a=[];for(let n of e){let t=await ee(o,n);for(let s of t){let r=`${s.folder}::${s.rule}`;i.has(r)||(i.add(r),a.push(s))}}return a};var ye=async o=>{let e=h.process.cwd(),i=q(o),a=M(o);if(!await T(e)){let l=await I(e);return await x({error:`noskills not initialized. Run: ${V("init",l)}`},i),D({exitCode:1})}let n=null;for(let l of a)l.startsWith("--answer=")&&(n=l.slice(9));let t=await E(e),s=await I(e);if(t.pendingClear&&(t={...t,pendingClear:!1},await y(e,t)),s===null)return await x({error:"No config found"},i),D({exitCode:1});let c=(await $(e)).filter(l=>s.concerns.includes(l.id));if(n!==null){let l=await se(e,t,s,c,n);await y(e,l);let u={...l,lastCalledAt:new Date().toISOString()};await y(e,u);let m=await b(e),d=u.spec!==null?await v(e,u.spec):null,R=await K(e,u),X=await k(e,R),Y=P(u,c,m,s,d,X);return await x(Y,i),F(void 0)}let p={...t,lastCalledAt:new Date().toISOString()};await y(e,p);let g=await b(e),f=p.spec!==null?await v(e,p.spec):null,w=await K(e,p),C=await k(e,w),S=P(p,c,g,s,f,C);return await x(S,i),F(void 0)},se=async(o,e,i,a,n)=>{switch(e.phase){case"DISCOVERY":{let t=null;try{let r=JSON.parse(n);typeof r=="object"&&r!==null&&!Array.isArray(r)&&(t=r)}catch{}let s=e;if(t!==null)for(let[r,c]of Object.entries(t))typeof c=="string"&&c.length>0&&(s=A(s,r,c));else{let r=U(a),c=L(r,s.discovery.answers);if(c===null)return e;s=A(s,c.id,n)}return N(s.discovery.answers)&&(s=G(s)),s}case"SPEC_DRAFT":{if(e.classification===null){let t;try{let r=JSON.parse(n);t={involvesUI:r.involvesUI===!0,involvesPublicAPI:r.involvesPublicAPI===!0,involvesMigration:r.involvesMigration===!0,involvesDataHandling:r.involvesDataHandling===!0}}catch{t={involvesUI:!1,involvesPublicAPI:!1,involvesMigration:!1,involvesDataHandling:!1}}let s={...e,classification:t};try{await _(o,s,a)}catch{}return s}return e}case"SPEC_APPROVED":{let t=J(e);return t.spec!==null&&(await B(o,t.spec,"executing"),await z(o,t.spec,"executing")),t}case"EXECUTING":{if(!e.execution.awaitingStatusReport){let t={...e,execution:{...e.execution,lastProgress:n}};if(i.verifyCommand!==null&&i.verifyCommand!==void 0&&i.verifyCommand.length>0){let s=await ie(o,i.verifyCommand);if(t={...t,execution:{...t.execution,lastVerification:s}},!s.passed)return t}return t={...t,execution:{...t.execution,awaitingStatusReport:!0}},t}return await ne(o,e,n,a)}case"BLOCKED":{let t=e.execution.lastProgress??"Unknown",s={id:`d${e.decisions.length+1}`,question:t.replace(/^BLOCKED:\s*/,""),choice:n,promoted:!1,timestamp:new Date().toISOString()},r=W(e,s);return r=j(r,"EXECUTING"),r={...r,execution:{...r.execution,lastProgress:`Resolved: ${n}`}},r}default:return e}},ne=async(o,e,i,a)=>{let n;try{n=JSON.parse(i)}catch{return{...e,execution:{...e.execution,lastProgress:i,awaitingStatusReport:!1}}}let t=n.completed??[],s=n.remaining??[],r=n.blocked??[],c=[...s,...r],p=e.execution.debt?.unaddressedIterations??0,g=c.length>0?{items:c,fromIteration:e.execution.iteration,unaddressedIterations:1}:null,f=g;if(e.execution.debt!==null&&g!==null){let l=new Set(t.map(d=>d.toLowerCase().trim())),u=e.execution.debt.items.filter(d=>!l.has(d.toLowerCase().trim())),m=[...new Set([...u,...c])];f=m.length>0?{items:m,fromIteration:e.execution.debt.fromIteration,unaddressedIterations:u.length>0?p+1:1}:null}else if(e.execution.debt!==null&&g===null){let l=new Set(t.map(m=>m.toLowerCase().trim())),u=e.execution.debt.items.filter(m=>!l.has(m.toLowerCase().trim()));f=u.length>0?{items:u,fromIteration:e.execution.debt.fromIteration,unaddressedIterations:p+1}:null}let w=t.length>0?`Completed: ${t.join(", ")}`:"Status report submitted",C=e.execution.lastVerification===null||e.execution.lastVerification.passed===!0,S=f===null&&C;if(S&&e.spec!==null){let l=await v(o,e.spec);if(l!==null){let u=e.execution.completedTasks??[],m=new Set(u),d=l.tasks.find(R=>!m.has(R.id));if(d!==void 0)return await H(o,e.spec,d.id),await Q(o,e.spec,d.id,"done"),{...e,pendingClear:!0,execution:{...e.execution,lastProgress:`Task ${d.id} accepted: ${w}`,awaitingStatusReport:!1,debt:f,completedTasks:[...u,d.id]}}}}return{...e,pendingClear:S,execution:{...e.execution,lastProgress:S?w:`Task not accepted \u2014 remaining items must be addressed first. ${w}`,awaitingStatusReport:!1,debt:f}}},ie=async(o,e)=>{try{let{execSync:i}=await import("node:child_process"),a=i(e,{cwd:o,encoding:"utf-8",timeout:6e4,stdio:["pipe","pipe","pipe"]});return{passed:!0,output:String(a).slice(0,4e3),timestamp:new Date().toISOString()}}catch(i){let a=i,n=((a.stdout??"")+(a.stderr??"")).slice(0,4e3);return a.status!==void 0?{passed:!1,output:n||"Verification failed with no output",timestamp:new Date().toISOString()}:{passed:!1,output:`Verification command failed to execute: ${i instanceof Error?i.message:String(i)}`,timestamp:new Date().toISOString()}}},K=async(o,e)=>{let i=[...e.execution.modifiedFiles??[]],a=await re(o);return[...new Set([...i,...a])]},re=async o=>{let e=`${o}/${O.stateDir}/files-changed.jsonl`;try{let a=(await h.fs.readTextFile(e)).trim().split(`
4
- `).filter(Boolean),n=[];for(let t of a)try{let s=JSON.parse(t);n.includes(s.file)||n.push(s.file)}catch{}return n}catch{return[]}};export{ye as main};