@agents-inc/cli 0.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. package/CHANGELOG.md +462 -0
  2. package/LICENSE +21 -0
  3. package/README.md +179 -0
  4. package/config/skills-matrix.yaml +926 -0
  5. package/config/stacks.yaml +2186 -0
  6. package/dist/chunk-3ZOIOVKT.js +365 -0
  7. package/dist/chunk-3ZOIOVKT.js.map +1 -0
  8. package/dist/chunk-4RAY5AOI.js +78 -0
  9. package/dist/chunk-4RAY5AOI.js.map +1 -0
  10. package/dist/chunk-5PIKNCZX.js +234 -0
  11. package/dist/chunk-5PIKNCZX.js.map +1 -0
  12. package/dist/chunk-66UDJBF6.js +96 -0
  13. package/dist/chunk-66UDJBF6.js.map +1 -0
  14. package/dist/chunk-7SOPVGDV.js +24 -0
  15. package/dist/chunk-7SOPVGDV.js.map +1 -0
  16. package/dist/chunk-A27LOC4Z.js +95 -0
  17. package/dist/chunk-A27LOC4Z.js.map +1 -0
  18. package/dist/chunk-B2UBHA66.js +301 -0
  19. package/dist/chunk-B2UBHA66.js.map +1 -0
  20. package/dist/chunk-BZN2Z5P7.js +882 -0
  21. package/dist/chunk-BZN2Z5P7.js.map +1 -0
  22. package/dist/chunk-BZQBJP34.js +186 -0
  23. package/dist/chunk-BZQBJP34.js.map +1 -0
  24. package/dist/chunk-DC5AK3LW.js +105 -0
  25. package/dist/chunk-DC5AK3LW.js.map +1 -0
  26. package/dist/chunk-DHET7RCE.js +50 -0
  27. package/dist/chunk-DHET7RCE.js.map +1 -0
  28. package/dist/chunk-EMJ2ZKS7.js +346 -0
  29. package/dist/chunk-EMJ2ZKS7.js.map +1 -0
  30. package/dist/chunk-FJQRVFMB.js +48 -0
  31. package/dist/chunk-FJQRVFMB.js.map +1 -0
  32. package/dist/chunk-FZGYSLJL.js +85 -0
  33. package/dist/chunk-FZGYSLJL.js.map +1 -0
  34. package/dist/chunk-H566H3MQ.js +87 -0
  35. package/dist/chunk-H566H3MQ.js.map +1 -0
  36. package/dist/chunk-IYG2LAIM.js +90 -0
  37. package/dist/chunk-IYG2LAIM.js.map +1 -0
  38. package/dist/chunk-IZZ4IIEG.js +29 -0
  39. package/dist/chunk-IZZ4IIEG.js.map +1 -0
  40. package/dist/chunk-JMVWYAHT.js +63 -0
  41. package/dist/chunk-JMVWYAHT.js.map +1 -0
  42. package/dist/chunk-LAPCUV4D.js +191 -0
  43. package/dist/chunk-LAPCUV4D.js.map +1 -0
  44. package/dist/chunk-LGUI3PMO.js +109 -0
  45. package/dist/chunk-LGUI3PMO.js.map +1 -0
  46. package/dist/chunk-MM7NK5N2.js +4542 -0
  47. package/dist/chunk-MM7NK5N2.js.map +1 -0
  48. package/dist/chunk-N6S7ZRIL.js +31 -0
  49. package/dist/chunk-N6S7ZRIL.js.map +1 -0
  50. package/dist/chunk-O4D67NN7.js +24 -0
  51. package/dist/chunk-O4D67NN7.js.map +1 -0
  52. package/dist/chunk-ODUOU55D.js +56 -0
  53. package/dist/chunk-ODUOU55D.js.map +1 -0
  54. package/dist/chunk-OGJIZ6QH.js +497 -0
  55. package/dist/chunk-OGJIZ6QH.js.map +1 -0
  56. package/dist/chunk-OMV7TLWD.js +340 -0
  57. package/dist/chunk-OMV7TLWD.js.map +1 -0
  58. package/dist/chunk-PBEHPQLK.js +146 -0
  59. package/dist/chunk-PBEHPQLK.js.map +1 -0
  60. package/dist/chunk-QPTOIZAT.js +32 -0
  61. package/dist/chunk-QPTOIZAT.js.map +1 -0
  62. package/dist/chunk-R3XFQKPG.js +111 -0
  63. package/dist/chunk-R3XFQKPG.js.map +1 -0
  64. package/dist/chunk-R74PZWQS.js +69 -0
  65. package/dist/chunk-R74PZWQS.js.map +1 -0
  66. package/dist/chunk-SO22IQPY.js +45 -0
  67. package/dist/chunk-SO22IQPY.js.map +1 -0
  68. package/dist/chunk-T4EXUIBY.js +19 -0
  69. package/dist/chunk-T4EXUIBY.js.map +1 -0
  70. package/dist/chunk-U3IGFMCY.js +31 -0
  71. package/dist/chunk-U3IGFMCY.js.map +1 -0
  72. package/dist/chunk-UICL22RT.js +318 -0
  73. package/dist/chunk-UICL22RT.js.map +1 -0
  74. package/dist/chunk-UX2H2K2G.js +183 -0
  75. package/dist/chunk-UX2H2K2G.js.map +1 -0
  76. package/dist/chunk-W2ZSCZ2U.js +93 -0
  77. package/dist/chunk-W2ZSCZ2U.js.map +1 -0
  78. package/dist/chunk-WEUVWHMA.js +189 -0
  79. package/dist/chunk-WEUVWHMA.js.map +1 -0
  80. package/dist/chunk-XY3XDVMI.js +15599 -0
  81. package/dist/chunk-XY3XDVMI.js.map +1 -0
  82. package/dist/chunk-YND42IXK.js +233 -0
  83. package/dist/chunk-YND42IXK.js.map +1 -0
  84. package/dist/chunk-YZTWZVGX.js +41 -0
  85. package/dist/chunk-YZTWZVGX.js.map +1 -0
  86. package/dist/chunk-Z4TWOP3H.js +81 -0
  87. package/dist/chunk-Z4TWOP3H.js.map +1 -0
  88. package/dist/cli/defaults/agent-mappings.yaml +271 -0
  89. package/dist/commands/build/marketplace.js +252 -0
  90. package/dist/commands/build/marketplace.js.map +1 -0
  91. package/dist/commands/build/plugins.js +114 -0
  92. package/dist/commands/build/plugins.js.map +1 -0
  93. package/dist/commands/build/stack.js +153 -0
  94. package/dist/commands/build/stack.js.map +1 -0
  95. package/dist/commands/compile.js +354 -0
  96. package/dist/commands/compile.js.map +1 -0
  97. package/dist/commands/config/get.js +61 -0
  98. package/dist/commands/config/get.js.map +1 -0
  99. package/dist/commands/config/index.js +23 -0
  100. package/dist/commands/config/index.js.map +1 -0
  101. package/dist/commands/config/path.js +34 -0
  102. package/dist/commands/config/path.js.map +1 -0
  103. package/dist/commands/config/set-project.js +61 -0
  104. package/dist/commands/config/set-project.js.map +1 -0
  105. package/dist/commands/config/show.js +14 -0
  106. package/dist/commands/config/show.js.map +1 -0
  107. package/dist/commands/config/unset-project.js +57 -0
  108. package/dist/commands/config/unset-project.js.map +1 -0
  109. package/dist/commands/diff.js +742 -0
  110. package/dist/commands/diff.js.map +1 -0
  111. package/dist/commands/doctor.js +370 -0
  112. package/dist/commands/doctor.js.map +1 -0
  113. package/dist/commands/edit.js +301 -0
  114. package/dist/commands/edit.js.map +1 -0
  115. package/dist/commands/eject.js +262 -0
  116. package/dist/commands/eject.js.map +1 -0
  117. package/dist/commands/import/skill.js +361 -0
  118. package/dist/commands/import/skill.js.map +1 -0
  119. package/dist/commands/info.js +217 -0
  120. package/dist/commands/info.js.map +1 -0
  121. package/dist/commands/init.js +443 -0
  122. package/dist/commands/init.js.map +1 -0
  123. package/dist/commands/list.js +49 -0
  124. package/dist/commands/list.js.map +1 -0
  125. package/dist/commands/new/agent.js +224 -0
  126. package/dist/commands/new/agent.js.map +1 -0
  127. package/dist/commands/new/skill.js +199 -0
  128. package/dist/commands/new/skill.js.map +1 -0
  129. package/dist/commands/outdated.js +176 -0
  130. package/dist/commands/outdated.js.map +1 -0
  131. package/dist/commands/search.js +288 -0
  132. package/dist/commands/search.js.map +1 -0
  133. package/dist/commands/uninstall.js +302 -0
  134. package/dist/commands/uninstall.js.map +1 -0
  135. package/dist/commands/update.js +304 -0
  136. package/dist/commands/update.js.map +1 -0
  137. package/dist/commands/validate.js +389 -0
  138. package/dist/commands/validate.js.map +1 -0
  139. package/dist/commands/version/bump.js +79 -0
  140. package/dist/commands/version/bump.js.map +1 -0
  141. package/dist/commands/version/index.js +54 -0
  142. package/dist/commands/version/index.js.map +1 -0
  143. package/dist/commands/version/set.js +86 -0
  144. package/dist/commands/version/set.js.map +1 -0
  145. package/dist/commands/version/show.js +54 -0
  146. package/dist/commands/version/show.js.map +1 -0
  147. package/dist/components/common/confirm.js +9 -0
  148. package/dist/components/common/confirm.js.map +1 -0
  149. package/dist/components/common/confirm.test.js +203 -0
  150. package/dist/components/common/confirm.test.js.map +1 -0
  151. package/dist/components/common/message.js +20 -0
  152. package/dist/components/common/message.js.map +1 -0
  153. package/dist/components/common/spinner.js +14 -0
  154. package/dist/components/common/spinner.js.map +1 -0
  155. package/dist/components/skill-search/skill-search.js +12 -0
  156. package/dist/components/skill-search/skill-search.js.map +1 -0
  157. package/dist/components/wizard/category-grid.js +11 -0
  158. package/dist/components/wizard/category-grid.js.map +1 -0
  159. package/dist/components/wizard/category-grid.test.js +997 -0
  160. package/dist/components/wizard/category-grid.test.js.map +1 -0
  161. package/dist/components/wizard/domain-selection.js +14 -0
  162. package/dist/components/wizard/domain-selection.js.map +1 -0
  163. package/dist/components/wizard/help-modal.js +10 -0
  164. package/dist/components/wizard/help-modal.js.map +1 -0
  165. package/dist/components/wizard/menu-item.js +10 -0
  166. package/dist/components/wizard/menu-item.js.map +1 -0
  167. package/dist/components/wizard/search-modal.js +11 -0
  168. package/dist/components/wizard/search-modal.js.map +1 -0
  169. package/dist/components/wizard/search-modal.test.js +218 -0
  170. package/dist/components/wizard/search-modal.test.js.map +1 -0
  171. package/dist/components/wizard/section-progress.js +10 -0
  172. package/dist/components/wizard/section-progress.js.map +1 -0
  173. package/dist/components/wizard/section-progress.test.js +192 -0
  174. package/dist/components/wizard/section-progress.test.js.map +1 -0
  175. package/dist/components/wizard/source-grid.js +14 -0
  176. package/dist/components/wizard/source-grid.js.map +1 -0
  177. package/dist/components/wizard/source-grid.test.js +504 -0
  178. package/dist/components/wizard/source-grid.test.js.map +1 -0
  179. package/dist/components/wizard/stack-selection.js +17 -0
  180. package/dist/components/wizard/stack-selection.js.map +1 -0
  181. package/dist/components/wizard/step-build.js +17 -0
  182. package/dist/components/wizard/step-build.js.map +1 -0
  183. package/dist/components/wizard/step-build.test.js +600 -0
  184. package/dist/components/wizard/step-build.test.js.map +1 -0
  185. package/dist/components/wizard/step-confirm.js +12 -0
  186. package/dist/components/wizard/step-confirm.js.map +1 -0
  187. package/dist/components/wizard/step-confirm.test.js +366 -0
  188. package/dist/components/wizard/step-confirm.test.js.map +1 -0
  189. package/dist/components/wizard/step-refine.js +10 -0
  190. package/dist/components/wizard/step-refine.js.map +1 -0
  191. package/dist/components/wizard/step-refine.test.js +237 -0
  192. package/dist/components/wizard/step-refine.test.js.map +1 -0
  193. package/dist/components/wizard/step-settings.js +17 -0
  194. package/dist/components/wizard/step-settings.js.map +1 -0
  195. package/dist/components/wizard/step-settings.test.js +243 -0
  196. package/dist/components/wizard/step-settings.test.js.map +1 -0
  197. package/dist/components/wizard/step-sources.js +20 -0
  198. package/dist/components/wizard/step-sources.js.map +1 -0
  199. package/dist/components/wizard/step-sources.test.js +294 -0
  200. package/dist/components/wizard/step-sources.test.js.map +1 -0
  201. package/dist/components/wizard/step-stack.js +19 -0
  202. package/dist/components/wizard/step-stack.js.map +1 -0
  203. package/dist/components/wizard/step-stack.test.js +357 -0
  204. package/dist/components/wizard/step-stack.test.js.map +1 -0
  205. package/dist/components/wizard/view-title.js +10 -0
  206. package/dist/components/wizard/view-title.js.map +1 -0
  207. package/dist/components/wizard/wizard-layout.js +16 -0
  208. package/dist/components/wizard/wizard-layout.js.map +1 -0
  209. package/dist/components/wizard/wizard-tabs.js +14 -0
  210. package/dist/components/wizard/wizard-tabs.js.map +1 -0
  211. package/dist/components/wizard/wizard-tabs.test.js +294 -0
  212. package/dist/components/wizard/wizard-tabs.test.js.map +1 -0
  213. package/dist/components/wizard/wizard.js +35 -0
  214. package/dist/components/wizard/wizard.js.map +1 -0
  215. package/dist/config/skills-matrix.yaml +926 -0
  216. package/dist/config/stacks.yaml +2186 -0
  217. package/dist/hooks/init.js +40 -0
  218. package/dist/hooks/init.js.map +1 -0
  219. package/dist/index.js +10 -0
  220. package/dist/index.js.map +1 -0
  221. package/dist/magic-string.es-RGXYGAW3.js +1316 -0
  222. package/dist/magic-string.es-RGXYGAW3.js.map +1 -0
  223. package/dist/source-manager-SBPPLOQQ.js +16 -0
  224. package/dist/source-manager-SBPPLOQQ.js.map +1 -0
  225. package/dist/src/agents/_templates/agent.liquid +140 -0
  226. package/dist/src/agents/developer/api-developer/agent.yaml +12 -0
  227. package/dist/src/agents/developer/api-developer/critical-reminders.md +23 -0
  228. package/dist/src/agents/developer/api-developer/critical-requirements.md +11 -0
  229. package/dist/src/agents/developer/api-developer/examples.md +72 -0
  230. package/dist/src/agents/developer/api-developer/intro.md +22 -0
  231. package/dist/src/agents/developer/api-developer/output-format.md +359 -0
  232. package/dist/src/agents/developer/api-developer/workflow.md +471 -0
  233. package/dist/src/agents/developer/cli-developer/agent.yaml +12 -0
  234. package/dist/src/agents/developer/cli-developer/critical-reminders.md +28 -0
  235. package/dist/src/agents/developer/cli-developer/critical-requirements.md +15 -0
  236. package/dist/src/agents/developer/cli-developer/examples.md +68 -0
  237. package/dist/src/agents/developer/cli-developer/intro.md +23 -0
  238. package/dist/src/agents/developer/cli-developer/output-format.md +216 -0
  239. package/dist/src/agents/developer/cli-developer/workflow.md +509 -0
  240. package/dist/src/agents/developer/web-architecture/agent.yaml +12 -0
  241. package/dist/src/agents/developer/web-architecture/critical-reminders.md +27 -0
  242. package/dist/src/agents/developer/web-architecture/critical-requirements.md +35 -0
  243. package/dist/src/agents/developer/web-architecture/examples.md +187 -0
  244. package/dist/src/agents/developer/web-architecture/intro.md +35 -0
  245. package/dist/src/agents/developer/web-architecture/output-format.md +261 -0
  246. package/dist/src/agents/developer/web-architecture/workflow.md +599 -0
  247. package/dist/src/agents/developer/web-developer/agent.yaml +12 -0
  248. package/dist/src/agents/developer/web-developer/critical-reminders.md +17 -0
  249. package/dist/src/agents/developer/web-developer/critical-requirements.md +15 -0
  250. package/dist/src/agents/developer/web-developer/examples.md +109 -0
  251. package/dist/src/agents/developer/web-developer/intro.md +5 -0
  252. package/dist/src/agents/developer/web-developer/output-format.md +213 -0
  253. package/dist/src/agents/developer/web-developer/workflow.md +459 -0
  254. package/dist/src/agents/meta/agent-summoner/agent.yaml +12 -0
  255. package/dist/src/agents/meta/agent-summoner/critical-reminders.md +31 -0
  256. package/dist/src/agents/meta/agent-summoner/critical-requirements.md +27 -0
  257. package/dist/src/agents/meta/agent-summoner/examples.md +176 -0
  258. package/dist/src/agents/meta/agent-summoner/intro.md +9 -0
  259. package/dist/src/agents/meta/agent-summoner/output-format.md +115 -0
  260. package/dist/src/agents/meta/agent-summoner/workflow.md +1540 -0
  261. package/dist/src/agents/meta/documentor/agent.yaml +11 -0
  262. package/dist/src/agents/meta/documentor/critical-reminders.md +23 -0
  263. package/dist/src/agents/meta/documentor/critical-requirements.md +13 -0
  264. package/dist/src/agents/meta/documentor/examples.md +147 -0
  265. package/dist/src/agents/meta/documentor/intro.md +11 -0
  266. package/dist/src/agents/meta/documentor/output-format.md +237 -0
  267. package/dist/src/agents/meta/documentor/workflow.md +1271 -0
  268. package/dist/src/agents/meta/skill-summoner/agent.yaml +13 -0
  269. package/dist/src/agents/meta/skill-summoner/critical-reminders.md +73 -0
  270. package/dist/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
  271. package/dist/src/agents/meta/skill-summoner/examples.md +116 -0
  272. package/dist/src/agents/meta/skill-summoner/intro.md +5 -0
  273. package/dist/src/agents/meta/skill-summoner/output-format.md +279 -0
  274. package/dist/src/agents/meta/skill-summoner/workflow.md +1485 -0
  275. package/dist/src/agents/migration/cli-migrator/agent.yaml +12 -0
  276. package/dist/src/agents/migration/cli-migrator/anti-patterns.md +158 -0
  277. package/dist/src/agents/migration/cli-migrator/conversion-mappings.md +63 -0
  278. package/dist/src/agents/migration/cli-migrator/critical-reminders.md +17 -0
  279. package/dist/src/agents/migration/cli-migrator/critical-requirements.md +13 -0
  280. package/dist/src/agents/migration/cli-migrator/intro.md +15 -0
  281. package/dist/src/agents/migration/cli-migrator/output-format.md +164 -0
  282. package/dist/src/agents/migration/cli-migrator/workflow.md +230 -0
  283. package/dist/src/agents/pattern/pattern-scout/agent.yaml +10 -0
  284. package/dist/src/agents/pattern/pattern-scout/critical-reminders.md +58 -0
  285. package/dist/src/agents/pattern/pattern-scout/critical-requirements.md +17 -0
  286. package/dist/src/agents/pattern/pattern-scout/examples.md +93 -0
  287. package/dist/src/agents/pattern/pattern-scout/intro.md +3 -0
  288. package/dist/src/agents/pattern/pattern-scout/output-format.md +196 -0
  289. package/dist/src/agents/pattern/pattern-scout/workflow.md +1901 -0
  290. package/dist/src/agents/pattern/web-pattern-critique/agent.yaml +12 -0
  291. package/dist/src/agents/pattern/web-pattern-critique/critical-reminders.md +13 -0
  292. package/dist/src/agents/pattern/web-pattern-critique/critical-requirements.md +11 -0
  293. package/dist/src/agents/pattern/web-pattern-critique/examples.md +56 -0
  294. package/dist/src/agents/pattern/web-pattern-critique/intro.md +5 -0
  295. package/dist/src/agents/pattern/web-pattern-critique/output-format.md +257 -0
  296. package/dist/src/agents/pattern/web-pattern-critique/workflow.md +674 -0
  297. package/dist/src/agents/planning/web-pm/agent.yaml +12 -0
  298. package/dist/src/agents/planning/web-pm/critical-reminders.md +21 -0
  299. package/dist/src/agents/planning/web-pm/critical-requirements.md +17 -0
  300. package/dist/src/agents/planning/web-pm/examples.md +85 -0
  301. package/dist/src/agents/planning/web-pm/intro.md +3 -0
  302. package/dist/src/agents/planning/web-pm/output-format.md +228 -0
  303. package/dist/src/agents/planning/web-pm/workflow.md +393 -0
  304. package/dist/src/agents/researcher/api-researcher/agent.yaml +10 -0
  305. package/dist/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
  306. package/dist/src/agents/researcher/api-researcher/critical-requirements.md +13 -0
  307. package/dist/src/agents/researcher/api-researcher/examples.md +116 -0
  308. package/dist/src/agents/researcher/api-researcher/intro.md +32 -0
  309. package/dist/src/agents/researcher/api-researcher/output-format.md +135 -0
  310. package/dist/src/agents/researcher/api-researcher/workflow.md +261 -0
  311. package/dist/src/agents/researcher/web-researcher/agent.yaml +10 -0
  312. package/dist/src/agents/researcher/web-researcher/critical-reminders.md +23 -0
  313. package/dist/src/agents/researcher/web-researcher/critical-requirements.md +11 -0
  314. package/dist/src/agents/researcher/web-researcher/examples.md +126 -0
  315. package/dist/src/agents/researcher/web-researcher/intro.md +31 -0
  316. package/dist/src/agents/researcher/web-researcher/output-format.md +112 -0
  317. package/dist/src/agents/researcher/web-researcher/workflow.md +322 -0
  318. package/dist/src/agents/reviewer/api-reviewer/agent.yaml +12 -0
  319. package/dist/src/agents/reviewer/api-reviewer/critical-reminders.md +16 -0
  320. package/dist/src/agents/reviewer/api-reviewer/critical-requirements.md +13 -0
  321. package/dist/src/agents/reviewer/api-reviewer/examples.md +54 -0
  322. package/dist/src/agents/reviewer/api-reviewer/intro.md +22 -0
  323. package/dist/src/agents/reviewer/api-reviewer/output-format.md +288 -0
  324. package/dist/src/agents/reviewer/api-reviewer/workflow.md +369 -0
  325. package/dist/src/agents/reviewer/cli-reviewer/agent.yaml +12 -0
  326. package/dist/src/agents/reviewer/cli-reviewer/critical-reminders.md +17 -0
  327. package/dist/src/agents/reviewer/cli-reviewer/critical-requirements.md +13 -0
  328. package/dist/src/agents/reviewer/cli-reviewer/examples.md +83 -0
  329. package/dist/src/agents/reviewer/cli-reviewer/intro.md +21 -0
  330. package/dist/src/agents/reviewer/cli-reviewer/output-format.md +330 -0
  331. package/dist/src/agents/reviewer/cli-reviewer/workflow.md +294 -0
  332. package/dist/src/agents/reviewer/web-reviewer/agent.yaml +12 -0
  333. package/dist/src/agents/reviewer/web-reviewer/critical-reminders.md +17 -0
  334. package/dist/src/agents/reviewer/web-reviewer/critical-requirements.md +11 -0
  335. package/dist/src/agents/reviewer/web-reviewer/examples.md +79 -0
  336. package/dist/src/agents/reviewer/web-reviewer/intro.md +20 -0
  337. package/dist/src/agents/reviewer/web-reviewer/output-format.md +253 -0
  338. package/dist/src/agents/reviewer/web-reviewer/workflow.md +228 -0
  339. package/dist/src/agents/tester/cli-tester/agent.yaml +12 -0
  340. package/dist/src/agents/tester/cli-tester/critical-reminders.md +19 -0
  341. package/dist/src/agents/tester/cli-tester/critical-requirements.md +17 -0
  342. package/dist/src/agents/tester/cli-tester/examples.md +80 -0
  343. package/dist/src/agents/tester/cli-tester/intro.md +19 -0
  344. package/dist/src/agents/tester/cli-tester/output-format.md +232 -0
  345. package/dist/src/agents/tester/cli-tester/workflow.md +304 -0
  346. package/dist/src/agents/tester/web-tester/agent.yaml +12 -0
  347. package/dist/src/agents/tester/web-tester/critical-reminders.md +15 -0
  348. package/dist/src/agents/tester/web-tester/critical-requirements.md +11 -0
  349. package/dist/src/agents/tester/web-tester/examples.md +68 -0
  350. package/dist/src/agents/tester/web-tester/intro.md +18 -0
  351. package/dist/src/agents/tester/web-tester/output-format.md +252 -0
  352. package/dist/src/agents/tester/web-tester/workflow.md +507 -0
  353. package/dist/stores/wizard-store.js +13 -0
  354. package/dist/stores/wizard-store.js.map +1 -0
  355. package/dist/stores/wizard-store.test.js +689 -0
  356. package/dist/stores/wizard-store.test.js.map +1 -0
  357. package/package.json +134 -0
  358. package/src/agents/_templates/agent.liquid +140 -0
  359. package/src/agents/developer/api-developer/agent.yaml +12 -0
  360. package/src/agents/developer/api-developer/critical-reminders.md +23 -0
  361. package/src/agents/developer/api-developer/critical-requirements.md +11 -0
  362. package/src/agents/developer/api-developer/examples.md +72 -0
  363. package/src/agents/developer/api-developer/intro.md +22 -0
  364. package/src/agents/developer/api-developer/output-format.md +359 -0
  365. package/src/agents/developer/api-developer/workflow.md +471 -0
  366. package/src/agents/developer/cli-developer/agent.yaml +12 -0
  367. package/src/agents/developer/cli-developer/critical-reminders.md +28 -0
  368. package/src/agents/developer/cli-developer/critical-requirements.md +15 -0
  369. package/src/agents/developer/cli-developer/examples.md +68 -0
  370. package/src/agents/developer/cli-developer/intro.md +23 -0
  371. package/src/agents/developer/cli-developer/output-format.md +216 -0
  372. package/src/agents/developer/cli-developer/workflow.md +509 -0
  373. package/src/agents/developer/web-architecture/agent.yaml +12 -0
  374. package/src/agents/developer/web-architecture/critical-reminders.md +27 -0
  375. package/src/agents/developer/web-architecture/critical-requirements.md +35 -0
  376. package/src/agents/developer/web-architecture/examples.md +187 -0
  377. package/src/agents/developer/web-architecture/intro.md +35 -0
  378. package/src/agents/developer/web-architecture/output-format.md +261 -0
  379. package/src/agents/developer/web-architecture/workflow.md +599 -0
  380. package/src/agents/developer/web-developer/agent.yaml +12 -0
  381. package/src/agents/developer/web-developer/critical-reminders.md +17 -0
  382. package/src/agents/developer/web-developer/critical-requirements.md +15 -0
  383. package/src/agents/developer/web-developer/examples.md +109 -0
  384. package/src/agents/developer/web-developer/intro.md +5 -0
  385. package/src/agents/developer/web-developer/output-format.md +213 -0
  386. package/src/agents/developer/web-developer/workflow.md +459 -0
  387. package/src/agents/meta/agent-summoner/agent.yaml +12 -0
  388. package/src/agents/meta/agent-summoner/critical-reminders.md +31 -0
  389. package/src/agents/meta/agent-summoner/critical-requirements.md +27 -0
  390. package/src/agents/meta/agent-summoner/examples.md +176 -0
  391. package/src/agents/meta/agent-summoner/intro.md +9 -0
  392. package/src/agents/meta/agent-summoner/output-format.md +115 -0
  393. package/src/agents/meta/agent-summoner/workflow.md +1540 -0
  394. package/src/agents/meta/documentor/agent.yaml +11 -0
  395. package/src/agents/meta/documentor/critical-reminders.md +23 -0
  396. package/src/agents/meta/documentor/critical-requirements.md +13 -0
  397. package/src/agents/meta/documentor/examples.md +147 -0
  398. package/src/agents/meta/documentor/intro.md +11 -0
  399. package/src/agents/meta/documentor/output-format.md +237 -0
  400. package/src/agents/meta/documentor/workflow.md +1271 -0
  401. package/src/agents/meta/skill-summoner/agent.yaml +13 -0
  402. package/src/agents/meta/skill-summoner/critical-reminders.md +73 -0
  403. package/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
  404. package/src/agents/meta/skill-summoner/examples.md +116 -0
  405. package/src/agents/meta/skill-summoner/intro.md +5 -0
  406. package/src/agents/meta/skill-summoner/output-format.md +279 -0
  407. package/src/agents/meta/skill-summoner/workflow.md +1485 -0
  408. package/src/agents/migration/cli-migrator/agent.yaml +12 -0
  409. package/src/agents/migration/cli-migrator/anti-patterns.md +158 -0
  410. package/src/agents/migration/cli-migrator/conversion-mappings.md +63 -0
  411. package/src/agents/migration/cli-migrator/critical-reminders.md +17 -0
  412. package/src/agents/migration/cli-migrator/critical-requirements.md +13 -0
  413. package/src/agents/migration/cli-migrator/intro.md +15 -0
  414. package/src/agents/migration/cli-migrator/output-format.md +164 -0
  415. package/src/agents/migration/cli-migrator/workflow.md +230 -0
  416. package/src/agents/pattern/pattern-scout/agent.yaml +10 -0
  417. package/src/agents/pattern/pattern-scout/critical-reminders.md +58 -0
  418. package/src/agents/pattern/pattern-scout/critical-requirements.md +17 -0
  419. package/src/agents/pattern/pattern-scout/examples.md +93 -0
  420. package/src/agents/pattern/pattern-scout/intro.md +3 -0
  421. package/src/agents/pattern/pattern-scout/output-format.md +196 -0
  422. package/src/agents/pattern/pattern-scout/workflow.md +1901 -0
  423. package/src/agents/pattern/web-pattern-critique/agent.yaml +12 -0
  424. package/src/agents/pattern/web-pattern-critique/critical-reminders.md +13 -0
  425. package/src/agents/pattern/web-pattern-critique/critical-requirements.md +11 -0
  426. package/src/agents/pattern/web-pattern-critique/examples.md +56 -0
  427. package/src/agents/pattern/web-pattern-critique/intro.md +5 -0
  428. package/src/agents/pattern/web-pattern-critique/output-format.md +257 -0
  429. package/src/agents/pattern/web-pattern-critique/workflow.md +674 -0
  430. package/src/agents/planning/web-pm/agent.yaml +12 -0
  431. package/src/agents/planning/web-pm/critical-reminders.md +21 -0
  432. package/src/agents/planning/web-pm/critical-requirements.md +17 -0
  433. package/src/agents/planning/web-pm/examples.md +85 -0
  434. package/src/agents/planning/web-pm/intro.md +3 -0
  435. package/src/agents/planning/web-pm/output-format.md +228 -0
  436. package/src/agents/planning/web-pm/workflow.md +393 -0
  437. package/src/agents/researcher/api-researcher/agent.yaml +10 -0
  438. package/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
  439. package/src/agents/researcher/api-researcher/critical-requirements.md +13 -0
  440. package/src/agents/researcher/api-researcher/examples.md +116 -0
  441. package/src/agents/researcher/api-researcher/intro.md +32 -0
  442. package/src/agents/researcher/api-researcher/output-format.md +135 -0
  443. package/src/agents/researcher/api-researcher/workflow.md +261 -0
  444. package/src/agents/researcher/web-researcher/agent.yaml +10 -0
  445. package/src/agents/researcher/web-researcher/critical-reminders.md +23 -0
  446. package/src/agents/researcher/web-researcher/critical-requirements.md +11 -0
  447. package/src/agents/researcher/web-researcher/examples.md +126 -0
  448. package/src/agents/researcher/web-researcher/intro.md +31 -0
  449. package/src/agents/researcher/web-researcher/output-format.md +112 -0
  450. package/src/agents/researcher/web-researcher/workflow.md +322 -0
  451. package/src/agents/reviewer/api-reviewer/agent.yaml +12 -0
  452. package/src/agents/reviewer/api-reviewer/critical-reminders.md +16 -0
  453. package/src/agents/reviewer/api-reviewer/critical-requirements.md +13 -0
  454. package/src/agents/reviewer/api-reviewer/examples.md +54 -0
  455. package/src/agents/reviewer/api-reviewer/intro.md +22 -0
  456. package/src/agents/reviewer/api-reviewer/output-format.md +288 -0
  457. package/src/agents/reviewer/api-reviewer/workflow.md +369 -0
  458. package/src/agents/reviewer/cli-reviewer/agent.yaml +12 -0
  459. package/src/agents/reviewer/cli-reviewer/critical-reminders.md +17 -0
  460. package/src/agents/reviewer/cli-reviewer/critical-requirements.md +13 -0
  461. package/src/agents/reviewer/cli-reviewer/examples.md +83 -0
  462. package/src/agents/reviewer/cli-reviewer/intro.md +21 -0
  463. package/src/agents/reviewer/cli-reviewer/output-format.md +330 -0
  464. package/src/agents/reviewer/cli-reviewer/workflow.md +294 -0
  465. package/src/agents/reviewer/web-reviewer/agent.yaml +12 -0
  466. package/src/agents/reviewer/web-reviewer/critical-reminders.md +17 -0
  467. package/src/agents/reviewer/web-reviewer/critical-requirements.md +11 -0
  468. package/src/agents/reviewer/web-reviewer/examples.md +79 -0
  469. package/src/agents/reviewer/web-reviewer/intro.md +20 -0
  470. package/src/agents/reviewer/web-reviewer/output-format.md +253 -0
  471. package/src/agents/reviewer/web-reviewer/workflow.md +228 -0
  472. package/src/agents/tester/cli-tester/agent.yaml +12 -0
  473. package/src/agents/tester/cli-tester/critical-reminders.md +19 -0
  474. package/src/agents/tester/cli-tester/critical-requirements.md +17 -0
  475. package/src/agents/tester/cli-tester/examples.md +80 -0
  476. package/src/agents/tester/cli-tester/intro.md +19 -0
  477. package/src/agents/tester/cli-tester/output-format.md +232 -0
  478. package/src/agents/tester/cli-tester/workflow.md +304 -0
  479. package/src/agents/tester/web-tester/agent.yaml +12 -0
  480. package/src/agents/tester/web-tester/critical-reminders.md +15 -0
  481. package/src/agents/tester/web-tester/critical-requirements.md +11 -0
  482. package/src/agents/tester/web-tester/examples.md +68 -0
  483. package/src/agents/tester/web-tester/intro.md +18 -0
  484. package/src/agents/tester/web-tester/output-format.md +252 -0
  485. package/src/agents/tester/web-tester/workflow.md +507 -0
  486. package/src/schemas/agent-frontmatter.schema.json +84 -0
  487. package/src/schemas/agent.schema.json +93 -0
  488. package/src/schemas/hooks.schema.json +47 -0
  489. package/src/schemas/marketplace.schema.json +119 -0
  490. package/src/schemas/metadata.schema.json +113 -0
  491. package/src/schemas/plugin.schema.json +130 -0
  492. package/src/schemas/project-config.schema.json +125 -0
  493. package/src/schemas/project-source-config.schema.json +81 -0
  494. package/src/schemas/skill-frontmatter.schema.json +42 -0
  495. package/src/schemas/skills-matrix.schema.json +467 -0
  496. package/src/schemas/stack.schema.json +191 -0
  497. package/src/schemas/stacks.schema.json +111 -0
@@ -0,0 +1,926 @@
1
+ # yaml-language-server: $schema=https://raw.githubusercontent.com/claude-collective/cli/main/src/schemas/skills-matrix.schema.json
2
+ # =============================================================================
3
+ # skills-matrix.yaml
4
+ # Full skills matrix for CLI data-driven architecture
5
+ # =============================================================================
6
+ # This is the production skills matrix containing all relationships and stacks.
7
+ # For testing, use skills-matrix-mvp.yaml (minimal 10-skill dataset).
8
+ # =============================================================================
9
+
10
+ version: "1.0.0"
11
+
12
+ # =============================================================================
13
+ # Categories (What the user selects)
14
+ # =============================================================================
15
+
16
+ categories:
17
+ # ─────────────────────────────────────────────────────────────────
18
+ # Web categories
19
+ # ─────────────────────────────────────────────────────────────────
20
+ framework:
21
+ id: framework
22
+ displayName: Framework
23
+ description: Core UI framework (React, Vue, Angular, SolidJS)
24
+ domain: web
25
+ exclusive: true
26
+ required: true
27
+ order: 1
28
+
29
+ meta-framework:
30
+ id: meta-framework
31
+ displayName: Meta-Framework
32
+ description: Full-stack framework (Next.js, Remix, Nuxt)
33
+ domain: web
34
+ exclusive: true
35
+ required: false
36
+ order: 2
37
+
38
+ styling:
39
+ id: styling
40
+ displayName: Styling
41
+ description: CSS approach (SCSS Modules, Tailwind)
42
+ domain: web
43
+ exclusive: true
44
+ required: true
45
+ order: 3
46
+
47
+ client-state:
48
+ id: client-state
49
+ displayName: Client State Management
50
+ description: UI state, forms, local data (Zustand, Redux, MobX)
51
+ domain: web
52
+ exclusive: true
53
+ required: false
54
+ order: 4
55
+
56
+ server-state:
57
+ id: server-state
58
+ displayName: Server State / Data Fetching
59
+ description: API data caching (React Query, SWR)
60
+ domain: web
61
+ exclusive: true
62
+ required: false
63
+ order: 5
64
+
65
+ forms:
66
+ id: forms
67
+ displayName: Forms & Validation
68
+ description: Form handling and schema validation
69
+ domain: web
70
+ exclusive: false
71
+ required: false
72
+ order: 6
73
+
74
+ testing:
75
+ id: testing
76
+ displayName: Testing
77
+ description: Unit, integration, and E2E testing
78
+ domain: web
79
+ exclusive: false
80
+ required: false
81
+ order: 7
82
+
83
+ ui-components:
84
+ id: ui-components
85
+ displayName: UI Component Library
86
+ description: Pre-built component systems (Radix, shadcn)
87
+ domain: web
88
+ exclusive: false
89
+ required: false
90
+ order: 8
91
+
92
+ mocking:
93
+ id: mocking
94
+ displayName: API Mocking
95
+ description: Mock Service Worker for development and testing
96
+ domain: web
97
+ exclusive: false
98
+ required: false
99
+ order: 10
100
+
101
+ error-handling:
102
+ id: error-handling
103
+ displayName: Error Handling
104
+ description: Error boundaries, result types, and error patterns
105
+ domain: web-extras
106
+ parent_domain: web
107
+ exclusive: false
108
+ required: false
109
+ order: 11
110
+
111
+ i18n:
112
+ id: i18n
113
+ displayName: Internationalization
114
+ description: i18n libraries (next-intl, react-intl, vue-i18n)
115
+ domain: web
116
+ exclusive: true
117
+ required: false
118
+ order: 12
119
+
120
+ file-upload:
121
+ id: file-upload
122
+ displayName: File Upload
123
+ description: File upload patterns and handling
124
+ domain: web-extras
125
+ parent_domain: web
126
+ exclusive: false
127
+ required: false
128
+ order: 13
129
+
130
+ files:
131
+ id: files
132
+ displayName: Files & Images
133
+ description: Image handling and file processing
134
+ domain: web-extras
135
+ parent_domain: web
136
+ exclusive: false
137
+ required: false
138
+ order: 14
139
+
140
+ utilities:
141
+ id: utilities
142
+ displayName: Utilities
143
+ description: Utility libraries (date-fns, native JS patterns)
144
+ domain: web-extras
145
+ parent_domain: web
146
+ exclusive: false
147
+ required: false
148
+ order: 15
149
+
150
+ realtime:
151
+ id: realtime
152
+ displayName: Realtime
153
+ description: WebSockets, SSE, and real-time communication
154
+ domain: web-extras
155
+ parent_domain: web
156
+ exclusive: true
157
+ required: false
158
+ order: 16
159
+
160
+ animation:
161
+ id: animation
162
+ displayName: Animation
163
+ description: Animation libraries and CSS animations
164
+ domain: web-extras
165
+ parent_domain: web
166
+ exclusive: false
167
+ required: false
168
+ order: 17
169
+
170
+ pwa:
171
+ id: pwa
172
+ displayName: Progressive Web App
173
+ description: Service workers, offline-first patterns, and PWA features
174
+ domain: web-extras
175
+ parent_domain: web
176
+ exclusive: false
177
+ required: false
178
+ order: 18
179
+
180
+ accessibility:
181
+ id: accessibility
182
+ displayName: Accessibility
183
+ description: WCAG compliance, ARIA, and keyboard navigation
184
+ domain: web-extras
185
+ parent_domain: web
186
+ exclusive: false
187
+ required: false
188
+ order: 19
189
+
190
+ web-performance:
191
+ id: web-performance
192
+ displayName: Web Performance
193
+ description: Bundle optimization, render performance, and code splitting
194
+ domain: web
195
+ exclusive: false
196
+ required: false
197
+ order: 20
198
+
199
+ # ─────────────────────────────────────────────────────────────────
200
+ # API categories
201
+ # ─────────────────────────────────────────────────────────────────
202
+ api:
203
+ id: api
204
+ displayName: API Framework
205
+ description: Backend framework (Hono, Express, Fastify)
206
+ domain: api
207
+ exclusive: true
208
+ required: true
209
+ order: 1
210
+
211
+ database:
212
+ id: database
213
+ displayName: Database ORM
214
+ description: Database access layer (Drizzle, Prisma)
215
+ domain: api
216
+ exclusive: true
217
+ required: false
218
+ order: 2
219
+
220
+ auth:
221
+ id: auth
222
+ displayName: Authentication
223
+ description: Auth solution (Better Auth, Auth.js)
224
+ domain: api
225
+ exclusive: true
226
+ required: false
227
+ order: 3
228
+
229
+ observability:
230
+ id: observability
231
+ displayName: Observability
232
+ description: Logging, monitoring, error tracking
233
+ domain: api
234
+ exclusive: false
235
+ required: false
236
+ order: 4
237
+
238
+ analytics:
239
+ id: analytics
240
+ displayName: Analytics
241
+ description: Product analytics and tracking
242
+ domain: api
243
+ exclusive: false
244
+ required: false
245
+ order: 5
246
+
247
+ email:
248
+ id: email
249
+ displayName: Email
250
+ description: Transactional email (Resend, Sendgrid)
251
+ domain: api
252
+ exclusive: true
253
+ required: false
254
+ order: 6
255
+
256
+ performance:
257
+ id: performance
258
+ displayName: Performance
259
+ description: API performance patterns and optimization
260
+ domain: api
261
+ exclusive: false
262
+ required: false
263
+ order: 7
264
+
265
+ # ─────────────────────────────────────────────────────────────────
266
+ # Mobile categories
267
+ # ─────────────────────────────────────────────────────────────────
268
+ mobile-framework:
269
+ id: mobile-framework
270
+ displayName: Mobile Framework
271
+ description: Native mobile framework (React Native, Expo)
272
+ domain: mobile
273
+ exclusive: true
274
+ required: true
275
+ order: 1
276
+
277
+ # ─────────────────────────────────────────────────────────────────
278
+ # Shared / Infrastructure categories
279
+ # ─────────────────────────────────────────────────────────────────
280
+ monorepo:
281
+ id: monorepo
282
+ displayName: Monorepo
283
+ description: Monorepo tooling (Turborepo, Nx)
284
+ domain: shared
285
+ exclusive: true
286
+ required: false
287
+ order: 1
288
+
289
+ tooling:
290
+ id: tooling
291
+ displayName: Build Tooling
292
+ description: ESLint, Prettier, TypeScript, Vite
293
+ domain: shared
294
+ exclusive: false
295
+ required: false
296
+ order: 2
297
+
298
+ security:
299
+ id: security
300
+ displayName: Security
301
+ description: Authentication security patterns and best practices
302
+ domain: shared
303
+ exclusive: false
304
+ required: false
305
+ order: 3
306
+
307
+ methodology:
308
+ id: methodology
309
+ displayName: Methodology
310
+ description: Development methodology and engineering principles
311
+ domain: shared
312
+ exclusive: false
313
+ required: false
314
+ order: 4
315
+
316
+ research:
317
+ id: research
318
+ displayName: Research
319
+ description: Codebase investigation and research methodology
320
+ domain: shared
321
+ exclusive: false
322
+ required: false
323
+ order: 5
324
+
325
+ reviewing:
326
+ id: reviewing
327
+ displayName: Code Review
328
+ description: Code review patterns and guidance
329
+ domain: shared
330
+ exclusive: false
331
+ required: false
332
+ order: 6
333
+
334
+ ci-cd:
335
+ id: ci-cd
336
+ displayName: CI/CD
337
+ description: Continuous integration and deployment pipelines
338
+ domain: shared
339
+ exclusive: false
340
+ required: false
341
+ order: 7
342
+
343
+ # ─────────────────────────────────────────────────────────────────
344
+ # CLI categories
345
+ # ─────────────────────────────────────────────────────────────────
346
+ cli-framework:
347
+ id: cli-framework
348
+ displayName: CLI Framework
349
+ description: CLI application framework (Commander, oclif)
350
+ domain: cli
351
+ exclusive: true
352
+ required: true
353
+ order: 1
354
+
355
+ cli-prompts:
356
+ id: cli-prompts
357
+ displayName: CLI Prompts
358
+ description: Interactive prompts and UI
359
+ domain: cli
360
+ exclusive: true
361
+ required: false
362
+ order: 2
363
+
364
+ cli-testing:
365
+ id: cli-testing
366
+ displayName: CLI Testing
367
+ description: CLI testing utilities
368
+ domain: cli
369
+ exclusive: false
370
+ required: false
371
+ order: 3
372
+
373
+ # =============================================================================
374
+ # Relationships (The Intelligence)
375
+ # =============================================================================
376
+
377
+ relationships:
378
+ # ─────────────────────────────────────────────────────────────────
379
+ # CONFLICTS (Mutually exclusive - selecting A disables B)
380
+ # ─────────────────────────────────────────────────────────────────
381
+ conflicts:
382
+ # Framework conflicts (only one core framework)
383
+ - skills: [react, vue, angular, solidjs]
384
+ reason: "Core frameworks are mutually exclusive within a single application. Exception: micro-frontend architectures (Single-SPA, Module Federation) can combine frameworks in isolation."
385
+
386
+ # Meta-framework conflicts
387
+ - skills: [nextjs-app-router, remix, nuxt]
388
+ reason: "Meta-frameworks are mutually exclusive - choose one"
389
+
390
+ # NOTE: scss-modules/tailwind moved to discourages - they're technically compatible
391
+
392
+ # Client state management (Vue ecosystem)
393
+ # NOTE: zustand/redux-toolkit/mobx moved to discourages - can coexist for migrations
394
+ - skills: [pinia, zustand, redux-toolkit, mobx]
395
+ reason: "Pinia is Vue-only. Our zustand/redux-toolkit/mobx skills teach React patterns (though these libraries technically support other frameworks)."
396
+
397
+ # Client state management (Angular ecosystem)
398
+ - skills: [ngrx-signalstore, zustand, pinia, redux-toolkit, mobx]
399
+ reason: "NgRx SignalStore is Angular-only"
400
+
401
+ # Server state / data fetching conflicts
402
+ - skills: [react-query, swr]
403
+ reason: "Both solve server state caching - choose one"
404
+
405
+ # GraphQL client conflicts
406
+ - skills: [graphql-apollo, graphql-urql]
407
+ reason: "Both are GraphQL clients - choose one"
408
+
409
+ # E2E testing conflicts
410
+ - skills: [playwright-e2e, cypress-e2e]
411
+ reason: "Both are E2E frameworks - choose one"
412
+
413
+ # Form libraries by framework
414
+ - skills: [react-hook-form, vee-validate]
415
+ reason: "react-hook-form is React-only, vee-validate is Vue-only"
416
+
417
+ # Testing library conflicts
418
+ - skills: [react-testing-library, vue-test-utils]
419
+ reason: "Framework-specific testing libraries"
420
+
421
+ # Backend API framework conflicts
422
+ - skills: [hono, express, fastify]
423
+ reason: "API frameworks are mutually exclusive within a single service. Multiple frameworks can coexist in monorepo architectures."
424
+
425
+ # Database ORM conflicts
426
+ - skills: [drizzle, prisma]
427
+ reason: "Both are ORMs serving similar purposes. Choose one per service; migration scenarios and multi-service architectures may involve both."
428
+
429
+ # CLI framework conflicts
430
+ - skills: [commander, oclif]
431
+ reason: "CLI frameworks are mutually exclusive"
432
+
433
+ # CLI prompt library conflicts
434
+ # NOTE: clack, inquirer, ink skills not yet created
435
+
436
+ # ─────────────────────────────────────────────────────────────────
437
+ # DISCOURAGES (Soft warnings - selecting A shows warning for B but doesn't disable)
438
+ # ─────────────────────────────────────────────────────────────────
439
+ discourages:
440
+ # Styling paradigm mixing is unusual but technically compatible
441
+ - skills: [scss-modules, tailwind]
442
+ reason: "Mixing CSS paradigms causes slower builds (Tailwind runs per-module) and inconsistent patterns - pick one approach for new projects. Valid for gradual migrations."
443
+
444
+ # React state libraries - can coexist but adds complexity
445
+ - skills: [zustand, redux-toolkit, mobx]
446
+ reason: "Using multiple React state libraries adds complexity - choose one primary approach. Migration patterns exist for gradual transitions."
447
+
448
+ # Redux is heavy for small projects with Zustand available
449
+ - skills: [redux-toolkit, zustand]
450
+ reason: "Redux Toolkit adds more boilerplate than Zustand - consider if you need its features"
451
+
452
+ # SWR is simpler but less featured than React Query
453
+ - skills: [swr, react-query]
454
+ reason: "SWR is simpler but React Query has more features - consider your needs"
455
+
456
+ # Express is legacy compared to modern alternatives
457
+ - skills: [express, hono]
458
+ reason: "Express is mature but Hono offers better performance and edge support"
459
+
460
+ - skills: [express, fastify]
461
+ reason: "Express is mature but Fastify offers better performance"
462
+
463
+ # Cypress vs Playwright - different strengths
464
+ - skills: [cypress-e2e, playwright-e2e]
465
+ reason: "Cypress excels at interactive debugging and component testing; Playwright has better cross-browser support, parallelization, and CI/CD performance"
466
+
467
+ # ─────────────────────────────────────────────────────────────────
468
+ # RECOMMENDS (Soft suggestions - selecting A highlights B)
469
+ # ─────────────────────────────────────────────────────────────────
470
+ recommends:
471
+ # React ecosystem recommendations
472
+ - when: react
473
+ suggest: [zustand, react-query, vitest, react-hook-form, react-testing-library]
474
+ reason: "Best-in-class React libraries"
475
+
476
+ # Next.js recommendations
477
+ - when: nextjs-app-router
478
+ suggest: [react-query, zustand, shadcn-ui]
479
+ reason: "Next.js App Router ecosystem"
480
+
481
+ # Remix recommendations
482
+ - when: remix
483
+ suggest: [zustand, vitest, zod-validation]
484
+ reason: "Remix-compatible libraries"
485
+
486
+ # Vue ecosystem recommendations
487
+ - when: vue
488
+ suggest: [pinia, vee-validate, vue-test-utils]
489
+ reason: "Vue community standard libraries (Pinia is official, VeeValidate is community-maintained)"
490
+
491
+ # Angular ecosystem recommendations
492
+ - when: angular
493
+ suggest: [ngrx-signalstore]
494
+ reason: "Angular Signals-based state management"
495
+
496
+ # SolidJS recommendations
497
+ - when: solidjs
498
+ suggest: [vitest, tailwind]
499
+ reason: "SolidJS-compatible libraries"
500
+
501
+ # Backend recommendations
502
+ - when: hono
503
+ suggest: [drizzle, better-auth, zod-validation]
504
+ reason: "Hono + Drizzle + Better Auth is a powerful combo"
505
+
506
+ - when: drizzle
507
+ suggest: [zod-validation]
508
+ reason: "Drizzle types work great with Zod"
509
+
510
+ # Styling recommendations
511
+ - when: scss-modules
512
+ suggest: [radix-ui]
513
+ reason: "Radix primitives work well with any CSS approach"
514
+
515
+ - when: tailwind
516
+ suggest: [shadcn-ui]
517
+ reason: "shadcn/ui is built for Tailwind"
518
+
519
+ # UI component recommendations
520
+ - when: shadcn-ui
521
+ suggest: [radix-ui, tailwind]
522
+ reason: "shadcn/ui uses Radix primitives and Tailwind"
523
+
524
+ # Form recommendations
525
+ - when: react-hook-form
526
+ suggest: [zod-validation]
527
+ reason: "react-hook-form + Zod is the standard pattern"
528
+
529
+ - when: vee-validate
530
+ suggest: [zod-validation]
531
+ reason: "vee-validate supports Zod schemas"
532
+
533
+ # Testing recommendations
534
+ - when: vitest
535
+ suggest: [react-testing-library, msw]
536
+ reason: "Vitest + RTL + MSW is the modern testing stack"
537
+
538
+ - when: playwright-e2e
539
+ suggest: [vitest]
540
+ reason: "Playwright for E2E, Vitest for unit/integration"
541
+
542
+ # Server state recommendations
543
+ - when: react-query
544
+ suggest: [zod-validation]
545
+ reason: "Type-safe API responses with Zod"
546
+
547
+ # Mobile recommendations
548
+ - when: react-native
549
+ suggest: [zustand, react-query, react-hook-form, zod-validation]
550
+ reason: "React Native shares React ecosystem. Note: Use Jest for testing (Vitest doesn't support RN)."
551
+
552
+ # Observability recommendations
553
+ - when: axiom-pino-sentry
554
+ suggest: [posthog]
555
+ reason: "Complete observability with analytics"
556
+
557
+ # NOTE: Removed resend recommends [react] - Resend works with plain HTML/text, React Email is optional
558
+
559
+ # Fastify recommendations
560
+ - when: fastify
561
+ suggest: [drizzle, zod-validation]
562
+ reason: "Fastify + Drizzle + Zod is a solid backend stack"
563
+
564
+ # Express recommendations
565
+ - when: express
566
+ suggest: [prisma]
567
+ reason: "Express + Prisma is a classic combination"
568
+
569
+ # Nuxt recommendations
570
+ - when: nuxt
571
+ suggest: [pinia, tailwind, playwright-e2e]
572
+ reason: "Nuxt ecosystem libraries"
573
+
574
+ # MSW recommendations
575
+ - when: msw
576
+ suggest: [vitest, react-testing-library]
577
+ reason: "MSW + Vitest + RTL is the modern testing stack"
578
+
579
+ # Cypress recommendations
580
+ - when: cypress-e2e
581
+ suggest: [vitest]
582
+ reason: "Cypress for E2E, Vitest for unit tests"
583
+
584
+ # CLI recommendations
585
+ - when: oclif
586
+ suggest: [vitest]
587
+ reason: "oclif pairs well with Vitest for CLI testing"
588
+
589
+ - when: commander
590
+ suggest: [vitest]
591
+ reason: "Commander pairs well with Vitest for CLI testing"
592
+
593
+ # ─────────────────────────────────────────────────────────────────
594
+ # REQUIRES (Hard dependencies - A requires B to be selected first)
595
+ # ─────────────────────────────────────────────────────────────────
596
+ requires:
597
+ # React-specific libraries (note: these libraries have vanilla/other-framework options, but our skills teach React patterns)
598
+ - skill: zustand
599
+ needs: [react, react-native]
600
+ needs_any: true
601
+ reason: "Our Zustand skill covers React/React Native patterns (zustand/vanilla exists for other frameworks)"
602
+
603
+ - skill: redux-toolkit
604
+ needs: [react, react-native]
605
+ needs_any: true
606
+ reason: "Our Redux Toolkit skill covers React/React Native patterns (RTK core is framework-agnostic)"
607
+
608
+ - skill: mobx
609
+ needs: [react]
610
+ reason: "Our MobX skill teaches React patterns. Note: MobX core has official Vue (mobx-vue) and Angular (mobx-angular) bindings."
611
+
612
+ - skill: react-query
613
+ needs: [react, react-native]
614
+ needs_any: true
615
+ reason: "TanStack Query's React adapter. Note: TanStack Query also supports Vue, Solid, Svelte via separate adapters."
616
+
617
+ - skill: swr
618
+ needs: [react, react-native]
619
+ needs_any: true
620
+ reason: "SWR is a React Hooks library. For React Native, requires @nandorojo/swr-react-native wrapper."
621
+
622
+ - skill: react-hook-form
623
+ needs: [react, react-native]
624
+ needs_any: true
625
+ reason: "React Hook Form is React only"
626
+
627
+ - skill: react-testing-library
628
+ needs: [react]
629
+ reason: "React Testing Library is React only"
630
+
631
+ # Vue-specific libraries
632
+ - skill: pinia
633
+ needs: [vue]
634
+ reason: "Pinia is Vue only"
635
+
636
+ - skill: vee-validate
637
+ needs: [vue]
638
+ reason: "VeeValidate is Vue only"
639
+
640
+ - skill: vue-test-utils
641
+ needs: [vue]
642
+ reason: "Vue Test Utils is Vue only"
643
+
644
+ # Angular-specific libraries
645
+ - skill: ngrx-signalstore
646
+ needs: [angular]
647
+ reason: "NgRx SignalStore is Angular only"
648
+
649
+ # Next.js specific
650
+ - skill: nextjs-app-router
651
+ needs: [react]
652
+ reason: "Next.js is built on React"
653
+
654
+ # Remix specific
655
+ - skill: remix
656
+ needs: [react]
657
+ reason: "Remix is built on React"
658
+
659
+ # Backend dependencies
660
+ - skill: better-auth
661
+ needs: [drizzle, prisma]
662
+ needs_any: true
663
+ reason: "Better Auth supports multiple database adapters (Drizzle, Prisma, Kysely, MongoDB). Our skill uses Drizzle adapter."
664
+
665
+ # NOTE: Removed drizzle/prisma requires API framework - ORMs work standalone for scripts, CLI tools, workers, etc.
666
+
667
+ # UI component dependencies
668
+ - skill: shadcn-ui
669
+ needs: [react, tailwind]
670
+ reason: "shadcn/ui requires React and Tailwind"
671
+
672
+ # GraphQL clients need a framework
673
+ - skill: graphql-apollo
674
+ needs: [react, vue, angular]
675
+ needs_any: true
676
+ reason: "Apollo Client - first-party React support, community-maintained Vue/Angular integrations. Note: Svelte/Solid bindings exist but are stale (2020-2022)."
677
+
678
+ - skill: graphql-urql
679
+ needs: [react, vue, solidjs]
680
+ needs_any: true
681
+ reason: "URQL has first-party support for React, Vue, and Solid (no Angular support). Svelte support exists but skill not yet created."
682
+
683
+ # ─────────────────────────────────────────────────────────────────
684
+ # ALTERNATIVES (Interchangeable options for same purpose)
685
+ # ─────────────────────────────────────────────────────────────────
686
+ alternatives:
687
+ - purpose: "Frontend Framework"
688
+ skills: [react, vue, angular, solidjs]
689
+
690
+ - purpose: "React Meta-Framework"
691
+ skills: [nextjs-app-router, remix]
692
+
693
+ - purpose: "Styling"
694
+ skills: [scss-modules, tailwind]
695
+
696
+ - purpose: "Client State (React)"
697
+ skills: [zustand, redux-toolkit, mobx, jotai]
698
+
699
+ - purpose: "Client State (Vue)"
700
+ skills: [pinia]
701
+
702
+ - purpose: "Client State (Angular)"
703
+ skills: [ngrx-signalstore]
704
+
705
+ - purpose: "Server State / Data Fetching"
706
+ skills: [react-query, swr]
707
+
708
+ - purpose: "GraphQL Client"
709
+ skills: [graphql-apollo, graphql-urql]
710
+
711
+ - purpose: "API Framework"
712
+ skills: [hono, express, fastify]
713
+
714
+ - purpose: "Database ORM"
715
+ skills: [drizzle, prisma]
716
+
717
+ - purpose: "Forms (React)"
718
+ skills: [react-hook-form]
719
+
720
+ - purpose: "Forms (Vue)"
721
+ skills: [vee-validate]
722
+
723
+ - purpose: "Validation"
724
+ skills: [zod-validation]
725
+
726
+ - purpose: "Unit Testing"
727
+ skills: [vitest]
728
+
729
+ - purpose: "Component Testing (React)"
730
+ skills: [react-testing-library]
731
+
732
+ - purpose: "Component Testing (Vue)"
733
+ skills: [vue-test-utils]
734
+
735
+ - purpose: "E2E Testing"
736
+ skills: [playwright-e2e, cypress-e2e]
737
+
738
+ - purpose: "API Mocking"
739
+ skills: [msw]
740
+
741
+ - purpose: "UI Components (React + Tailwind)"
742
+ skills: [shadcn-ui]
743
+
744
+ - purpose: "Mobile"
745
+ skills: [react-native]
746
+
747
+ - purpose: "CLI Framework"
748
+ skills: [commander, oclif]
749
+
750
+ # CLI Prompts alternatives: clack, inquirer, ink skills not yet created
751
+
752
+ # =============================================================================
753
+ # Skill Aliases (Map short names to normalized skill IDs)
754
+ # =============================================================================
755
+ # Skill IDs are now in normalized kebab-case format:
756
+ # - No author suffix (author is metadata only)
757
+ # - Slashes replaced with dashes
758
+ # - Plus signs replaced with dashes
759
+ # - Lowercase
760
+ # =============================================================================
761
+
762
+ skill_aliases:
763
+ # ─────────────────────────────────────────────────────────────────
764
+ # Frameworks - normalized skill IDs
765
+ # ─────────────────────────────────────────────────────────────────
766
+ react: "web-framework-react"
767
+ vue: "web-framework-vue-composition-api"
768
+ angular: "web-framework-angular-standalone"
769
+ solidjs: "web-framework-solidjs"
770
+
771
+ # Meta-frameworks
772
+ nextjs-app-router: "web-framework-nextjs-app-router"
773
+ nextjs-server-actions: "web-framework-nextjs-server-actions"
774
+ remix: "web-framework-remix"
775
+ nuxt: "web-framework-nuxt"
776
+
777
+ # ─────────────────────────────────────────────────────────────────
778
+ # Styling
779
+ # ─────────────────────────────────────────────────────────────────
780
+ scss-modules: "web-styling-scss-modules"
781
+ cva: "web-styling-cva"
782
+ tailwind: "web-styling-tailwind"
783
+
784
+ # ─────────────────────────────────────────────────────────────────
785
+ # Client State
786
+ # ─────────────────────────────────────────────────────────────────
787
+ zustand: "web-state-zustand"
788
+ redux-toolkit: "web-state-redux-toolkit"
789
+ pinia: "web-state-pinia"
790
+ ngrx-signalstore: "web-state-ngrx-signalstore"
791
+ jotai: "web-state-jotai"
792
+ mobx: "web-state-mobx"
793
+
794
+ # ─────────────────────────────────────────────────────────────────
795
+ # Server State / Data Fetching
796
+ # ─────────────────────────────────────────────────────────────────
797
+ react-query: "web-server-state-react-query"
798
+ swr: "web-data-fetching-swr"
799
+ graphql-apollo: "web-data-fetching-graphql-apollo"
800
+ graphql-urql: "web-data-fetching-graphql-urql"
801
+ trpc: "web-data-fetching-trpc"
802
+
803
+ # ─────────────────────────────────────────────────────────────────
804
+ # Forms & Validation
805
+ # ─────────────────────────────────────────────────────────────────
806
+ react-hook-form: "web-forms-react-hook-form"
807
+ vee-validate: "web-forms-vee-validate"
808
+ zod-validation: "web-forms-zod-validation"
809
+
810
+ # ─────────────────────────────────────────────────────────────────
811
+ # Testing
812
+ # ─────────────────────────────────────────────────────────────────
813
+ vitest: "web-testing-vitest"
814
+ playwright-e2e: "web-testing-playwright-e2e"
815
+ cypress-e2e: "web-testing-cypress-e2e"
816
+ react-testing-library: "web-testing-react-testing-library"
817
+ vue-test-utils: "web-testing-vue-test-utils"
818
+ msw: "web-mocks-msw"
819
+
820
+ # ─────────────────────────────────────────────────────────────────
821
+ # UI Components
822
+ # ─────────────────────────────────────────────────────────────────
823
+ shadcn-ui: "web-ui-shadcn-ui"
824
+ tanstack-table: "web-ui-tanstack-table"
825
+ radix-ui: "web-ui-radix-ui"
826
+
827
+ # ─────────────────────────────────────────────────────────────────
828
+ # Backend - API Framework
829
+ # ─────────────────────────────────────────────────────────────────
830
+ hono: "api-framework-hono"
831
+ express: "api-framework-express"
832
+ fastify: "api-framework-fastify"
833
+
834
+ # Backend - Database
835
+ drizzle: "api-database-drizzle"
836
+ prisma: "api-database-prisma"
837
+
838
+ # Backend - Auth (composite skill)
839
+ better-auth: "api-auth-better-auth-drizzle-hono"
840
+
841
+ # Backend - Observability (composite skill)
842
+ axiom-pino-sentry: "api-observability-axiom-pino-sentry"
843
+
844
+ # Backend - Analytics
845
+ posthog: "api-analytics-posthog-analytics"
846
+ posthog-flags: "api-flags-posthog-flags"
847
+
848
+ # Backend - Email (composite skill)
849
+ resend: "api-email-resend-react-email"
850
+
851
+ # Backend - CI/CD
852
+ github-actions: "api-ci-cd-github-actions"
853
+
854
+ # ─────────────────────────────────────────────────────────────────
855
+ # Mobile
856
+ # ─────────────────────────────────────────────────────────────────
857
+ react-native: "mobile-framework-react-native"
858
+ expo: "mobile-framework-expo"
859
+
860
+ # ─────────────────────────────────────────────────────────────────
861
+ # Setup / Infrastructure
862
+ # ─────────────────────────────────────────────────────────────────
863
+ turborepo: "infra-monorepo-turborepo"
864
+ tooling: "infra-tooling-setup-tooling"
865
+ posthog-setup: "api-analytics-setup-posthog"
866
+ env: "infra-env-setup-env"
867
+ observability-setup: "api-observability-setup-axiom-pino-sentry"
868
+ email-setup: "api-email-setup-resend"
869
+
870
+ # ─────────────────────────────────────────────────────────────────
871
+ # Additional Skills (Animation, PWA, Realtime, etc.)
872
+ # ─────────────────────────────────────────────────────────────────
873
+ framer-motion: "web-animation-framer-motion"
874
+ css-animations: "web-animation-css-animations"
875
+ view-transitions: "web-animation-view-transitions"
876
+ storybook: "web-tooling-storybook"
877
+ error-boundaries: "web-error-handling-error-boundaries"
878
+ accessibility: "web-accessibility-web-accessibility"
879
+ websockets: "web-realtime-websockets"
880
+ sse: "web-realtime-sse"
881
+ socket-io: "web-realtime-socket-io"
882
+ service-workers: "web-pwa-service-workers"
883
+ file-upload: "web-files-file-upload-patterns"
884
+ image-handling: "web-files-image-handling"
885
+ date-fns: "web-utilities-date-fns"
886
+
887
+ # ─────────────────────────────────────────────────────────────────
888
+ # Backend-specific category skills
889
+ # ─────────────────────────────────────────────────────────────────
890
+ api-testing: "api-testing-api-testing"
891
+ api-performance: "api-performance-api-performance"
892
+ web-performance: "web-performance-web-performance"
893
+
894
+ # Security
895
+ security: "security-auth-security"
896
+
897
+ # ─────────────────────────────────────────────────────────────────
898
+ # CLI
899
+ # ─────────────────────────────────────────────────────────────────
900
+ # CLI Framework
901
+ commander: "cli-framework-cli-commander"
902
+ cli-commander: "cli-framework-cli-commander"
903
+ oclif: "cli-framework-oclif-ink"
904
+ # yargs: skill not yet created
905
+
906
+ # CLI Prompts
907
+ # clack: skill not yet created
908
+ # inquirer: skill not yet created
909
+ # ink: skill not yet created
910
+
911
+ # ─────────────────────────────────────────────────────────────────
912
+ # Reviewing / Meta
913
+ # ─────────────────────────────────────────────────────────────────
914
+ reviewing: "meta-reviewing-reviewing"
915
+ cli-reviewing: "meta-reviewing-cli-reviewing"
916
+ research-methodology: "meta-research-research-methodology"
917
+
918
+ # ─────────────────────────────────────────────────────────────────
919
+ # Methodology (Universal principles + Implementation + Extended session)
920
+ # ─────────────────────────────────────────────────────────────────
921
+ investigation-requirements: "meta-methodology-investigation-requirements"
922
+ anti-over-engineering: "meta-methodology-anti-over-engineering"
923
+ success-criteria: "meta-methodology-success-criteria"
924
+ write-verification: "meta-methodology-write-verification"
925
+ improvement-protocol: "meta-methodology-improvement-protocol"
926
+ context-management: "meta-methodology-context-management"