agents-inc 0.149.2 → 0.151.0

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 (572) hide show
  1. package/CHANGELOG.md +2287 -0
  2. package/LICENSE +21 -0
  3. package/README.md +136 -19
  4. package/assets/demo.gif +0 -0
  5. package/assets/demo.tape +266 -0
  6. package/assets/logo.svg +75 -0
  7. package/dist/chunk-2RSNKBXC.js +84 -0
  8. package/dist/chunk-2RSNKBXC.js.map +1 -0
  9. package/dist/chunk-3LIU2ZEF.js +1355 -0
  10. package/dist/chunk-3LIU2ZEF.js.map +1 -0
  11. package/dist/chunk-3XFUQ6OL.js +68 -0
  12. package/dist/chunk-3XFUQ6OL.js.map +1 -0
  13. package/dist/chunk-3YGUHWLR.js +258 -0
  14. package/dist/chunk-3YGUHWLR.js.map +1 -0
  15. package/dist/chunk-44LLPS2N.js +1135 -0
  16. package/dist/chunk-44LLPS2N.js.map +1 -0
  17. package/dist/chunk-4R6PGHQQ.js +300 -0
  18. package/dist/chunk-4R6PGHQQ.js.map +1 -0
  19. package/dist/chunk-5V2O6C3T.js +112 -0
  20. package/dist/chunk-5V2O6C3T.js.map +1 -0
  21. package/dist/chunk-6RBQBOBS.js +287 -0
  22. package/dist/chunk-6RBQBOBS.js.map +1 -0
  23. package/dist/chunk-7QIHKQL5.js +181 -0
  24. package/dist/chunk-7QIHKQL5.js.map +1 -0
  25. package/dist/chunk-BNE4HHIH.js +28 -0
  26. package/dist/chunk-BNE4HHIH.js.map +1 -0
  27. package/dist/chunk-C55DN7GE.js +35 -0
  28. package/dist/chunk-C55DN7GE.js.map +1 -0
  29. package/dist/chunk-DAG2ULNF.js +125 -0
  30. package/dist/chunk-DAG2ULNF.js.map +1 -0
  31. package/dist/chunk-DG2NGZ7S.js +10929 -0
  32. package/dist/chunk-DG2NGZ7S.js.map +1 -0
  33. package/dist/chunk-DIBCRIMR.js +36 -0
  34. package/dist/chunk-DIBCRIMR.js.map +1 -0
  35. package/dist/chunk-DUVWGO6E.js +54 -0
  36. package/dist/chunk-DUVWGO6E.js.map +1 -0
  37. package/dist/chunk-EKWAUOQB.js +96 -0
  38. package/dist/chunk-EKWAUOQB.js.map +1 -0
  39. package/dist/chunk-ES3NJZON.js +31 -0
  40. package/dist/chunk-ES3NJZON.js.map +1 -0
  41. package/dist/chunk-EVXG3X6G.js +179 -0
  42. package/dist/chunk-EVXG3X6G.js.map +1 -0
  43. package/dist/chunk-EZ7STXUV.js +349 -0
  44. package/dist/chunk-EZ7STXUV.js.map +1 -0
  45. package/dist/chunk-FYPUUYSG.js +31 -0
  46. package/dist/chunk-FYPUUYSG.js.map +1 -0
  47. package/dist/chunk-GYG5SE2D.js +81 -0
  48. package/dist/chunk-GYG5SE2D.js.map +1 -0
  49. package/dist/chunk-I3XKEGHM.js +16383 -0
  50. package/dist/chunk-I3XKEGHM.js.map +1 -0
  51. package/dist/chunk-IHO75PMZ.js +40 -0
  52. package/dist/chunk-IHO75PMZ.js.map +1 -0
  53. package/dist/chunk-IOJR5TOY.js +47 -0
  54. package/dist/chunk-IOJR5TOY.js.map +1 -0
  55. package/dist/chunk-K3OU6TGX.js +77 -0
  56. package/dist/chunk-K3OU6TGX.js.map +1 -0
  57. package/dist/chunk-KIR7VYQD.js +63 -0
  58. package/dist/chunk-KIR7VYQD.js.map +1 -0
  59. package/dist/chunk-KOPEM3Q7.js +27 -0
  60. package/dist/chunk-KOPEM3Q7.js.map +1 -0
  61. package/dist/chunk-KSZ6PCY4.js +43 -0
  62. package/dist/chunk-KSZ6PCY4.js.map +1 -0
  63. package/dist/chunk-LAXAQ3PZ.js +235 -0
  64. package/dist/chunk-LAXAQ3PZ.js.map +1 -0
  65. package/dist/chunk-LYYXX2W5.js +87 -0
  66. package/dist/chunk-LYYXX2W5.js.map +1 -0
  67. package/dist/chunk-NGLQ5W7U.js +339 -0
  68. package/dist/chunk-NGLQ5W7U.js.map +1 -0
  69. package/dist/chunk-NHCGC6DG.js +111 -0
  70. package/dist/chunk-NHCGC6DG.js.map +1 -0
  71. package/dist/chunk-NIKUMXE7.js +24 -0
  72. package/dist/chunk-NIKUMXE7.js.map +1 -0
  73. package/dist/chunk-NM3EDGB5.js +300 -0
  74. package/dist/chunk-NM3EDGB5.js.map +1 -0
  75. package/dist/chunk-O5ASLZ2K.js +270 -0
  76. package/dist/chunk-O5ASLZ2K.js.map +1 -0
  77. package/dist/chunk-OJIESW5B.js +174 -0
  78. package/dist/chunk-OJIESW5B.js.map +1 -0
  79. package/dist/chunk-OZZGXBCN.js +15 -0
  80. package/dist/chunk-OZZGXBCN.js.map +1 -0
  81. package/dist/chunk-P3PN5SVI.js +27 -0
  82. package/dist/chunk-P3PN5SVI.js.map +1 -0
  83. package/dist/chunk-P56WJ5FA.js +50 -0
  84. package/dist/chunk-P56WJ5FA.js.map +1 -0
  85. package/dist/chunk-PG4G4IIK.js +24 -0
  86. package/dist/chunk-PG4G4IIK.js.map +1 -0
  87. package/dist/chunk-PV2HNW4I.js +382 -0
  88. package/dist/chunk-PV2HNW4I.js.map +1 -0
  89. package/dist/chunk-QQLRX4KI.js +41 -0
  90. package/dist/chunk-QQLRX4KI.js.map +1 -0
  91. package/dist/chunk-QTFQEYDA.js +789 -0
  92. package/dist/chunk-QTFQEYDA.js.map +1 -0
  93. package/dist/chunk-RBHYLCUB.js +31 -0
  94. package/dist/chunk-RBHYLCUB.js.map +1 -0
  95. package/dist/chunk-SHHOMVWC.js +62 -0
  96. package/dist/chunk-SHHOMVWC.js.map +1 -0
  97. package/dist/chunk-SI5FOARI.js +42 -0
  98. package/dist/chunk-SI5FOARI.js.map +1 -0
  99. package/dist/chunk-SYUOXSPU.js +510 -0
  100. package/dist/chunk-SYUOXSPU.js.map +1 -0
  101. package/dist/chunk-THKIOI32.js +939 -0
  102. package/dist/chunk-THKIOI32.js.map +1 -0
  103. package/dist/chunk-TVHRMRD3.js +6014 -0
  104. package/dist/chunk-TVHRMRD3.js.map +1 -0
  105. package/dist/chunk-TYJLR32W.js +128 -0
  106. package/dist/chunk-TYJLR32W.js.map +1 -0
  107. package/dist/chunk-UFURYGD3.js +20 -0
  108. package/dist/chunk-UFURYGD3.js.map +1 -0
  109. package/dist/chunk-UTFN6UJS.js +253 -0
  110. package/dist/chunk-UTFN6UJS.js.map +1 -0
  111. package/dist/chunk-V7QOSGQA.js +298 -0
  112. package/dist/chunk-V7QOSGQA.js.map +1 -0
  113. package/dist/chunk-VEP23B5W.js +27 -0
  114. package/dist/chunk-VEP23B5W.js.map +1 -0
  115. package/dist/chunk-VG2TVBFN.js +52 -0
  116. package/dist/chunk-VG2TVBFN.js.map +1 -0
  117. package/dist/chunk-WFWCZEMS.js +92 -0
  118. package/dist/chunk-WFWCZEMS.js.map +1 -0
  119. package/dist/chunk-WK4J2CHH.js +430 -0
  120. package/dist/chunk-WK4J2CHH.js.map +1 -0
  121. package/dist/chunk-XA57SX4T.js +115 -0
  122. package/dist/chunk-XA57SX4T.js.map +1 -0
  123. package/dist/chunk-Y4CXDA3I.js +181 -0
  124. package/dist/chunk-Y4CXDA3I.js.map +1 -0
  125. package/dist/chunk-YA4QQKKE.js +51 -0
  126. package/dist/chunk-YA4QQKKE.js.map +1 -0
  127. package/dist/chunk-YBVA7GPW.js +27 -0
  128. package/dist/chunk-YBVA7GPW.js.map +1 -0
  129. package/dist/chunk-YU2VGX5R.js +4205 -0
  130. package/dist/chunk-YU2VGX5R.js.map +1 -0
  131. package/dist/commands/build/marketplace.js +250 -0
  132. package/dist/commands/build/marketplace.js.map +1 -0
  133. package/dist/commands/build/plugins.js +176 -0
  134. package/dist/commands/build/plugins.js.map +1 -0
  135. package/dist/commands/compile.js +331 -0
  136. package/dist/commands/compile.js.map +1 -0
  137. package/dist/commands/doctor.js +475 -0
  138. package/dist/commands/doctor.js.map +1 -0
  139. package/dist/commands/edit.js +765 -0
  140. package/dist/commands/edit.js.map +1 -0
  141. package/dist/commands/eject.js +393 -0
  142. package/dist/commands/eject.js.map +1 -0
  143. package/dist/commands/import/skill.js +349 -0
  144. package/dist/commands/import/skill.js.map +1 -0
  145. package/dist/commands/init.js +66 -0
  146. package/dist/commands/init.js.map +1 -0
  147. package/dist/commands/list.js +115 -0
  148. package/dist/commands/list.js.map +1 -0
  149. package/dist/commands/new/agent.js +304 -0
  150. package/dist/commands/new/agent.js.map +1 -0
  151. package/dist/commands/new/marketplace.js +315 -0
  152. package/dist/commands/new/marketplace.js.map +1 -0
  153. package/dist/commands/new/skill.js +28 -0
  154. package/dist/commands/new/skill.js.map +1 -0
  155. package/dist/commands/search.js +176 -0
  156. package/dist/commands/search.js.map +1 -0
  157. package/dist/commands/uninstall.js +570 -0
  158. package/dist/commands/uninstall.js.map +1 -0
  159. package/dist/commands/update.js +368 -0
  160. package/dist/commands/update.js.map +1 -0
  161. package/dist/commands/validate.js +581 -0
  162. package/dist/commands/validate.js.map +1 -0
  163. package/dist/components/common/confirm.js +9 -0
  164. package/dist/components/common/confirm.js.map +1 -0
  165. package/dist/components/common/confirm.test.js +203 -0
  166. package/dist/components/common/confirm.test.js.map +1 -0
  167. package/dist/components/common/prompt-confirm.js +11 -0
  168. package/dist/components/common/prompt-confirm.js.map +1 -0
  169. package/dist/components/common/select-list.js +11 -0
  170. package/dist/components/common/select-list.js.map +1 -0
  171. package/dist/components/common/spinner.js +9 -0
  172. package/dist/components/common/spinner.js.map +1 -0
  173. package/dist/components/wizard/category-grid.js +16 -0
  174. package/dist/components/wizard/category-grid.js.map +1 -0
  175. package/dist/components/wizard/category-grid.test.js +1253 -0
  176. package/dist/components/wizard/category-grid.test.js.map +1 -0
  177. package/dist/components/wizard/checkbox-grid.js +14 -0
  178. package/dist/components/wizard/checkbox-grid.js.map +1 -0
  179. package/dist/components/wizard/checkbox-grid.test.js +264 -0
  180. package/dist/components/wizard/checkbox-grid.test.js.map +1 -0
  181. package/dist/components/wizard/domain-selection.js +22 -0
  182. package/dist/components/wizard/domain-selection.js.map +1 -0
  183. package/dist/components/wizard/run-wizard-session.js +47 -0
  184. package/dist/components/wizard/run-wizard-session.js.map +1 -0
  185. package/dist/components/wizard/scroll-affordance.js +10 -0
  186. package/dist/components/wizard/scroll-affordance.js.map +1 -0
  187. package/dist/components/wizard/search-modal.js +14 -0
  188. package/dist/components/wizard/search-modal.js.map +1 -0
  189. package/dist/components/wizard/search-modal.test.js +212 -0
  190. package/dist/components/wizard/search-modal.test.js.map +1 -0
  191. package/dist/components/wizard/selection-card.js +10 -0
  192. package/dist/components/wizard/selection-card.js.map +1 -0
  193. package/dist/components/wizard/skill-agent-summary.js +16 -0
  194. package/dist/components/wizard/skill-agent-summary.js.map +1 -0
  195. package/dist/components/wizard/source-grid.js +23 -0
  196. package/dist/components/wizard/source-grid.js.map +1 -0
  197. package/dist/components/wizard/source-grid.test.js +1094 -0
  198. package/dist/components/wizard/source-grid.test.js.map +1 -0
  199. package/dist/components/wizard/stack-selection.js +20 -0
  200. package/dist/components/wizard/stack-selection.js.map +1 -0
  201. package/dist/components/wizard/step-agents.js +22 -0
  202. package/dist/components/wizard/step-agents.js.map +1 -0
  203. package/dist/components/wizard/step-agents.test.js +204 -0
  204. package/dist/components/wizard/step-agents.test.js.map +1 -0
  205. package/dist/components/wizard/step-build.js +22 -0
  206. package/dist/components/wizard/step-build.js.map +1 -0
  207. package/dist/components/wizard/step-build.test.js +552 -0
  208. package/dist/components/wizard/step-build.test.js.map +1 -0
  209. package/dist/components/wizard/step-confirm.js +21 -0
  210. package/dist/components/wizard/step-confirm.js.map +1 -0
  211. package/dist/components/wizard/step-confirm.test.js +744 -0
  212. package/dist/components/wizard/step-confirm.test.js.map +1 -0
  213. package/dist/components/wizard/step-settings.js +19 -0
  214. package/dist/components/wizard/step-settings.js.map +1 -0
  215. package/dist/components/wizard/step-settings.test.js +244 -0
  216. package/dist/components/wizard/step-settings.test.js.map +1 -0
  217. package/dist/components/wizard/step-sources.js +28 -0
  218. package/dist/components/wizard/step-sources.js.map +1 -0
  219. package/dist/components/wizard/step-sources.test.js +155 -0
  220. package/dist/components/wizard/step-sources.test.js.map +1 -0
  221. package/dist/components/wizard/step-stack.js +21 -0
  222. package/dist/components/wizard/step-stack.js.map +1 -0
  223. package/dist/components/wizard/step-stack.test.js +262 -0
  224. package/dist/components/wizard/step-stack.test.js.map +1 -0
  225. package/dist/components/wizard/summary-panel.js +20 -0
  226. package/dist/components/wizard/summary-panel.js.map +1 -0
  227. package/dist/components/wizard/summary-panel.test.js +317 -0
  228. package/dist/components/wizard/summary-panel.test.js.map +1 -0
  229. package/dist/components/wizard/toast.js +10 -0
  230. package/dist/components/wizard/toast.js.map +1 -0
  231. package/dist/components/wizard/wizard-layout.js +26 -0
  232. package/dist/components/wizard/wizard-layout.js.map +1 -0
  233. package/dist/components/wizard/wizard-layout.test.js +200 -0
  234. package/dist/components/wizard/wizard-layout.test.js.map +1 -0
  235. package/dist/components/wizard/wizard-tabs.js +20 -0
  236. package/dist/components/wizard/wizard-tabs.js.map +1 -0
  237. package/dist/components/wizard/wizard-tabs.test.js +290 -0
  238. package/dist/components/wizard/wizard-tabs.test.js.map +1 -0
  239. package/dist/components/wizard/wizard.js +48 -0
  240. package/dist/components/wizard/wizard.js.map +1 -0
  241. package/dist/config-exports.js +20 -0
  242. package/dist/config-exports.js.map +1 -0
  243. package/dist/copy-local-skills-UPA2GUZV.js +15 -0
  244. package/dist/copy-local-skills-UPA2GUZV.js.map +1 -0
  245. package/dist/dist-VNJNNJK7.js +550 -0
  246. package/dist/dist-VNJNNJK7.js.map +1 -0
  247. package/dist/hooks/init.js +90 -0
  248. package/dist/hooks/init.js.map +1 -0
  249. package/dist/index.js +10 -0
  250. package/dist/index.js.map +1 -0
  251. package/dist/load-agent-defs-SB4XAOVB.js +16 -0
  252. package/dist/load-agent-defs-SB4XAOVB.js.map +1 -0
  253. package/dist/loader-E2ERJYVA.js +23 -0
  254. package/dist/loader-E2ERJYVA.js.map +1 -0
  255. package/dist/magic-string.es-5TV73NJD.js +1316 -0
  256. package/dist/magic-string.es-5TV73NJD.js.map +1 -0
  257. package/dist/recompile-project-agents-U4ZY2GDX.js +20 -0
  258. package/dist/recompile-project-agents-U4ZY2GDX.js.map +1 -0
  259. package/dist/source-loader-5UNRU7EZ.js +20 -0
  260. package/dist/source-loader-5UNRU7EZ.js.map +1 -0
  261. package/dist/source-manager-3O54SIIB.js +18 -0
  262. package/dist/source-manager-3O54SIIB.js.map +1 -0
  263. package/dist/src/agents/_templates/agent.liquid +161 -0
  264. package/dist/src/agents/_templates/methodologies/anti-over-engineering.liquid +121 -0
  265. package/dist/src/agents/_templates/methodologies/context-management.liquid +162 -0
  266. package/dist/src/agents/_templates/methodologies/improvement-protocol.liquid +150 -0
  267. package/dist/src/agents/_templates/methodologies/investigation-requirements.liquid +49 -0
  268. package/dist/src/agents/_templates/methodologies/success-criteria.liquid +111 -0
  269. package/dist/src/agents/_templates/methodologies/write-verification.liquid +43 -0
  270. package/dist/src/agents/developer/ai-developer/critical-reminders.md +54 -0
  271. package/dist/src/agents/developer/ai-developer/critical-requirements.md +59 -0
  272. package/dist/src/agents/developer/ai-developer/identity.md +51 -0
  273. package/dist/src/agents/developer/ai-developer/metadata.yaml +12 -0
  274. package/dist/src/agents/developer/ai-developer/output.md +366 -0
  275. package/dist/src/agents/developer/ai-developer/playbook.md +335 -0
  276. package/dist/src/agents/developer/api-developer/critical-reminders.md +46 -0
  277. package/dist/src/agents/developer/api-developer/critical-requirements.md +44 -0
  278. package/dist/src/agents/developer/api-developer/identity.md +49 -0
  279. package/dist/src/agents/developer/api-developer/metadata.yaml +12 -0
  280. package/dist/src/agents/developer/api-developer/output.md +432 -0
  281. package/dist/src/agents/developer/api-developer/playbook.md +352 -0
  282. package/dist/src/agents/developer/cli-developer/critical-reminders.md +51 -0
  283. package/dist/src/agents/developer/cli-developer/critical-requirements.md +51 -0
  284. package/dist/src/agents/developer/cli-developer/identity.md +51 -0
  285. package/dist/src/agents/developer/cli-developer/metadata.yaml +12 -0
  286. package/dist/src/agents/developer/cli-developer/output.md +285 -0
  287. package/dist/src/agents/developer/cli-developer/playbook.md +386 -0
  288. package/dist/src/agents/developer/web-architecture/critical-reminders.md +48 -0
  289. package/dist/src/agents/developer/web-architecture/critical-requirements.md +65 -0
  290. package/dist/src/agents/developer/web-architecture/identity.md +64 -0
  291. package/dist/src/agents/developer/web-architecture/metadata.yaml +12 -0
  292. package/dist/src/agents/developer/web-architecture/output.md +449 -0
  293. package/dist/src/agents/developer/web-architecture/playbook.md +481 -0
  294. package/dist/src/agents/developer/web-developer/critical-reminders.md +40 -0
  295. package/dist/src/agents/developer/web-developer/critical-requirements.md +39 -0
  296. package/dist/src/agents/developer/web-developer/identity.md +32 -0
  297. package/dist/src/agents/developer/web-developer/metadata.yaml +12 -0
  298. package/dist/src/agents/developer/web-developer/output.md +323 -0
  299. package/dist/src/agents/developer/web-developer/playbook.md +349 -0
  300. package/dist/src/agents/meta/agent-summoner/critical-reminders.md +45 -0
  301. package/dist/src/agents/meta/agent-summoner/critical-requirements.md +52 -0
  302. package/dist/src/agents/meta/agent-summoner/identity.md +34 -0
  303. package/dist/src/agents/meta/agent-summoner/metadata.yaml +12 -0
  304. package/dist/src/agents/meta/agent-summoner/output.md +296 -0
  305. package/dist/src/agents/meta/agent-summoner/playbook.md +1469 -0
  306. package/dist/src/agents/meta/codex-keeper/critical-reminders.md +39 -0
  307. package/dist/src/agents/meta/codex-keeper/critical-requirements.md +29 -0
  308. package/dist/src/agents/meta/codex-keeper/identity.md +45 -0
  309. package/dist/src/agents/meta/codex-keeper/metadata.yaml +12 -0
  310. package/dist/src/agents/meta/codex-keeper/output.md +384 -0
  311. package/dist/src/agents/meta/codex-keeper/playbook.md +1183 -0
  312. package/dist/src/agents/meta/convention-keeper/critical-reminders.md +32 -0
  313. package/dist/src/agents/meta/convention-keeper/critical-requirements.md +32 -0
  314. package/dist/src/agents/meta/convention-keeper/identity.md +33 -0
  315. package/dist/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  316. package/dist/src/agents/meta/convention-keeper/output.md +206 -0
  317. package/dist/src/agents/meta/convention-keeper/playbook.md +180 -0
  318. package/dist/src/agents/meta/skill-summoner/critical-reminders.md +112 -0
  319. package/dist/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
  320. package/dist/src/agents/meta/skill-summoner/identity.md +31 -0
  321. package/dist/src/agents/meta/skill-summoner/metadata.yaml +13 -0
  322. package/dist/src/agents/meta/skill-summoner/output.md +390 -0
  323. package/dist/src/agents/meta/skill-summoner/playbook.md +1457 -0
  324. package/dist/src/agents/pattern/pattern-scout/critical-reminders.md +71 -0
  325. package/dist/src/agents/pattern/pattern-scout/critical-requirements.md +31 -0
  326. package/dist/src/agents/pattern/pattern-scout/identity.md +25 -0
  327. package/dist/src/agents/pattern/pattern-scout/metadata.yaml +10 -0
  328. package/dist/src/agents/pattern/pattern-scout/output.md +290 -0
  329. package/dist/src/agents/pattern/pattern-scout/playbook.md +1806 -0
  330. package/dist/src/agents/pattern/web-pattern-critique/critical-reminders.md +30 -0
  331. package/dist/src/agents/pattern/web-pattern-critique/critical-requirements.md +28 -0
  332. package/dist/src/agents/pattern/web-pattern-critique/identity.md +41 -0
  333. package/dist/src/agents/pattern/web-pattern-critique/metadata.yaml +12 -0
  334. package/dist/src/agents/pattern/web-pattern-critique/output.md +314 -0
  335. package/dist/src/agents/pattern/web-pattern-critique/playbook.md +572 -0
  336. package/dist/src/agents/planning/api-pm/critical-reminders.md +48 -0
  337. package/dist/src/agents/planning/api-pm/critical-requirements.md +41 -0
  338. package/dist/src/agents/planning/api-pm/identity.md +39 -0
  339. package/dist/src/agents/planning/api-pm/metadata.yaml +12 -0
  340. package/dist/src/agents/planning/api-pm/output.md +475 -0
  341. package/dist/src/agents/planning/api-pm/playbook.md +129 -0
  342. package/dist/src/agents/planning/web-pm/critical-reminders.md +36 -0
  343. package/dist/src/agents/planning/web-pm/critical-requirements.md +32 -0
  344. package/dist/src/agents/planning/web-pm/identity.md +26 -0
  345. package/dist/src/agents/planning/web-pm/metadata.yaml +12 -0
  346. package/dist/src/agents/planning/web-pm/output.md +314 -0
  347. package/dist/src/agents/planning/web-pm/playbook.md +318 -0
  348. package/dist/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
  349. package/dist/src/agents/researcher/api-researcher/critical-requirements.md +28 -0
  350. package/dist/src/agents/researcher/api-researcher/identity.md +71 -0
  351. package/dist/src/agents/researcher/api-researcher/metadata.yaml +10 -0
  352. package/dist/src/agents/researcher/api-researcher/output.md +254 -0
  353. package/dist/src/agents/researcher/api-researcher/playbook.md +201 -0
  354. package/dist/src/agents/researcher/web-researcher/critical-reminders.md +39 -0
  355. package/dist/src/agents/researcher/web-researcher/critical-requirements.md +26 -0
  356. package/dist/src/agents/researcher/web-researcher/identity.md +69 -0
  357. package/dist/src/agents/researcher/web-researcher/metadata.yaml +10 -0
  358. package/dist/src/agents/researcher/web-researcher/output.md +241 -0
  359. package/dist/src/agents/researcher/web-researcher/playbook.md +217 -0
  360. package/dist/src/agents/reviewer/ai-reviewer/critical-reminders.md +40 -0
  361. package/dist/src/agents/reviewer/ai-reviewer/critical-requirements.md +37 -0
  362. package/dist/src/agents/reviewer/ai-reviewer/identity.md +51 -0
  363. package/dist/src/agents/reviewer/ai-reviewer/metadata.yaml +10 -0
  364. package/dist/src/agents/reviewer/ai-reviewer/output.md +395 -0
  365. package/dist/src/agents/reviewer/ai-reviewer/playbook.md +90 -0
  366. package/dist/src/agents/reviewer/api-reviewer/critical-reminders.md +31 -0
  367. package/dist/src/agents/reviewer/api-reviewer/critical-requirements.md +27 -0
  368. package/dist/src/agents/reviewer/api-reviewer/identity.md +51 -0
  369. package/dist/src/agents/reviewer/api-reviewer/metadata.yaml +12 -0
  370. package/dist/src/agents/reviewer/api-reviewer/output.md +343 -0
  371. package/dist/src/agents/reviewer/api-reviewer/playbook.md +288 -0
  372. package/dist/src/agents/reviewer/cli-reviewer/critical-reminders.md +33 -0
  373. package/dist/src/agents/reviewer/cli-reviewer/critical-requirements.md +30 -0
  374. package/dist/src/agents/reviewer/cli-reviewer/identity.md +44 -0
  375. package/dist/src/agents/reviewer/cli-reviewer/metadata.yaml +12 -0
  376. package/dist/src/agents/reviewer/cli-reviewer/output.md +414 -0
  377. package/dist/src/agents/reviewer/cli-reviewer/playbook.md +218 -0
  378. package/dist/src/agents/reviewer/infra-reviewer/critical-reminders.md +38 -0
  379. package/dist/src/agents/reviewer/infra-reviewer/critical-requirements.md +38 -0
  380. package/dist/src/agents/reviewer/infra-reviewer/identity.md +53 -0
  381. package/dist/src/agents/reviewer/infra-reviewer/metadata.yaml +10 -0
  382. package/dist/src/agents/reviewer/infra-reviewer/output.md +364 -0
  383. package/dist/src/agents/reviewer/infra-reviewer/playbook.md +161 -0
  384. package/dist/src/agents/reviewer/web-reviewer/critical-reminders.md +31 -0
  385. package/dist/src/agents/reviewer/web-reviewer/critical-requirements.md +26 -0
  386. package/dist/src/agents/reviewer/web-reviewer/identity.md +40 -0
  387. package/dist/src/agents/reviewer/web-reviewer/metadata.yaml +12 -0
  388. package/dist/src/agents/reviewer/web-reviewer/output.md +333 -0
  389. package/dist/src/agents/reviewer/web-reviewer/playbook.md +156 -0
  390. package/dist/src/agents/tester/api-tester/critical-reminders.md +41 -0
  391. package/dist/src/agents/tester/api-tester/critical-requirements.md +41 -0
  392. package/dist/src/agents/tester/api-tester/identity.md +47 -0
  393. package/dist/src/agents/tester/api-tester/metadata.yaml +12 -0
  394. package/dist/src/agents/tester/api-tester/output.md +284 -0
  395. package/dist/src/agents/tester/api-tester/playbook.md +275 -0
  396. package/dist/src/agents/tester/cli-tester/critical-reminders.md +36 -0
  397. package/dist/src/agents/tester/cli-tester/critical-requirements.md +36 -0
  398. package/dist/src/agents/tester/cli-tester/identity.md +43 -0
  399. package/dist/src/agents/tester/cli-tester/metadata.yaml +12 -0
  400. package/dist/src/agents/tester/cli-tester/output.md +313 -0
  401. package/dist/src/agents/tester/cli-tester/playbook.md +221 -0
  402. package/dist/src/agents/tester/web-tester/critical-reminders.md +31 -0
  403. package/dist/src/agents/tester/web-tester/critical-requirements.md +28 -0
  404. package/dist/src/agents/tester/web-tester/identity.md +41 -0
  405. package/dist/src/agents/tester/web-tester/metadata.yaml +12 -0
  406. package/dist/src/agents/tester/web-tester/output.md +321 -0
  407. package/dist/src/agents/tester/web-tester/playbook.md +428 -0
  408. package/dist/stores/d227-same-scope-tombstone-duplicate.test.js +118 -0
  409. package/dist/stores/d227-same-scope-tombstone-duplicate.test.js.map +1 -0
  410. package/dist/stores/wizard-store.js +21 -0
  411. package/dist/stores/wizard-store.js.map +1 -0
  412. package/dist/stores/wizard-store.test.js +3053 -0
  413. package/dist/stores/wizard-store.test.js.map +1 -0
  414. package/package.json +130 -12
  415. package/src/agents/_templates/agent.liquid +161 -0
  416. package/src/agents/_templates/methodologies/anti-over-engineering.liquid +121 -0
  417. package/src/agents/_templates/methodologies/context-management.liquid +162 -0
  418. package/src/agents/_templates/methodologies/improvement-protocol.liquid +150 -0
  419. package/src/agents/_templates/methodologies/investigation-requirements.liquid +49 -0
  420. package/src/agents/_templates/methodologies/success-criteria.liquid +111 -0
  421. package/src/agents/_templates/methodologies/write-verification.liquid +43 -0
  422. package/src/agents/developer/ai-developer/critical-reminders.md +54 -0
  423. package/src/agents/developer/ai-developer/critical-requirements.md +59 -0
  424. package/src/agents/developer/ai-developer/identity.md +51 -0
  425. package/src/agents/developer/ai-developer/metadata.yaml +12 -0
  426. package/src/agents/developer/ai-developer/output.md +366 -0
  427. package/src/agents/developer/ai-developer/playbook.md +335 -0
  428. package/src/agents/developer/api-developer/critical-reminders.md +46 -0
  429. package/src/agents/developer/api-developer/critical-requirements.md +44 -0
  430. package/src/agents/developer/api-developer/identity.md +49 -0
  431. package/src/agents/developer/api-developer/metadata.yaml +12 -0
  432. package/src/agents/developer/api-developer/output.md +432 -0
  433. package/src/agents/developer/api-developer/playbook.md +352 -0
  434. package/src/agents/developer/cli-developer/critical-reminders.md +51 -0
  435. package/src/agents/developer/cli-developer/critical-requirements.md +51 -0
  436. package/src/agents/developer/cli-developer/identity.md +51 -0
  437. package/src/agents/developer/cli-developer/metadata.yaml +12 -0
  438. package/src/agents/developer/cli-developer/output.md +285 -0
  439. package/src/agents/developer/cli-developer/playbook.md +386 -0
  440. package/src/agents/developer/web-architecture/critical-reminders.md +48 -0
  441. package/src/agents/developer/web-architecture/critical-requirements.md +65 -0
  442. package/src/agents/developer/web-architecture/identity.md +64 -0
  443. package/src/agents/developer/web-architecture/metadata.yaml +12 -0
  444. package/src/agents/developer/web-architecture/output.md +449 -0
  445. package/src/agents/developer/web-architecture/playbook.md +481 -0
  446. package/src/agents/developer/web-developer/critical-reminders.md +40 -0
  447. package/src/agents/developer/web-developer/critical-requirements.md +39 -0
  448. package/src/agents/developer/web-developer/identity.md +32 -0
  449. package/src/agents/developer/web-developer/metadata.yaml +12 -0
  450. package/src/agents/developer/web-developer/output.md +323 -0
  451. package/src/agents/developer/web-developer/playbook.md +349 -0
  452. package/src/agents/meta/agent-summoner/critical-reminders.md +45 -0
  453. package/src/agents/meta/agent-summoner/critical-requirements.md +52 -0
  454. package/src/agents/meta/agent-summoner/identity.md +34 -0
  455. package/src/agents/meta/agent-summoner/metadata.yaml +12 -0
  456. package/src/agents/meta/agent-summoner/output.md +296 -0
  457. package/src/agents/meta/agent-summoner/playbook.md +1469 -0
  458. package/src/agents/meta/codex-keeper/critical-reminders.md +39 -0
  459. package/src/agents/meta/codex-keeper/critical-requirements.md +29 -0
  460. package/src/agents/meta/codex-keeper/identity.md +45 -0
  461. package/src/agents/meta/codex-keeper/metadata.yaml +12 -0
  462. package/src/agents/meta/codex-keeper/output.md +384 -0
  463. package/src/agents/meta/codex-keeper/playbook.md +1183 -0
  464. package/src/agents/meta/convention-keeper/critical-reminders.md +32 -0
  465. package/src/agents/meta/convention-keeper/critical-requirements.md +32 -0
  466. package/src/agents/meta/convention-keeper/identity.md +33 -0
  467. package/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  468. package/src/agents/meta/convention-keeper/output.md +206 -0
  469. package/src/agents/meta/convention-keeper/playbook.md +180 -0
  470. package/src/agents/meta/skill-summoner/critical-reminders.md +112 -0
  471. package/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
  472. package/src/agents/meta/skill-summoner/identity.md +31 -0
  473. package/src/agents/meta/skill-summoner/metadata.yaml +13 -0
  474. package/src/agents/meta/skill-summoner/output.md +390 -0
  475. package/src/agents/meta/skill-summoner/playbook.md +1457 -0
  476. package/src/agents/pattern/pattern-scout/critical-reminders.md +71 -0
  477. package/src/agents/pattern/pattern-scout/critical-requirements.md +31 -0
  478. package/src/agents/pattern/pattern-scout/identity.md +25 -0
  479. package/src/agents/pattern/pattern-scout/metadata.yaml +10 -0
  480. package/src/agents/pattern/pattern-scout/output.md +290 -0
  481. package/src/agents/pattern/pattern-scout/playbook.md +1806 -0
  482. package/src/agents/pattern/web-pattern-critique/critical-reminders.md +30 -0
  483. package/src/agents/pattern/web-pattern-critique/critical-requirements.md +28 -0
  484. package/src/agents/pattern/web-pattern-critique/identity.md +41 -0
  485. package/src/agents/pattern/web-pattern-critique/metadata.yaml +12 -0
  486. package/src/agents/pattern/web-pattern-critique/output.md +314 -0
  487. package/src/agents/pattern/web-pattern-critique/playbook.md +572 -0
  488. package/src/agents/planning/api-pm/critical-reminders.md +48 -0
  489. package/src/agents/planning/api-pm/critical-requirements.md +41 -0
  490. package/src/agents/planning/api-pm/identity.md +39 -0
  491. package/src/agents/planning/api-pm/metadata.yaml +12 -0
  492. package/src/agents/planning/api-pm/output.md +475 -0
  493. package/src/agents/planning/api-pm/playbook.md +129 -0
  494. package/src/agents/planning/web-pm/critical-reminders.md +36 -0
  495. package/src/agents/planning/web-pm/critical-requirements.md +32 -0
  496. package/src/agents/planning/web-pm/identity.md +26 -0
  497. package/src/agents/planning/web-pm/metadata.yaml +12 -0
  498. package/src/agents/planning/web-pm/output.md +314 -0
  499. package/src/agents/planning/web-pm/playbook.md +318 -0
  500. package/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
  501. package/src/agents/researcher/api-researcher/critical-requirements.md +28 -0
  502. package/src/agents/researcher/api-researcher/identity.md +71 -0
  503. package/src/agents/researcher/api-researcher/metadata.yaml +10 -0
  504. package/src/agents/researcher/api-researcher/output.md +254 -0
  505. package/src/agents/researcher/api-researcher/playbook.md +201 -0
  506. package/src/agents/researcher/web-researcher/critical-reminders.md +39 -0
  507. package/src/agents/researcher/web-researcher/critical-requirements.md +26 -0
  508. package/src/agents/researcher/web-researcher/identity.md +69 -0
  509. package/src/agents/researcher/web-researcher/metadata.yaml +10 -0
  510. package/src/agents/researcher/web-researcher/output.md +241 -0
  511. package/src/agents/researcher/web-researcher/playbook.md +217 -0
  512. package/src/agents/reviewer/ai-reviewer/critical-reminders.md +40 -0
  513. package/src/agents/reviewer/ai-reviewer/critical-requirements.md +37 -0
  514. package/src/agents/reviewer/ai-reviewer/identity.md +51 -0
  515. package/src/agents/reviewer/ai-reviewer/metadata.yaml +10 -0
  516. package/src/agents/reviewer/ai-reviewer/output.md +395 -0
  517. package/src/agents/reviewer/ai-reviewer/playbook.md +90 -0
  518. package/src/agents/reviewer/api-reviewer/critical-reminders.md +31 -0
  519. package/src/agents/reviewer/api-reviewer/critical-requirements.md +27 -0
  520. package/src/agents/reviewer/api-reviewer/identity.md +51 -0
  521. package/src/agents/reviewer/api-reviewer/metadata.yaml +12 -0
  522. package/src/agents/reviewer/api-reviewer/output.md +343 -0
  523. package/src/agents/reviewer/api-reviewer/playbook.md +288 -0
  524. package/src/agents/reviewer/cli-reviewer/critical-reminders.md +33 -0
  525. package/src/agents/reviewer/cli-reviewer/critical-requirements.md +30 -0
  526. package/src/agents/reviewer/cli-reviewer/identity.md +44 -0
  527. package/src/agents/reviewer/cli-reviewer/metadata.yaml +12 -0
  528. package/src/agents/reviewer/cli-reviewer/output.md +414 -0
  529. package/src/agents/reviewer/cli-reviewer/playbook.md +218 -0
  530. package/src/agents/reviewer/infra-reviewer/critical-reminders.md +38 -0
  531. package/src/agents/reviewer/infra-reviewer/critical-requirements.md +38 -0
  532. package/src/agents/reviewer/infra-reviewer/identity.md +53 -0
  533. package/src/agents/reviewer/infra-reviewer/metadata.yaml +10 -0
  534. package/src/agents/reviewer/infra-reviewer/output.md +364 -0
  535. package/src/agents/reviewer/infra-reviewer/playbook.md +161 -0
  536. package/src/agents/reviewer/web-reviewer/critical-reminders.md +31 -0
  537. package/src/agents/reviewer/web-reviewer/critical-requirements.md +26 -0
  538. package/src/agents/reviewer/web-reviewer/identity.md +40 -0
  539. package/src/agents/reviewer/web-reviewer/metadata.yaml +12 -0
  540. package/src/agents/reviewer/web-reviewer/output.md +333 -0
  541. package/src/agents/reviewer/web-reviewer/playbook.md +156 -0
  542. package/src/agents/tester/api-tester/critical-reminders.md +41 -0
  543. package/src/agents/tester/api-tester/critical-requirements.md +41 -0
  544. package/src/agents/tester/api-tester/identity.md +47 -0
  545. package/src/agents/tester/api-tester/metadata.yaml +12 -0
  546. package/src/agents/tester/api-tester/output.md +284 -0
  547. package/src/agents/tester/api-tester/playbook.md +275 -0
  548. package/src/agents/tester/cli-tester/critical-reminders.md +36 -0
  549. package/src/agents/tester/cli-tester/critical-requirements.md +36 -0
  550. package/src/agents/tester/cli-tester/identity.md +43 -0
  551. package/src/agents/tester/cli-tester/metadata.yaml +12 -0
  552. package/src/agents/tester/cli-tester/output.md +313 -0
  553. package/src/agents/tester/cli-tester/playbook.md +221 -0
  554. package/src/agents/tester/web-tester/critical-reminders.md +31 -0
  555. package/src/agents/tester/web-tester/critical-requirements.md +28 -0
  556. package/src/agents/tester/web-tester/identity.md +41 -0
  557. package/src/agents/tester/web-tester/metadata.yaml +12 -0
  558. package/src/agents/tester/web-tester/output.md +321 -0
  559. package/src/agents/tester/web-tester/playbook.md +428 -0
  560. package/src/schemas/agent-frontmatter.schema.json +88 -0
  561. package/src/schemas/agent.schema.json +103 -0
  562. package/src/schemas/custom-metadata.schema.json +74 -0
  563. package/src/schemas/hooks.schema.json +47 -0
  564. package/src/schemas/marketplace.schema.json +119 -0
  565. package/src/schemas/metadata.schema.json +387 -0
  566. package/src/schemas/plugin.schema.json +127 -0
  567. package/src/schemas/project-config.schema.json +189 -0
  568. package/src/schemas/project-source-config.schema.json +96 -0
  569. package/src/schemas/skill-frontmatter.schema.json +42 -0
  570. package/src/schemas/stack.schema.json +191 -0
  571. package/src/schemas/stacks.schema.json +107 -0
  572. package/bin/run.js +0 -3
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/cli/components/wizard/wizard-tabs.test.tsx"],"sourcesContent":["import { render } from \"ink-testing-library\";\nimport { afterEach, describe, expect, it } from \"vitest\";\nimport type { WizardStep } from \"../../stores/wizard-store\";\nimport { WizardTabs, WIZARD_STEPS, formatStepLabel, type WizardTabsProps } from \"./wizard-tabs\";\n\nconst renderWizardTabs = (props: Partial<WizardTabsProps> = {}) => {\n const defaultProps: WizardTabsProps = {\n steps: WIZARD_STEPS,\n currentStep: \"stack\",\n completedSteps: [],\n skippedSteps: [],\n ...props,\n };\n return render(<WizardTabs {...defaultProps} />);\n};\n\ndescribe(\"WizardTabs component\", () => {\n let cleanup: (() => void) | undefined;\n\n afterEach(() => {\n cleanup?.();\n cleanup = undefined;\n });\n\n describe(\"rendering\", () => {\n it(\"should render all 6 tabs\", () => {\n const { lastFrame, unmount } = renderWizardTabs();\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n expect(output).toContain(formatStepLabel(\"domains\"));\n expect(output).toContain(formatStepLabel(\"build\"));\n expect(output).toContain(formatStepLabel(\"sources\"));\n expect(output).toContain(formatStepLabel(\"agents\"));\n expect(output).toContain(formatStepLabel(\"confirm\"));\n });\n\n it(\"should render with custom steps\", () => {\n const customSteps = [\n { id: \"stack\" as WizardStep, label: \"First\" },\n { id: \"build\" as WizardStep, label: \"Second\" },\n ];\n const { lastFrame, unmount } = renderWizardTabs({\n steps: customSteps,\n currentStep: \"stack\",\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(\"First\");\n expect(output).toContain(\"Second\");\n });\n\n it(\"should render horizontal dividers above and below tabs\", () => {\n const { lastFrame, unmount } = renderWizardTabs();\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(\"\\u2500\");\n });\n });\n\n describe(\"current step\", () => {\n it(\"should render current step label\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"build\",\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"build\"));\n });\n\n it(\"should mark first step as current by default\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"stack\",\n completedSteps: [],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n });\n\n it(\"should update current step when changed\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"confirm\",\n completedSteps: [\"stack\", \"build\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"confirm\"));\n });\n });\n\n describe(\"completed steps\", () => {\n it(\"should render completed step labels\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"build\",\n completedSteps: [\"stack\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n });\n\n it(\"should render multiple completed steps\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"sources\",\n completedSteps: [\"stack\", \"build\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n expect(output).toContain(formatStepLabel(\"build\"));\n });\n\n it(\"should render current step separately from completed steps\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"stack\",\n completedSteps: [],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n });\n });\n\n describe(\"pending steps\", () => {\n it(\"should render pending step labels\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"stack\",\n completedSteps: [],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"domains\"));\n expect(output).toContain(formatStepLabel(\"build\"));\n expect(output).toContain(formatStepLabel(\"sources\"));\n });\n\n it(\"should render steps after current\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"build\",\n completedSteps: [\"stack\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"confirm\"));\n });\n });\n\n describe(\"skipped steps\", () => {\n it(\"should render skipped step labels\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"sources\",\n completedSteps: [\"stack\"],\n skippedSteps: [\"build\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"build\"));\n });\n\n it(\"should handle multiple skipped steps\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"confirm\",\n completedSteps: [\"stack\"],\n skippedSteps: [\"build\", \"sources\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"build\"));\n expect(output).toContain(formatStepLabel(\"sources\"));\n });\n\n it(\"should prioritize completed over skipped when step is in both arrays\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"sources\",\n completedSteps: [\"stack\", \"build\"],\n skippedSteps: [\"build\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n expect(output).toContain(formatStepLabel(\"build\"));\n });\n });\n\n describe(\"state priority\", () => {\n it(\"should prioritize completed over current\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"stack\",\n completedSteps: [\"stack\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n });\n\n it(\"should prioritize current over skipped\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"build\",\n completedSteps: [],\n skippedSteps: [\"build\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"build\"));\n });\n\n it(\"should prioritize completed over skipped\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"sources\",\n completedSteps: [\"stack\"],\n skippedSteps: [\"stack\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n });\n });\n\n describe(\"visual layout\", () => {\n it(\"should render tabs horizontally\", () => {\n const { lastFrame, unmount } = renderWizardTabs();\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n expect(output).toContain(formatStepLabel(\"confirm\"));\n });\n\n it(\"should include step labels\", () => {\n const { lastFrame, unmount } = renderWizardTabs();\n cleanup = unmount;\n\n const output = lastFrame();\n WIZARD_STEPS.forEach((step) => {\n expect(output).toContain(formatStepLabel(step.id));\n });\n });\n });\n\n describe(\"edge cases\", () => {\n it(\"should handle empty completed steps\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"stack\",\n completedSteps: [],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n expect(output).toContain(formatStepLabel(\"confirm\"));\n });\n\n it(\"should handle empty skipped steps\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"sources\",\n completedSteps: [\"stack\", \"build\"],\n skippedSteps: [],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n expect(output).toContain(formatStepLabel(\"build\"));\n expect(output).toContain(formatStepLabel(\"sources\"));\n });\n\n it(\"should handle all steps completed\", () => {\n const { lastFrame, unmount } = renderWizardTabs({\n currentStep: \"confirm\",\n completedSteps: [\"stack\", \"domains\", \"build\", \"sources\", \"agents\", \"confirm\"],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(formatStepLabel(\"stack\"));\n expect(output).toContain(formatStepLabel(\"domains\"));\n expect(output).toContain(formatStepLabel(\"build\"));\n expect(output).toContain(formatStepLabel(\"sources\"));\n expect(output).toContain(formatStepLabel(\"confirm\"));\n });\n\n it(\"should handle single step\", () => {\n const singleStep = [{ id: \"confirm\" as WizardStep, label: \"Only Step\" }];\n const { lastFrame, unmount } = renderWizardTabs({\n steps: singleStep,\n currentStep: \"confirm\",\n completedSteps: [],\n });\n cleanup = unmount;\n\n const output = lastFrame();\n expect(output).toContain(\"Only Step\");\n });\n });\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAagB;AARhB,IAAM,mBAAmB,CAAC,QAAkC,CAAC,MAAM;AACjE,QAAM,eAAgC;AAAA,IACpC,OAAO;AAAA,IACP,aAAa;AAAA,IACb,gBAAgB,CAAC;AAAA,IACjB,cAAc,CAAC;AAAA,IACf,GAAG;AAAA,EACL;AACA,SAAO,OAAO,oBAAC,cAAY,GAAG,cAAc,CAAE;AAChD;AAEA,SAAS,wBAAwB,MAAM;AACrC,MAAI;AAEJ,YAAU,MAAM;AACd,cAAU;AACV,cAAU;AAAA,EACZ,CAAC;AAED,WAAS,aAAa,MAAM;AAC1B,OAAG,4BAA4B,MAAM;AACnC,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAChD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AACnD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AACnD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,QAAQ,CAAC;AAClD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAED,OAAG,mCAAmC,MAAM;AAC1C,YAAM,cAAc;AAAA,QAClB,EAAE,IAAI,SAAuB,OAAO,QAAQ;AAAA,QAC5C,EAAE,IAAI,SAAuB,OAAO,SAAS;AAAA,MAC/C;AACA,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,OAAO;AAAA,QACP,aAAa;AAAA,MACf,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,OAAO;AAChC,mBAAO,MAAM,EAAE,UAAU,QAAQ;AAAA,IACnC,CAAC;AAED,OAAG,0DAA0D,MAAM;AACjE,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAChD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,QAAQ;AAAA,IACnC,CAAC;AAAA,EACH,CAAC;AAED,WAAS,gBAAgB,MAAM;AAC7B,OAAG,oCAAoC,MAAM;AAC3C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,MACf,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAED,OAAG,gDAAgD,MAAM;AACvD,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC;AAAA,MACnB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAED,OAAG,2CAA2C,MAAM;AAClD,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,SAAS,OAAO;AAAA,MACnC,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,mBAAmB,MAAM;AAChC,OAAG,uCAAuC,MAAM;AAC9C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,OAAO;AAAA,MAC1B,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAED,OAAG,0CAA0C,MAAM;AACjD,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,SAAS,OAAO;AAAA,MACnC,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAED,OAAG,8DAA8D,MAAM;AACrE,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC;AAAA,MACnB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,iBAAiB,MAAM;AAC9B,OAAG,qCAAqC,MAAM;AAC5C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC;AAAA,MACnB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AACnD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAED,OAAG,qCAAqC,MAAM;AAC5C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,OAAO;AAAA,MAC1B,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,iBAAiB,MAAM;AAC9B,OAAG,qCAAqC,MAAM;AAC5C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,OAAO;AAAA,QACxB,cAAc,CAAC,OAAO;AAAA,MACxB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAED,OAAG,wCAAwC,MAAM;AAC/C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,OAAO;AAAA,QACxB,cAAc,CAAC,SAAS,SAAS;AAAA,MACnC,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAED,OAAG,wEAAwE,MAAM;AAC/E,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,SAAS,OAAO;AAAA,QACjC,cAAc,CAAC,OAAO;AAAA,MACxB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,kBAAkB,MAAM;AAC/B,OAAG,4CAA4C,MAAM;AACnD,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,OAAO;AAAA,MAC1B,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAED,OAAG,0CAA0C,MAAM;AACjD,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC;AAAA,QACjB,cAAc,CAAC,OAAO;AAAA,MACxB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAED,OAAG,4CAA4C,MAAM;AACnD,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,OAAO;AAAA,QACxB,cAAc,CAAC,OAAO;AAAA,MACxB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AAAA,IACnD,CAAC;AAAA,EACH,CAAC;AAED,WAAS,iBAAiB,MAAM;AAC9B,OAAG,mCAAmC,MAAM;AAC1C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAChD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAED,OAAG,8BAA8B,MAAM;AACrC,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAChD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAa,QAAQ,CAAC,SAAS;AAC7B,qBAAO,MAAM,EAAE,UAAU,gBAAgB,KAAK,EAAE,CAAC;AAAA,MACnD,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC;AAED,WAAS,cAAc,MAAM;AAC3B,OAAG,uCAAuC,MAAM;AAC9C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC;AAAA,MACnB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAED,OAAG,qCAAqC,MAAM;AAC5C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,SAAS,OAAO;AAAA,QACjC,cAAc,CAAC;AAAA,MACjB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAED,OAAG,qCAAqC,MAAM;AAC5C,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,aAAa;AAAA,QACb,gBAAgB,CAAC,SAAS,WAAW,SAAS,WAAW,UAAU,SAAS;AAAA,MAC9E,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AACnD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,OAAO,CAAC;AACjD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AACnD,mBAAO,MAAM,EAAE,UAAU,gBAAgB,SAAS,CAAC;AAAA,IACrD,CAAC;AAED,OAAG,6BAA6B,MAAM;AACpC,YAAM,aAAa,CAAC,EAAE,IAAI,WAAyB,OAAO,YAAY,CAAC;AACvE,YAAM,EAAE,WAAW,QAAQ,IAAI,iBAAiB;AAAA,QAC9C,OAAO;AAAA,QACP,aAAa;AAAA,QACb,gBAAgB,CAAC;AAAA,MACnB,CAAC;AACD,gBAAU;AAEV,YAAM,SAAS,UAAU;AACzB,mBAAO,MAAM,EAAE,UAAU,WAAW;AAAA,IACtC,CAAC;AAAA,EACH,CAAC;AACH,CAAC;","names":[]}
@@ -0,0 +1,48 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ Wizard,
4
+ resolveSelectedSkillIds
5
+ } from "../../chunk-EZ7STXUV.js";
6
+ import "../../chunk-UTFN6UJS.js";
7
+ import "../../chunk-EVXG3X6G.js";
8
+ import "../../chunk-OJIESW5B.js";
9
+ import "../../chunk-UFURYGD3.js";
10
+ import "../../chunk-RBHYLCUB.js";
11
+ import "../../chunk-LAXAQ3PZ.js";
12
+ import "../../chunk-NM3EDGB5.js";
13
+ import "../../chunk-NHCGC6DG.js";
14
+ import "../../chunk-BNE4HHIH.js";
15
+ import "../../chunk-TYJLR32W.js";
16
+ import "../../chunk-IOJR5TOY.js";
17
+ import "../../chunk-3YGUHWLR.js";
18
+ import "../../chunk-QQLRX4KI.js";
19
+ import "../../chunk-WK4J2CHH.js";
20
+ import "../../chunk-NIKUMXE7.js";
21
+ import "../../chunk-KOPEM3Q7.js";
22
+ import "../../chunk-2RSNKBXC.js";
23
+ import "../../chunk-DUVWGO6E.js";
24
+ import "../../chunk-KIR7VYQD.js";
25
+ import "../../chunk-6RBQBOBS.js";
26
+ import "../../chunk-LYYXX2W5.js";
27
+ import "../../chunk-SHHOMVWC.js";
28
+ import "../../chunk-YA4QQKKE.js";
29
+ import "../../chunk-XA57SX4T.js";
30
+ import "../../chunk-FYPUUYSG.js";
31
+ import "../../chunk-DAG2ULNF.js";
32
+ import "../../chunk-VG2TVBFN.js";
33
+ import "../../chunk-IHO75PMZ.js";
34
+ import "../../chunk-5V2O6C3T.js";
35
+ import "../../chunk-44LLPS2N.js";
36
+ import "../../chunk-P3PN5SVI.js";
37
+ import "../../chunk-TVHRMRD3.js";
38
+ import "../../chunk-3LIU2ZEF.js";
39
+ import "../../chunk-DG2NGZ7S.js";
40
+ import "../../chunk-VEP23B5W.js";
41
+ import "../../chunk-O5ASLZ2K.js";
42
+ import "../../chunk-YU2VGX5R.js";
43
+ import "../../chunk-P56WJ5FA.js";
44
+ export {
45
+ Wizard,
46
+ resolveSelectedSkillIds
47
+ };
48
+ //# sourceMappingURL=wizard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,20 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ defaultCategories,
4
+ defaultRules,
5
+ defaultStacks,
6
+ defineConfig
7
+ } from "./chunk-YU2VGX5R.js";
8
+ import {
9
+ init_esm_shims
10
+ } from "./chunk-P56WJ5FA.js";
11
+
12
+ // src/cli/config-exports.ts
13
+ init_esm_shims();
14
+ export {
15
+ defaultCategories,
16
+ defaultRules,
17
+ defaultStacks,
18
+ defineConfig
19
+ };
20
+ //# sourceMappingURL=config-exports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/config-exports.ts"],"sourcesContent":["export { defineConfig } from \"./lib/configuration/define-config\";\nexport { defaultCategories } from \"./lib/configuration/default-categories\";\nexport { defaultRules } from \"./lib/configuration/default-rules\";\nexport { defaultStacks } from \"./lib/configuration/default-stacks\";\n\nexport type { ProjectConfig } from \"./types\";\nexport type { Stack, StackAgentConfig } from \"./types\";\nexport type { CategoryMap, SkillRulesConfig } from \"./types\";\n"],"mappings":";;;;;;;;;;;;AAAA;","names":[]}
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ copyLocalSkills
4
+ } from "./chunk-3XFUQ6OL.js";
5
+ import "./chunk-TVHRMRD3.js";
6
+ import "./chunk-3LIU2ZEF.js";
7
+ import "./chunk-DG2NGZ7S.js";
8
+ import "./chunk-VEP23B5W.js";
9
+ import "./chunk-O5ASLZ2K.js";
10
+ import "./chunk-YU2VGX5R.js";
11
+ import "./chunk-P56WJ5FA.js";
12
+ export {
13
+ copyLocalSkills
14
+ };
15
+ //# sourceMappingURL=copy-local-skills-UPA2GUZV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,550 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ init_esm_shims
4
+ } from "./chunk-P56WJ5FA.js";
5
+
6
+ // ../../node_modules/tinybench/dist/index.js
7
+ init_esm_shims();
8
+ var $ = Object.defineProperty;
9
+ var C = (s) => {
10
+ throw TypeError(s);
11
+ };
12
+ var D = (s, n, t) => n in s ? $(s, n, { enumerable: true, configurable: true, writable: true, value: t }) : s[n] = t;
13
+ var O = (s, n, t) => D(s, typeof n != "symbol" ? n + "" : n, t);
14
+ var q = (s, n, t) => n.has(s) || C("Cannot " + t);
15
+ var d = (s, n, t) => (q(s, n, "read from private field"), t ? t.call(s) : n.get(s));
16
+ var k = (s, n, t) => n.has(s) ? C("Cannot add the same private member more than once") : n instanceof WeakSet ? n.add(s) : n.set(s, t);
17
+ var f = (s, n, t, e) => (q(s, n, "write to private field"), e ? e.call(s, t) : n.set(s, t), t);
18
+ var F = (s, n, t, e) => ({
19
+ set _(r) {
20
+ f(s, n, r, t);
21
+ },
22
+ get _() {
23
+ return d(s, n, e);
24
+ }
25
+ });
26
+ var M = class {
27
+ constructor(n) {
28
+ O(this, "value");
29
+ O(this, "next");
30
+ this.value = n;
31
+ }
32
+ };
33
+ var m;
34
+ var w;
35
+ var E;
36
+ var g = class {
37
+ constructor() {
38
+ k(this, m);
39
+ k(this, w);
40
+ k(this, E);
41
+ this.clear();
42
+ }
43
+ enqueue(n) {
44
+ let t = new M(n);
45
+ d(this, m) ? (d(this, w).next = t, f(this, w, t)) : (f(this, m, t), f(this, w, t)), F(this, E)._++;
46
+ }
47
+ dequeue() {
48
+ let n = d(this, m);
49
+ if (n)
50
+ return f(this, m, d(this, m).next), F(this, E)._--, n.value;
51
+ }
52
+ clear() {
53
+ f(this, m, void 0), f(this, w, void 0), f(this, E, 0);
54
+ }
55
+ get size() {
56
+ return d(this, E);
57
+ }
58
+ *[Symbol.iterator]() {
59
+ let n = d(this, m);
60
+ for (; n; )
61
+ yield n.value, n = n.next;
62
+ }
63
+ };
64
+ m = /* @__PURE__ */ new WeakMap(), w = /* @__PURE__ */ new WeakMap(), E = /* @__PURE__ */ new WeakMap();
65
+ function y(s) {
66
+ if (!((Number.isInteger(s) || s === Number.POSITIVE_INFINITY) && s > 0))
67
+ throw new TypeError("Expected `concurrency` to be a number from 1 and up");
68
+ let n = new g(), t = 0, e = () => {
69
+ t--, n.size > 0 && n.dequeue()();
70
+ }, r = async (h, p, a) => {
71
+ t++;
72
+ let l = (async () => h(...a))();
73
+ p(l);
74
+ try {
75
+ await l;
76
+ } catch (T) {
77
+ }
78
+ e();
79
+ }, i = (h, p, a) => {
80
+ n.enqueue(r.bind(void 0, h, p, a)), (async () => (await Promise.resolve(), t < s && n.size > 0 && n.dequeue()()))();
81
+ }, c = (h, ...p) => new Promise((a) => {
82
+ i(h, a, p);
83
+ });
84
+ return Object.defineProperties(c, {
85
+ activeCount: {
86
+ get: () => t
87
+ },
88
+ pendingCount: {
89
+ get: () => n.size
90
+ },
91
+ clearQueue: {
92
+ value: () => {
93
+ n.clear();
94
+ }
95
+ }
96
+ }), c;
97
+ }
98
+ function o(s, n = null) {
99
+ let t = new Event(s);
100
+ return n && Object.defineProperty(t, "task", {
101
+ value: n,
102
+ enumerable: true,
103
+ writable: false,
104
+ configurable: false
105
+ }), t;
106
+ }
107
+ var G = {
108
+ 1: 12.71,
109
+ 2: 4.303,
110
+ 3: 3.182,
111
+ 4: 2.776,
112
+ 5: 2.571,
113
+ 6: 2.447,
114
+ 7: 2.365,
115
+ 8: 2.306,
116
+ 9: 2.262,
117
+ 10: 2.228,
118
+ 11: 2.201,
119
+ 12: 2.179,
120
+ 13: 2.16,
121
+ 14: 2.145,
122
+ 15: 2.131,
123
+ 16: 2.12,
124
+ 17: 2.11,
125
+ 18: 2.101,
126
+ 19: 2.093,
127
+ 20: 2.086,
128
+ 21: 2.08,
129
+ 22: 2.074,
130
+ 23: 2.069,
131
+ 24: 2.064,
132
+ 25: 2.06,
133
+ 26: 2.056,
134
+ 27: 2.052,
135
+ 28: 2.048,
136
+ 29: 2.045,
137
+ 30: 2.042,
138
+ 31: 2.0399,
139
+ 32: 2.0378,
140
+ 33: 2.0357,
141
+ 34: 2.0336,
142
+ 35: 2.0315,
143
+ 36: 2.0294,
144
+ 37: 2.0273,
145
+ 38: 2.0252,
146
+ 39: 2.0231,
147
+ 40: 2.021,
148
+ 41: 2.0198,
149
+ 42: 2.0186,
150
+ 43: 2.0174,
151
+ 44: 2.0162,
152
+ 45: 2.015,
153
+ 46: 2.0138,
154
+ 47: 2.0126,
155
+ 48: 2.0114,
156
+ 49: 2.0102,
157
+ 50: 2.009,
158
+ 51: 2.0081,
159
+ 52: 2.0072,
160
+ 53: 2.0063,
161
+ 54: 2.0054,
162
+ 55: 2.0045,
163
+ 56: 2.0036,
164
+ 57: 2.0027,
165
+ 58: 2.0018,
166
+ 59: 2.0009,
167
+ 60: 2,
168
+ 61: 1.9995,
169
+ 62: 1.999,
170
+ 63: 1.9985,
171
+ 64: 1.998,
172
+ 65: 1.9975,
173
+ 66: 1.997,
174
+ 67: 1.9965,
175
+ 68: 1.996,
176
+ 69: 1.9955,
177
+ 70: 1.995,
178
+ 71: 1.9945,
179
+ 72: 1.994,
180
+ 73: 1.9935,
181
+ 74: 1.993,
182
+ 75: 1.9925,
183
+ 76: 1.992,
184
+ 77: 1.9915,
185
+ 78: 1.991,
186
+ 79: 1.9905,
187
+ 80: 1.99,
188
+ 81: 1.9897,
189
+ 82: 1.9894,
190
+ 83: 1.9891,
191
+ 84: 1.9888,
192
+ 85: 1.9885,
193
+ 86: 1.9882,
194
+ 87: 1.9879,
195
+ 88: 1.9876,
196
+ 89: 1.9873,
197
+ 90: 1.987,
198
+ 91: 1.9867,
199
+ 92: 1.9864,
200
+ 93: 1.9861,
201
+ 94: 1.9858,
202
+ 95: 1.9855,
203
+ 96: 1.9852,
204
+ 97: 1.9849,
205
+ 98: 1.9846,
206
+ 99: 1.9843,
207
+ 100: 1.984,
208
+ 101: 1.9838,
209
+ 102: 1.9836,
210
+ 103: 1.9834,
211
+ 104: 1.9832,
212
+ 105: 1.983,
213
+ 106: 1.9828,
214
+ 107: 1.9826,
215
+ 108: 1.9824,
216
+ 109: 1.9822,
217
+ 110: 1.982,
218
+ 111: 1.9818,
219
+ 112: 1.9816,
220
+ 113: 1.9814,
221
+ 114: 1.9812,
222
+ 115: 1.9819,
223
+ 116: 1.9808,
224
+ 117: 1.9806,
225
+ 118: 1.9804,
226
+ 119: 1.9802,
227
+ 120: 1.98,
228
+ infinity: 1.96
229
+ };
230
+ var N = G;
231
+ var J = (s) => s / 1e6;
232
+ var U = () => J(Number(process.hrtime.bigint()));
233
+ var B = () => performance.now();
234
+ function W(s) {
235
+ return s !== null && typeof s == "object" && typeof s.then == "function";
236
+ }
237
+ var S = (s, n) => s.reduce((e, r) => e + (r - n) ** 2, 0) / (s.length - 1) || 0;
238
+ var X = (async () => {
239
+ }).constructor;
240
+ var Z = (s) => s.constructor === X;
241
+ var z = async (s) => {
242
+ if (Z(s.fn))
243
+ return true;
244
+ try {
245
+ if (s.opts.beforeEach != null)
246
+ try {
247
+ await s.opts.beforeEach.call(s);
248
+ } catch (e) {
249
+ }
250
+ let n = s.fn(), t = W(n);
251
+ if (t)
252
+ try {
253
+ await n;
254
+ } catch (e) {
255
+ }
256
+ if (s.opts.afterEach != null)
257
+ try {
258
+ await s.opts.afterEach.call(s);
259
+ } catch (e) {
260
+ }
261
+ return t;
262
+ } catch (n) {
263
+ return false;
264
+ }
265
+ };
266
+ var b = class extends EventTarget {
267
+ constructor(t, e, r, i = {}) {
268
+ super();
269
+ this.runs = 0;
270
+ this.bench = t, this.name = e, this.fn = r, this.opts = i;
271
+ }
272
+ async loop(t, e) {
273
+ var T;
274
+ let r = this.bench.concurrency === "task", { threshold: i } = this.bench, c = 0, h = [];
275
+ if (this.opts.beforeAll != null)
276
+ try {
277
+ await this.opts.beforeAll.call(this);
278
+ } catch (u) {
279
+ return { error: u };
280
+ }
281
+ let p = await z(this), a = async () => {
282
+ this.opts.beforeEach != null && await this.opts.beforeEach.call(this);
283
+ let u = 0;
284
+ if (p) {
285
+ let v = this.bench.now();
286
+ await this.fn.call(this), u = this.bench.now() - v;
287
+ } else {
288
+ let v = this.bench.now();
289
+ this.fn.call(this), u = this.bench.now() - v;
290
+ }
291
+ h.push(u), c += u, this.opts.afterEach != null && await this.opts.afterEach.call(this);
292
+ }, l = y(i);
293
+ try {
294
+ let u = [];
295
+ for (; (c < t || h.length + l.activeCount + l.pendingCount < e) && !((T = this.bench.signal) != null && T.aborted); )
296
+ r ? u.push(l(a)) : await a();
297
+ u.length && await Promise.all(u);
298
+ } catch (u) {
299
+ return { error: u };
300
+ }
301
+ if (this.opts.afterAll != null)
302
+ try {
303
+ await this.opts.afterAll.call(this);
304
+ } catch (u) {
305
+ return { error: u };
306
+ }
307
+ return { samples: h };
308
+ }
309
+ /**
310
+ * run the current task and write the results in `Task.result` object
311
+ */
312
+ async run() {
313
+ var r, i;
314
+ if ((r = this.result) != null && r.error)
315
+ return this;
316
+ this.dispatchEvent(o("start", this)), await this.bench.setup(this, "run");
317
+ let { samples: t, error: e } = await this.loop(this.bench.time, this.bench.iterations);
318
+ if (this.bench.teardown(this, "run"), t) {
319
+ let c = t.reduce((L, A) => L + A, 0);
320
+ this.runs = t.length, t.sort((L, A) => L - A);
321
+ let h = c / this.runs, p = 1e3 / h, a = t.length, l = a - 1, T = t[0], u = t[l], v = c / t.length || 0, P = S(t, v), R = Math.sqrt(P), I = R / Math.sqrt(a), _ = N[String(Math.round(l) || 1)] || N.infinity, K = I * _, j = K / v * 100, H = t[Math.ceil(a * 0.75) - 1], V = t[Math.ceil(a * 0.99) - 1], Q = t[Math.ceil(a * 0.995) - 1], Y = t[Math.ceil(a * 0.999) - 1];
322
+ if ((i = this.bench.signal) != null && i.aborted)
323
+ return this;
324
+ this.setResult({
325
+ totalTime: c,
326
+ min: T,
327
+ max: u,
328
+ hz: p,
329
+ period: h,
330
+ samples: t,
331
+ mean: v,
332
+ variance: P,
333
+ sd: R,
334
+ sem: I,
335
+ df: l,
336
+ critical: _,
337
+ moe: K,
338
+ rme: j,
339
+ p75: H,
340
+ p99: V,
341
+ p995: Q,
342
+ p999: Y
343
+ });
344
+ }
345
+ if (e) {
346
+ if (this.setResult({ error: e }), this.bench.throws)
347
+ throw e;
348
+ this.dispatchEvent(o("error", this)), this.bench.dispatchEvent(o("error", this));
349
+ }
350
+ return this.dispatchEvent(o("cycle", this)), this.bench.dispatchEvent(o("cycle", this)), this.dispatchEvent(o("complete", this)), this;
351
+ }
352
+ /**
353
+ * warmup the current task
354
+ */
355
+ async warmup() {
356
+ var e;
357
+ if ((e = this.result) != null && e.error)
358
+ return;
359
+ this.dispatchEvent(o("warmup", this)), await this.bench.setup(this, "warmup");
360
+ let { error: t } = await this.loop(this.bench.warmupTime, this.bench.warmupIterations);
361
+ if (this.bench.teardown(this, "warmup"), t && (this.setResult({ error: t }), this.bench.throws))
362
+ throw t;
363
+ }
364
+ addEventListener(t, e, r) {
365
+ super.addEventListener(t, e, r);
366
+ }
367
+ removeEventListener(t, e, r) {
368
+ super.removeEventListener(t, e, r);
369
+ }
370
+ /**
371
+ * change the result object values
372
+ */
373
+ setResult(t) {
374
+ this.result = { ...this.result, ...t }, Object.freeze(this.result);
375
+ }
376
+ /**
377
+ * reset the task to make the `Task.runs` a zero-value and remove the `Task.result`
378
+ * object
379
+ */
380
+ reset() {
381
+ this.dispatchEvent(o("reset", this)), this.runs = 0, this.result = void 0;
382
+ }
383
+ };
384
+ var x = class extends EventTarget {
385
+ constructor(t = {}) {
386
+ var e, r, i, c, h, p, a, l;
387
+ super();
388
+ this._tasks = /* @__PURE__ */ new Map();
389
+ this._todos = /* @__PURE__ */ new Map();
390
+ this.concurrency = null;
391
+ this.threshold = 1 / 0;
392
+ this.warmupTime = 100;
393
+ this.warmupIterations = 5;
394
+ this.time = 500;
395
+ this.iterations = 10;
396
+ this.now = B;
397
+ this.now = (e = t.now) != null ? e : this.now, this.warmupTime = (r = t.warmupTime) != null ? r : this.warmupTime, this.warmupIterations = (i = t.warmupIterations) != null ? i : this.warmupIterations, this.time = (c = t.time) != null ? c : this.time, this.iterations = (h = t.iterations) != null ? h : this.iterations, this.signal = t.signal, this.throws = (p = t.throws) != null ? p : false, this.setup = (a = t.setup) != null ? a : () => {
398
+ }, this.teardown = (l = t.teardown) != null ? l : () => {
399
+ }, this.signal && this.signal.addEventListener(
400
+ "abort",
401
+ () => {
402
+ this.dispatchEvent(o("abort"));
403
+ },
404
+ { once: true }
405
+ );
406
+ }
407
+ runTask(t) {
408
+ var e;
409
+ return (e = this.signal) != null && e.aborted ? t : t.run();
410
+ }
411
+ /**
412
+ * run the added tasks that were registered using the
413
+ * {@link add} method.
414
+ * Note: This method does not do any warmup. Call {@link warmup} for that.
415
+ */
416
+ async run() {
417
+ if (this.concurrency === "bench")
418
+ return this.runConcurrently(this.threshold, this.concurrency);
419
+ this.dispatchEvent(o("start"));
420
+ let t = [];
421
+ for (let e of [...this._tasks.values()])
422
+ t.push(await this.runTask(e));
423
+ return this.dispatchEvent(o("complete")), t;
424
+ }
425
+ /**
426
+ * See Bench.{@link concurrency}
427
+ */
428
+ async runConcurrently(t = 1 / 0, e = "bench") {
429
+ if (this.threshold = t, this.concurrency = e, e === "task")
430
+ return this.run();
431
+ this.dispatchEvent(o("start"));
432
+ let r = y(t), i = [];
433
+ for (let h of [...this._tasks.values()])
434
+ i.push(r(() => this.runTask(h)));
435
+ let c = await Promise.all(i);
436
+ return this.dispatchEvent(o("complete")), c;
437
+ }
438
+ /**
439
+ * warmup the benchmark tasks.
440
+ * This is not run by default by the {@link run} method.
441
+ */
442
+ async warmup() {
443
+ if (this.concurrency === "bench") {
444
+ await this.warmupConcurrently(this.threshold, this.concurrency);
445
+ return;
446
+ }
447
+ this.dispatchEvent(o("warmup"));
448
+ for (let [, t] of this._tasks)
449
+ await t.warmup();
450
+ }
451
+ /**
452
+ * warmup the benchmark tasks concurrently.
453
+ * This is not run by default by the {@link runConcurrently} method.
454
+ */
455
+ async warmupConcurrently(t = 1 / 0, e = "bench") {
456
+ if (this.threshold = t, this.concurrency = e, e === "task") {
457
+ await this.warmup();
458
+ return;
459
+ }
460
+ this.dispatchEvent(o("warmup"));
461
+ let r = y(t), i = [];
462
+ for (let [, c] of this._tasks)
463
+ i.push(r(() => c.warmup()));
464
+ await Promise.all(i);
465
+ }
466
+ /**
467
+ * reset each task and remove its result
468
+ */
469
+ reset() {
470
+ this.dispatchEvent(o("reset")), this._tasks.forEach((t) => {
471
+ t.reset();
472
+ });
473
+ }
474
+ /**
475
+ * add a benchmark task to the task map
476
+ */
477
+ add(t, e, r = {}) {
478
+ let i = new b(this, t, e, r);
479
+ return this._tasks.set(t, i), this.dispatchEvent(o("add", i)), this;
480
+ }
481
+ /**
482
+ * add a benchmark todo to the todo map
483
+ */
484
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
485
+ todo(t, e = () => {
486
+ }, r = {}) {
487
+ let i = new b(this, t, e, r);
488
+ return this._todos.set(t, i), this.dispatchEvent(o("todo", i)), this;
489
+ }
490
+ /**
491
+ * remove a benchmark task from the task map
492
+ */
493
+ remove(t) {
494
+ let e = this.getTask(t);
495
+ return e && (this.dispatchEvent(o("remove", e)), this._tasks.delete(t)), this;
496
+ }
497
+ addEventListener(t, e, r) {
498
+ super.addEventListener(t, e, r);
499
+ }
500
+ removeEventListener(t, e, r) {
501
+ super.removeEventListener(t, e, r);
502
+ }
503
+ /**
504
+ * table of the tasks results
505
+ */
506
+ table(t) {
507
+ return this.tasks.map((e) => {
508
+ if (e.result) {
509
+ if (e.result.error)
510
+ throw e.result.error;
511
+ return (t == null ? void 0 : t(e)) || {
512
+ "Task Name": e.name,
513
+ "ops/sec": e.result.error ? "NaN" : parseInt(e.result.hz.toString(), 10).toLocaleString(),
514
+ "Average Time (ns)": e.result.error ? "NaN" : e.result.mean * 1e3 * 1e3,
515
+ Margin: e.result.error ? "NaN" : `\xB1${e.result.rme.toFixed(2)}%`,
516
+ Samples: e.result.error ? "NaN" : e.result.samples.length
517
+ };
518
+ }
519
+ return null;
520
+ });
521
+ }
522
+ /**
523
+ * (getter) tasks results as an array
524
+ */
525
+ get results() {
526
+ return [...this._tasks.values()].map((t) => t.result);
527
+ }
528
+ /**
529
+ * (getter) tasks as an array
530
+ */
531
+ get tasks() {
532
+ return [...this._tasks.values()];
533
+ }
534
+ get todos() {
535
+ return [...this._todos.values()];
536
+ }
537
+ /**
538
+ * get a task based on the task name
539
+ */
540
+ getTask(t) {
541
+ return this._tasks.get(t);
542
+ }
543
+ };
544
+ export {
545
+ x as Bench,
546
+ b as Task,
547
+ U as hrtimeNow,
548
+ B as now
549
+ };
550
+ //# sourceMappingURL=dist-VNJNNJK7.js.map