@agents-inc/cli 0.81.1 → 0.82.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/{chunk-633YIZOU.js → chunk-32HQMUEJ.js} +3 -3
  3. package/dist/{chunk-3C6AXGR7.js → chunk-3BDCU5QB.js} +13 -13
  4. package/dist/chunk-3BDCU5QB.js.map +1 -0
  5. package/dist/{chunk-XQWMNUX6.js → chunk-3BM5F4IX.js} +6 -6
  6. package/dist/{chunk-4R6I6A3U.js → chunk-3MXMYHO3.js} +1339 -1284
  7. package/dist/chunk-3MXMYHO3.js.map +1 -0
  8. package/dist/{chunk-2SJKI2HI.js → chunk-4DXSCGVI.js} +7 -8
  9. package/dist/chunk-4DXSCGVI.js.map +1 -0
  10. package/dist/{chunk-SQ7WINEU.js → chunk-4QA5TIBU.js} +3 -3
  11. package/dist/{chunk-IVFLVH4G.js → chunk-57HHZMWR.js} +9 -9
  12. package/dist/{chunk-MNJAF4K2.js → chunk-5BRHJD7Q.js} +5 -5
  13. package/dist/{chunk-KYGQS6PK.js → chunk-6EMIA36T.js} +5 -5
  14. package/dist/{chunk-FMYAYX6W.js → chunk-6PGL2XMY.js} +11 -2
  15. package/dist/{chunk-FMYAYX6W.js.map → chunk-6PGL2XMY.js.map} +1 -1
  16. package/dist/{chunk-K63OEZW7.js → chunk-6XEZLWG5.js} +2 -2
  17. package/dist/{chunk-AAR2SNR2.js → chunk-ABBXUIMQ.js} +8 -5
  18. package/dist/chunk-ABBXUIMQ.js.map +1 -0
  19. package/dist/{chunk-4R72372U.js → chunk-AD2UT2TN.js} +3 -3
  20. package/dist/{chunk-4R72372U.js.map → chunk-AD2UT2TN.js.map} +1 -1
  21. package/dist/{chunk-M76LNKMY.js → chunk-B7KZLXHV.js} +2 -2
  22. package/dist/{chunk-H3NQGJMB.js → chunk-C4I4Q33M.js} +3 -3
  23. package/dist/{chunk-PZERKWE2.js → chunk-FQTYF3OU.js} +2 -2
  24. package/dist/{chunk-3SCIYMRK.js → chunk-FS4YWW36.js} +7 -4
  25. package/dist/chunk-FS4YWW36.js.map +1 -0
  26. package/dist/{chunk-MG55NDVG.js → chunk-FT46LN7K.js} +3 -3
  27. package/dist/{chunk-WZGROC5L.js → chunk-GEU62YD2.js} +4 -4
  28. package/dist/{chunk-ARVW74DG.js → chunk-GMR4PQX3.js} +6 -6
  29. package/dist/{chunk-3REKTRAN.js → chunk-HEQVUIHQ.js} +2 -2
  30. package/dist/{chunk-WKIPL7P6.js → chunk-HRMPQ4DV.js} +5 -5
  31. package/dist/{chunk-RU5XLS5Q.js → chunk-HSKKGAOW.js} +3 -3
  32. package/dist/{chunk-LO4X32JC.js → chunk-IMO6EQKT.js} +20 -20
  33. package/dist/chunk-IMO6EQKT.js.map +1 -0
  34. package/dist/{chunk-NJ2RJLRS.js → chunk-IMP35ETG.js} +290 -247
  35. package/dist/chunk-IMP35ETG.js.map +1 -0
  36. package/dist/{chunk-UXKXPDOT.js → chunk-L4JYOUGS.js} +8 -8
  37. package/dist/{chunk-EYFBODHL.js → chunk-MC5PUGEL.js} +2 -2
  38. package/dist/{chunk-B6WAMTYR.js → chunk-R5LEXRV3.js} +6 -6
  39. package/dist/{chunk-HCN67E7Z.js → chunk-RX6HPZ7A.js} +6 -6
  40. package/dist/{chunk-A5JSBU65.js → chunk-SB2R5KHJ.js} +3 -3
  41. package/dist/{chunk-NZAJTLEK.js → chunk-SOEIE4VA.js} +3 -3
  42. package/dist/{chunk-C22ACAL2.js → chunk-SXGCCUTH.js} +2 -2
  43. package/dist/{chunk-LVBRC2CP.js → chunk-TEA5KBIA.js} +2 -2
  44. package/dist/{chunk-FW4NVUIG.js → chunk-TY5BOAAA.js} +5 -5
  45. package/dist/{chunk-A7BQTWI4.js → chunk-VO6JKRLT.js} +2 -2
  46. package/dist/{chunk-FFMWFEUH.js → chunk-WJXWYSBT.js} +2 -2
  47. package/dist/{chunk-BN73X3JN.js → chunk-WYHFSJ7O.js} +12 -6
  48. package/dist/chunk-WYHFSJ7O.js.map +1 -0
  49. package/dist/{chunk-TQ363UUH.js → chunk-X2HE3W74.js} +2 -2
  50. package/dist/{chunk-MLXAZODL.js → chunk-XO6X5QE5.js} +2 -2
  51. package/dist/{chunk-TZY7WNWO.js → chunk-XTVWVOLD.js} +3 -3
  52. package/dist/chunk-YVFGISUO.js +171 -0
  53. package/dist/chunk-YVFGISUO.js.map +1 -0
  54. package/dist/{chunk-VSMGVVZF.js → chunk-YXOZJWP3.js} +4 -4
  55. package/dist/{chunk-2KEBGORS.js → chunk-ZAYTTG3M.js} +5 -5
  56. package/dist/{chunk-V3EDF3IA.js → chunk-ZKQ4XQNO.js} +15 -15
  57. package/dist/commands/build/marketplace.js +5 -5
  58. package/dist/commands/build/plugins.js +9 -9
  59. package/dist/commands/build/stack.js +9 -9
  60. package/dist/commands/compile.js +10 -10
  61. package/dist/commands/config/index.js +9 -9
  62. package/dist/commands/config/path.js +8 -8
  63. package/dist/commands/config/show.js +9 -9
  64. package/dist/commands/diff.js +8 -8
  65. package/dist/commands/doctor.js +8 -8
  66. package/dist/commands/edit.js +34 -34
  67. package/dist/commands/eject.js +8 -8
  68. package/dist/commands/import/skill.js +9 -9
  69. package/dist/commands/info.js +9 -9
  70. package/dist/commands/init.js +34 -34
  71. package/dist/commands/list.js +8 -8
  72. package/dist/commands/new/agent.js +9 -9
  73. package/dist/commands/new/marketplace.js +10 -10
  74. package/dist/commands/new/skill.js +9 -9
  75. package/dist/commands/outdated.js +8 -8
  76. package/dist/commands/search.js +11 -11
  77. package/dist/commands/uninstall.js +9 -9
  78. package/dist/commands/update.js +10 -10
  79. package/dist/commands/validate.js +9 -9
  80. package/dist/components/common/select-list.js +2 -2
  81. package/dist/components/skill-search/skill-search.js +3 -3
  82. package/dist/components/wizard/category-grid.js +4 -4
  83. package/dist/components/wizard/category-grid.test.js +13 -13
  84. package/dist/components/wizard/checkbox-grid.js +4 -4
  85. package/dist/components/wizard/checkbox-grid.test.js +4 -4
  86. package/dist/components/wizard/domain-selection.js +13 -13
  87. package/dist/components/wizard/help-modal.js +2 -2
  88. package/dist/components/wizard/menu-item.js +1 -1
  89. package/dist/components/wizard/search-modal.js +3 -3
  90. package/dist/components/wizard/search-modal.test.js +3 -3
  91. package/dist/components/wizard/section-progress.js +2 -2
  92. package/dist/components/wizard/section-progress.test.js +2 -2
  93. package/dist/components/wizard/selection-card.js +2 -2
  94. package/dist/components/wizard/source-grid.js +6 -6
  95. package/dist/components/wizard/source-grid.test.js +15 -15
  96. package/dist/components/wizard/stack-selection.js +11 -11
  97. package/dist/components/wizard/stats-panel.js +2 -2
  98. package/dist/components/wizard/step-agents.js +12 -12
  99. package/dist/components/wizard/step-agents.test.js +15 -15
  100. package/dist/components/wizard/step-build.js +12 -12
  101. package/dist/components/wizard/step-build.test.js +15 -15
  102. package/dist/components/wizard/step-confirm.js +5 -5
  103. package/dist/components/wizard/step-confirm.test.js +11 -11
  104. package/dist/components/wizard/step-refine.js +2 -2
  105. package/dist/components/wizard/step-refine.test.js +2 -2
  106. package/dist/components/wizard/step-settings.js +10 -10
  107. package/dist/components/wizard/step-settings.test.js +13 -13
  108. package/dist/components/wizard/step-sources.js +14 -14
  109. package/dist/components/wizard/step-sources.test.js +17 -17
  110. package/dist/components/wizard/step-stack.js +12 -12
  111. package/dist/components/wizard/step-stack.test.js +13 -13
  112. package/dist/components/wizard/wizard-layout.js +12 -12
  113. package/dist/components/wizard/wizard-tabs.js +2 -2
  114. package/dist/components/wizard/wizard-tabs.test.js +2 -2
  115. package/dist/components/wizard/wizard.js +31 -31
  116. package/dist/config-exports.js +1 -1
  117. package/dist/hooks/init.js +34 -34
  118. package/dist/{loader-LI3EM4VG.js → loader-4XPDVCZK.js} +5 -5
  119. package/dist/{source-loader-MTWQPEGK.js → source-loader-C2QCBXOB.js} +8 -8
  120. package/dist/source-manager-DLEHJUZL.js +19 -0
  121. package/dist/src/agents/meta/agent-summoner/workflow.md +2 -2
  122. package/dist/src/agents/meta/skill-summoner/critical-reminders.md +1 -1
  123. package/dist/src/agents/meta/skill-summoner/examples.md +14 -16
  124. package/dist/src/agents/meta/skill-summoner/intro.md +1 -1
  125. package/dist/src/agents/meta/skill-summoner/output-format.md +9 -13
  126. package/dist/src/agents/meta/skill-summoner/workflow.md +20 -1
  127. package/dist/stores/wizard-store.js +8 -8
  128. package/dist/stores/wizard-store.test.js +36 -36
  129. package/dist/stores/wizard-store.test.js.map +1 -1
  130. package/package.json +1 -1
  131. package/src/agents/meta/agent-summoner/workflow.md +2 -2
  132. package/src/agents/meta/skill-summoner/critical-reminders.md +1 -1
  133. package/src/agents/meta/skill-summoner/examples.md +14 -16
  134. package/src/agents/meta/skill-summoner/intro.md +1 -1
  135. package/src/agents/meta/skill-summoner/output-format.md +9 -13
  136. package/src/agents/meta/skill-summoner/workflow.md +20 -1
  137. package/src/schemas/metadata.schema.json +21 -4
  138. package/src/schemas/project-config.schema.json +48 -35
  139. package/dist/chunk-2SJKI2HI.js.map +0 -1
  140. package/dist/chunk-3C6AXGR7.js.map +0 -1
  141. package/dist/chunk-3SCIYMRK.js.map +0 -1
  142. package/dist/chunk-4R6I6A3U.js.map +0 -1
  143. package/dist/chunk-AAR2SNR2.js.map +0 -1
  144. package/dist/chunk-BN73X3JN.js.map +0 -1
  145. package/dist/chunk-LO4X32JC.js.map +0 -1
  146. package/dist/chunk-NJ2RJLRS.js.map +0 -1
  147. package/dist/chunk-TJXBRYM4.js +0 -159
  148. package/dist/chunk-TJXBRYM4.js.map +0 -1
  149. package/dist/source-manager-JJIJP75Q.js +0 -19
  150. /package/dist/{chunk-633YIZOU.js.map → chunk-32HQMUEJ.js.map} +0 -0
  151. /package/dist/{chunk-XQWMNUX6.js.map → chunk-3BM5F4IX.js.map} +0 -0
  152. /package/dist/{chunk-SQ7WINEU.js.map → chunk-4QA5TIBU.js.map} +0 -0
  153. /package/dist/{chunk-IVFLVH4G.js.map → chunk-57HHZMWR.js.map} +0 -0
  154. /package/dist/{chunk-MNJAF4K2.js.map → chunk-5BRHJD7Q.js.map} +0 -0
  155. /package/dist/{chunk-KYGQS6PK.js.map → chunk-6EMIA36T.js.map} +0 -0
  156. /package/dist/{chunk-K63OEZW7.js.map → chunk-6XEZLWG5.js.map} +0 -0
  157. /package/dist/{chunk-M76LNKMY.js.map → chunk-B7KZLXHV.js.map} +0 -0
  158. /package/dist/{chunk-H3NQGJMB.js.map → chunk-C4I4Q33M.js.map} +0 -0
  159. /package/dist/{chunk-PZERKWE2.js.map → chunk-FQTYF3OU.js.map} +0 -0
  160. /package/dist/{chunk-MG55NDVG.js.map → chunk-FT46LN7K.js.map} +0 -0
  161. /package/dist/{chunk-WZGROC5L.js.map → chunk-GEU62YD2.js.map} +0 -0
  162. /package/dist/{chunk-ARVW74DG.js.map → chunk-GMR4PQX3.js.map} +0 -0
  163. /package/dist/{chunk-3REKTRAN.js.map → chunk-HEQVUIHQ.js.map} +0 -0
  164. /package/dist/{chunk-WKIPL7P6.js.map → chunk-HRMPQ4DV.js.map} +0 -0
  165. /package/dist/{chunk-RU5XLS5Q.js.map → chunk-HSKKGAOW.js.map} +0 -0
  166. /package/dist/{chunk-UXKXPDOT.js.map → chunk-L4JYOUGS.js.map} +0 -0
  167. /package/dist/{chunk-EYFBODHL.js.map → chunk-MC5PUGEL.js.map} +0 -0
  168. /package/dist/{chunk-B6WAMTYR.js.map → chunk-R5LEXRV3.js.map} +0 -0
  169. /package/dist/{chunk-HCN67E7Z.js.map → chunk-RX6HPZ7A.js.map} +0 -0
  170. /package/dist/{chunk-A5JSBU65.js.map → chunk-SB2R5KHJ.js.map} +0 -0
  171. /package/dist/{chunk-NZAJTLEK.js.map → chunk-SOEIE4VA.js.map} +0 -0
  172. /package/dist/{chunk-C22ACAL2.js.map → chunk-SXGCCUTH.js.map} +0 -0
  173. /package/dist/{chunk-LVBRC2CP.js.map → chunk-TEA5KBIA.js.map} +0 -0
  174. /package/dist/{chunk-FW4NVUIG.js.map → chunk-TY5BOAAA.js.map} +0 -0
  175. /package/dist/{chunk-A7BQTWI4.js.map → chunk-VO6JKRLT.js.map} +0 -0
  176. /package/dist/{chunk-FFMWFEUH.js.map → chunk-WJXWYSBT.js.map} +0 -0
  177. /package/dist/{chunk-TQ363UUH.js.map → chunk-X2HE3W74.js.map} +0 -0
  178. /package/dist/{chunk-MLXAZODL.js.map → chunk-XO6X5QE5.js.map} +0 -0
  179. /package/dist/{chunk-TZY7WNWO.js.map → chunk-XTVWVOLD.js.map} +0 -0
  180. /package/dist/{chunk-VSMGVVZF.js.map → chunk-YXOZJWP3.js.map} +0 -0
  181. /package/dist/{chunk-2KEBGORS.js.map → chunk-ZAYTTG3M.js.map} +0 -0
  182. /package/dist/{chunk-V3EDF3IA.js.map → chunk-ZKQ4XQNO.js.map} +0 -0
  183. /package/dist/{loader-LI3EM4VG.js.map → loader-4XPDVCZK.js.map} +0 -0
  184. /package/dist/{source-loader-MTWQPEGK.js.map → source-loader-C2QCBXOB.js.map} +0 -0
  185. /package/dist/{source-manager-JJIJP75Q.js.map → source-manager-DLEHJUZL.js.map} +0 -0
@@ -251,14 +251,50 @@ var BUILT_IN_MATRIX = {
251
251
  required: false,
252
252
  order: 6
253
253
  },
254
- "api-ai": {
255
- id: "api-ai",
256
- displayName: "AI & LLM",
257
- description: "AI SDKs, LLM integration, and RAG patterns",
258
- domain: "api",
254
+ "ai-provider": {
255
+ id: "ai-provider",
256
+ displayName: "AI Provider",
257
+ description: "AI model provider SDKs (Anthropic, OpenAI, Google, etc.)",
258
+ domain: "ai",
259
259
  exclusive: false,
260
260
  required: false,
261
- order: 7
261
+ order: 1
262
+ },
263
+ "ai-orchestration": {
264
+ id: "ai-orchestration",
265
+ displayName: "AI Orchestration",
266
+ description: "Multi-model AI workflow frameworks (LangChain, LlamaIndex, Vercel AI)",
267
+ domain: "ai",
268
+ exclusive: false,
269
+ required: false,
270
+ order: 2
271
+ },
272
+ "ai-observability": {
273
+ id: "ai-observability",
274
+ displayName: "AI Observability",
275
+ description: "LLM monitoring, evaluation, and tracing (Langfuse, Promptfoo)",
276
+ domain: "ai",
277
+ exclusive: false,
278
+ required: false,
279
+ order: 3
280
+ },
281
+ "ai-infrastructure": {
282
+ id: "ai-infrastructure",
283
+ displayName: "AI Infrastructure",
284
+ description: "Model hosting, serving, and inference gateways",
285
+ domain: "ai",
286
+ exclusive: false,
287
+ required: false,
288
+ order: 4
289
+ },
290
+ "ai-patterns": {
291
+ id: "ai-patterns",
292
+ displayName: "AI Patterns",
293
+ description: "Cross-cutting AI usage patterns (tool use, prompting)",
294
+ domain: "ai",
295
+ exclusive: false,
296
+ required: false,
297
+ order: 5
262
298
  },
263
299
  "api-baas": {
264
300
  id: "api-baas",
@@ -314,23 +350,50 @@ var BUILT_IN_MATRIX = {
314
350
  required: false,
315
351
  order: 3
316
352
  },
317
- "shared-meta": {
318
- id: "shared-meta",
319
- displayName: "Meta",
320
- description: "Research methodology and code review guidance",
321
- domain: "shared",
353
+ "meta-reviewing": {
354
+ id: "meta-reviewing",
355
+ displayName: "Code Review",
356
+ description: "Code review patterns and methodology",
357
+ domain: "meta",
322
358
  exclusive: false,
323
359
  required: false,
324
- order: 4
360
+ order: 1
361
+ },
362
+ "meta-methodology": {
363
+ id: "meta-methodology",
364
+ displayName: "Methodology",
365
+ description: "Research and investigation methodology",
366
+ domain: "meta",
367
+ exclusive: false,
368
+ required: false,
369
+ order: 2
325
370
  },
326
- "shared-ci-cd": {
327
- id: "shared-ci-cd",
371
+ "infra-ci-cd": {
372
+ id: "infra-ci-cd",
328
373
  displayName: "CI/CD",
329
374
  description: "Continuous integration and deployment pipelines",
330
- domain: "shared",
375
+ domain: "infra",
331
376
  exclusive: false,
332
377
  required: false,
333
- order: 7
378
+ order: 1
379
+ },
380
+ "infra-platform": {
381
+ id: "infra-platform",
382
+ displayName: "Platform",
383
+ description: "Edge compute and deployment platforms",
384
+ domain: "infra",
385
+ exclusive: false,
386
+ required: false,
387
+ order: 2
388
+ },
389
+ "infra-config": {
390
+ id: "infra-config",
391
+ displayName: "Configuration",
392
+ description: "Environment and infrastructure configuration",
393
+ domain: "infra",
394
+ exclusive: false,
395
+ required: false,
396
+ order: 3
334
397
  },
335
398
  "cli-framework": {
336
399
  id: "cli-framework",
@@ -377,15 +440,6 @@ var BUILT_IN_MATRIX = {
377
440
  required: false,
378
441
  order: 999
379
442
  },
380
- "shared-infra": {
381
- id: "shared-infra",
382
- displayName: "Shared Infra",
383
- description: "Auto-generated category for shared-infra",
384
- domain: "shared",
385
- exclusive: false,
386
- required: false,
387
- order: 999
388
- },
389
443
  "api-commerce": {
390
444
  id: "api-commerce",
391
445
  displayName: "Api Commerce",
@@ -397,6 +451,59 @@ var BUILT_IN_MATRIX = {
397
451
  }
398
452
  },
399
453
  skills: {
454
+ "ai-infrastructure-huggingface-inference": {
455
+ id: "ai-infrastructure-huggingface-inference",
456
+ slug: "huggingface-inference",
457
+ displayName: "Hugging Face Inference",
458
+ description: "Access 200k+ models via Hugging Face Inference API and Inference Endpoints",
459
+ usageGuidance: "Use when accessing ML models via Hugging Face \u2014 text generation, chat completion, embeddings, image generation, audio transcription, translation, summarization, and custom Inference Endpoints for dedicated deployments.",
460
+ category: "ai-infrastructure",
461
+ author: "@vince",
462
+ conflictsWith: [],
463
+ discourages: [],
464
+ compatibleWith: [],
465
+ requires: [],
466
+ alternatives: [
467
+ {
468
+ skillId: "ai-provider-anthropic-sdk",
469
+ purpose: "AI Provider SDK"
470
+ },
471
+ {
472
+ skillId: "ai-provider-openai-sdk",
473
+ purpose: "AI Provider SDK"
474
+ },
475
+ {
476
+ skillId: "ai-provider-google-gemini-sdk",
477
+ purpose: "AI Provider SDK"
478
+ },
479
+ {
480
+ skillId: "ai-provider-mistral-sdk",
481
+ purpose: "AI Provider SDK"
482
+ },
483
+ {
484
+ skillId: "ai-provider-cohere-sdk",
485
+ purpose: "AI Provider SDK"
486
+ },
487
+ {
488
+ skillId: "ai-infrastructure-together-ai",
489
+ purpose: "AI Provider SDK"
490
+ },
491
+ {
492
+ skillId: "ai-infrastructure-replicate",
493
+ purpose: "AI Provider SDK"
494
+ },
495
+ {
496
+ skillId: "ai-infrastructure-ollama",
497
+ purpose: "AI Provider SDK"
498
+ },
499
+ {
500
+ skillId: "ai-infrastructure-litellm",
501
+ purpose: "AI Provider SDK"
502
+ }
503
+ ],
504
+ isRecommended: false,
505
+ path: "skills/ai-infrastructure-huggingface-inference"
506
+ },
400
507
  "web-data-fetching-trpc": {
401
508
  id: "web-data-fetching-trpc",
402
509
  slug: "trpc",
@@ -412,11 +519,83 @@ var BUILT_IN_MATRIX = {
412
519
  "web-meta-framework-nextjs",
413
520
  "web-meta-framework-remix"
414
521
  ],
415
- requires: [],
416
- alternatives: [],
522
+ requires: [
523
+ {
524
+ skillIds: [
525
+ "web-framework-react",
526
+ "web-meta-framework-nextjs",
527
+ "web-meta-framework-remix"
528
+ ],
529
+ needsAny: true,
530
+ reason: "Our tRPC skill teaches React Query integration patterns"
531
+ }
532
+ ],
533
+ alternatives: [
534
+ {
535
+ skillId: "web-server-state-react-query",
536
+ purpose: "Server State / Data Fetching"
537
+ },
538
+ {
539
+ skillId: "web-data-fetching-swr",
540
+ purpose: "Server State / Data Fetching"
541
+ }
542
+ ],
417
543
  isRecommended: false,
418
544
  path: "skills/web-data-fetching-trpc"
419
545
  },
546
+ "ai-provider-cohere-sdk": {
547
+ id: "ai-provider-cohere-sdk",
548
+ slug: "cohere-sdk",
549
+ displayName: "Cohere SDK",
550
+ description: "Official TypeScript SDK for Cohere with chat, embeddings, rerank, and RAG",
551
+ usageGuidance: "Use when integrating Cohere AI -- chat completions with Command models, embeddings for semantic search, rerank for relevance scoring, RAG with inline documents and citations, tool use / function calling, and streaming.",
552
+ category: "ai-provider",
553
+ author: "@vince",
554
+ conflictsWith: [],
555
+ discourages: [],
556
+ compatibleWith: [],
557
+ requires: [],
558
+ alternatives: [
559
+ {
560
+ skillId: "ai-provider-anthropic-sdk",
561
+ purpose: "AI Provider SDK"
562
+ },
563
+ {
564
+ skillId: "ai-provider-openai-sdk",
565
+ purpose: "AI Provider SDK"
566
+ },
567
+ {
568
+ skillId: "ai-provider-google-gemini-sdk",
569
+ purpose: "AI Provider SDK"
570
+ },
571
+ {
572
+ skillId: "ai-provider-mistral-sdk",
573
+ purpose: "AI Provider SDK"
574
+ },
575
+ {
576
+ skillId: "ai-infrastructure-together-ai",
577
+ purpose: "AI Provider SDK"
578
+ },
579
+ {
580
+ skillId: "ai-infrastructure-replicate",
581
+ purpose: "AI Provider SDK"
582
+ },
583
+ {
584
+ skillId: "ai-infrastructure-huggingface-inference",
585
+ purpose: "AI Provider SDK"
586
+ },
587
+ {
588
+ skillId: "ai-infrastructure-ollama",
589
+ purpose: "AI Provider SDK"
590
+ },
591
+ {
592
+ skillId: "ai-infrastructure-litellm",
593
+ purpose: "AI Provider SDK"
594
+ }
595
+ ],
596
+ isRecommended: false,
597
+ path: "skills/ai-provider-cohere-sdk"
598
+ },
420
599
  "shared-tooling-biome": {
421
600
  id: "shared-tooling-biome",
422
601
  slug: "biome",
@@ -469,12 +648,7 @@ var BUILT_IN_MATRIX = {
469
648
  reason: "API frameworks are mutually exclusive within a single service"
470
649
  }
471
650
  ],
472
- discourages: [
473
- {
474
- skillId: "api-framework-express",
475
- reason: "Express is mature but Hono offers better performance and edge support"
476
- }
477
- ],
651
+ discourages: [],
478
652
  compatibleWith: [],
479
653
  requires: [],
480
654
  alternatives: [
@@ -646,12 +820,7 @@ var BUILT_IN_MATRIX = {
646
820
  reason: "SQL ORMs are mutually exclusive"
647
821
  }
648
822
  ],
649
- discourages: [
650
- {
651
- skillId: "api-database-drizzle",
652
- reason: "TypeORM uses decorators; Drizzle is more TypeScript-native"
653
- }
654
- ],
823
+ discourages: [],
655
824
  compatibleWith: [],
656
825
  requires: [],
657
826
  alternatives: [
@@ -675,13 +844,13 @@ var BUILT_IN_MATRIX = {
675
844
  isRecommended: false,
676
845
  path: "skills/api-database-typeorm"
677
846
  },
678
- "api-ai-replicate": {
679
- id: "api-ai-replicate",
680
- slug: "replicate",
681
- displayName: "Replicate",
682
- description: "API for running open-source ML models with serverless GPU inference",
683
- usageGuidance: "Use when running open-source models on Replicate \u2014 model predictions, streaming, webhooks, file handling, model versioning, and serverless GPU deployment.",
684
- category: "api-ai",
847
+ "ai-infrastructure-together-ai": {
848
+ id: "ai-infrastructure-together-ai",
849
+ slug: "together-ai",
850
+ displayName: "Together AI",
851
+ description: "Multi-model inference API for open-source LLMs",
852
+ usageGuidance: "Use when running open-source LLMs on Together AI \u2014 chat completions, streaming, embeddings, image generation, function calling, JSON mode, structured output, fine-tuning, and OpenAI-compatible endpoints.",
853
+ category: "ai-infrastructure",
685
854
  author: "@vince",
686
855
  conflictsWith: [],
687
856
  discourages: [],
@@ -689,40 +858,44 @@ var BUILT_IN_MATRIX = {
689
858
  requires: [],
690
859
  alternatives: [
691
860
  {
692
- skillId: "api-ai-anthropic-sdk",
861
+ skillId: "ai-provider-anthropic-sdk",
862
+ purpose: "AI Provider SDK"
863
+ },
864
+ {
865
+ skillId: "ai-provider-openai-sdk",
693
866
  purpose: "AI Provider SDK"
694
867
  },
695
868
  {
696
- skillId: "api-ai-openai-sdk",
869
+ skillId: "ai-provider-google-gemini-sdk",
697
870
  purpose: "AI Provider SDK"
698
871
  },
699
872
  {
700
- skillId: "api-ai-google-gemini-sdk",
873
+ skillId: "ai-provider-mistral-sdk",
701
874
  purpose: "AI Provider SDK"
702
875
  },
703
876
  {
704
- skillId: "api-ai-mistral-sdk",
877
+ skillId: "ai-provider-cohere-sdk",
705
878
  purpose: "AI Provider SDK"
706
879
  },
707
880
  {
708
- skillId: "api-ai-cohere-sdk",
881
+ skillId: "ai-infrastructure-replicate",
709
882
  purpose: "AI Provider SDK"
710
883
  },
711
884
  {
712
- skillId: "api-ai-together-ai",
885
+ skillId: "ai-infrastructure-huggingface-inference",
713
886
  purpose: "AI Provider SDK"
714
887
  },
715
888
  {
716
- skillId: "api-ai-huggingface-inference",
889
+ skillId: "ai-infrastructure-ollama",
717
890
  purpose: "AI Provider SDK"
718
891
  },
719
892
  {
720
- skillId: "api-ai-ollama",
893
+ skillId: "ai-infrastructure-litellm",
721
894
  purpose: "AI Provider SDK"
722
895
  }
723
896
  ],
724
897
  isRecommended: false,
725
- path: "skills/api-ai-replicate"
898
+ path: "skills/ai-infrastructure-together-ai"
726
899
  },
727
900
  "api-database-prisma": {
728
901
  id: "api-database-prisma",
@@ -771,13 +944,13 @@ var BUILT_IN_MATRIX = {
771
944
  recommendedReason: "Mature database ORM with great DX",
772
945
  path: "skills/api-database-prisma"
773
946
  },
774
- "api-ai-anthropic-sdk": {
775
- id: "api-ai-anthropic-sdk",
776
- slug: "anthropic-sdk",
777
- displayName: "Anthropic SDK",
778
- description: "Official TypeScript SDK for Claude API with messages, streaming, tool use, and vision",
779
- usageGuidance: "Use when integrating Claude via the Anthropic API \u2014 messages API, streaming responses, tool use (function calling), vision (image input), extended thinking, batch API, and prompt caching.",
780
- category: "api-ai",
947
+ "api-database-vercel-postgres": {
948
+ id: "api-database-vercel-postgres",
949
+ slug: "vercel-postgres",
950
+ displayName: "Vercel Postgres",
951
+ description: "Serverless PostgreSQL on Vercel with edge-compatible SDK",
952
+ usageGuidance: "Use when deploying PostgreSQL on Vercel -- sql tagged template for edge functions, createPool/createClient for Node.js, automatic connection management via POSTGRES_URL env vars. NOTE: @vercel/postgres is deprecated (Dec 2024). For new projects, use @neondatabase/serverless instead.",
953
+ category: "api-database",
781
954
  author: "@vince",
782
955
  conflictsWith: [],
783
956
  discourages: [],
@@ -785,57 +958,20 @@ var BUILT_IN_MATRIX = {
785
958
  requires: [],
786
959
  alternatives: [
787
960
  {
788
- skillId: "api-ai-openai-sdk",
789
- purpose: "AI Provider SDK"
790
- },
791
- {
792
- skillId: "api-ai-google-gemini-sdk",
793
- purpose: "AI Provider SDK"
794
- },
795
- {
796
- skillId: "api-ai-mistral-sdk",
797
- purpose: "AI Provider SDK"
798
- },
799
- {
800
- skillId: "api-ai-cohere-sdk",
801
- purpose: "AI Provider SDK"
802
- },
803
- {
804
- skillId: "api-ai-together-ai",
805
- purpose: "AI Provider SDK"
806
- },
807
- {
808
- skillId: "api-ai-replicate",
809
- purpose: "AI Provider SDK"
961
+ skillId: "api-baas-neon",
962
+ purpose: "Managed Database"
810
963
  },
811
964
  {
812
- skillId: "api-ai-huggingface-inference",
813
- purpose: "AI Provider SDK"
965
+ skillId: "api-baas-planetscale",
966
+ purpose: "Managed Database"
814
967
  },
815
968
  {
816
- skillId: "api-ai-ollama",
817
- purpose: "AI Provider SDK"
969
+ skillId: "api-baas-turso",
970
+ purpose: "Managed Database"
818
971
  }
819
972
  ],
820
- isRecommended: true,
821
- recommendedReason: "Direct Claude API access with tool use and vision",
822
- path: "skills/api-ai-anthropic-sdk"
823
- },
824
- "shared-ci-cd-github-actions": {
825
- id: "shared-ci-cd-github-actions",
826
- slug: "github-actions",
827
- displayName: "GitHub Actions",
828
- description: "CI/CD pipelines",
829
- usageGuidance: "Use when configuring CI/CD pipelines, GitHub workflows, or deployment automation.",
830
- category: "shared-ci-cd",
831
- author: "@vince",
832
- conflictsWith: [],
833
- discourages: [],
834
- compatibleWith: [],
835
- requires: [],
836
- alternatives: [],
837
973
  isRecommended: false,
838
- path: "skills/shared-ci-cd-github-actions"
974
+ path: "skills/api-database-vercel-postgres"
839
975
  },
840
976
  "web-files-file-upload-patterns": {
841
977
  id: "web-files-file-upload-patterns",
@@ -974,55 +1110,6 @@ var BUILT_IN_MATRIX = {
974
1110
  isRecommended: false,
975
1111
  path: "skills/api-database-mysql"
976
1112
  },
977
- "api-ai-cohere-sdk": {
978
- id: "api-ai-cohere-sdk",
979
- slug: "cohere-sdk",
980
- displayName: "Cohere SDK",
981
- description: "Official TypeScript SDK for Cohere with chat, embeddings, rerank, and RAG",
982
- usageGuidance: "Use when integrating Cohere AI -- chat completions with Command models, embeddings for semantic search, rerank for relevance scoring, RAG with inline documents and citations, tool use / function calling, and streaming.",
983
- category: "api-ai",
984
- author: "@vince",
985
- conflictsWith: [],
986
- discourages: [],
987
- compatibleWith: [],
988
- requires: [],
989
- alternatives: [
990
- {
991
- skillId: "api-ai-anthropic-sdk",
992
- purpose: "AI Provider SDK"
993
- },
994
- {
995
- skillId: "api-ai-openai-sdk",
996
- purpose: "AI Provider SDK"
997
- },
998
- {
999
- skillId: "api-ai-google-gemini-sdk",
1000
- purpose: "AI Provider SDK"
1001
- },
1002
- {
1003
- skillId: "api-ai-mistral-sdk",
1004
- purpose: "AI Provider SDK"
1005
- },
1006
- {
1007
- skillId: "api-ai-together-ai",
1008
- purpose: "AI Provider SDK"
1009
- },
1010
- {
1011
- skillId: "api-ai-replicate",
1012
- purpose: "AI Provider SDK"
1013
- },
1014
- {
1015
- skillId: "api-ai-huggingface-inference",
1016
- purpose: "AI Provider SDK"
1017
- },
1018
- {
1019
- skillId: "api-ai-ollama",
1020
- purpose: "AI Provider SDK"
1021
- }
1022
- ],
1023
- isRecommended: false,
1024
- path: "skills/api-ai-cohere-sdk"
1025
- },
1026
1113
  "cli-framework-cli-commander": {
1027
1114
  id: "cli-framework-cli-commander",
1028
1115
  slug: "cli-commander",
@@ -1230,13 +1317,26 @@ var BUILT_IN_MATRIX = {
1230
1317
  usageGuidance: "Use when managing atomic state with bottom-up composition.",
1231
1318
  category: "web-client-state",
1232
1319
  author: "@vince",
1233
- conflictsWith: [],
1234
- discourages: [],
1235
- compatibleWith: [
1236
- "web-framework-react",
1237
- "web-meta-framework-nextjs",
1238
- "web-meta-framework-remix"
1239
- ],
1320
+ conflictsWith: [
1321
+ {
1322
+ skillId: "web-state-zustand",
1323
+ reason: "React state management libraries are mutually exclusive"
1324
+ },
1325
+ {
1326
+ skillId: "web-state-redux-toolkit",
1327
+ reason: "React state management libraries are mutually exclusive"
1328
+ },
1329
+ {
1330
+ skillId: "web-state-mobx",
1331
+ reason: "React state management libraries are mutually exclusive"
1332
+ }
1333
+ ],
1334
+ discourages: [],
1335
+ compatibleWith: [
1336
+ "web-framework-react",
1337
+ "web-meta-framework-nextjs",
1338
+ "web-meta-framework-remix"
1339
+ ],
1240
1340
  requires: [],
1241
1341
  alternatives: [
1242
1342
  {
@@ -1255,13 +1355,13 @@ var BUILT_IN_MATRIX = {
1255
1355
  isRecommended: false,
1256
1356
  path: "skills/web-state-jotai"
1257
1357
  },
1258
- "api-ai-huggingface-inference": {
1259
- id: "api-ai-huggingface-inference",
1260
- slug: "huggingface-inference",
1261
- displayName: "Hugging Face Inference",
1262
- description: "Access 200k+ models via Hugging Face Inference API and Inference Endpoints",
1263
- usageGuidance: "Use when accessing ML models via Hugging Face \u2014 text generation, chat completion, embeddings, image generation, audio transcription, translation, summarization, and custom Inference Endpoints for dedicated deployments.",
1264
- category: "api-ai",
1358
+ "ai-infrastructure-litellm": {
1359
+ id: "ai-infrastructure-litellm",
1360
+ slug: "litellm",
1361
+ displayName: "LiteLLM",
1362
+ description: "Unified LLM proxy supporting 100+ providers with OpenAI-compatible API",
1363
+ usageGuidance: "Use when routing LLM requests through LiteLLM proxy \u2014 unified OpenAI-compatible API across providers, model fallbacks, load balancing, spend tracking, and rate limiting. Covers proxy server config.yaml setup, TypeScript client via OpenAI SDK, virtual keys, and production deployment.",
1364
+ category: "ai-infrastructure",
1265
1365
  author: "@vince",
1266
1366
  conflictsWith: [],
1267
1367
  discourages: [],
@@ -1269,40 +1369,44 @@ var BUILT_IN_MATRIX = {
1269
1369
  requires: [],
1270
1370
  alternatives: [
1271
1371
  {
1272
- skillId: "api-ai-anthropic-sdk",
1372
+ skillId: "ai-provider-anthropic-sdk",
1373
+ purpose: "AI Provider SDK"
1374
+ },
1375
+ {
1376
+ skillId: "ai-provider-openai-sdk",
1273
1377
  purpose: "AI Provider SDK"
1274
1378
  },
1275
1379
  {
1276
- skillId: "api-ai-openai-sdk",
1380
+ skillId: "ai-provider-google-gemini-sdk",
1277
1381
  purpose: "AI Provider SDK"
1278
1382
  },
1279
1383
  {
1280
- skillId: "api-ai-google-gemini-sdk",
1384
+ skillId: "ai-provider-mistral-sdk",
1281
1385
  purpose: "AI Provider SDK"
1282
1386
  },
1283
1387
  {
1284
- skillId: "api-ai-mistral-sdk",
1388
+ skillId: "ai-provider-cohere-sdk",
1285
1389
  purpose: "AI Provider SDK"
1286
1390
  },
1287
1391
  {
1288
- skillId: "api-ai-cohere-sdk",
1392
+ skillId: "ai-infrastructure-together-ai",
1289
1393
  purpose: "AI Provider SDK"
1290
1394
  },
1291
1395
  {
1292
- skillId: "api-ai-together-ai",
1396
+ skillId: "ai-infrastructure-replicate",
1293
1397
  purpose: "AI Provider SDK"
1294
1398
  },
1295
1399
  {
1296
- skillId: "api-ai-replicate",
1400
+ skillId: "ai-infrastructure-huggingface-inference",
1297
1401
  purpose: "AI Provider SDK"
1298
1402
  },
1299
1403
  {
1300
- skillId: "api-ai-ollama",
1404
+ skillId: "ai-infrastructure-ollama",
1301
1405
  purpose: "AI Provider SDK"
1302
1406
  }
1303
1407
  ],
1304
1408
  isRecommended: false,
1305
- path: "skills/api-ai-huggingface-inference"
1409
+ path: "skills/ai-infrastructure-litellm"
1306
1410
  },
1307
1411
  "api-cms-sanity": {
1308
1412
  id: "api-cms-sanity",
@@ -1354,71 +1458,6 @@ var BUILT_IN_MATRIX = {
1354
1458
  isRecommended: false,
1355
1459
  path: "skills/api-observability-setup-axiom-pino-sentry"
1356
1460
  },
1357
- "api-ai-mistral-sdk": {
1358
- id: "api-ai-mistral-sdk",
1359
- slug: "mistral-sdk",
1360
- displayName: "Mistral SDK",
1361
- description: "Official TypeScript SDK for Mistral AI with chat, embeddings, function calling, and code generation",
1362
- usageGuidance: "Use when integrating Mistral AI models \u2014 chat completions, streaming, function calling, embeddings, JSON mode, structured outputs with Zod, vision with Pixtral, and Codestral for code generation / FIM.",
1363
- category: "api-ai",
1364
- author: "@vince",
1365
- conflictsWith: [],
1366
- discourages: [],
1367
- compatibleWith: [],
1368
- requires: [],
1369
- alternatives: [
1370
- {
1371
- skillId: "api-ai-anthropic-sdk",
1372
- purpose: "AI Provider SDK"
1373
- },
1374
- {
1375
- skillId: "api-ai-openai-sdk",
1376
- purpose: "AI Provider SDK"
1377
- },
1378
- {
1379
- skillId: "api-ai-google-gemini-sdk",
1380
- purpose: "AI Provider SDK"
1381
- },
1382
- {
1383
- skillId: "api-ai-cohere-sdk",
1384
- purpose: "AI Provider SDK"
1385
- },
1386
- {
1387
- skillId: "api-ai-together-ai",
1388
- purpose: "AI Provider SDK"
1389
- },
1390
- {
1391
- skillId: "api-ai-replicate",
1392
- purpose: "AI Provider SDK"
1393
- },
1394
- {
1395
- skillId: "api-ai-huggingface-inference",
1396
- purpose: "AI Provider SDK"
1397
- },
1398
- {
1399
- skillId: "api-ai-ollama",
1400
- purpose: "AI Provider SDK"
1401
- }
1402
- ],
1403
- isRecommended: false,
1404
- path: "skills/api-ai-mistral-sdk"
1405
- },
1406
- "shared-meta-research-methodology": {
1407
- id: "shared-meta-research-methodology",
1408
- slug: "research-methodology",
1409
- displayName: "Research",
1410
- description: "Codebase investigation",
1411
- usageGuidance: "Use when investigating codebase patterns, researching implementations, or discovering how things work.",
1412
- category: "shared-meta",
1413
- author: "@vince",
1414
- conflictsWith: [],
1415
- discourages: [],
1416
- compatibleWith: [],
1417
- requires: [],
1418
- alternatives: [],
1419
- isRecommended: false,
1420
- path: "skills/shared-meta-research-methodology"
1421
- },
1422
1461
  "web-realtime-websockets": {
1423
1462
  id: "web-realtime-websockets",
1424
1463
  slug: "websockets",
@@ -1499,33 +1538,20 @@ var BUILT_IN_MATRIX = {
1499
1538
  category: "web-client-state",
1500
1539
  author: "@vince",
1501
1540
  conflictsWith: [
1502
- {
1503
- skillId: "web-state-pinia",
1504
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
1505
- },
1506
1541
  {
1507
1542
  skillId: "web-state-zustand",
1508
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
1543
+ reason: "React state management libraries are mutually exclusive"
1509
1544
  },
1510
1545
  {
1511
1546
  skillId: "web-state-mobx",
1512
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
1513
- },
1514
- {
1515
- skillId: "web-state-ngrx-signalstore",
1516
- reason: "NgRx SignalStore is Angular-only"
1517
- }
1518
- ],
1519
- discourages: [
1520
- {
1521
- skillId: "web-state-zustand",
1522
- reason: "Using multiple React state libraries adds complexity"
1547
+ reason: "React state management libraries are mutually exclusive"
1523
1548
  },
1524
1549
  {
1525
- skillId: "web-state-mobx",
1526
- reason: "Using multiple React state libraries adds complexity"
1550
+ skillId: "web-state-jotai",
1551
+ reason: "React state management libraries are mutually exclusive"
1527
1552
  }
1528
1553
  ],
1554
+ discourages: [],
1529
1555
  compatibleWith: [
1530
1556
  "web-framework-react",
1531
1557
  "web-meta-framework-nextjs",
@@ -1582,7 +1608,7 @@ var BUILT_IN_MATRIX = {
1582
1608
  purpose: "Managed Database"
1583
1609
  },
1584
1610
  {
1585
- skillId: "api-baas-vercel-postgres",
1611
+ skillId: "api-database-vercel-postgres",
1586
1612
  purpose: "Managed Database"
1587
1613
  }
1588
1614
  ],
@@ -1597,24 +1623,7 @@ var BUILT_IN_MATRIX = {
1597
1623
  usageGuidance: "Use when managing state in Vue apps with Options or Setup stores.",
1598
1624
  category: "web-client-state",
1599
1625
  author: "@vince",
1600
- conflictsWith: [
1601
- {
1602
- skillId: "web-state-zustand",
1603
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
1604
- },
1605
- {
1606
- skillId: "web-state-redux-toolkit",
1607
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
1608
- },
1609
- {
1610
- skillId: "web-state-mobx",
1611
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
1612
- },
1613
- {
1614
- skillId: "web-state-ngrx-signalstore",
1615
- reason: "NgRx SignalStore is Angular-only"
1616
- }
1617
- ],
1626
+ conflictsWith: [],
1618
1627
  discourages: [],
1619
1628
  compatibleWith: ["web-framework-vue-composition-api", "web-meta-framework-nuxt"],
1620
1629
  requires: [
@@ -1629,71 +1638,6 @@ var BUILT_IN_MATRIX = {
1629
1638
  recommendedReason: "Vue community standard state management",
1630
1639
  path: "skills/web-state-pinia"
1631
1640
  },
1632
- "api-ai-promptfoo": {
1633
- id: "api-ai-promptfoo",
1634
- slug: "promptfoo",
1635
- displayName: "Promptfoo",
1636
- description: "Testing and evaluation framework for LLM prompts and applications",
1637
- usageGuidance: "Use when testing LLM prompts and applications \u2014 promptfooconfig.yaml for test definitions, assertion types, model-graded evals, red teaming, CI integration, and comparative evaluation across providers.",
1638
- category: "api-ai",
1639
- author: "@vince",
1640
- conflictsWith: [],
1641
- discourages: [],
1642
- compatibleWith: [],
1643
- requires: [],
1644
- alternatives: [],
1645
- isRecommended: false,
1646
- path: "skills/api-ai-promptfoo"
1647
- },
1648
- "api-ai-ollama": {
1649
- id: "api-ai-ollama",
1650
- slug: "ollama",
1651
- displayName: "Ollama",
1652
- description: "Local LLM inference with the Ollama JavaScript client",
1653
- usageGuidance: "Use when running LLMs locally with Ollama \u2014 chat completions, streaming, tool calling, vision, embeddings, model management, structured output with JSON schemas, and the OpenAI-compatible endpoint.",
1654
- category: "api-ai",
1655
- author: "@vince",
1656
- conflictsWith: [],
1657
- discourages: [],
1658
- compatibleWith: [],
1659
- requires: [],
1660
- alternatives: [
1661
- {
1662
- skillId: "api-ai-anthropic-sdk",
1663
- purpose: "AI Provider SDK"
1664
- },
1665
- {
1666
- skillId: "api-ai-openai-sdk",
1667
- purpose: "AI Provider SDK"
1668
- },
1669
- {
1670
- skillId: "api-ai-google-gemini-sdk",
1671
- purpose: "AI Provider SDK"
1672
- },
1673
- {
1674
- skillId: "api-ai-mistral-sdk",
1675
- purpose: "AI Provider SDK"
1676
- },
1677
- {
1678
- skillId: "api-ai-cohere-sdk",
1679
- purpose: "AI Provider SDK"
1680
- },
1681
- {
1682
- skillId: "api-ai-together-ai",
1683
- purpose: "AI Provider SDK"
1684
- },
1685
- {
1686
- skillId: "api-ai-replicate",
1687
- purpose: "AI Provider SDK"
1688
- },
1689
- {
1690
- skillId: "api-ai-huggingface-inference",
1691
- purpose: "AI Provider SDK"
1692
- }
1693
- ],
1694
- isRecommended: false,
1695
- path: "skills/api-ai-ollama"
1696
- },
1697
1641
  "api-auth-clerk": {
1698
1642
  id: "api-auth-clerk",
1699
1643
  slug: "clerk",
@@ -1745,12 +1689,7 @@ var BUILT_IN_MATRIX = {
1745
1689
  reason: "API frameworks are mutually exclusive within a single service"
1746
1690
  }
1747
1691
  ],
1748
- discourages: [
1749
- {
1750
- skillId: "api-framework-express",
1751
- reason: "Express is mature but Elysia is faster on Bun with end-to-end type safety"
1752
- }
1753
- ],
1692
+ discourages: [],
1754
1693
  compatibleWith: [],
1755
1694
  requires: [],
1756
1695
  alternatives: [
@@ -1816,22 +1755,6 @@ var BUILT_IN_MATRIX = {
1816
1755
  isRecommended: false,
1817
1756
  path: "skills/api-search-meilisearch"
1818
1757
  },
1819
- "shared-meta-cli-reviewing": {
1820
- id: "shared-meta-cli-reviewing",
1821
- slug: "cli-reviewing",
1822
- displayName: "CLI Reviewing",
1823
- description: "CLI code review patterns for Commander.js and @clack/prompts",
1824
- usageGuidance: "Use when reviewing CLI applications built with Commander.js, @clack/prompts, or similar tools. Covers exit codes, signal handling, cancellation, error messages, spinners, and testing adequacy.",
1825
- category: "shared-meta",
1826
- author: "@vince",
1827
- conflictsWith: [],
1828
- discourages: [],
1829
- compatibleWith: [],
1830
- requires: [],
1831
- alternatives: [],
1832
- isRecommended: false,
1833
- path: "skills/shared-meta-cli-reviewing"
1834
- },
1835
1758
  "api-search-elasticsearch": {
1836
1759
  id: "api-search-elasticsearch",
1837
1760
  slug: "elasticsearch",
@@ -1874,31 +1797,6 @@ var BUILT_IN_MATRIX = {
1874
1797
  isRecommended: false,
1875
1798
  path: "skills/web-utilities-date-fns"
1876
1799
  },
1877
- "api-baas-upstash": {
1878
- id: "api-baas-upstash",
1879
- slug: "upstash",
1880
- displayName: "Upstash",
1881
- description: "Serverless Redis with REST API for edge and serverless functions",
1882
- usageGuidance: "Use when deploying Redis on Upstash -- REST-based Redis for edge/serverless compatibility, automatic JSON serialization, pipeline support, rate limiting with @upstash/ratelimit, and global replication.",
1883
- category: "api-baas",
1884
- author: "@vince",
1885
- conflictsWith: [],
1886
- discourages: [],
1887
- compatibleWith: [],
1888
- requires: [],
1889
- alternatives: [
1890
- {
1891
- skillId: "api-database-redis",
1892
- purpose: "Cache / KV Store"
1893
- },
1894
- {
1895
- skillId: "api-baas-vercel-kv",
1896
- purpose: "Cache / KV Store"
1897
- }
1898
- ],
1899
- isRecommended: false,
1900
- path: "skills/api-baas-upstash"
1901
- },
1902
1800
  "web-tooling-storybook": {
1903
1801
  id: "web-tooling-storybook",
1904
1802
  slug: "storybook",
@@ -1924,13 +1822,35 @@ var BUILT_IN_MATRIX = {
1924
1822
  isRecommended: false,
1925
1823
  path: "skills/web-tooling-storybook"
1926
1824
  },
1927
- "api-ai-tool-use-patterns": {
1928
- id: "api-ai-tool-use-patterns",
1929
- slug: "tool-use-patterns",
1930
- displayName: "Tool Use Patterns",
1931
- description: "Provider-agnostic patterns for LLM function calling",
1932
- usageGuidance: "Use when implementing LLM tool use -- tool definition schemas, the tool call loop pattern, parallel tool calls, error reporting back to the model, multi-step agent workflows, human-in-the-loop patterns, and tool choice control. Provider-agnostic -- shows generic TypeScript patterns, not provider-specific SDK code.",
1933
- category: "api-ai",
1825
+ "ai-provider-claude-vision": {
1826
+ id: "ai-provider-claude-vision",
1827
+ slug: "claude-vision",
1828
+ displayName: "Claude Vision",
1829
+ description: "Image understanding and document analysis with Claude's multimodal capabilities",
1830
+ usageGuidance: "Use when processing images and documents with Claude \u2014 image analysis, document extraction, chart interpretation, multi-image comparison, and PDF processing with the Anthropic API.",
1831
+ category: "ai-provider",
1832
+ author: "@vince",
1833
+ conflictsWith: [],
1834
+ discourages: [],
1835
+ compatibleWith: [],
1836
+ requires: [
1837
+ {
1838
+ skillIds: ["ai-provider-anthropic-sdk"],
1839
+ needsAny: false,
1840
+ reason: "Claude Vision uses the Anthropic SDK"
1841
+ }
1842
+ ],
1843
+ alternatives: [],
1844
+ isRecommended: false,
1845
+ path: "skills/ai-provider-claude-vision"
1846
+ },
1847
+ "meta-reviewing-cli-reviewing": {
1848
+ id: "meta-reviewing-cli-reviewing",
1849
+ slug: "cli-reviewing",
1850
+ displayName: "CLI Reviewing",
1851
+ description: "CLI code review patterns for Commander.js and @clack/prompts",
1852
+ usageGuidance: "Use when reviewing CLI applications built with Commander.js, @clack/prompts, or similar tools. Covers exit codes, signal handling, cancellation, error messages, spinners, and testing adequacy.",
1853
+ category: "meta-reviewing",
1934
1854
  author: "@vince",
1935
1855
  conflictsWith: [],
1936
1856
  discourages: [],
@@ -1938,7 +1858,7 @@ var BUILT_IN_MATRIX = {
1938
1858
  requires: [],
1939
1859
  alternatives: [],
1940
1860
  isRecommended: false,
1941
- path: "skills/api-ai-tool-use-patterns"
1861
+ path: "skills/meta-reviewing-cli-reviewing"
1942
1862
  },
1943
1863
  "api-baas-planetscale": {
1944
1864
  id: "api-baas-planetscale",
@@ -1962,13 +1882,38 @@ var BUILT_IN_MATRIX = {
1962
1882
  purpose: "Managed Database"
1963
1883
  },
1964
1884
  {
1965
- skillId: "api-baas-vercel-postgres",
1885
+ skillId: "api-database-vercel-postgres",
1966
1886
  purpose: "Managed Database"
1967
1887
  }
1968
1888
  ],
1969
1889
  isRecommended: false,
1970
1890
  path: "skills/api-baas-planetscale"
1971
1891
  },
1892
+ "api-database-upstash": {
1893
+ id: "api-database-upstash",
1894
+ slug: "upstash",
1895
+ displayName: "Upstash",
1896
+ description: "Serverless Redis with REST API for edge and serverless functions",
1897
+ usageGuidance: "Use when deploying Redis on Upstash -- REST-based Redis for edge/serverless compatibility, automatic JSON serialization, pipeline support, rate limiting with @upstash/ratelimit, and global replication.",
1898
+ category: "api-database",
1899
+ author: "@vince",
1900
+ conflictsWith: [],
1901
+ discourages: [],
1902
+ compatibleWith: [],
1903
+ requires: [],
1904
+ alternatives: [
1905
+ {
1906
+ skillId: "api-database-redis",
1907
+ purpose: "Cache / KV Store"
1908
+ },
1909
+ {
1910
+ skillId: "api-database-vercel-kv",
1911
+ purpose: "Cache / KV Store"
1912
+ }
1913
+ ],
1914
+ isRecommended: false,
1915
+ path: "skills/api-database-upstash"
1916
+ },
1972
1917
  "web-ui-shadcn-ui": {
1973
1918
  id: "web-ui-shadcn-ui",
1974
1919
  slug: "shadcn-ui",
@@ -2064,29 +2009,67 @@ var BUILT_IN_MATRIX = {
2064
2009
  isRecommended: false,
2065
2010
  path: "skills/api-auth-nextauth"
2066
2011
  },
2067
- "mobile-framework-react-native": {
2068
- id: "mobile-framework-react-native",
2069
- slug: "react-native",
2070
- displayName: "React Native",
2071
- description: "React Native mobile apps",
2072
- usageGuidance: "Use when building cross-platform mobile apps, working with native modules, or React Navigation.",
2073
- category: "mobile-framework",
2012
+ "ai-provider-openai-whisper": {
2013
+ id: "ai-provider-openai-whisper",
2014
+ slug: "openai-whisper",
2015
+ displayName: "OpenAI Whisper",
2016
+ description: "Speech-to-text transcription and translation via OpenAI Audio API",
2017
+ usageGuidance: "Use when transcribing or translating audio with OpenAI Whisper -- file transcription, real-time transcription, translation to English, timestamp generation, and custom vocabulary prompting.",
2018
+ category: "ai-provider",
2074
2019
  author: "@vince",
2075
2020
  conflictsWith: [],
2076
2021
  discourages: [],
2077
- compatibleWith: ["mobile-framework-expo", "web-framework-react"],
2022
+ compatibleWith: [],
2078
2023
  requires: [
2079
2024
  {
2080
- skillIds: ["web-framework-react"],
2025
+ skillIds: ["ai-provider-openai-sdk"],
2081
2026
  needsAny: false,
2082
- reason: "React Native is built on React"
2027
+ reason: "Whisper API uses the OpenAI SDK"
2083
2028
  }
2084
2029
  ],
2085
- alternatives: [
2086
- {
2087
- skillId: "mobile-framework-expo",
2088
- purpose: "Mobile"
2089
- }
2030
+ alternatives: [],
2031
+ isRecommended: false,
2032
+ path: "skills/ai-provider-openai-whisper"
2033
+ },
2034
+ "ai-observability-promptfoo": {
2035
+ id: "ai-observability-promptfoo",
2036
+ slug: "promptfoo",
2037
+ displayName: "Promptfoo",
2038
+ description: "Testing and evaluation framework for LLM prompts and applications",
2039
+ usageGuidance: "Use when testing LLM prompts and applications \u2014 promptfooconfig.yaml for test definitions, assertion types, model-graded evals, red teaming, CI integration, and comparative evaluation across providers.",
2040
+ category: "ai-observability",
2041
+ author: "@vince",
2042
+ conflictsWith: [],
2043
+ discourages: [],
2044
+ compatibleWith: [],
2045
+ requires: [],
2046
+ alternatives: [],
2047
+ isRecommended: false,
2048
+ path: "skills/ai-observability-promptfoo"
2049
+ },
2050
+ "mobile-framework-react-native": {
2051
+ id: "mobile-framework-react-native",
2052
+ slug: "react-native",
2053
+ displayName: "React Native",
2054
+ description: "React Native mobile apps",
2055
+ usageGuidance: "Use when building cross-platform mobile apps, working with native modules, or React Navigation.",
2056
+ category: "mobile-framework",
2057
+ author: "@vince",
2058
+ conflictsWith: [],
2059
+ discourages: [],
2060
+ compatibleWith: ["mobile-framework-expo", "web-framework-react"],
2061
+ requires: [
2062
+ {
2063
+ skillIds: ["web-framework-react"],
2064
+ needsAny: false,
2065
+ reason: "React Native is built on React"
2066
+ }
2067
+ ],
2068
+ alternatives: [
2069
+ {
2070
+ skillId: "mobile-framework-expo",
2071
+ purpose: "Mobile"
2072
+ }
2090
2073
  ],
2091
2074
  isRecommended: false,
2092
2075
  path: "skills/mobile-framework-react-native"
@@ -2184,6 +2167,31 @@ var BUILT_IN_MATRIX = {
2184
2167
  isRecommended: false,
2185
2168
  path: "skills/web-framework-vue-composition-api"
2186
2169
  },
2170
+ "ai-orchestration-langchain": {
2171
+ id: "ai-orchestration-langchain",
2172
+ slug: "langchain",
2173
+ displayName: "LangChain",
2174
+ description: "LLM application framework with chains, agents, RAG, and memory",
2175
+ usageGuidance: "Use when building LLM-powered applications with LangChain.js \u2014 chat models, prompt templates, output parsers, chains (LCEL), agents with tools, RAG pipelines, vector stores, and memory.",
2176
+ category: "ai-orchestration",
2177
+ author: "@vince",
2178
+ conflictsWith: [],
2179
+ discourages: [],
2180
+ compatibleWith: [],
2181
+ requires: [],
2182
+ alternatives: [
2183
+ {
2184
+ skillId: "ai-orchestration-vercel-ai-sdk",
2185
+ purpose: "AI SDK"
2186
+ },
2187
+ {
2188
+ skillId: "ai-orchestration-llamaindex",
2189
+ purpose: "AI SDK"
2190
+ }
2191
+ ],
2192
+ isRecommended: false,
2193
+ path: "skills/ai-orchestration-langchain"
2194
+ },
2187
2195
  "api-vector-db-chroma": {
2188
2196
  id: "api-vector-db-chroma",
2189
2197
  slug: "chroma",
@@ -2234,12 +2242,7 @@ var BUILT_IN_MATRIX = {
2234
2242
  usageGuidance: "Use when building forms in Vue with useForm, useField, or schema validation.",
2235
2243
  category: "web-forms",
2236
2244
  author: "@vince",
2237
- conflictsWith: [
2238
- {
2239
- skillId: "web-forms-react-hook-form",
2240
- reason: "react-hook-form is React-only, vee-validate is Vue-only"
2241
- }
2242
- ],
2245
+ conflictsWith: [],
2243
2246
  discourages: [],
2244
2247
  compatibleWith: ["web-framework-vue-composition-api", "web-meta-framework-nuxt"],
2245
2248
  requires: [
@@ -2262,12 +2265,7 @@ var BUILT_IN_MATRIX = {
2262
2265
  usageGuidance: "Use when testing Vue components with mount, shallowMount, or testing composables.",
2263
2266
  category: "web-testing",
2264
2267
  author: "@vince",
2265
- conflictsWith: [
2266
- {
2267
- skillId: "web-testing-react-testing-library",
2268
- reason: "Framework-specific testing libraries"
2269
- }
2270
- ],
2268
+ conflictsWith: [],
2271
2269
  discourages: [],
2272
2270
  compatibleWith: ["web-framework-vue-composition-api", "web-meta-framework-nuxt"],
2273
2271
  requires: [
@@ -2355,33 +2353,20 @@ var BUILT_IN_MATRIX = {
2355
2353
  category: "web-client-state",
2356
2354
  author: "@vince",
2357
2355
  conflictsWith: [
2358
- {
2359
- skillId: "web-state-pinia",
2360
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
2361
- },
2362
2356
  {
2363
2357
  skillId: "web-state-redux-toolkit",
2364
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
2358
+ reason: "React state management libraries are mutually exclusive"
2365
2359
  },
2366
2360
  {
2367
2361
  skillId: "web-state-mobx",
2368
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
2369
- },
2370
- {
2371
- skillId: "web-state-ngrx-signalstore",
2372
- reason: "NgRx SignalStore is Angular-only"
2373
- }
2374
- ],
2375
- discourages: [
2376
- {
2377
- skillId: "web-state-redux-toolkit",
2378
- reason: "Using multiple React state libraries adds complexity"
2362
+ reason: "React state management libraries are mutually exclusive"
2379
2363
  },
2380
2364
  {
2381
- skillId: "web-state-mobx",
2382
- reason: "Using multiple React state libraries adds complexity"
2365
+ skillId: "web-state-jotai",
2366
+ reason: "React state management libraries are mutually exclusive"
2383
2367
  }
2384
2368
  ],
2369
+ discourages: [],
2385
2370
  compatibleWith: [
2386
2371
  "web-framework-react",
2387
2372
  "web-meta-framework-nextjs",
@@ -2446,24 +2431,7 @@ var BUILT_IN_MATRIX = {
2446
2431
  usageGuidance: "Use when managing Angular state with Signals and SignalStore.",
2447
2432
  category: "web-client-state",
2448
2433
  author: "@vince",
2449
- conflictsWith: [
2450
- {
2451
- skillId: "web-state-zustand",
2452
- reason: "NgRx SignalStore is Angular-only"
2453
- },
2454
- {
2455
- skillId: "web-state-pinia",
2456
- reason: "NgRx SignalStore is Angular-only"
2457
- },
2458
- {
2459
- skillId: "web-state-redux-toolkit",
2460
- reason: "NgRx SignalStore is Angular-only"
2461
- },
2462
- {
2463
- skillId: "web-state-mobx",
2464
- reason: "NgRx SignalStore is Angular-only"
2465
- }
2466
- ],
2434
+ conflictsWith: [],
2467
2435
  discourages: [],
2468
2436
  compatibleWith: ["web-framework-angular-standalone"],
2469
2437
  requires: [
@@ -2478,21 +2446,30 @@ var BUILT_IN_MATRIX = {
2478
2446
  recommendedReason: "Angular Signals-based state management",
2479
2447
  path: "skills/web-state-ngrx-signalstore"
2480
2448
  },
2481
- "shared-ci-cd-cloudflare-workers": {
2482
- id: "shared-ci-cd-cloudflare-workers",
2483
- slug: "cloudflare-workers",
2484
- displayName: "Cloudflare Workers",
2485
- description: "Cloudflare Workers edge compute platform",
2486
- usageGuidance: "Use when deploying to Cloudflare Workers \u2014 Wrangler CLI, KV storage, D1 databases, R2 object storage, Durable Objects, Queues, and edge-first TypeScript patterns.",
2487
- category: "shared-ci-cd",
2449
+ "ai-orchestration-llamaindex": {
2450
+ id: "ai-orchestration-llamaindex",
2451
+ slug: "llamaindex",
2452
+ displayName: "LlamaIndex",
2453
+ description: "Data framework for LLM applications with indexing, retrieval, and query engines",
2454
+ usageGuidance: "Use when building RAG and data-aware LLM applications \u2014 document loading, text chunking, vector indexing, query engines, chat engines, and agentic RAG with LlamaIndex.TS.",
2455
+ category: "ai-orchestration",
2488
2456
  author: "@vince",
2489
2457
  conflictsWith: [],
2490
2458
  discourages: [],
2491
2459
  compatibleWith: [],
2492
2460
  requires: [],
2493
- alternatives: [],
2461
+ alternatives: [
2462
+ {
2463
+ skillId: "ai-orchestration-vercel-ai-sdk",
2464
+ purpose: "AI SDK"
2465
+ },
2466
+ {
2467
+ skillId: "ai-orchestration-langchain",
2468
+ purpose: "AI SDK"
2469
+ }
2470
+ ],
2494
2471
  isRecommended: false,
2495
- path: "skills/shared-ci-cd-cloudflare-workers"
2472
+ path: "skills/ai-orchestration-llamaindex"
2496
2473
  },
2497
2474
  "api-flags-posthog-flags": {
2498
2475
  id: "api-flags-posthog-flags",
@@ -2536,6 +2513,59 @@ var BUILT_IN_MATRIX = {
2536
2513
  isRecommended: false,
2537
2514
  path: "skills/shared-tooling-eslint-prettier"
2538
2515
  },
2516
+ "ai-provider-openai-sdk": {
2517
+ id: "ai-provider-openai-sdk",
2518
+ slug: "openai-sdk",
2519
+ displayName: "OpenAI SDK",
2520
+ description: "Official OpenAI SDK for TypeScript/Node.js",
2521
+ usageGuidance: "Use when building applications with OpenAI's API \u2014 GPT models, chat completions, Responses API, embeddings, function calling, structured outputs, vision, audio, streaming, and batch processing.",
2522
+ category: "ai-provider",
2523
+ author: "@vince",
2524
+ conflictsWith: [],
2525
+ discourages: [],
2526
+ compatibleWith: [],
2527
+ requires: [],
2528
+ alternatives: [
2529
+ {
2530
+ skillId: "ai-provider-anthropic-sdk",
2531
+ purpose: "AI Provider SDK"
2532
+ },
2533
+ {
2534
+ skillId: "ai-provider-google-gemini-sdk",
2535
+ purpose: "AI Provider SDK"
2536
+ },
2537
+ {
2538
+ skillId: "ai-provider-mistral-sdk",
2539
+ purpose: "AI Provider SDK"
2540
+ },
2541
+ {
2542
+ skillId: "ai-provider-cohere-sdk",
2543
+ purpose: "AI Provider SDK"
2544
+ },
2545
+ {
2546
+ skillId: "ai-infrastructure-together-ai",
2547
+ purpose: "AI Provider SDK"
2548
+ },
2549
+ {
2550
+ skillId: "ai-infrastructure-replicate",
2551
+ purpose: "AI Provider SDK"
2552
+ },
2553
+ {
2554
+ skillId: "ai-infrastructure-huggingface-inference",
2555
+ purpose: "AI Provider SDK"
2556
+ },
2557
+ {
2558
+ skillId: "ai-infrastructure-ollama",
2559
+ purpose: "AI Provider SDK"
2560
+ },
2561
+ {
2562
+ skillId: "ai-infrastructure-litellm",
2563
+ purpose: "AI Provider SDK"
2564
+ }
2565
+ ],
2566
+ isRecommended: false,
2567
+ path: "skills/ai-provider-openai-sdk"
2568
+ },
2539
2569
  "web-animation-framer-motion": {
2540
2570
  id: "web-animation-framer-motion",
2541
2571
  slug: "framer-motion",
@@ -2565,13 +2595,146 @@ var BUILT_IN_MATRIX = {
2565
2595
  isRecommended: false,
2566
2596
  path: "skills/web-animation-framer-motion"
2567
2597
  },
2568
- "shared-ci-cd-docker": {
2569
- id: "shared-ci-cd-docker",
2570
- slug: "docker",
2571
- displayName: "Docker",
2572
- description: "Docker containerization for development and deployment",
2573
- usageGuidance: "Use when creating Dockerfiles, docker-compose configs, multi-stage builds, or containerized development environments for Node.js/TypeScript applications.",
2574
- category: "shared-ci-cd",
2598
+ "ai-orchestration-vercel-ai-sdk": {
2599
+ id: "ai-orchestration-vercel-ai-sdk",
2600
+ slug: "vercel-ai-sdk",
2601
+ displayName: "Vercel AI SDK",
2602
+ description: "Vercel AI SDK for streaming AI applications",
2603
+ usageGuidance: "Use when building AI-powered features with streaming, chat UIs, or multi-provider AI integrations. Covers generateText, streamText, structured output with Zod, tool calling, useChat/useCompletion hooks, embeddings, and RAG patterns.",
2604
+ category: "ai-orchestration",
2605
+ author: "@vince",
2606
+ conflictsWith: [],
2607
+ discourages: [],
2608
+ compatibleWith: [],
2609
+ requires: [],
2610
+ alternatives: [
2611
+ {
2612
+ skillId: "ai-orchestration-langchain",
2613
+ purpose: "AI SDK"
2614
+ },
2615
+ {
2616
+ skillId: "ai-orchestration-llamaindex",
2617
+ purpose: "AI SDK"
2618
+ }
2619
+ ],
2620
+ isRecommended: true,
2621
+ recommendedReason: "Provider-agnostic AI integration with streaming",
2622
+ path: "skills/ai-orchestration-vercel-ai-sdk"
2623
+ },
2624
+ "ai-provider-anthropic-sdk": {
2625
+ id: "ai-provider-anthropic-sdk",
2626
+ slug: "anthropic-sdk",
2627
+ displayName: "Anthropic SDK",
2628
+ description: "Official TypeScript SDK for Claude API with messages, streaming, tool use, and vision",
2629
+ usageGuidance: "Use when integrating Claude via the Anthropic API \u2014 messages API, streaming responses, tool use (function calling), vision (image input), extended thinking, batch API, and prompt caching.",
2630
+ category: "ai-provider",
2631
+ author: "@vince",
2632
+ conflictsWith: [],
2633
+ discourages: [],
2634
+ compatibleWith: [],
2635
+ requires: [],
2636
+ alternatives: [
2637
+ {
2638
+ skillId: "ai-provider-openai-sdk",
2639
+ purpose: "AI Provider SDK"
2640
+ },
2641
+ {
2642
+ skillId: "ai-provider-google-gemini-sdk",
2643
+ purpose: "AI Provider SDK"
2644
+ },
2645
+ {
2646
+ skillId: "ai-provider-mistral-sdk",
2647
+ purpose: "AI Provider SDK"
2648
+ },
2649
+ {
2650
+ skillId: "ai-provider-cohere-sdk",
2651
+ purpose: "AI Provider SDK"
2652
+ },
2653
+ {
2654
+ skillId: "ai-infrastructure-together-ai",
2655
+ purpose: "AI Provider SDK"
2656
+ },
2657
+ {
2658
+ skillId: "ai-infrastructure-replicate",
2659
+ purpose: "AI Provider SDK"
2660
+ },
2661
+ {
2662
+ skillId: "ai-infrastructure-huggingface-inference",
2663
+ purpose: "AI Provider SDK"
2664
+ },
2665
+ {
2666
+ skillId: "ai-infrastructure-ollama",
2667
+ purpose: "AI Provider SDK"
2668
+ },
2669
+ {
2670
+ skillId: "ai-infrastructure-litellm",
2671
+ purpose: "AI Provider SDK"
2672
+ }
2673
+ ],
2674
+ isRecommended: true,
2675
+ recommendedReason: "Direct Claude API access with tool use and vision",
2676
+ path: "skills/ai-provider-anthropic-sdk"
2677
+ },
2678
+ "ai-provider-mistral-sdk": {
2679
+ id: "ai-provider-mistral-sdk",
2680
+ slug: "mistral-sdk",
2681
+ displayName: "Mistral SDK",
2682
+ description: "Official TypeScript SDK for Mistral AI with chat, embeddings, function calling, and code generation",
2683
+ usageGuidance: "Use when integrating Mistral AI models \u2014 chat completions, streaming, function calling, embeddings, JSON mode, structured outputs with Zod, vision with Pixtral, and Codestral for code generation / FIM.",
2684
+ category: "ai-provider",
2685
+ author: "@vince",
2686
+ conflictsWith: [],
2687
+ discourages: [],
2688
+ compatibleWith: [],
2689
+ requires: [],
2690
+ alternatives: [
2691
+ {
2692
+ skillId: "ai-provider-anthropic-sdk",
2693
+ purpose: "AI Provider SDK"
2694
+ },
2695
+ {
2696
+ skillId: "ai-provider-openai-sdk",
2697
+ purpose: "AI Provider SDK"
2698
+ },
2699
+ {
2700
+ skillId: "ai-provider-google-gemini-sdk",
2701
+ purpose: "AI Provider SDK"
2702
+ },
2703
+ {
2704
+ skillId: "ai-provider-cohere-sdk",
2705
+ purpose: "AI Provider SDK"
2706
+ },
2707
+ {
2708
+ skillId: "ai-infrastructure-together-ai",
2709
+ purpose: "AI Provider SDK"
2710
+ },
2711
+ {
2712
+ skillId: "ai-infrastructure-replicate",
2713
+ purpose: "AI Provider SDK"
2714
+ },
2715
+ {
2716
+ skillId: "ai-infrastructure-huggingface-inference",
2717
+ purpose: "AI Provider SDK"
2718
+ },
2719
+ {
2720
+ skillId: "ai-infrastructure-ollama",
2721
+ purpose: "AI Provider SDK"
2722
+ },
2723
+ {
2724
+ skillId: "ai-infrastructure-litellm",
2725
+ purpose: "AI Provider SDK"
2726
+ }
2727
+ ],
2728
+ isRecommended: false,
2729
+ path: "skills/ai-provider-mistral-sdk"
2730
+ },
2731
+ "infra-config-setup-env": {
2732
+ id: "infra-config-setup-env",
2733
+ slug: "setup-env",
2734
+ displayName: "Environment",
2735
+ description: "Environment variable management",
2736
+ usageGuidance: "Use when setting up environment variables, .env files, or Zod validation for config.",
2737
+ category: "infra-config",
2575
2738
  author: "@vince",
2576
2739
  conflictsWith: [],
2577
2740
  discourages: [],
@@ -2579,7 +2742,7 @@ var BUILT_IN_MATRIX = {
2579
2742
  requires: [],
2580
2743
  alternatives: [],
2581
2744
  isRecommended: false,
2582
- path: "skills/shared-ci-cd-docker"
2745
+ path: "skills/infra-config-setup-env"
2583
2746
  },
2584
2747
  "web-testing-playwright-e2e": {
2585
2748
  id: "web-testing-playwright-e2e",
@@ -2595,12 +2758,7 @@ var BUILT_IN_MATRIX = {
2595
2758
  reason: "Both are E2E frameworks"
2596
2759
  }
2597
2760
  ],
2598
- discourages: [
2599
- {
2600
- skillId: "web-testing-cypress-e2e",
2601
- reason: "Cypress excels at interactive debugging; Playwright has better cross-browser support and CI performance"
2602
- }
2603
- ],
2761
+ discourages: [],
2604
2762
  compatibleWith: [],
2605
2763
  requires: [],
2606
2764
  alternatives: [
@@ -2644,7 +2802,13 @@ var BUILT_IN_MATRIX = {
2644
2802
  conflictsWith: [],
2645
2803
  discourages: [],
2646
2804
  compatibleWith: ["web-meta-framework-nextjs"],
2647
- requires: [],
2805
+ requires: [
2806
+ {
2807
+ skillIds: ["web-meta-framework-nextjs"],
2808
+ needsAny: false,
2809
+ reason: "next-intl is built specifically for Next.js"
2810
+ }
2811
+ ],
2648
2812
  alternatives: [],
2649
2813
  isRecommended: false,
2650
2814
  path: "skills/web-i18n-next-intl"
@@ -2723,6 +2887,10 @@ var BUILT_IN_MATRIX = {
2723
2887
  skillId: "web-meta-framework-remix",
2724
2888
  reason: "Meta-frameworks are mutually exclusive"
2725
2889
  },
2890
+ {
2891
+ skillId: "web-meta-framework-nuxt",
2892
+ reason: "Meta-frameworks are mutually exclusive"
2893
+ },
2726
2894
  {
2727
2895
  skillId: "web-meta-framework-sveltekit",
2728
2896
  reason: "Meta-frameworks are mutually exclusive"
@@ -2782,29 +2950,13 @@ var BUILT_IN_MATRIX = {
2782
2950
  purpose: "Managed Database"
2783
2951
  },
2784
2952
  {
2785
- skillId: "api-baas-vercel-postgres",
2953
+ skillId: "api-database-vercel-postgres",
2786
2954
  purpose: "Managed Database"
2787
2955
  }
2788
2956
  ],
2789
2957
  isRecommended: false,
2790
2958
  path: "skills/api-baas-neon"
2791
2959
  },
2792
- "shared-meta-reviewing": {
2793
- id: "shared-meta-reviewing",
2794
- slug: "reviewing",
2795
- displayName: "Code Review",
2796
- description: "Code review guidance",
2797
- usageGuidance: "Use when reviewing code, PRs, or making approval/rejection decisions.",
2798
- category: "shared-meta",
2799
- author: "@vince",
2800
- conflictsWith: [],
2801
- discourages: [],
2802
- compatibleWith: [],
2803
- requires: [],
2804
- alternatives: [],
2805
- isRecommended: false,
2806
- path: "skills/shared-meta-reviewing"
2807
- },
2808
2960
  "api-database-edgedb": {
2809
2961
  id: "api-database-edgedb",
2810
2962
  slug: "edgedb",
@@ -2879,13 +3031,13 @@ var BUILT_IN_MATRIX = {
2879
3031
  isRecommended: false,
2880
3032
  path: "skills/web-pwa-service-workers"
2881
3033
  },
2882
- "shared-infra-setup-env": {
2883
- id: "shared-infra-setup-env",
2884
- slug: "setup-env",
2885
- displayName: "Environment",
2886
- description: "Environment variable management",
2887
- usageGuidance: "Use when setting up environment variables, .env files, or Zod validation for config.",
2888
- category: "shared-infra",
3034
+ "infra-platform-cloudflare-workers": {
3035
+ id: "infra-platform-cloudflare-workers",
3036
+ slug: "cloudflare-workers",
3037
+ displayName: "Cloudflare Workers",
3038
+ description: "Cloudflare Workers edge compute platform",
3039
+ usageGuidance: "Use when deploying to Cloudflare Workers \u2014 Wrangler CLI, KV storage, D1 databases, R2 object storage, Durable Objects, Queues, and edge-first TypeScript patterns.",
3040
+ category: "infra-platform",
2889
3041
  author: "@vince",
2890
3042
  conflictsWith: [],
2891
3043
  discourages: [],
@@ -2893,7 +3045,7 @@ var BUILT_IN_MATRIX = {
2893
3045
  requires: [],
2894
3046
  alternatives: [],
2895
3047
  isRecommended: false,
2896
- path: "skills/shared-infra-setup-env"
3048
+ path: "skills/infra-platform-cloudflare-workers"
2897
3049
  },
2898
3050
  "web-testing-react-testing-library": {
2899
3051
  id: "web-testing-react-testing-library",
@@ -2903,12 +3055,7 @@ var BUILT_IN_MATRIX = {
2903
3055
  usageGuidance: "Use when testing React components with user-centric queries.",
2904
3056
  category: "web-testing",
2905
3057
  author: "@vince",
2906
- conflictsWith: [
2907
- {
2908
- skillId: "web-testing-vue-test-utils",
2909
- reason: "Framework-specific testing libraries"
2910
- }
2911
- ],
3058
+ conflictsWith: [],
2912
3059
  discourages: [],
2913
3060
  compatibleWith: [
2914
3061
  "web-framework-react",
@@ -2931,6 +3078,75 @@ var BUILT_IN_MATRIX = {
2931
3078
  recommendedReason: "Standard React component testing",
2932
3079
  path: "skills/web-testing-react-testing-library"
2933
3080
  },
3081
+ "meta-methodology-research-methodology": {
3082
+ id: "meta-methodology-research-methodology",
3083
+ slug: "research-methodology",
3084
+ displayName: "Research",
3085
+ description: "Codebase investigation",
3086
+ usageGuidance: "Use when investigating codebase patterns, researching implementations, or discovering how things work.",
3087
+ category: "meta-methodology",
3088
+ author: "@vince",
3089
+ conflictsWith: [],
3090
+ discourages: [],
3091
+ compatibleWith: [],
3092
+ requires: [],
3093
+ alternatives: [],
3094
+ isRecommended: false,
3095
+ path: "skills/meta-methodology-research-methodology"
3096
+ },
3097
+ "ai-infrastructure-replicate": {
3098
+ id: "ai-infrastructure-replicate",
3099
+ slug: "replicate",
3100
+ displayName: "Replicate",
3101
+ description: "API for running open-source ML models with serverless GPU inference",
3102
+ usageGuidance: "Use when running open-source models on Replicate \u2014 model predictions, streaming, webhooks, file handling, model versioning, and serverless GPU deployment.",
3103
+ category: "ai-infrastructure",
3104
+ author: "@vince",
3105
+ conflictsWith: [],
3106
+ discourages: [],
3107
+ compatibleWith: [],
3108
+ requires: [],
3109
+ alternatives: [
3110
+ {
3111
+ skillId: "ai-provider-anthropic-sdk",
3112
+ purpose: "AI Provider SDK"
3113
+ },
3114
+ {
3115
+ skillId: "ai-provider-openai-sdk",
3116
+ purpose: "AI Provider SDK"
3117
+ },
3118
+ {
3119
+ skillId: "ai-provider-google-gemini-sdk",
3120
+ purpose: "AI Provider SDK"
3121
+ },
3122
+ {
3123
+ skillId: "ai-provider-mistral-sdk",
3124
+ purpose: "AI Provider SDK"
3125
+ },
3126
+ {
3127
+ skillId: "ai-provider-cohere-sdk",
3128
+ purpose: "AI Provider SDK"
3129
+ },
3130
+ {
3131
+ skillId: "ai-infrastructure-together-ai",
3132
+ purpose: "AI Provider SDK"
3133
+ },
3134
+ {
3135
+ skillId: "ai-infrastructure-huggingface-inference",
3136
+ purpose: "AI Provider SDK"
3137
+ },
3138
+ {
3139
+ skillId: "ai-infrastructure-ollama",
3140
+ purpose: "AI Provider SDK"
3141
+ },
3142
+ {
3143
+ skillId: "ai-infrastructure-litellm",
3144
+ purpose: "AI Provider SDK"
3145
+ }
3146
+ ],
3147
+ isRecommended: false,
3148
+ path: "skills/ai-infrastructure-replicate"
3149
+ },
2934
3150
  "api-database-knex": {
2935
3151
  id: "api-database-knex",
2936
3152
  slug: "knex",
@@ -2959,16 +3175,7 @@ var BUILT_IN_MATRIX = {
2959
3175
  discourages: [],
2960
3176
  compatibleWith: [],
2961
3177
  requires: [],
2962
- alternatives: [
2963
- {
2964
- skillId: "web-styling-scss-modules",
2965
- purpose: "Styling"
2966
- },
2967
- {
2968
- skillId: "web-styling-tailwind",
2969
- purpose: "Styling"
2970
- }
2971
- ],
3178
+ alternatives: [],
2972
3179
  isRecommended: true,
2973
3180
  recommendedReason: "Type-safe variant management for Tailwind",
2974
3181
  path: "skills/web-styling-cva"
@@ -3016,6 +3223,59 @@ var BUILT_IN_MATRIX = {
3016
3223
  isRecommended: false,
3017
3224
  path: "skills/shared-monorepo-turborepo"
3018
3225
  },
3226
+ "ai-provider-google-gemini-sdk": {
3227
+ id: "ai-provider-google-gemini-sdk",
3228
+ slug: "google-gemini-sdk",
3229
+ displayName: "Google Gemini SDK",
3230
+ description: "Official TypeScript SDK for Google Gemini with multimodal input, function calling, and structured output",
3231
+ usageGuidance: "Use when integrating Google Gemini \u2014 text generation, multimodal input (images, video, audio, PDF), function calling, structured JSON output, streaming, embeddings, and context caching.",
3232
+ category: "ai-provider",
3233
+ author: "@vince",
3234
+ conflictsWith: [],
3235
+ discourages: [],
3236
+ compatibleWith: [],
3237
+ requires: [],
3238
+ alternatives: [
3239
+ {
3240
+ skillId: "ai-provider-anthropic-sdk",
3241
+ purpose: "AI Provider SDK"
3242
+ },
3243
+ {
3244
+ skillId: "ai-provider-openai-sdk",
3245
+ purpose: "AI Provider SDK"
3246
+ },
3247
+ {
3248
+ skillId: "ai-provider-mistral-sdk",
3249
+ purpose: "AI Provider SDK"
3250
+ },
3251
+ {
3252
+ skillId: "ai-provider-cohere-sdk",
3253
+ purpose: "AI Provider SDK"
3254
+ },
3255
+ {
3256
+ skillId: "ai-infrastructure-together-ai",
3257
+ purpose: "AI Provider SDK"
3258
+ },
3259
+ {
3260
+ skillId: "ai-infrastructure-replicate",
3261
+ purpose: "AI Provider SDK"
3262
+ },
3263
+ {
3264
+ skillId: "ai-infrastructure-huggingface-inference",
3265
+ purpose: "AI Provider SDK"
3266
+ },
3267
+ {
3268
+ skillId: "ai-infrastructure-ollama",
3269
+ purpose: "AI Provider SDK"
3270
+ },
3271
+ {
3272
+ skillId: "ai-infrastructure-litellm",
3273
+ purpose: "AI Provider SDK"
3274
+ }
3275
+ ],
3276
+ isRecommended: false,
3277
+ path: "skills/ai-provider-google-gemini-sdk"
3278
+ },
3019
3279
  "web-i18n-vue-i18n": {
3020
3280
  id: "web-i18n-vue-i18n",
3021
3281
  slug: "vue-i18n",
@@ -3064,6 +3324,22 @@ var BUILT_IN_MATRIX = {
3064
3324
  isRecommended: false,
3065
3325
  path: "skills/web-routing-tanstack-router"
3066
3326
  },
3327
+ "ai-patterns-tool-use-patterns": {
3328
+ id: "ai-patterns-tool-use-patterns",
3329
+ slug: "tool-use-patterns",
3330
+ displayName: "Tool Use Patterns",
3331
+ description: "Provider-agnostic patterns for LLM function calling",
3332
+ usageGuidance: "Use when implementing LLM tool use -- tool definition schemas, the tool call loop pattern, parallel tool calls, error reporting back to the model, multi-step agent workflows, human-in-the-loop patterns, and tool choice control. Provider-agnostic -- shows generic TypeScript patterns, not provider-specific SDK code.",
3333
+ category: "ai-patterns",
3334
+ author: "@vince",
3335
+ conflictsWith: [],
3336
+ discourages: [],
3337
+ compatibleWith: [],
3338
+ requires: [],
3339
+ alternatives: [],
3340
+ isRecommended: false,
3341
+ path: "skills/ai-patterns-tool-use-patterns"
3342
+ },
3067
3343
  "api-vector-db-qdrant": {
3068
3344
  id: "api-vector-db-qdrant",
3069
3345
  slug: "qdrant",
@@ -3127,42 +3403,20 @@ var BUILT_IN_MATRIX = {
3127
3403
  path: "skills/web-files-image-handling"
3128
3404
  },
3129
3405
  "api-email-setup-resend": {
3130
- id: "api-email-setup-resend",
3131
- slug: "setup-resend",
3132
- displayName: "Email Setup",
3133
- description: "Email service setup",
3134
- usageGuidance: "Use when configuring Resend email service or domain verification.",
3135
- category: "api-email",
3136
- author: "@vince",
3137
- conflictsWith: [],
3138
- discourages: [],
3139
- compatibleWith: [],
3140
- requires: [],
3141
- alternatives: [],
3142
- isRecommended: false,
3143
- path: "skills/api-email-setup-resend"
3144
- },
3145
- "api-ai-claude-vision": {
3146
- id: "api-ai-claude-vision",
3147
- slug: "claude-vision",
3148
- displayName: "Claude Vision",
3149
- description: "Image understanding and document analysis with Claude's multimodal capabilities",
3150
- usageGuidance: "Use when processing images and documents with Claude \u2014 image analysis, document extraction, chart interpretation, multi-image comparison, and PDF processing with the Anthropic API.",
3151
- category: "api-ai",
3406
+ id: "api-email-setup-resend",
3407
+ slug: "setup-resend",
3408
+ displayName: "Email Setup",
3409
+ description: "Email service setup",
3410
+ usageGuidance: "Use when configuring Resend email service or domain verification.",
3411
+ category: "api-email",
3152
3412
  author: "@vince",
3153
3413
  conflictsWith: [],
3154
3414
  discourages: [],
3155
3415
  compatibleWith: [],
3156
- requires: [
3157
- {
3158
- skillIds: ["api-ai-anthropic-sdk"],
3159
- needsAny: false,
3160
- reason: "Claude Vision uses the Anthropic SDK"
3161
- }
3162
- ],
3416
+ requires: [],
3163
3417
  alternatives: [],
3164
3418
  isRecommended: false,
3165
- path: "skills/api-ai-claude-vision"
3419
+ path: "skills/api-email-setup-resend"
3166
3420
  },
3167
3421
  "web-server-state-react-query": {
3168
3422
  id: "web-server-state-react-query",
@@ -3178,12 +3432,7 @@ var BUILT_IN_MATRIX = {
3178
3432
  reason: "Both solve server state caching"
3179
3433
  }
3180
3434
  ],
3181
- discourages: [
3182
- {
3183
- skillId: "web-data-fetching-swr",
3184
- reason: "SWR is simpler but React Query has more features"
3185
- }
3186
- ],
3435
+ discourages: [],
3187
3436
  compatibleWith: [
3188
3437
  "web-framework-react",
3189
3438
  "web-meta-framework-nextjs",
@@ -3205,37 +3454,16 @@ var BUILT_IN_MATRIX = {
3205
3454
  {
3206
3455
  skillId: "web-data-fetching-swr",
3207
3456
  purpose: "Server State / Data Fetching"
3457
+ },
3458
+ {
3459
+ skillId: "web-data-fetching-trpc",
3460
+ purpose: "Server State / Data Fetching"
3208
3461
  }
3209
3462
  ],
3210
3463
  isRecommended: true,
3211
3464
  recommendedReason: "Modern server state caching for React",
3212
3465
  path: "skills/web-server-state-react-query"
3213
3466
  },
3214
- "api-ai-llamaindex": {
3215
- id: "api-ai-llamaindex",
3216
- slug: "llamaindex",
3217
- displayName: "LlamaIndex",
3218
- description: "Data framework for LLM applications with indexing, retrieval, and query engines",
3219
- usageGuidance: "Use when building RAG and data-aware LLM applications \u2014 document loading, text chunking, vector indexing, query engines, chat engines, and agentic RAG with LlamaIndex.TS.",
3220
- category: "api-ai",
3221
- author: "@vince",
3222
- conflictsWith: [],
3223
- discourages: [],
3224
- compatibleWith: [],
3225
- requires: [],
3226
- alternatives: [
3227
- {
3228
- skillId: "api-ai-vercel-ai-sdk",
3229
- purpose: "AI SDK"
3230
- },
3231
- {
3232
- skillId: "api-ai-langchain",
3233
- purpose: "AI SDK"
3234
- }
3235
- ],
3236
- isRecommended: false,
3237
- path: "skills/api-ai-llamaindex"
3238
- },
3239
3467
  "web-framework-svelte": {
3240
3468
  id: "web-framework-svelte",
3241
3469
  slug: "svelte",
@@ -3295,22 +3523,6 @@ var BUILT_IN_MATRIX = {
3295
3523
  isRecommended: false,
3296
3524
  path: "skills/web-framework-svelte"
3297
3525
  },
3298
- "api-ai-elevenlabs": {
3299
- id: "api-ai-elevenlabs",
3300
- slug: "elevenlabs",
3301
- displayName: "ElevenLabs",
3302
- description: "AI voice synthesis with text-to-speech, voice cloning, and real-time streaming",
3303
- usageGuidance: "Use when generating speech with ElevenLabs \u2014 text-to-speech, streaming audio, voice cloning, voice selection, pronunciation control (SSML), and real-time conversational AI.",
3304
- category: "api-ai",
3305
- author: "@vince",
3306
- conflictsWith: [],
3307
- discourages: [],
3308
- compatibleWith: [],
3309
- requires: [],
3310
- alternatives: [],
3311
- isRecommended: false,
3312
- path: "skills/api-ai-elevenlabs"
3313
- },
3314
3526
  "api-performance-api-performance": {
3315
3527
  id: "api-performance-api-performance",
3316
3528
  slug: "api-performance",
@@ -3445,7 +3657,28 @@ var BUILT_IN_MATRIX = {
3445
3657
  usageGuidance: "Use when building Nuxt apps with useFetch, useState, or server routes.",
3446
3658
  category: "web-meta-framework",
3447
3659
  author: "@vince",
3448
- conflictsWith: [],
3660
+ conflictsWith: [
3661
+ {
3662
+ skillId: "web-meta-framework-nextjs",
3663
+ reason: "Meta-frameworks are mutually exclusive"
3664
+ },
3665
+ {
3666
+ skillId: "web-meta-framework-remix",
3667
+ reason: "Meta-frameworks are mutually exclusive"
3668
+ },
3669
+ {
3670
+ skillId: "web-meta-framework-sveltekit",
3671
+ reason: "Meta-frameworks are mutually exclusive"
3672
+ },
3673
+ {
3674
+ skillId: "web-meta-framework-astro",
3675
+ reason: "Meta-frameworks are mutually exclusive"
3676
+ },
3677
+ {
3678
+ skillId: "web-meta-framework-qwik",
3679
+ reason: "Meta-frameworks are mutually exclusive"
3680
+ }
3681
+ ],
3449
3682
  discourages: [],
3450
3683
  compatibleWith: [
3451
3684
  "web-forms-vee-validate",
@@ -3570,33 +3803,20 @@ var BUILT_IN_MATRIX = {
3570
3803
  category: "web-client-state",
3571
3804
  author: "@vince",
3572
3805
  conflictsWith: [
3573
- {
3574
- skillId: "web-state-pinia",
3575
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
3576
- },
3577
3806
  {
3578
3807
  skillId: "web-state-zustand",
3579
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
3808
+ reason: "React state management libraries are mutually exclusive"
3580
3809
  },
3581
3810
  {
3582
3811
  skillId: "web-state-redux-toolkit",
3583
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
3584
- },
3585
- {
3586
- skillId: "web-state-ngrx-signalstore",
3587
- reason: "NgRx SignalStore is Angular-only"
3588
- }
3589
- ],
3590
- discourages: [
3591
- {
3592
- skillId: "web-state-zustand",
3593
- reason: "Using multiple React state libraries adds complexity"
3812
+ reason: "React state management libraries are mutually exclusive"
3594
3813
  },
3595
3814
  {
3596
- skillId: "web-state-redux-toolkit",
3597
- reason: "Using multiple React state libraries adds complexity"
3815
+ skillId: "web-state-jotai",
3816
+ reason: "React state management libraries are mutually exclusive"
3598
3817
  }
3599
3818
  ],
3819
+ discourages: [],
3600
3820
  compatibleWith: [
3601
3821
  "web-framework-react",
3602
3822
  "web-meta-framework-nextjs",
@@ -3845,93 +4065,6 @@ var BUILT_IN_MATRIX = {
3845
4065
  isRecommended: false,
3846
4066
  path: "skills/api-baas-firebase"
3847
4067
  },
3848
- "api-ai-openai-sdk": {
3849
- id: "api-ai-openai-sdk",
3850
- slug: "openai-sdk",
3851
- displayName: "OpenAI SDK",
3852
- description: "Official OpenAI SDK for TypeScript/Node.js",
3853
- usageGuidance: "Use when building applications with OpenAI's API \u2014 GPT models, chat completions, Responses API, embeddings, function calling, structured outputs, vision, audio, streaming, and batch processing.",
3854
- category: "api-ai",
3855
- author: "@vince",
3856
- conflictsWith: [],
3857
- discourages: [],
3858
- compatibleWith: [],
3859
- requires: [],
3860
- alternatives: [
3861
- {
3862
- skillId: "api-ai-anthropic-sdk",
3863
- purpose: "AI Provider SDK"
3864
- },
3865
- {
3866
- skillId: "api-ai-google-gemini-sdk",
3867
- purpose: "AI Provider SDK"
3868
- },
3869
- {
3870
- skillId: "api-ai-mistral-sdk",
3871
- purpose: "AI Provider SDK"
3872
- },
3873
- {
3874
- skillId: "api-ai-cohere-sdk",
3875
- purpose: "AI Provider SDK"
3876
- },
3877
- {
3878
- skillId: "api-ai-together-ai",
3879
- purpose: "AI Provider SDK"
3880
- },
3881
- {
3882
- skillId: "api-ai-replicate",
3883
- purpose: "AI Provider SDK"
3884
- },
3885
- {
3886
- skillId: "api-ai-huggingface-inference",
3887
- purpose: "AI Provider SDK"
3888
- },
3889
- {
3890
- skillId: "api-ai-ollama",
3891
- purpose: "AI Provider SDK"
3892
- }
3893
- ],
3894
- isRecommended: false,
3895
- path: "skills/api-ai-openai-sdk"
3896
- },
3897
- "api-ai-langfuse": {
3898
- id: "api-ai-langfuse",
3899
- slug: "langfuse",
3900
- displayName: "Langfuse",
3901
- description: "LLM observability platform with tracing, evaluations, and prompt management",
3902
- usageGuidance: "Use when adding observability to LLM applications \u2014 tracing LLM calls, tracking costs, evaluations, prompt management, session tracking, user feedback, and datasets for testing with Langfuse.",
3903
- category: "api-ai",
3904
- author: "@vince",
3905
- conflictsWith: [],
3906
- discourages: [],
3907
- compatibleWith: [],
3908
- requires: [],
3909
- alternatives: [],
3910
- isRecommended: false,
3911
- path: "skills/api-ai-langfuse"
3912
- },
3913
- "api-ai-openai-whisper": {
3914
- id: "api-ai-openai-whisper",
3915
- slug: "openai-whisper",
3916
- displayName: "OpenAI Whisper",
3917
- description: "Speech-to-text transcription and translation via OpenAI Audio API",
3918
- usageGuidance: "Use when transcribing or translating audio with OpenAI Whisper -- file transcription, real-time transcription, translation to English, timestamp generation, and custom vocabulary prompting.",
3919
- category: "api-ai",
3920
- author: "@vince",
3921
- conflictsWith: [],
3922
- discourages: [],
3923
- compatibleWith: [],
3924
- requires: [
3925
- {
3926
- skillIds: ["api-ai-openai-sdk"],
3927
- needsAny: false,
3928
- reason: "Whisper API uses the OpenAI SDK"
3929
- }
3930
- ],
3931
- alternatives: [],
3932
- isRecommended: false,
3933
- path: "skills/api-ai-openai-whisper"
3934
- },
3935
4068
  "api-database-redis": {
3936
4069
  id: "api-database-redis",
3937
4070
  slug: "redis",
@@ -3946,11 +4079,11 @@ var BUILT_IN_MATRIX = {
3946
4079
  requires: [],
3947
4080
  alternatives: [
3948
4081
  {
3949
- skillId: "api-baas-upstash",
4082
+ skillId: "api-database-upstash",
3950
4083
  purpose: "Cache / KV Store"
3951
4084
  },
3952
4085
  {
3953
- skillId: "api-baas-vercel-kv",
4086
+ skillId: "api-database-vercel-kv",
3954
4087
  purpose: "Cache / KV Store"
3955
4088
  }
3956
4089
  ],
@@ -3973,13 +4106,13 @@ var BUILT_IN_MATRIX = {
3973
4106
  isRecommended: false,
3974
4107
  path: "skills/shared-monorepo-pnpm-workspaces"
3975
4108
  },
3976
- "api-ai-litellm": {
3977
- id: "api-ai-litellm",
3978
- slug: "litellm",
3979
- displayName: "LiteLLM",
3980
- description: "Unified LLM proxy supporting 100+ providers with OpenAI-compatible API",
3981
- usageGuidance: "Use when routing LLM requests through LiteLLM proxy \u2014 unified OpenAI-compatible API across providers, model fallbacks, load balancing, spend tracking, and rate limiting. Covers proxy server config.yaml setup, TypeScript client via OpenAI SDK, virtual keys, and production deployment.",
3982
- category: "api-ai",
4109
+ "meta-reviewing-reviewing": {
4110
+ id: "meta-reviewing-reviewing",
4111
+ slug: "reviewing",
4112
+ displayName: "Code Review",
4113
+ description: "Code review guidance",
4114
+ usageGuidance: "Use when reviewing code, PRs, or making approval/rejection decisions.",
4115
+ category: "meta-reviewing",
3983
4116
  author: "@vince",
3984
4117
  conflictsWith: [],
3985
4118
  discourages: [],
@@ -3987,7 +4120,7 @@ var BUILT_IN_MATRIX = {
3987
4120
  requires: [],
3988
4121
  alternatives: [],
3989
4122
  isRecommended: false,
3990
- path: "skills/api-ai-litellm"
4123
+ path: "skills/meta-reviewing-reviewing"
3991
4124
  },
3992
4125
  "web-ui-mui": {
3993
4126
  id: "web-ui-mui",
@@ -4053,6 +4186,22 @@ var BUILT_IN_MATRIX = {
4053
4186
  isRecommended: false,
4054
4187
  path: "skills/web-ui-mui"
4055
4188
  },
4189
+ "ai-infrastructure-modal": {
4190
+ id: "ai-infrastructure-modal",
4191
+ slug: "modal",
4192
+ displayName: "Modal",
4193
+ description: "Serverless GPU compute platform for AI model deployment and inference",
4194
+ usageGuidance: "Use when deploying ML models or GPU workloads on Modal \u2014 web endpoints for API access from TypeScript, serverless GPU functions, model serving, scheduled jobs, and container-based deployments.",
4195
+ category: "ai-infrastructure",
4196
+ author: "@vince",
4197
+ conflictsWith: [],
4198
+ discourages: [],
4199
+ compatibleWith: [],
4200
+ requires: [],
4201
+ alternatives: [],
4202
+ isRecommended: false,
4203
+ path: "skills/ai-infrastructure-modal"
4204
+ },
4056
4205
  "api-database-drizzle": {
4057
4206
  id: "api-database-drizzle",
4058
4207
  slug: "drizzle",
@@ -4075,16 +4224,7 @@ var BUILT_IN_MATRIX = {
4075
4224
  reason: "SQL ORMs are mutually exclusive"
4076
4225
  }
4077
4226
  ],
4078
- discourages: [
4079
- {
4080
- skillId: "api-database-sequelize",
4081
- reason: "Sequelize is mature but Drizzle offers better TypeScript integration"
4082
- },
4083
- {
4084
- skillId: "api-database-typeorm",
4085
- reason: "TypeORM uses decorators; Drizzle is more TypeScript-native"
4086
- }
4087
- ],
4227
+ discourages: [],
4088
4228
  compatibleWith: [],
4089
4229
  requires: [],
4090
4230
  alternatives: [
@@ -4155,6 +4295,10 @@ var BUILT_IN_MATRIX = {
4155
4295
  skillId: "web-meta-framework-remix",
4156
4296
  reason: "Meta-frameworks are mutually exclusive"
4157
4297
  },
4298
+ {
4299
+ skillId: "web-meta-framework-nuxt",
4300
+ reason: "Meta-frameworks are mutually exclusive"
4301
+ },
4158
4302
  {
4159
4303
  skillId: "web-meta-framework-sveltekit",
4160
4304
  reason: "Meta-frameworks are mutually exclusive"
@@ -4344,60 +4488,6 @@ var BUILT_IN_MATRIX = {
4344
4488
  isRecommended: false,
4345
4489
  path: "skills/api-email-resend-react-email"
4346
4490
  },
4347
- "api-baas-vercel-kv": {
4348
- id: "api-baas-vercel-kv",
4349
- slug: "vercel-kv",
4350
- displayName: "Vercel KV",
4351
- description: "Serverless Redis-compatible key-value store on Vercel",
4352
- usageGuidance: "Use when deploying Redis-compatible KV storage on Vercel -- automatic connection via UPSTASH_REDIS_REST_URL env vars, edge-compatible REST API, Redis command compatibility, and TTL-based caching.",
4353
- category: "api-baas",
4354
- author: "@vince",
4355
- conflictsWith: [],
4356
- discourages: [],
4357
- compatibleWith: [],
4358
- requires: [],
4359
- alternatives: [
4360
- {
4361
- skillId: "api-database-redis",
4362
- purpose: "Cache / KV Store"
4363
- },
4364
- {
4365
- skillId: "api-baas-upstash",
4366
- purpose: "Cache / KV Store"
4367
- }
4368
- ],
4369
- isRecommended: false,
4370
- path: "skills/api-baas-vercel-kv"
4371
- },
4372
- "api-baas-vercel-postgres": {
4373
- id: "api-baas-vercel-postgres",
4374
- slug: "vercel-postgres",
4375
- displayName: "Vercel Postgres",
4376
- description: "Serverless PostgreSQL on Vercel with edge-compatible SDK",
4377
- usageGuidance: "Use when deploying PostgreSQL on Vercel -- sql tagged template for edge functions, createPool/createClient for Node.js, automatic connection management via POSTGRES_URL env vars. NOTE: @vercel/postgres is deprecated (Dec 2024). For new projects, use @neondatabase/serverless instead.",
4378
- category: "api-baas",
4379
- author: "@vince",
4380
- conflictsWith: [],
4381
- discourages: [],
4382
- compatibleWith: [],
4383
- requires: [],
4384
- alternatives: [
4385
- {
4386
- skillId: "api-baas-neon",
4387
- purpose: "Managed Database"
4388
- },
4389
- {
4390
- skillId: "api-baas-planetscale",
4391
- purpose: "Managed Database"
4392
- },
4393
- {
4394
- skillId: "api-baas-turso",
4395
- purpose: "Managed Database"
4396
- }
4397
- ],
4398
- isRecommended: false,
4399
- path: "skills/api-baas-vercel-postgres"
4400
- },
4401
4491
  "api-framework-express": {
4402
4492
  id: "api-framework-express",
4403
4493
  slug: "express",
@@ -4424,20 +4514,7 @@ var BUILT_IN_MATRIX = {
4424
4514
  reason: "API frameworks are mutually exclusive within a single service"
4425
4515
  }
4426
4516
  ],
4427
- discourages: [
4428
- {
4429
- skillId: "api-framework-hono",
4430
- reason: "Express is mature but Hono offers better performance and edge support"
4431
- },
4432
- {
4433
- skillId: "api-framework-fastify",
4434
- reason: "Express is mature but Fastify offers better performance"
4435
- },
4436
- {
4437
- skillId: "api-framework-elysia",
4438
- reason: "Express is mature but Elysia is faster on Bun with end-to-end type safety"
4439
- }
4440
- ],
4517
+ discourages: [],
4441
4518
  compatibleWith: [],
4442
4519
  requires: [],
4443
4520
  alternatives: [
@@ -4459,23 +4536,7 @@ var BUILT_IN_MATRIX = {
4459
4536
  }
4460
4537
  ],
4461
4538
  isRecommended: false,
4462
- path: "skills/api-framework-express"
4463
- },
4464
- "api-ai-modal": {
4465
- id: "api-ai-modal",
4466
- slug: "modal",
4467
- displayName: "Modal",
4468
- description: "Serverless GPU compute platform for AI model deployment and inference",
4469
- usageGuidance: "Use when deploying ML models or GPU workloads on Modal \u2014 web endpoints for API access from TypeScript, serverless GPU functions, model serving, scheduled jobs, and container-based deployments.",
4470
- category: "api-ai",
4471
- author: "@vince",
4472
- conflictsWith: [],
4473
- discourages: [],
4474
- compatibleWith: [],
4475
- requires: [],
4476
- alternatives: [],
4477
- isRecommended: false,
4478
- path: "skills/api-ai-modal"
4539
+ path: "skills/api-framework-express"
4479
4540
  },
4480
4541
  "web-ui-tanstack-table": {
4481
4542
  id: "web-ui-tanstack-table",
@@ -4497,6 +4558,22 @@ var BUILT_IN_MATRIX = {
4497
4558
  isRecommended: false,
4498
4559
  path: "skills/web-ui-tanstack-table"
4499
4560
  },
4561
+ "ai-observability-langfuse": {
4562
+ id: "ai-observability-langfuse",
4563
+ slug: "langfuse",
4564
+ displayName: "Langfuse",
4565
+ description: "LLM observability platform with tracing, evaluations, and prompt management",
4566
+ usageGuidance: "Use when adding observability to LLM applications \u2014 tracing LLM calls, tracking costs, evaluations, prompt management, session tracking, user feedback, and datasets for testing with Langfuse.",
4567
+ category: "ai-observability",
4568
+ author: "@vince",
4569
+ conflictsWith: [],
4570
+ discourages: [],
4571
+ compatibleWith: [],
4572
+ requires: [],
4573
+ alternatives: [],
4574
+ isRecommended: false,
4575
+ path: "skills/ai-observability-langfuse"
4576
+ },
4500
4577
  "web-meta-framework-remix": {
4501
4578
  id: "web-meta-framework-remix",
4502
4579
  slug: "remix",
@@ -4510,6 +4587,10 @@ var BUILT_IN_MATRIX = {
4510
4587
  skillId: "web-meta-framework-nextjs",
4511
4588
  reason: "Meta-frameworks are mutually exclusive"
4512
4589
  },
4590
+ {
4591
+ skillId: "web-meta-framework-nuxt",
4592
+ reason: "Meta-frameworks are mutually exclusive"
4593
+ },
4513
4594
  {
4514
4595
  skillId: "web-meta-framework-sveltekit",
4515
4596
  reason: "Meta-frameworks are mutually exclusive"
@@ -4592,57 +4673,6 @@ var BUILT_IN_MATRIX = {
4592
4673
  isRecommended: false,
4593
4674
  path: "skills/web-meta-framework-remix"
4594
4675
  },
4595
- "api-ai-vercel-ai-sdk": {
4596
- id: "api-ai-vercel-ai-sdk",
4597
- slug: "vercel-ai-sdk",
4598
- displayName: "Vercel AI SDK",
4599
- description: "Vercel AI SDK for streaming AI applications",
4600
- usageGuidance: "Use when building AI-powered features with streaming, chat UIs, or multi-provider AI integrations. Covers generateText, streamText, structured output with Zod, tool calling, useChat/useCompletion hooks, embeddings, and RAG patterns.",
4601
- category: "api-ai",
4602
- author: "@vince",
4603
- conflictsWith: [],
4604
- discourages: [],
4605
- compatibleWith: [],
4606
- requires: [],
4607
- alternatives: [
4608
- {
4609
- skillId: "api-ai-langchain",
4610
- purpose: "AI SDK"
4611
- },
4612
- {
4613
- skillId: "api-ai-llamaindex",
4614
- purpose: "AI SDK"
4615
- }
4616
- ],
4617
- isRecommended: true,
4618
- recommendedReason: "Provider-agnostic AI integration with streaming",
4619
- path: "skills/api-ai-vercel-ai-sdk"
4620
- },
4621
- "api-ai-langchain": {
4622
- id: "api-ai-langchain",
4623
- slug: "langchain",
4624
- displayName: "LangChain",
4625
- description: "LLM application framework with chains, agents, RAG, and memory",
4626
- usageGuidance: "Use when building LLM-powered applications with LangChain.js \u2014 chat models, prompt templates, output parsers, chains (LCEL), agents with tools, RAG pipelines, vector stores, and memory.",
4627
- category: "api-ai",
4628
- author: "@vince",
4629
- conflictsWith: [],
4630
- discourages: [],
4631
- compatibleWith: [],
4632
- requires: [],
4633
- alternatives: [
4634
- {
4635
- skillId: "api-ai-vercel-ai-sdk",
4636
- purpose: "AI SDK"
4637
- },
4638
- {
4639
- skillId: "api-ai-llamaindex",
4640
- purpose: "AI SDK"
4641
- }
4642
- ],
4643
- isRecommended: false,
4644
- path: "skills/api-ai-langchain"
4645
- },
4646
4676
  "web-error-handling-result-types": {
4647
4677
  id: "web-error-handling-result-types",
4648
4678
  slug: "result-types",
@@ -4707,10 +4737,6 @@ var BUILT_IN_MATRIX = {
4707
4737
  {
4708
4738
  skillId: "web-styling-scss-modules",
4709
4739
  purpose: "Styling"
4710
- },
4711
- {
4712
- skillId: "web-styling-cva",
4713
- purpose: "Styling"
4714
4740
  }
4715
4741
  ],
4716
4742
  isRecommended: true,
@@ -4725,12 +4751,7 @@ var BUILT_IN_MATRIX = {
4725
4751
  usageGuidance: "Use when building forms in React with validation, field arrays, or Controller.",
4726
4752
  category: "web-forms",
4727
4753
  author: "@vince",
4728
- conflictsWith: [
4729
- {
4730
- skillId: "web-forms-vee-validate",
4731
- reason: "react-hook-form is React-only, vee-validate is Vue-only"
4732
- }
4733
- ],
4754
+ conflictsWith: [],
4734
4755
  discourages: [],
4735
4756
  compatibleWith: [
4736
4757
  "web-framework-react",
@@ -4754,55 +4775,6 @@ var BUILT_IN_MATRIX = {
4754
4775
  recommendedReason: "Best React form library",
4755
4776
  path: "skills/web-forms-react-hook-form"
4756
4777
  },
4757
- "api-ai-google-gemini-sdk": {
4758
- id: "api-ai-google-gemini-sdk",
4759
- slug: "google-gemini-sdk",
4760
- displayName: "Google Gemini SDK",
4761
- description: "Official TypeScript SDK for Google Gemini with multimodal input, function calling, and structured output",
4762
- usageGuidance: "Use when integrating Google Gemini \u2014 text generation, multimodal input (images, video, audio, PDF), function calling, structured JSON output, streaming, embeddings, and context caching.",
4763
- category: "api-ai",
4764
- author: "@vince",
4765
- conflictsWith: [],
4766
- discourages: [],
4767
- compatibleWith: [],
4768
- requires: [],
4769
- alternatives: [
4770
- {
4771
- skillId: "api-ai-anthropic-sdk",
4772
- purpose: "AI Provider SDK"
4773
- },
4774
- {
4775
- skillId: "api-ai-openai-sdk",
4776
- purpose: "AI Provider SDK"
4777
- },
4778
- {
4779
- skillId: "api-ai-mistral-sdk",
4780
- purpose: "AI Provider SDK"
4781
- },
4782
- {
4783
- skillId: "api-ai-cohere-sdk",
4784
- purpose: "AI Provider SDK"
4785
- },
4786
- {
4787
- skillId: "api-ai-together-ai",
4788
- purpose: "AI Provider SDK"
4789
- },
4790
- {
4791
- skillId: "api-ai-replicate",
4792
- purpose: "AI Provider SDK"
4793
- },
4794
- {
4795
- skillId: "api-ai-huggingface-inference",
4796
- purpose: "AI Provider SDK"
4797
- },
4798
- {
4799
- skillId: "api-ai-ollama",
4800
- purpose: "AI Provider SDK"
4801
- }
4802
- ],
4803
- isRecommended: false,
4804
- path: "skills/api-ai-google-gemini-sdk"
4805
- },
4806
4778
  "api-database-postgresql": {
4807
4779
  id: "api-database-postgresql",
4808
4780
  slug: "postgresql",
@@ -4836,6 +4808,10 @@ var BUILT_IN_MATRIX = {
4836
4808
  skillId: "web-meta-framework-remix",
4837
4809
  reason: "Meta-frameworks are mutually exclusive"
4838
4810
  },
4811
+ {
4812
+ skillId: "web-meta-framework-nuxt",
4813
+ reason: "Meta-frameworks are mutually exclusive"
4814
+ },
4839
4815
  {
4840
4816
  skillId: "web-meta-framework-astro",
4841
4817
  reason: "Meta-frameworks are mutually exclusive"
@@ -4972,54 +4948,21 @@ var BUILT_IN_MATRIX = {
4972
4948
  isRecommended: false,
4973
4949
  path: "skills/web-accessibility-web-accessibility"
4974
4950
  },
4975
- "api-ai-together-ai": {
4976
- id: "api-ai-together-ai",
4977
- slug: "together-ai",
4978
- displayName: "Together AI",
4979
- description: "Multi-model inference API for open-source LLMs",
4980
- usageGuidance: "Use when running open-source LLMs on Together AI \u2014 chat completions, streaming, embeddings, image generation, function calling, JSON mode, structured output, fine-tuning, and OpenAI-compatible endpoints.",
4981
- category: "api-ai",
4951
+ "infra-ci-cd-docker": {
4952
+ id: "infra-ci-cd-docker",
4953
+ slug: "docker",
4954
+ displayName: "Docker",
4955
+ description: "Docker containerization for development and deployment",
4956
+ usageGuidance: "Use when creating Dockerfiles, docker-compose configs, multi-stage builds, or containerized development environments for Node.js/TypeScript applications.",
4957
+ category: "infra-ci-cd",
4982
4958
  author: "@vince",
4983
4959
  conflictsWith: [],
4984
4960
  discourages: [],
4985
4961
  compatibleWith: [],
4986
4962
  requires: [],
4987
- alternatives: [
4988
- {
4989
- skillId: "api-ai-anthropic-sdk",
4990
- purpose: "AI Provider SDK"
4991
- },
4992
- {
4993
- skillId: "api-ai-openai-sdk",
4994
- purpose: "AI Provider SDK"
4995
- },
4996
- {
4997
- skillId: "api-ai-google-gemini-sdk",
4998
- purpose: "AI Provider SDK"
4999
- },
5000
- {
5001
- skillId: "api-ai-mistral-sdk",
5002
- purpose: "AI Provider SDK"
5003
- },
5004
- {
5005
- skillId: "api-ai-cohere-sdk",
5006
- purpose: "AI Provider SDK"
5007
- },
5008
- {
5009
- skillId: "api-ai-replicate",
5010
- purpose: "AI Provider SDK"
5011
- },
5012
- {
5013
- skillId: "api-ai-huggingface-inference",
5014
- purpose: "AI Provider SDK"
5015
- },
5016
- {
5017
- skillId: "api-ai-ollama",
5018
- purpose: "AI Provider SDK"
5019
- }
5020
- ],
4963
+ alternatives: [],
5021
4964
  isRecommended: false,
5022
- path: "skills/api-ai-together-ai"
4965
+ path: "skills/infra-ci-cd-docker"
5023
4966
  },
5024
4967
  "web-styling-scss-modules": {
5025
4968
  id: "web-styling-scss-modules",
@@ -5037,10 +4980,6 @@ var BUILT_IN_MATRIX = {
5037
4980
  {
5038
4981
  skillId: "web-styling-tailwind",
5039
4982
  purpose: "Styling"
5040
- },
5041
- {
5042
- skillId: "web-styling-cva",
5043
- purpose: "Styling"
5044
4983
  }
5045
4984
  ],
5046
4985
  isRecommended: false,
@@ -5185,12 +5124,7 @@ var BUILT_IN_MATRIX = {
5185
5124
  reason: "API frameworks are mutually exclusive within a single service"
5186
5125
  }
5187
5126
  ],
5188
- discourages: [
5189
- {
5190
- skillId: "api-framework-express",
5191
- reason: "Express is mature but Fastify offers better performance"
5192
- }
5193
- ],
5127
+ discourages: [],
5194
5128
  compatibleWith: [],
5195
5129
  requires: [],
5196
5130
  alternatives: [
@@ -5228,22 +5162,58 @@ var BUILT_IN_MATRIX = {
5228
5162
  reason: "Both are E2E frameworks"
5229
5163
  }
5230
5164
  ],
5231
- discourages: [
5165
+ discourages: [],
5166
+ compatibleWith: [],
5167
+ requires: [],
5168
+ alternatives: [
5232
5169
  {
5233
5170
  skillId: "web-testing-playwright-e2e",
5234
- reason: "Cypress excels at interactive debugging; Playwright has better cross-browser support and CI performance"
5171
+ purpose: "E2E Testing"
5235
5172
  }
5236
5173
  ],
5174
+ isRecommended: false,
5175
+ path: "skills/web-testing-cypress-e2e"
5176
+ },
5177
+ "api-database-vercel-kv": {
5178
+ id: "api-database-vercel-kv",
5179
+ slug: "vercel-kv",
5180
+ displayName: "Vercel KV",
5181
+ description: "Serverless Redis-compatible key-value store on Vercel",
5182
+ usageGuidance: "Use when deploying Redis-compatible KV storage on Vercel -- automatic connection via UPSTASH_REDIS_REST_URL env vars, edge-compatible REST API, Redis command compatibility, and TTL-based caching.",
5183
+ category: "api-database",
5184
+ author: "@vince",
5185
+ conflictsWith: [],
5186
+ discourages: [],
5237
5187
  compatibleWith: [],
5238
5188
  requires: [],
5239
5189
  alternatives: [
5240
5190
  {
5241
- skillId: "web-testing-playwright-e2e",
5242
- purpose: "E2E Testing"
5191
+ skillId: "api-database-redis",
5192
+ purpose: "Cache / KV Store"
5193
+ },
5194
+ {
5195
+ skillId: "api-database-upstash",
5196
+ purpose: "Cache / KV Store"
5243
5197
  }
5244
5198
  ],
5245
5199
  isRecommended: false,
5246
- path: "skills/web-testing-cypress-e2e"
5200
+ path: "skills/api-database-vercel-kv"
5201
+ },
5202
+ "infra-ci-cd-github-actions": {
5203
+ id: "infra-ci-cd-github-actions",
5204
+ slug: "github-actions",
5205
+ displayName: "GitHub Actions",
5206
+ description: "CI/CD pipelines",
5207
+ usageGuidance: "Use when configuring CI/CD pipelines, GitHub workflows, or deployment automation.",
5208
+ category: "infra-ci-cd",
5209
+ author: "@vince",
5210
+ conflictsWith: [],
5211
+ discourages: [],
5212
+ compatibleWith: [],
5213
+ requires: [],
5214
+ alternatives: [],
5215
+ isRecommended: false,
5216
+ path: "skills/infra-ci-cd-github-actions"
5247
5217
  },
5248
5218
  "api-analytics-posthog-analytics": {
5249
5219
  id: "api-analytics-posthog-analytics",
@@ -5279,6 +5249,10 @@ var BUILT_IN_MATRIX = {
5279
5249
  skillId: "web-meta-framework-remix",
5280
5250
  reason: "Meta-frameworks are mutually exclusive"
5281
5251
  },
5252
+ {
5253
+ skillId: "web-meta-framework-nuxt",
5254
+ reason: "Meta-frameworks are mutually exclusive"
5255
+ },
5282
5256
  {
5283
5257
  skillId: "web-meta-framework-sveltekit",
5284
5258
  reason: "Meta-frameworks are mutually exclusive"
@@ -5316,6 +5290,75 @@ var BUILT_IN_MATRIX = {
5316
5290
  isRecommended: false,
5317
5291
  path: "skills/web-meta-framework-qwik"
5318
5292
  },
5293
+ "ai-provider-elevenlabs": {
5294
+ id: "ai-provider-elevenlabs",
5295
+ slug: "elevenlabs",
5296
+ displayName: "ElevenLabs",
5297
+ description: "AI voice synthesis with text-to-speech, voice cloning, and real-time streaming",
5298
+ usageGuidance: "Use when generating speech with ElevenLabs \u2014 text-to-speech, streaming audio, voice cloning, voice selection, pronunciation control (SSML), and real-time conversational AI.",
5299
+ category: "ai-provider",
5300
+ author: "@vince",
5301
+ conflictsWith: [],
5302
+ discourages: [],
5303
+ compatibleWith: [],
5304
+ requires: [],
5305
+ alternatives: [],
5306
+ isRecommended: false,
5307
+ path: "skills/ai-provider-elevenlabs"
5308
+ },
5309
+ "ai-infrastructure-ollama": {
5310
+ id: "ai-infrastructure-ollama",
5311
+ slug: "ollama",
5312
+ displayName: "Ollama",
5313
+ description: "Local LLM inference with the Ollama JavaScript client",
5314
+ usageGuidance: "Use when running LLMs locally with Ollama \u2014 chat completions, streaming, tool calling, vision, embeddings, model management, structured output with JSON schemas, and the OpenAI-compatible endpoint.",
5315
+ category: "ai-infrastructure",
5316
+ author: "@vince",
5317
+ conflictsWith: [],
5318
+ discourages: [],
5319
+ compatibleWith: [],
5320
+ requires: [],
5321
+ alternatives: [
5322
+ {
5323
+ skillId: "ai-provider-anthropic-sdk",
5324
+ purpose: "AI Provider SDK"
5325
+ },
5326
+ {
5327
+ skillId: "ai-provider-openai-sdk",
5328
+ purpose: "AI Provider SDK"
5329
+ },
5330
+ {
5331
+ skillId: "ai-provider-google-gemini-sdk",
5332
+ purpose: "AI Provider SDK"
5333
+ },
5334
+ {
5335
+ skillId: "ai-provider-mistral-sdk",
5336
+ purpose: "AI Provider SDK"
5337
+ },
5338
+ {
5339
+ skillId: "ai-provider-cohere-sdk",
5340
+ purpose: "AI Provider SDK"
5341
+ },
5342
+ {
5343
+ skillId: "ai-infrastructure-together-ai",
5344
+ purpose: "AI Provider SDK"
5345
+ },
5346
+ {
5347
+ skillId: "ai-infrastructure-replicate",
5348
+ purpose: "AI Provider SDK"
5349
+ },
5350
+ {
5351
+ skillId: "ai-infrastructure-huggingface-inference",
5352
+ purpose: "AI Provider SDK"
5353
+ },
5354
+ {
5355
+ skillId: "ai-infrastructure-litellm",
5356
+ purpose: "AI Provider SDK"
5357
+ }
5358
+ ],
5359
+ isRecommended: false,
5360
+ path: "skills/ai-infrastructure-ollama"
5361
+ },
5319
5362
  "web-data-fetching-swr": {
5320
5363
  id: "web-data-fetching-swr",
5321
5364
  slug: "swr",
@@ -5330,12 +5373,7 @@ var BUILT_IN_MATRIX = {
5330
5373
  reason: "Both solve server state caching"
5331
5374
  }
5332
5375
  ],
5333
- discourages: [
5334
- {
5335
- skillId: "web-server-state-react-query",
5336
- reason: "SWR is simpler but React Query has more features"
5337
- }
5338
- ],
5376
+ discourages: [],
5339
5377
  compatibleWith: [
5340
5378
  "web-framework-react",
5341
5379
  "web-meta-framework-nextjs",
@@ -5357,6 +5395,10 @@ var BUILT_IN_MATRIX = {
5357
5395
  {
5358
5396
  skillId: "web-server-state-react-query",
5359
5397
  purpose: "Server State / Data Fetching"
5398
+ },
5399
+ {
5400
+ skillId: "web-data-fetching-trpc",
5401
+ purpose: "Server State / Data Fetching"
5360
5402
  }
5361
5403
  ],
5362
5404
  isRecommended: false,
@@ -5384,12 +5426,7 @@ var BUILT_IN_MATRIX = {
5384
5426
  reason: "SQL ORMs are mutually exclusive"
5385
5427
  }
5386
5428
  ],
5387
- discourages: [
5388
- {
5389
- skillId: "api-database-drizzle",
5390
- reason: "Sequelize is mature but Drizzle offers better TypeScript integration"
5391
- }
5392
- ],
5429
+ discourages: [],
5393
5430
  compatibleWith: [],
5394
5431
  requires: [],
5395
5432
  alternatives: [
@@ -5438,7 +5475,7 @@ var BUILT_IN_MATRIX = {
5438
5475
  {
5439
5476
  id: "nextjs-fullstack",
5440
5477
  name: "Next.js Full-Stack",
5441
- description: "Next.js, Hono, Drizzle, Better Auth, Zustand",
5478
+ description: "Hono, Drizzle, Better Auth, Zustand",
5442
5479
  skills: {
5443
5480
  "web-developer": {
5444
5481
  "web-framework": ["web-framework-react"],
@@ -5463,7 +5500,7 @@ var BUILT_IN_MATRIX = {
5463
5500
  "api-observability": ["api-observability-axiom-pino-sentry"],
5464
5501
  "api-analytics": ["api-analytics-posthog-analytics"],
5465
5502
  "api-email": ["api-email-resend-react-email"],
5466
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5503
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5467
5504
  "shared-tooling": [
5468
5505
  "shared-tooling-eslint-prettier",
5469
5506
  "shared-tooling-typescript-config",
@@ -5479,7 +5516,7 @@ var BUILT_IN_MATRIX = {
5479
5516
  ]
5480
5517
  },
5481
5518
  "web-reviewer": {
5482
- "shared-meta": ["shared-meta-reviewing"],
5519
+ "meta-reviewing": ["meta-reviewing-reviewing"],
5483
5520
  "web-framework": ["web-framework-react"],
5484
5521
  "web-meta-framework": ["web-meta-framework-nextjs"],
5485
5522
  "web-styling": ["web-styling-scss-modules"],
@@ -5489,14 +5526,14 @@ var BUILT_IN_MATRIX = {
5489
5526
  "web-mocking": ["web-mocks-msw"]
5490
5527
  },
5491
5528
  "api-reviewer": {
5492
- "shared-meta": ["shared-meta-reviewing"],
5529
+ "meta-reviewing": ["meta-reviewing-reviewing"],
5493
5530
  "api-api": ["api-framework-hono"],
5494
5531
  "api-database": ["api-database-drizzle"],
5495
5532
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
5496
5533
  "api-observability": ["api-observability-axiom-pino-sentry"]
5497
5534
  },
5498
5535
  "cli-reviewer": {
5499
- "shared-meta": ["shared-meta-cli-reviewing"],
5536
+ "meta-reviewing": ["meta-reviewing-cli-reviewing"],
5500
5537
  "cli-framework": ["cli-framework-cli-commander"]
5501
5538
  },
5502
5539
  "web-tester": {
@@ -5518,7 +5555,7 @@ var BUILT_IN_MATRIX = {
5518
5555
  "api-observability": ["api-observability-axiom-pino-sentry"],
5519
5556
  "api-analytics": ["api-analytics-posthog-analytics"],
5520
5557
  "api-email": ["api-email-resend-react-email"],
5521
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5558
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5522
5559
  "cli-framework": ["cli-framework-cli-commander"]
5523
5560
  },
5524
5561
  "web-architecture": {
@@ -5528,7 +5565,7 @@ var BUILT_IN_MATRIX = {
5528
5565
  "api-observability": ["api-observability-axiom-pino-sentry"],
5529
5566
  "api-analytics": ["api-analytics-posthog-analytics"],
5530
5567
  "api-email": ["api-email-resend-react-email"],
5531
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5568
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5532
5569
  "cli-framework": ["cli-framework-cli-commander"]
5533
5570
  },
5534
5571
  "web-researcher": {
@@ -5548,7 +5585,7 @@ var BUILT_IN_MATRIX = {
5548
5585
  "api-observability": ["api-observability-axiom-pino-sentry"],
5549
5586
  "api-analytics": ["api-analytics-posthog-analytics"],
5550
5587
  "api-email": ["api-email-resend-react-email"],
5551
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5588
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5552
5589
  "cli-framework": ["cli-framework-cli-commander"]
5553
5590
  },
5554
5591
  "pattern-scout": {
@@ -5566,7 +5603,7 @@ var BUILT_IN_MATRIX = {
5566
5603
  "api-observability": ["api-observability-axiom-pino-sentry"],
5567
5604
  "api-analytics": ["api-analytics-posthog-analytics"],
5568
5605
  "api-email": ["api-email-resend-react-email"],
5569
- "shared-ci-cd": ["shared-ci-cd-github-actions"]
5606
+ "infra-ci-cd": ["infra-ci-cd-github-actions"]
5570
5607
  },
5571
5608
  "web-pattern-critique": {
5572
5609
  "web-framework": ["web-framework-react"],
@@ -5583,8 +5620,8 @@ var BUILT_IN_MATRIX = {
5583
5620
  "api-observability": ["api-observability-axiom-pino-sentry"],
5584
5621
  "api-analytics": ["api-analytics-posthog-analytics"],
5585
5622
  "api-email": ["api-email-resend-react-email"],
5586
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5587
- "shared-meta": ["shared-meta-reviewing"]
5623
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5624
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5588
5625
  },
5589
5626
  "agent-summoner": {
5590
5627
  "web-framework": ["web-framework-react"],
@@ -5601,9 +5638,9 @@ var BUILT_IN_MATRIX = {
5601
5638
  "api-observability": ["api-observability-axiom-pino-sentry"],
5602
5639
  "api-analytics": ["api-analytics-posthog-analytics"],
5603
5640
  "api-email": ["api-email-resend-react-email"],
5604
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5641
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5605
5642
  "cli-framework": ["cli-framework-cli-commander"],
5606
- "shared-meta": ["shared-meta-reviewing"]
5643
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5607
5644
  },
5608
5645
  "skill-summoner": {
5609
5646
  "web-framework": ["web-framework-react"],
@@ -5620,9 +5657,9 @@ var BUILT_IN_MATRIX = {
5620
5657
  "api-observability": ["api-observability-axiom-pino-sentry"],
5621
5658
  "api-analytics": ["api-analytics-posthog-analytics"],
5622
5659
  "api-email": ["api-email-resend-react-email"],
5623
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5660
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5624
5661
  "cli-framework": ["cli-framework-cli-commander"],
5625
- "shared-meta": ["shared-meta-reviewing"]
5662
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5626
5663
  },
5627
5664
  scribe: {
5628
5665
  "web-framework": ["web-framework-react"],
@@ -5639,9 +5676,9 @@ var BUILT_IN_MATRIX = {
5639
5676
  "api-observability": ["api-observability-axiom-pino-sentry"],
5640
5677
  "api-analytics": ["api-analytics-posthog-analytics"],
5641
5678
  "api-email": ["api-email-resend-react-email"],
5642
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5679
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5643
5680
  "cli-framework": ["cli-framework-cli-commander"],
5644
- "shared-meta": ["shared-meta-reviewing"]
5681
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5645
5682
  },
5646
5683
  "cli-tester": {}
5647
5684
  },
@@ -5664,10 +5701,10 @@ var BUILT_IN_MATRIX = {
5664
5701
  "api-observability-axiom-pino-sentry",
5665
5702
  "api-analytics-posthog-analytics",
5666
5703
  "api-email-resend-react-email",
5667
- "shared-ci-cd-github-actions",
5704
+ "infra-ci-cd-github-actions",
5668
5705
  "cli-framework-cli-commander",
5669
- "shared-meta-reviewing",
5670
- "shared-meta-cli-reviewing",
5706
+ "meta-reviewing-reviewing",
5707
+ "meta-reviewing-cli-reviewing",
5671
5708
  "web-testing-playwright-e2e"
5672
5709
  ],
5673
5710
  philosophy: "Ship fast, iterate faster"
@@ -5675,7 +5712,7 @@ var BUILT_IN_MATRIX = {
5675
5712
  {
5676
5713
  id: "nextjs-t3-stack",
5677
5714
  name: "Next.js T3 Stack",
5678
- description: "Next.js, tRPC, Prisma, NextAuth, Tailwind",
5715
+ description: "tRPC, Prisma, NextAuth, Tailwind",
5679
5716
  skills: {
5680
5717
  "web-developer": {
5681
5718
  "web-framework": ["web-framework-react"],
@@ -5700,7 +5737,7 @@ var BUILT_IN_MATRIX = {
5700
5737
  ]
5701
5738
  },
5702
5739
  "web-reviewer": {
5703
- "shared-meta": ["shared-meta-reviewing"],
5740
+ "meta-reviewing": ["meta-reviewing-reviewing"],
5704
5741
  "web-framework": ["web-framework-react"],
5705
5742
  "web-meta-framework": ["web-meta-framework-nextjs"],
5706
5743
  "web-styling": ["web-styling-tailwind"],
@@ -5708,7 +5745,7 @@ var BUILT_IN_MATRIX = {
5708
5745
  "web-testing": ["web-testing-vitest"]
5709
5746
  },
5710
5747
  "api-reviewer": {
5711
- "shared-meta": ["shared-meta-reviewing"],
5748
+ "meta-reviewing": ["meta-reviewing-reviewing"],
5712
5749
  "api-database": ["api-database-prisma"],
5713
5750
  "api-auth": ["api-auth-nextauth"]
5714
5751
  },
@@ -5753,7 +5790,7 @@ var BUILT_IN_MATRIX = {
5753
5790
  "web-testing": ["web-testing-vitest"],
5754
5791
  "api-database": ["api-database-prisma"],
5755
5792
  "api-auth": ["api-auth-nextauth"],
5756
- "shared-meta": ["shared-meta-reviewing"]
5793
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5757
5794
  },
5758
5795
  "agent-summoner": {
5759
5796
  "web-framework": ["web-framework-react"],
@@ -5763,7 +5800,7 @@ var BUILT_IN_MATRIX = {
5763
5800
  "web-testing": ["web-testing-vitest"],
5764
5801
  "api-database": ["api-database-prisma"],
5765
5802
  "api-auth": ["api-auth-nextauth"],
5766
- "shared-meta": ["shared-meta-reviewing"]
5803
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5767
5804
  },
5768
5805
  "skill-summoner": {
5769
5806
  "web-framework": ["web-framework-react"],
@@ -5773,7 +5810,7 @@ var BUILT_IN_MATRIX = {
5773
5810
  "web-testing": ["web-testing-vitest"],
5774
5811
  "api-database": ["api-database-prisma"],
5775
5812
  "api-auth": ["api-auth-nextauth"],
5776
- "shared-meta": ["shared-meta-reviewing"]
5813
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5777
5814
  },
5778
5815
  scribe: {
5779
5816
  "web-framework": ["web-framework-react"],
@@ -5783,7 +5820,7 @@ var BUILT_IN_MATRIX = {
5783
5820
  "web-testing": ["web-testing-vitest"],
5784
5821
  "api-database": ["api-database-prisma"],
5785
5822
  "api-auth": ["api-auth-nextauth"],
5786
- "shared-meta": ["shared-meta-reviewing"]
5823
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5787
5824
  },
5788
5825
  "web-tester": {
5789
5826
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -5801,7 +5838,7 @@ var BUILT_IN_MATRIX = {
5801
5838
  "web-tooling-vite",
5802
5839
  "api-database-prisma",
5803
5840
  "api-auth-nextauth",
5804
- "shared-meta-reviewing",
5841
+ "meta-reviewing-reviewing",
5805
5842
  "web-testing-playwright-e2e"
5806
5843
  ],
5807
5844
  philosophy: "End-to-end type safety with great DX"
@@ -5809,7 +5846,7 @@ var BUILT_IN_MATRIX = {
5809
5846
  {
5810
5847
  id: "nextjs-supabase-fullstack",
5811
5848
  name: "Next.js Supabase Full-Stack",
5812
- description: "Next.js, Supabase, Drizzle, Better Auth",
5849
+ description: "Supabase, Drizzle, Better Auth",
5813
5850
  skills: {
5814
5851
  "web-developer": {
5815
5852
  "web-framework": ["web-framework-react"],
@@ -5835,7 +5872,7 @@ var BUILT_IN_MATRIX = {
5835
5872
  "api-observability": ["api-observability-axiom-pino-sentry"],
5836
5873
  "api-analytics": ["api-analytics-posthog-analytics"],
5837
5874
  "api-email": ["api-email-resend-react-email"],
5838
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5875
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5839
5876
  "shared-tooling": [
5840
5877
  "shared-tooling-eslint-prettier",
5841
5878
  "shared-tooling-typescript-config",
@@ -5851,7 +5888,7 @@ var BUILT_IN_MATRIX = {
5851
5888
  ]
5852
5889
  },
5853
5890
  "web-reviewer": {
5854
- "shared-meta": ["shared-meta-reviewing"],
5891
+ "meta-reviewing": ["meta-reviewing-reviewing"],
5855
5892
  "web-framework": ["web-framework-react"],
5856
5893
  "web-meta-framework": ["web-meta-framework-nextjs"],
5857
5894
  "web-styling": ["web-styling-scss-modules"],
@@ -5861,7 +5898,7 @@ var BUILT_IN_MATRIX = {
5861
5898
  "web-mocking": ["web-mocks-msw"]
5862
5899
  },
5863
5900
  "api-reviewer": {
5864
- "shared-meta": ["shared-meta-reviewing"],
5901
+ "meta-reviewing": ["meta-reviewing-reviewing"],
5865
5902
  "api-api": ["api-framework-hono"],
5866
5903
  "api-database": ["api-database-drizzle"],
5867
5904
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -5869,7 +5906,7 @@ var BUILT_IN_MATRIX = {
5869
5906
  "api-observability": ["api-observability-axiom-pino-sentry"]
5870
5907
  },
5871
5908
  "cli-reviewer": {
5872
- "shared-meta": ["shared-meta-cli-reviewing"],
5909
+ "meta-reviewing": ["meta-reviewing-cli-reviewing"],
5873
5910
  "cli-framework": ["cli-framework-cli-commander"]
5874
5911
  },
5875
5912
  "web-tester": {
@@ -5892,7 +5929,7 @@ var BUILT_IN_MATRIX = {
5892
5929
  "api-observability": ["api-observability-axiom-pino-sentry"],
5893
5930
  "api-analytics": ["api-analytics-posthog-analytics"],
5894
5931
  "api-email": ["api-email-resend-react-email"],
5895
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5932
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5896
5933
  "cli-framework": ["cli-framework-cli-commander"]
5897
5934
  },
5898
5935
  "web-architecture": {
@@ -5903,7 +5940,7 @@ var BUILT_IN_MATRIX = {
5903
5940
  "api-observability": ["api-observability-axiom-pino-sentry"],
5904
5941
  "api-analytics": ["api-analytics-posthog-analytics"],
5905
5942
  "api-email": ["api-email-resend-react-email"],
5906
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5943
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5907
5944
  "cli-framework": ["cli-framework-cli-commander"]
5908
5945
  },
5909
5946
  "web-researcher": {
@@ -5924,7 +5961,7 @@ var BUILT_IN_MATRIX = {
5924
5961
  "api-observability": ["api-observability-axiom-pino-sentry"],
5925
5962
  "api-analytics": ["api-analytics-posthog-analytics"],
5926
5963
  "api-email": ["api-email-resend-react-email"],
5927
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5964
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5928
5965
  "cli-framework": ["cli-framework-cli-commander"]
5929
5966
  },
5930
5967
  "pattern-scout": {
@@ -5943,7 +5980,7 @@ var BUILT_IN_MATRIX = {
5943
5980
  "api-observability": ["api-observability-axiom-pino-sentry"],
5944
5981
  "api-analytics": ["api-analytics-posthog-analytics"],
5945
5982
  "api-email": ["api-email-resend-react-email"],
5946
- "shared-ci-cd": ["shared-ci-cd-github-actions"]
5983
+ "infra-ci-cd": ["infra-ci-cd-github-actions"]
5947
5984
  },
5948
5985
  "web-pattern-critique": {
5949
5986
  "web-framework": ["web-framework-react"],
@@ -5961,8 +5998,8 @@ var BUILT_IN_MATRIX = {
5961
5998
  "api-observability": ["api-observability-axiom-pino-sentry"],
5962
5999
  "api-analytics": ["api-analytics-posthog-analytics"],
5963
6000
  "api-email": ["api-email-resend-react-email"],
5964
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
5965
- "shared-meta": ["shared-meta-reviewing"]
6001
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6002
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5966
6003
  },
5967
6004
  "agent-summoner": {
5968
6005
  "web-framework": ["web-framework-react"],
@@ -5980,9 +6017,9 @@ var BUILT_IN_MATRIX = {
5980
6017
  "api-observability": ["api-observability-axiom-pino-sentry"],
5981
6018
  "api-analytics": ["api-analytics-posthog-analytics"],
5982
6019
  "api-email": ["api-email-resend-react-email"],
5983
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6020
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
5984
6021
  "cli-framework": ["cli-framework-cli-commander"],
5985
- "shared-meta": ["shared-meta-reviewing"]
6022
+ "meta-reviewing": ["meta-reviewing-reviewing"]
5986
6023
  },
5987
6024
  "skill-summoner": {
5988
6025
  "web-framework": ["web-framework-react"],
@@ -6000,9 +6037,9 @@ var BUILT_IN_MATRIX = {
6000
6037
  "api-observability": ["api-observability-axiom-pino-sentry"],
6001
6038
  "api-analytics": ["api-analytics-posthog-analytics"],
6002
6039
  "api-email": ["api-email-resend-react-email"],
6003
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6040
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6004
6041
  "cli-framework": ["cli-framework-cli-commander"],
6005
- "shared-meta": ["shared-meta-reviewing"]
6042
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6006
6043
  },
6007
6044
  scribe: {
6008
6045
  "web-framework": ["web-framework-react"],
@@ -6020,9 +6057,9 @@ var BUILT_IN_MATRIX = {
6020
6057
  "api-observability": ["api-observability-axiom-pino-sentry"],
6021
6058
  "api-analytics": ["api-analytics-posthog-analytics"],
6022
6059
  "api-email": ["api-email-resend-react-email"],
6023
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6060
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6024
6061
  "cli-framework": ["cli-framework-cli-commander"],
6025
- "shared-meta": ["shared-meta-reviewing"]
6062
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6026
6063
  },
6027
6064
  "cli-tester": {}
6028
6065
  },
@@ -6046,10 +6083,10 @@ var BUILT_IN_MATRIX = {
6046
6083
  "api-observability-axiom-pino-sentry",
6047
6084
  "api-analytics-posthog-analytics",
6048
6085
  "api-email-resend-react-email",
6049
- "shared-ci-cd-github-actions",
6086
+ "infra-ci-cd-github-actions",
6050
6087
  "cli-framework-cli-commander",
6051
- "shared-meta-reviewing",
6052
- "shared-meta-cli-reviewing",
6088
+ "meta-reviewing-reviewing",
6089
+ "meta-reviewing-cli-reviewing",
6053
6090
  "web-testing-playwright-e2e"
6054
6091
  ],
6055
6092
  philosophy: "Full-stack with Supabase backend-as-a-service"
@@ -6057,7 +6094,7 @@ var BUILT_IN_MATRIX = {
6057
6094
  {
6058
6095
  id: "nextjs-turborepo-fullstack",
6059
6096
  name: "Next.js Turborepo Full-Stack",
6060
- description: "Next.js, Turborepo, pnpm Workspaces, Hono, Drizzle",
6097
+ description: "Turborepo, pnpm Workspaces, Hono, Drizzle",
6061
6098
  skills: {
6062
6099
  "web-developer": {
6063
6100
  "web-framework": ["web-framework-react"],
@@ -6083,7 +6120,7 @@ var BUILT_IN_MATRIX = {
6083
6120
  "api-observability": ["api-observability-axiom-pino-sentry"],
6084
6121
  "api-analytics": ["api-analytics-posthog-analytics"],
6085
6122
  "api-email": ["api-email-resend-react-email"],
6086
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6123
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6087
6124
  "shared-tooling": [
6088
6125
  "shared-tooling-eslint-prettier",
6089
6126
  "shared-tooling-typescript-config",
@@ -6101,7 +6138,7 @@ var BUILT_IN_MATRIX = {
6101
6138
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6102
6139
  },
6103
6140
  "web-reviewer": {
6104
- "shared-meta": ["shared-meta-reviewing"],
6141
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6105
6142
  "web-framework": ["web-framework-react"],
6106
6143
  "web-meta-framework": ["web-meta-framework-nextjs"],
6107
6144
  "web-styling": ["web-styling-scss-modules"],
@@ -6112,7 +6149,7 @@ var BUILT_IN_MATRIX = {
6112
6149
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6113
6150
  },
6114
6151
  "api-reviewer": {
6115
- "shared-meta": ["shared-meta-reviewing"],
6152
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6116
6153
  "api-api": ["api-framework-hono"],
6117
6154
  "api-database": ["api-database-drizzle"],
6118
6155
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -6120,7 +6157,7 @@ var BUILT_IN_MATRIX = {
6120
6157
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6121
6158
  },
6122
6159
  "cli-reviewer": {
6123
- "shared-meta": ["shared-meta-cli-reviewing"],
6160
+ "meta-reviewing": ["meta-reviewing-cli-reviewing"],
6124
6161
  "cli-framework": ["cli-framework-cli-commander"],
6125
6162
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6126
6163
  },
@@ -6144,7 +6181,7 @@ var BUILT_IN_MATRIX = {
6144
6181
  "api-observability": ["api-observability-axiom-pino-sentry"],
6145
6182
  "api-analytics": ["api-analytics-posthog-analytics"],
6146
6183
  "api-email": ["api-email-resend-react-email"],
6147
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6184
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6148
6185
  "cli-framework": ["cli-framework-cli-commander"],
6149
6186
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6150
6187
  },
@@ -6155,7 +6192,7 @@ var BUILT_IN_MATRIX = {
6155
6192
  "api-observability": ["api-observability-axiom-pino-sentry"],
6156
6193
  "api-analytics": ["api-analytics-posthog-analytics"],
6157
6194
  "api-email": ["api-email-resend-react-email"],
6158
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6195
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6159
6196
  "cli-framework": ["cli-framework-cli-commander"],
6160
6197
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6161
6198
  },
@@ -6177,7 +6214,7 @@ var BUILT_IN_MATRIX = {
6177
6214
  "api-observability": ["api-observability-axiom-pino-sentry"],
6178
6215
  "api-analytics": ["api-analytics-posthog-analytics"],
6179
6216
  "api-email": ["api-email-resend-react-email"],
6180
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6217
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6181
6218
  "cli-framework": ["cli-framework-cli-commander"],
6182
6219
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6183
6220
  },
@@ -6196,7 +6233,7 @@ var BUILT_IN_MATRIX = {
6196
6233
  "api-observability": ["api-observability-axiom-pino-sentry"],
6197
6234
  "api-analytics": ["api-analytics-posthog-analytics"],
6198
6235
  "api-email": ["api-email-resend-react-email"],
6199
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6236
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6200
6237
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6201
6238
  },
6202
6239
  "web-pattern-critique": {
@@ -6214,8 +6251,8 @@ var BUILT_IN_MATRIX = {
6214
6251
  "api-observability": ["api-observability-axiom-pino-sentry"],
6215
6252
  "api-analytics": ["api-analytics-posthog-analytics"],
6216
6253
  "api-email": ["api-email-resend-react-email"],
6217
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6218
- "shared-meta": ["shared-meta-reviewing"],
6254
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6255
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6219
6256
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6220
6257
  },
6221
6258
  "agent-summoner": {
@@ -6233,9 +6270,9 @@ var BUILT_IN_MATRIX = {
6233
6270
  "api-observability": ["api-observability-axiom-pino-sentry"],
6234
6271
  "api-analytics": ["api-analytics-posthog-analytics"],
6235
6272
  "api-email": ["api-email-resend-react-email"],
6236
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6273
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6237
6274
  "cli-framework": ["cli-framework-cli-commander"],
6238
- "shared-meta": ["shared-meta-reviewing"],
6275
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6239
6276
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6240
6277
  },
6241
6278
  "skill-summoner": {
@@ -6253,9 +6290,9 @@ var BUILT_IN_MATRIX = {
6253
6290
  "api-observability": ["api-observability-axiom-pino-sentry"],
6254
6291
  "api-analytics": ["api-analytics-posthog-analytics"],
6255
6292
  "api-email": ["api-email-resend-react-email"],
6256
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6293
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6257
6294
  "cli-framework": ["cli-framework-cli-commander"],
6258
- "shared-meta": ["shared-meta-reviewing"],
6295
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6259
6296
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6260
6297
  },
6261
6298
  scribe: {
@@ -6273,9 +6310,9 @@ var BUILT_IN_MATRIX = {
6273
6310
  "api-observability": ["api-observability-axiom-pino-sentry"],
6274
6311
  "api-analytics": ["api-analytics-posthog-analytics"],
6275
6312
  "api-email": ["api-email-resend-react-email"],
6276
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6313
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6277
6314
  "cli-framework": ["cli-framework-cli-commander"],
6278
- "shared-meta": ["shared-meta-reviewing"],
6315
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6279
6316
  "shared-monorepo": ["shared-monorepo-turborepo", "shared-monorepo-pnpm-workspaces"]
6280
6317
  },
6281
6318
  "cli-tester": {}
@@ -6301,10 +6338,10 @@ var BUILT_IN_MATRIX = {
6301
6338
  "api-observability-axiom-pino-sentry",
6302
6339
  "api-analytics-posthog-analytics",
6303
6340
  "api-email-resend-react-email",
6304
- "shared-ci-cd-github-actions",
6341
+ "infra-ci-cd-github-actions",
6305
6342
  "cli-framework-cli-commander",
6306
- "shared-meta-reviewing",
6307
- "shared-meta-cli-reviewing",
6343
+ "meta-reviewing-reviewing",
6344
+ "meta-reviewing-cli-reviewing",
6308
6345
  "web-testing-playwright-e2e"
6309
6346
  ],
6310
6347
  philosophy: "Monorepo architecture with Turborepo and pnpm"
@@ -6312,7 +6349,7 @@ var BUILT_IN_MATRIX = {
6312
6349
  {
6313
6350
  id: "react-old-school",
6314
6351
  name: "React Old School",
6315
- description: "React, Redux Toolkit, SCSS Modules, Vite, Vitest",
6352
+ description: "Redux Toolkit, SCSS Modules, Vite, Vitest",
6316
6353
  skills: {
6317
6354
  "web-developer": {
6318
6355
  "web-framework": ["web-framework-react"],
@@ -6328,7 +6365,7 @@ var BUILT_IN_MATRIX = {
6328
6365
  "web-tooling": ["web-tooling-vite"]
6329
6366
  },
6330
6367
  "web-reviewer": {
6331
- "shared-meta": ["shared-meta-reviewing"],
6368
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6332
6369
  "web-framework": ["web-framework-react"],
6333
6370
  "web-client-state": ["web-state-redux-toolkit"],
6334
6371
  "web-styling": ["web-styling-scss-modules"],
@@ -6362,7 +6399,7 @@ var BUILT_IN_MATRIX = {
6362
6399
  "web-styling": ["web-styling-scss-modules"],
6363
6400
  "web-routing": ["web-routing-react-router"],
6364
6401
  "web-testing": ["web-testing-vitest"],
6365
- "shared-meta": ["shared-meta-reviewing"]
6402
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6366
6403
  },
6367
6404
  "agent-summoner": {
6368
6405
  "web-framework": ["web-framework-react"],
@@ -6370,7 +6407,7 @@ var BUILT_IN_MATRIX = {
6370
6407
  "web-styling": ["web-styling-scss-modules"],
6371
6408
  "web-routing": ["web-routing-react-router"],
6372
6409
  "web-testing": ["web-testing-vitest"],
6373
- "shared-meta": ["shared-meta-reviewing"]
6410
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6374
6411
  },
6375
6412
  "skill-summoner": {
6376
6413
  "web-framework": ["web-framework-react"],
@@ -6378,7 +6415,7 @@ var BUILT_IN_MATRIX = {
6378
6415
  "web-styling": ["web-styling-scss-modules"],
6379
6416
  "web-routing": ["web-routing-react-router"],
6380
6417
  "web-testing": ["web-testing-vitest"],
6381
- "shared-meta": ["shared-meta-reviewing"]
6418
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6382
6419
  },
6383
6420
  scribe: {
6384
6421
  "web-framework": ["web-framework-react"],
@@ -6386,7 +6423,7 @@ var BUILT_IN_MATRIX = {
6386
6423
  "web-styling": ["web-styling-scss-modules"],
6387
6424
  "web-routing": ["web-routing-react-router"],
6388
6425
  "web-testing": ["web-testing-vitest"],
6389
- "shared-meta": ["shared-meta-reviewing"]
6426
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6390
6427
  },
6391
6428
  "web-tester": {
6392
6429
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -6402,7 +6439,7 @@ var BUILT_IN_MATRIX = {
6402
6439
  "shared-tooling-typescript-config",
6403
6440
  "shared-tooling-git-hooks",
6404
6441
  "web-tooling-vite",
6405
- "shared-meta-reviewing",
6442
+ "meta-reviewing-reviewing",
6406
6443
  "web-testing-playwright-e2e"
6407
6444
  ],
6408
6445
  philosophy: "Classic React with proven patterns"
@@ -6410,7 +6447,7 @@ var BUILT_IN_MATRIX = {
6410
6447
  {
6411
6448
  id: "react-hono-fullstack",
6412
6449
  name: "React Hono Full-Stack",
6413
- description: "React, Vite, Hono, Drizzle, Better Auth",
6450
+ description: "Vite, Hono, Drizzle, Better Auth",
6414
6451
  skills: {
6415
6452
  "web-developer": {
6416
6453
  "web-framework": ["web-framework-react"],
@@ -6434,7 +6471,7 @@ var BUILT_IN_MATRIX = {
6434
6471
  "api-observability": ["api-observability-axiom-pino-sentry"],
6435
6472
  "api-analytics": ["api-analytics-posthog-analytics"],
6436
6473
  "api-email": ["api-email-resend-react-email"],
6437
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6474
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6438
6475
  "shared-tooling": [
6439
6476
  "shared-tooling-eslint-prettier",
6440
6477
  "shared-tooling-typescript-config",
@@ -6450,7 +6487,7 @@ var BUILT_IN_MATRIX = {
6450
6487
  ]
6451
6488
  },
6452
6489
  "web-reviewer": {
6453
- "shared-meta": ["shared-meta-reviewing"],
6490
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6454
6491
  "web-framework": ["web-framework-react"],
6455
6492
  "web-styling": ["web-styling-scss-modules"],
6456
6493
  "web-client-state": ["web-state-zustand"],
@@ -6459,14 +6496,14 @@ var BUILT_IN_MATRIX = {
6459
6496
  "web-mocking": ["web-mocks-msw"]
6460
6497
  },
6461
6498
  "api-reviewer": {
6462
- "shared-meta": ["shared-meta-reviewing"],
6499
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6463
6500
  "api-api": ["api-framework-hono"],
6464
6501
  "api-database": ["api-database-drizzle"],
6465
6502
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6466
6503
  "api-observability": ["api-observability-axiom-pino-sentry"]
6467
6504
  },
6468
6505
  "cli-reviewer": {
6469
- "shared-meta": ["shared-meta-cli-reviewing"],
6506
+ "meta-reviewing": ["meta-reviewing-cli-reviewing"],
6470
6507
  "cli-framework": ["cli-framework-cli-commander"]
6471
6508
  },
6472
6509
  "web-tester": {
@@ -6487,7 +6524,7 @@ var BUILT_IN_MATRIX = {
6487
6524
  "api-observability": ["api-observability-axiom-pino-sentry"],
6488
6525
  "api-analytics": ["api-analytics-posthog-analytics"],
6489
6526
  "api-email": ["api-email-resend-react-email"],
6490
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6527
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6491
6528
  "cli-framework": ["cli-framework-cli-commander"]
6492
6529
  },
6493
6530
  "web-architecture": {
@@ -6497,7 +6534,7 @@ var BUILT_IN_MATRIX = {
6497
6534
  "api-observability": ["api-observability-axiom-pino-sentry"],
6498
6535
  "api-analytics": ["api-analytics-posthog-analytics"],
6499
6536
  "api-email": ["api-email-resend-react-email"],
6500
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6537
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6501
6538
  "cli-framework": ["cli-framework-cli-commander"]
6502
6539
  },
6503
6540
  "web-researcher": {
@@ -6516,7 +6553,7 @@ var BUILT_IN_MATRIX = {
6516
6553
  "api-observability": ["api-observability-axiom-pino-sentry"],
6517
6554
  "api-analytics": ["api-analytics-posthog-analytics"],
6518
6555
  "api-email": ["api-email-resend-react-email"],
6519
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6556
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6520
6557
  "cli-framework": ["cli-framework-cli-commander"]
6521
6558
  },
6522
6559
  "pattern-scout": {
@@ -6533,7 +6570,7 @@ var BUILT_IN_MATRIX = {
6533
6570
  "api-observability": ["api-observability-axiom-pino-sentry"],
6534
6571
  "api-analytics": ["api-analytics-posthog-analytics"],
6535
6572
  "api-email": ["api-email-resend-react-email"],
6536
- "shared-ci-cd": ["shared-ci-cd-github-actions"]
6573
+ "infra-ci-cd": ["infra-ci-cd-github-actions"]
6537
6574
  },
6538
6575
  "web-pattern-critique": {
6539
6576
  "web-framework": ["web-framework-react"],
@@ -6549,8 +6586,8 @@ var BUILT_IN_MATRIX = {
6549
6586
  "api-observability": ["api-observability-axiom-pino-sentry"],
6550
6587
  "api-analytics": ["api-analytics-posthog-analytics"],
6551
6588
  "api-email": ["api-email-resend-react-email"],
6552
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6553
- "shared-meta": ["shared-meta-reviewing"]
6589
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6590
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6554
6591
  },
6555
6592
  "agent-summoner": {
6556
6593
  "web-framework": ["web-framework-react"],
@@ -6566,9 +6603,9 @@ var BUILT_IN_MATRIX = {
6566
6603
  "api-observability": ["api-observability-axiom-pino-sentry"],
6567
6604
  "api-analytics": ["api-analytics-posthog-analytics"],
6568
6605
  "api-email": ["api-email-resend-react-email"],
6569
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6606
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6570
6607
  "cli-framework": ["cli-framework-cli-commander"],
6571
- "shared-meta": ["shared-meta-reviewing"]
6608
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6572
6609
  },
6573
6610
  "skill-summoner": {
6574
6611
  "web-framework": ["web-framework-react"],
@@ -6584,9 +6621,9 @@ var BUILT_IN_MATRIX = {
6584
6621
  "api-observability": ["api-observability-axiom-pino-sentry"],
6585
6622
  "api-analytics": ["api-analytics-posthog-analytics"],
6586
6623
  "api-email": ["api-email-resend-react-email"],
6587
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6624
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6588
6625
  "cli-framework": ["cli-framework-cli-commander"],
6589
- "shared-meta": ["shared-meta-reviewing"]
6626
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6590
6627
  },
6591
6628
  scribe: {
6592
6629
  "web-framework": ["web-framework-react"],
@@ -6602,9 +6639,9 @@ var BUILT_IN_MATRIX = {
6602
6639
  "api-observability": ["api-observability-axiom-pino-sentry"],
6603
6640
  "api-analytics": ["api-analytics-posthog-analytics"],
6604
6641
  "api-email": ["api-email-resend-react-email"],
6605
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
6642
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
6606
6643
  "cli-framework": ["cli-framework-cli-commander"],
6607
- "shared-meta": ["shared-meta-reviewing"]
6644
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6608
6645
  },
6609
6646
  "cli-tester": {}
6610
6647
  },
@@ -6626,10 +6663,10 @@ var BUILT_IN_MATRIX = {
6626
6663
  "api-observability-axiom-pino-sentry",
6627
6664
  "api-analytics-posthog-analytics",
6628
6665
  "api-email-resend-react-email",
6629
- "shared-ci-cd-github-actions",
6666
+ "infra-ci-cd-github-actions",
6630
6667
  "cli-framework-cli-commander",
6631
- "shared-meta-reviewing",
6632
- "shared-meta-cli-reviewing",
6668
+ "meta-reviewing-reviewing",
6669
+ "meta-reviewing-cli-reviewing",
6633
6670
  "web-testing-playwright-e2e"
6634
6671
  ],
6635
6672
  philosophy: "React SPA with Hono backend"
@@ -6637,7 +6674,7 @@ var BUILT_IN_MATRIX = {
6637
6674
  {
6638
6675
  id: "remix-fullstack",
6639
6676
  name: "Remix Full-Stack",
6640
- description: "Remix, Hono, Drizzle, Better Auth",
6677
+ description: "Hono, Drizzle, Better Auth",
6641
6678
  skills: {
6642
6679
  "web-developer": {
6643
6680
  "web-framework": ["web-framework-react"],
@@ -6662,13 +6699,13 @@ var BUILT_IN_MATRIX = {
6662
6699
  ]
6663
6700
  },
6664
6701
  "web-reviewer": {
6665
- "shared-meta": ["shared-meta-reviewing"],
6702
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6666
6703
  "web-framework": ["web-framework-react"],
6667
6704
  "web-meta-framework": ["web-meta-framework-remix"],
6668
6705
  "web-testing": ["web-testing-vitest"]
6669
6706
  },
6670
6707
  "api-reviewer": {
6671
- "shared-meta": ["shared-meta-reviewing"],
6708
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6672
6709
  "api-api": ["api-framework-hono"],
6673
6710
  "api-database": ["api-database-drizzle"],
6674
6711
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -6717,7 +6754,7 @@ var BUILT_IN_MATRIX = {
6717
6754
  "api-database": ["api-database-drizzle"],
6718
6755
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6719
6756
  "api-observability": ["api-observability-axiom-pino-sentry"],
6720
- "shared-meta": ["shared-meta-reviewing"]
6757
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6721
6758
  },
6722
6759
  "agent-summoner": {
6723
6760
  "web-framework": ["web-framework-react"],
@@ -6727,7 +6764,7 @@ var BUILT_IN_MATRIX = {
6727
6764
  "api-database": ["api-database-drizzle"],
6728
6765
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6729
6766
  "api-observability": ["api-observability-axiom-pino-sentry"],
6730
- "shared-meta": ["shared-meta-reviewing"]
6767
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6731
6768
  },
6732
6769
  "skill-summoner": {
6733
6770
  "web-framework": ["web-framework-react"],
@@ -6737,7 +6774,7 @@ var BUILT_IN_MATRIX = {
6737
6774
  "api-database": ["api-database-drizzle"],
6738
6775
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6739
6776
  "api-observability": ["api-observability-axiom-pino-sentry"],
6740
- "shared-meta": ["shared-meta-reviewing"]
6777
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6741
6778
  },
6742
6779
  scribe: {
6743
6780
  "web-framework": ["web-framework-react"],
@@ -6747,7 +6784,7 @@ var BUILT_IN_MATRIX = {
6747
6784
  "api-database": ["api-database-drizzle"],
6748
6785
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6749
6786
  "api-observability": ["api-observability-axiom-pino-sentry"],
6750
- "shared-meta": ["shared-meta-reviewing"]
6787
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6751
6788
  },
6752
6789
  "web-tester": {
6753
6790
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -6765,7 +6802,7 @@ var BUILT_IN_MATRIX = {
6765
6802
  "api-database-drizzle",
6766
6803
  "api-auth-better-auth-drizzle-hono",
6767
6804
  "api-observability-axiom-pino-sentry",
6768
- "shared-meta-reviewing",
6805
+ "meta-reviewing-reviewing",
6769
6806
  "web-testing-playwright-e2e"
6770
6807
  ],
6771
6808
  philosophy: "Web standards and excellent forms handling"
@@ -6773,7 +6810,7 @@ var BUILT_IN_MATRIX = {
6773
6810
  {
6774
6811
  id: "sveltekit-fullstack",
6775
6812
  name: "SvelteKit Full-Stack",
6776
- description: "SvelteKit, Hono, Drizzle, Better Auth",
6813
+ description: "Hono, Drizzle, Better Auth",
6777
6814
  skills: {
6778
6815
  "web-developer": {
6779
6816
  "web-framework": ["web-framework-svelte"],
@@ -6798,13 +6835,13 @@ var BUILT_IN_MATRIX = {
6798
6835
  ]
6799
6836
  },
6800
6837
  "web-reviewer": {
6801
- "shared-meta": ["shared-meta-reviewing"],
6838
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6802
6839
  "web-framework": ["web-framework-svelte"],
6803
6840
  "web-meta-framework": ["web-meta-framework-sveltekit"],
6804
6841
  "web-testing": ["web-testing-vitest"]
6805
6842
  },
6806
6843
  "api-reviewer": {
6807
- "shared-meta": ["shared-meta-reviewing"],
6844
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6808
6845
  "api-api": ["api-framework-hono"],
6809
6846
  "api-database": ["api-database-drizzle"],
6810
6847
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -6853,7 +6890,7 @@ var BUILT_IN_MATRIX = {
6853
6890
  "api-database": ["api-database-drizzle"],
6854
6891
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6855
6892
  "api-observability": ["api-observability-axiom-pino-sentry"],
6856
- "shared-meta": ["shared-meta-reviewing"]
6893
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6857
6894
  },
6858
6895
  "agent-summoner": {
6859
6896
  "web-framework": ["web-framework-svelte"],
@@ -6863,7 +6900,7 @@ var BUILT_IN_MATRIX = {
6863
6900
  "api-database": ["api-database-drizzle"],
6864
6901
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6865
6902
  "api-observability": ["api-observability-axiom-pino-sentry"],
6866
- "shared-meta": ["shared-meta-reviewing"]
6903
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6867
6904
  },
6868
6905
  "skill-summoner": {
6869
6906
  "web-framework": ["web-framework-svelte"],
@@ -6873,7 +6910,7 @@ var BUILT_IN_MATRIX = {
6873
6910
  "api-database": ["api-database-drizzle"],
6874
6911
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6875
6912
  "api-observability": ["api-observability-axiom-pino-sentry"],
6876
- "shared-meta": ["shared-meta-reviewing"]
6913
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6877
6914
  },
6878
6915
  scribe: {
6879
6916
  "web-framework": ["web-framework-svelte"],
@@ -6883,7 +6920,7 @@ var BUILT_IN_MATRIX = {
6883
6920
  "api-database": ["api-database-drizzle"],
6884
6921
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6885
6922
  "api-observability": ["api-observability-axiom-pino-sentry"],
6886
- "shared-meta": ["shared-meta-reviewing"]
6923
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6887
6924
  },
6888
6925
  "web-tester": {
6889
6926
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -6901,7 +6938,7 @@ var BUILT_IN_MATRIX = {
6901
6938
  "api-database-drizzle",
6902
6939
  "api-auth-better-auth-drizzle-hono",
6903
6940
  "api-observability-axiom-pino-sentry",
6904
- "shared-meta-reviewing",
6941
+ "meta-reviewing-reviewing",
6905
6942
  "web-testing-playwright-e2e"
6906
6943
  ],
6907
6944
  philosophy: "Write less, do more with compiler magic"
@@ -6909,7 +6946,7 @@ var BUILT_IN_MATRIX = {
6909
6946
  {
6910
6947
  id: "solidjs-fullstack",
6911
6948
  name: "SolidJS Full-Stack",
6912
- description: "SolidJS, Hono, Drizzle, Better Auth, Vitest",
6949
+ description: "Hono, Drizzle, Better Auth, Vitest",
6913
6950
  skills: {
6914
6951
  "web-developer": {
6915
6952
  "web-framework": ["web-framework-solidjs"],
@@ -6933,12 +6970,12 @@ var BUILT_IN_MATRIX = {
6933
6970
  ]
6934
6971
  },
6935
6972
  "web-reviewer": {
6936
- "shared-meta": ["shared-meta-reviewing"],
6973
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6937
6974
  "web-framework": ["web-framework-solidjs"],
6938
6975
  "web-testing": ["web-testing-vitest"]
6939
6976
  },
6940
6977
  "api-reviewer": {
6941
- "shared-meta": ["shared-meta-reviewing"],
6978
+ "meta-reviewing": ["meta-reviewing-reviewing"],
6942
6979
  "api-api": ["api-framework-hono"],
6943
6980
  "api-database": ["api-database-drizzle"],
6944
6981
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -6983,7 +7020,7 @@ var BUILT_IN_MATRIX = {
6983
7020
  "api-database": ["api-database-drizzle"],
6984
7021
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6985
7022
  "api-observability": ["api-observability-axiom-pino-sentry"],
6986
- "shared-meta": ["shared-meta-reviewing"]
7023
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6987
7024
  },
6988
7025
  "agent-summoner": {
6989
7026
  "web-framework": ["web-framework-solidjs"],
@@ -6992,7 +7029,7 @@ var BUILT_IN_MATRIX = {
6992
7029
  "api-database": ["api-database-drizzle"],
6993
7030
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
6994
7031
  "api-observability": ["api-observability-axiom-pino-sentry"],
6995
- "shared-meta": ["shared-meta-reviewing"]
7032
+ "meta-reviewing": ["meta-reviewing-reviewing"]
6996
7033
  },
6997
7034
  "skill-summoner": {
6998
7035
  "web-framework": ["web-framework-solidjs"],
@@ -7001,7 +7038,7 @@ var BUILT_IN_MATRIX = {
7001
7038
  "api-database": ["api-database-drizzle"],
7002
7039
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7003
7040
  "api-observability": ["api-observability-axiom-pino-sentry"],
7004
- "shared-meta": ["shared-meta-reviewing"]
7041
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7005
7042
  },
7006
7043
  scribe: {
7007
7044
  "web-framework": ["web-framework-solidjs"],
@@ -7010,7 +7047,7 @@ var BUILT_IN_MATRIX = {
7010
7047
  "api-database": ["api-database-drizzle"],
7011
7048
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7012
7049
  "api-observability": ["api-observability-axiom-pino-sentry"],
7013
- "shared-meta": ["shared-meta-reviewing"]
7050
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7014
7051
  },
7015
7052
  "web-tester": {
7016
7053
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -7027,7 +7064,7 @@ var BUILT_IN_MATRIX = {
7027
7064
  "api-database-drizzle",
7028
7065
  "api-auth-better-auth-drizzle-hono",
7029
7066
  "api-observability-axiom-pino-sentry",
7030
- "shared-meta-reviewing",
7067
+ "meta-reviewing-reviewing",
7031
7068
  "web-testing-playwright-e2e"
7032
7069
  ],
7033
7070
  philosophy: "Maximum performance with minimal overhead"
@@ -7035,7 +7072,7 @@ var BUILT_IN_MATRIX = {
7035
7072
  {
7036
7073
  id: "astro-content-fullstack",
7037
7074
  name: "Astro Content Full-Stack",
7038
- description: "Astro, Hono, Drizzle",
7075
+ description: "Hono, Drizzle",
7039
7076
  skills: {
7040
7077
  "web-developer": {
7041
7078
  "web-meta-framework": ["web-meta-framework-astro"],
@@ -7059,12 +7096,12 @@ var BUILT_IN_MATRIX = {
7059
7096
  ]
7060
7097
  },
7061
7098
  "web-reviewer": {
7062
- "shared-meta": ["shared-meta-reviewing"],
7099
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7063
7100
  "web-meta-framework": ["web-meta-framework-astro"],
7064
7101
  "web-testing": ["web-testing-vitest"]
7065
7102
  },
7066
7103
  "api-reviewer": {
7067
- "shared-meta": ["shared-meta-reviewing"],
7104
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7068
7105
  "api-api": ["api-framework-hono"],
7069
7106
  "api-database": ["api-database-drizzle"],
7070
7107
  "api-observability": ["api-observability-axiom-pino-sentry"],
@@ -7109,7 +7146,7 @@ var BUILT_IN_MATRIX = {
7109
7146
  "api-database": ["api-database-drizzle"],
7110
7147
  "api-observability": ["api-observability-axiom-pino-sentry"],
7111
7148
  "api-cms": ["api-cms-sanity"],
7112
- "shared-meta": ["shared-meta-reviewing"]
7149
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7113
7150
  },
7114
7151
  "agent-summoner": {
7115
7152
  "web-meta-framework": ["web-meta-framework-astro"],
@@ -7118,7 +7155,7 @@ var BUILT_IN_MATRIX = {
7118
7155
  "api-database": ["api-database-drizzle"],
7119
7156
  "api-observability": ["api-observability-axiom-pino-sentry"],
7120
7157
  "api-cms": ["api-cms-sanity"],
7121
- "shared-meta": ["shared-meta-reviewing"]
7158
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7122
7159
  },
7123
7160
  "skill-summoner": {
7124
7161
  "web-meta-framework": ["web-meta-framework-astro"],
@@ -7127,7 +7164,7 @@ var BUILT_IN_MATRIX = {
7127
7164
  "api-database": ["api-database-drizzle"],
7128
7165
  "api-observability": ["api-observability-axiom-pino-sentry"],
7129
7166
  "api-cms": ["api-cms-sanity"],
7130
- "shared-meta": ["shared-meta-reviewing"]
7167
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7131
7168
  },
7132
7169
  scribe: {
7133
7170
  "web-meta-framework": ["web-meta-framework-astro"],
@@ -7136,7 +7173,7 @@ var BUILT_IN_MATRIX = {
7136
7173
  "api-database": ["api-database-drizzle"],
7137
7174
  "api-observability": ["api-observability-axiom-pino-sentry"],
7138
7175
  "api-cms": ["api-cms-sanity"],
7139
- "shared-meta": ["shared-meta-reviewing"]
7176
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7140
7177
  },
7141
7178
  "web-tester": {
7142
7179
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -7153,7 +7190,7 @@ var BUILT_IN_MATRIX = {
7153
7190
  "api-database-drizzle",
7154
7191
  "api-observability-axiom-pino-sentry",
7155
7192
  "api-cms-sanity",
7156
- "shared-meta-reviewing",
7193
+ "meta-reviewing-reviewing",
7157
7194
  "web-testing-playwright-e2e"
7158
7195
  ],
7159
7196
  philosophy: "Ship less JavaScript, faster by default"
@@ -7161,7 +7198,7 @@ var BUILT_IN_MATRIX = {
7161
7198
  {
7162
7199
  id: "vue-modern-fullstack",
7163
7200
  name: "Vue Modern Full-Stack",
7164
- description: "Vue, Pinia, Hono, Drizzle, Better Auth",
7201
+ description: "Pinia, Hono, Drizzle, Better Auth",
7165
7202
  skills: {
7166
7203
  "web-developer": {
7167
7204
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7186,13 +7223,13 @@ var BUILT_IN_MATRIX = {
7186
7223
  ]
7187
7224
  },
7188
7225
  "web-reviewer": {
7189
- "shared-meta": ["shared-meta-reviewing"],
7226
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7190
7227
  "web-framework": ["web-framework-vue-composition-api"],
7191
7228
  "web-client-state": ["web-state-pinia"],
7192
7229
  "web-testing": ["web-testing-vitest"]
7193
7230
  },
7194
7231
  "api-reviewer": {
7195
- "shared-meta": ["shared-meta-reviewing"],
7232
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7196
7233
  "api-api": ["api-framework-hono"],
7197
7234
  "api-database": ["api-database-drizzle"],
7198
7235
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -7241,7 +7278,7 @@ var BUILT_IN_MATRIX = {
7241
7278
  "api-database": ["api-database-drizzle"],
7242
7279
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7243
7280
  "api-observability": ["api-observability-axiom-pino-sentry"],
7244
- "shared-meta": ["shared-meta-reviewing"]
7281
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7245
7282
  },
7246
7283
  "agent-summoner": {
7247
7284
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7251,7 +7288,7 @@ var BUILT_IN_MATRIX = {
7251
7288
  "api-database": ["api-database-drizzle"],
7252
7289
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7253
7290
  "api-observability": ["api-observability-axiom-pino-sentry"],
7254
- "shared-meta": ["shared-meta-reviewing"]
7291
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7255
7292
  },
7256
7293
  "skill-summoner": {
7257
7294
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7261,7 +7298,7 @@ var BUILT_IN_MATRIX = {
7261
7298
  "api-database": ["api-database-drizzle"],
7262
7299
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7263
7300
  "api-observability": ["api-observability-axiom-pino-sentry"],
7264
- "shared-meta": ["shared-meta-reviewing"]
7301
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7265
7302
  },
7266
7303
  scribe: {
7267
7304
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7271,7 +7308,7 @@ var BUILT_IN_MATRIX = {
7271
7308
  "api-database": ["api-database-drizzle"],
7272
7309
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7273
7310
  "api-observability": ["api-observability-axiom-pino-sentry"],
7274
- "shared-meta": ["shared-meta-reviewing"]
7311
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7275
7312
  },
7276
7313
  "web-tester": {
7277
7314
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -7289,7 +7326,7 @@ var BUILT_IN_MATRIX = {
7289
7326
  "api-database-drizzle",
7290
7327
  "api-auth-better-auth-drizzle-hono",
7291
7328
  "api-observability-axiom-pino-sentry",
7292
- "shared-meta-reviewing",
7329
+ "meta-reviewing-reviewing",
7293
7330
  "web-testing-playwright-e2e"
7294
7331
  ],
7295
7332
  philosophy: "Progressive and approachable"
@@ -7297,7 +7334,7 @@ var BUILT_IN_MATRIX = {
7297
7334
  {
7298
7335
  id: "nuxt-fullstack",
7299
7336
  name: "Nuxt Full-Stack",
7300
- description: "Vue, Nuxt, Hono, Drizzle, Better Auth",
7337
+ description: "Hono, Drizzle, Better Auth",
7301
7338
  skills: {
7302
7339
  "web-developer": {
7303
7340
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7323,14 +7360,14 @@ var BUILT_IN_MATRIX = {
7323
7360
  ]
7324
7361
  },
7325
7362
  "web-reviewer": {
7326
- "shared-meta": ["shared-meta-reviewing"],
7363
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7327
7364
  "web-framework": ["web-framework-vue-composition-api"],
7328
7365
  "web-meta-framework": ["web-meta-framework-nuxt"],
7329
7366
  "web-client-state": ["web-state-pinia"],
7330
7367
  "web-testing": ["web-testing-vitest"]
7331
7368
  },
7332
7369
  "api-reviewer": {
7333
- "shared-meta": ["shared-meta-reviewing"],
7370
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7334
7371
  "api-api": ["api-framework-hono"],
7335
7372
  "api-database": ["api-database-drizzle"],
7336
7373
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -7383,7 +7420,7 @@ var BUILT_IN_MATRIX = {
7383
7420
  "api-database": ["api-database-drizzle"],
7384
7421
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7385
7422
  "api-observability": ["api-observability-axiom-pino-sentry"],
7386
- "shared-meta": ["shared-meta-reviewing"]
7423
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7387
7424
  },
7388
7425
  "agent-summoner": {
7389
7426
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7394,7 +7431,7 @@ var BUILT_IN_MATRIX = {
7394
7431
  "api-database": ["api-database-drizzle"],
7395
7432
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7396
7433
  "api-observability": ["api-observability-axiom-pino-sentry"],
7397
- "shared-meta": ["shared-meta-reviewing"]
7434
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7398
7435
  },
7399
7436
  "skill-summoner": {
7400
7437
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7405,7 +7442,7 @@ var BUILT_IN_MATRIX = {
7405
7442
  "api-database": ["api-database-drizzle"],
7406
7443
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7407
7444
  "api-observability": ["api-observability-axiom-pino-sentry"],
7408
- "shared-meta": ["shared-meta-reviewing"]
7445
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7409
7446
  },
7410
7447
  scribe: {
7411
7448
  "web-framework": ["web-framework-vue-composition-api"],
@@ -7416,7 +7453,7 @@ var BUILT_IN_MATRIX = {
7416
7453
  "api-database": ["api-database-drizzle"],
7417
7454
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7418
7455
  "api-observability": ["api-observability-axiom-pino-sentry"],
7419
- "shared-meta": ["shared-meta-reviewing"]
7456
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7420
7457
  },
7421
7458
  "web-tester": {
7422
7459
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -7435,7 +7472,7 @@ var BUILT_IN_MATRIX = {
7435
7472
  "api-database-drizzle",
7436
7473
  "api-auth-better-auth-drizzle-hono",
7437
7474
  "api-observability-axiom-pino-sentry",
7438
- "shared-meta-reviewing",
7475
+ "meta-reviewing-reviewing",
7439
7476
  "web-testing-playwright-e2e"
7440
7477
  ],
7441
7478
  philosophy: "Progressive Vue with Nuxt power"
@@ -7443,7 +7480,7 @@ var BUILT_IN_MATRIX = {
7443
7480
  {
7444
7481
  id: "angular-modern-fullstack",
7445
7482
  name: "Angular Modern Full-Stack",
7446
- description: "Angular, NgRx, Hono, Drizzle, Better Auth",
7483
+ description: "NgRx, Hono, Drizzle, Better Auth",
7447
7484
  skills: {
7448
7485
  "web-developer": {
7449
7486
  "web-framework": ["web-framework-angular-standalone"],
@@ -7468,13 +7505,13 @@ var BUILT_IN_MATRIX = {
7468
7505
  ]
7469
7506
  },
7470
7507
  "web-reviewer": {
7471
- "shared-meta": ["shared-meta-reviewing"],
7508
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7472
7509
  "web-framework": ["web-framework-angular-standalone"],
7473
7510
  "web-client-state": ["web-state-ngrx-signalstore"],
7474
7511
  "web-testing": ["web-testing-vitest"]
7475
7512
  },
7476
7513
  "api-reviewer": {
7477
- "shared-meta": ["shared-meta-reviewing"],
7514
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7478
7515
  "api-api": ["api-framework-hono"],
7479
7516
  "api-database": ["api-database-drizzle"],
7480
7517
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -7523,7 +7560,7 @@ var BUILT_IN_MATRIX = {
7523
7560
  "api-database": ["api-database-drizzle"],
7524
7561
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7525
7562
  "api-observability": ["api-observability-axiom-pino-sentry"],
7526
- "shared-meta": ["shared-meta-reviewing"]
7563
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7527
7564
  },
7528
7565
  "agent-summoner": {
7529
7566
  "web-framework": ["web-framework-angular-standalone"],
@@ -7533,7 +7570,7 @@ var BUILT_IN_MATRIX = {
7533
7570
  "api-database": ["api-database-drizzle"],
7534
7571
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7535
7572
  "api-observability": ["api-observability-axiom-pino-sentry"],
7536
- "shared-meta": ["shared-meta-reviewing"]
7573
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7537
7574
  },
7538
7575
  "skill-summoner": {
7539
7576
  "web-framework": ["web-framework-angular-standalone"],
@@ -7543,7 +7580,7 @@ var BUILT_IN_MATRIX = {
7543
7580
  "api-database": ["api-database-drizzle"],
7544
7581
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7545
7582
  "api-observability": ["api-observability-axiom-pino-sentry"],
7546
- "shared-meta": ["shared-meta-reviewing"]
7583
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7547
7584
  },
7548
7585
  scribe: {
7549
7586
  "web-framework": ["web-framework-angular-standalone"],
@@ -7553,7 +7590,7 @@ var BUILT_IN_MATRIX = {
7553
7590
  "api-database": ["api-database-drizzle"],
7554
7591
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7555
7592
  "api-observability": ["api-observability-axiom-pino-sentry"],
7556
- "shared-meta": ["shared-meta-reviewing"]
7593
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7557
7594
  },
7558
7595
  "web-tester": {
7559
7596
  "web-testing": ["web-testing-playwright-e2e", "web-testing-vitest"]
@@ -7571,7 +7608,7 @@ var BUILT_IN_MATRIX = {
7571
7608
  "api-database-drizzle",
7572
7609
  "api-auth-better-auth-drizzle-hono",
7573
7610
  "api-observability-axiom-pino-sentry",
7574
- "shared-meta-reviewing",
7611
+ "meta-reviewing-reviewing",
7575
7612
  "web-testing-playwright-e2e"
7576
7613
  ],
7577
7614
  philosophy: "Enterprise-grade and type-safe"
@@ -7579,7 +7616,7 @@ var BUILT_IN_MATRIX = {
7579
7616
  {
7580
7617
  id: "nextjs-ai-saas",
7581
7618
  name: "Next.js AI SaaS",
7582
- description: "Next.js, Vercel AI SDK, Anthropic SDK, Drizzle, Pinecone",
7619
+ description: "Vercel AI, Anthropic, Drizzle, Pinecone",
7583
7620
  skills: {
7584
7621
  "web-developer": {
7585
7622
  "web-framework": ["web-framework-react"],
@@ -7601,11 +7638,13 @@ var BUILT_IN_MATRIX = {
7601
7638
  "api-api": ["api-framework-hono"],
7602
7639
  "api-database": ["api-database-drizzle"],
7603
7640
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7604
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7641
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7642
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7643
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7605
7644
  "api-vector-db": ["api-vector-db-pinecone"],
7606
7645
  "api-observability": ["api-observability-axiom-pino-sentry"],
7607
7646
  "api-email": ["api-email-resend-react-email"],
7608
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7647
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7609
7648
  "shared-tooling": [
7610
7649
  "shared-tooling-eslint-prettier",
7611
7650
  "shared-tooling-typescript-config",
@@ -7621,7 +7660,7 @@ var BUILT_IN_MATRIX = {
7621
7660
  ]
7622
7661
  },
7623
7662
  "web-reviewer": {
7624
- "shared-meta": ["shared-meta-reviewing"],
7663
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7625
7664
  "web-framework": ["web-framework-react"],
7626
7665
  "web-meta-framework": ["web-meta-framework-nextjs"],
7627
7666
  "web-styling": ["web-styling-tailwind"],
@@ -7631,15 +7670,16 @@ var BUILT_IN_MATRIX = {
7631
7670
  "web-mocking": ["web-mocks-msw"]
7632
7671
  },
7633
7672
  "api-reviewer": {
7634
- "shared-meta": ["shared-meta-reviewing"],
7673
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7635
7674
  "api-api": ["api-framework-hono"],
7636
7675
  "api-database": ["api-database-drizzle"],
7637
7676
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7638
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk"],
7677
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7678
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7639
7679
  "api-observability": ["api-observability-axiom-pino-sentry"]
7640
7680
  },
7641
7681
  "cli-reviewer": {
7642
- "shared-meta": ["shared-meta-cli-reviewing"],
7682
+ "meta-reviewing": ["meta-reviewing-cli-reviewing"],
7643
7683
  "cli-framework": ["cli-framework-cli-commander"]
7644
7684
  },
7645
7685
  "web-tester": {
@@ -7658,22 +7698,26 @@ var BUILT_IN_MATRIX = {
7658
7698
  "api-api": ["api-framework-hono"],
7659
7699
  "api-database": ["api-database-drizzle"],
7660
7700
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7661
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7701
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7702
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7703
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7662
7704
  "api-vector-db": ["api-vector-db-pinecone"],
7663
7705
  "api-observability": ["api-observability-axiom-pino-sentry"],
7664
7706
  "api-email": ["api-email-resend-react-email"],
7665
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7707
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7666
7708
  "cli-framework": ["cli-framework-cli-commander"]
7667
7709
  },
7668
7710
  "web-architecture": {
7669
7711
  "api-api": ["api-framework-hono"],
7670
7712
  "api-database": ["api-database-drizzle"],
7671
7713
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7672
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7714
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7715
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7716
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7673
7717
  "api-vector-db": ["api-vector-db-pinecone"],
7674
7718
  "api-observability": ["api-observability-axiom-pino-sentry"],
7675
7719
  "api-email": ["api-email-resend-react-email"],
7676
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7720
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7677
7721
  "cli-framework": ["cli-framework-cli-commander"]
7678
7722
  },
7679
7723
  "web-researcher": {
@@ -7690,11 +7734,13 @@ var BUILT_IN_MATRIX = {
7690
7734
  "api-api": ["api-framework-hono"],
7691
7735
  "api-database": ["api-database-drizzle"],
7692
7736
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7693
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7737
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7738
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7739
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7694
7740
  "api-vector-db": ["api-vector-db-pinecone"],
7695
7741
  "api-observability": ["api-observability-axiom-pino-sentry"],
7696
7742
  "api-email": ["api-email-resend-react-email"],
7697
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7743
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7698
7744
  "cli-framework": ["cli-framework-cli-commander"]
7699
7745
  },
7700
7746
  "pattern-scout": {
@@ -7709,11 +7755,13 @@ var BUILT_IN_MATRIX = {
7709
7755
  "api-api": ["api-framework-hono"],
7710
7756
  "api-database": ["api-database-drizzle"],
7711
7757
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7712
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7758
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7759
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7760
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7713
7761
  "api-vector-db": ["api-vector-db-pinecone"],
7714
7762
  "api-observability": ["api-observability-axiom-pino-sentry"],
7715
7763
  "api-email": ["api-email-resend-react-email"],
7716
- "shared-ci-cd": ["shared-ci-cd-github-actions"]
7764
+ "infra-ci-cd": ["infra-ci-cd-github-actions"]
7717
7765
  },
7718
7766
  "web-pattern-critique": {
7719
7767
  "web-framework": ["web-framework-react"],
@@ -7727,12 +7775,14 @@ var BUILT_IN_MATRIX = {
7727
7775
  "api-api": ["api-framework-hono"],
7728
7776
  "api-database": ["api-database-drizzle"],
7729
7777
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7730
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7778
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7779
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7780
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7731
7781
  "api-vector-db": ["api-vector-db-pinecone"],
7732
7782
  "api-observability": ["api-observability-axiom-pino-sentry"],
7733
7783
  "api-email": ["api-email-resend-react-email"],
7734
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7735
- "shared-meta": ["shared-meta-reviewing"]
7784
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7785
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7736
7786
  },
7737
7787
  "agent-summoner": {
7738
7788
  "web-framework": ["web-framework-react"],
@@ -7746,13 +7796,15 @@ var BUILT_IN_MATRIX = {
7746
7796
  "api-api": ["api-framework-hono"],
7747
7797
  "api-database": ["api-database-drizzle"],
7748
7798
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7749
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7799
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7800
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7801
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7750
7802
  "api-vector-db": ["api-vector-db-pinecone"],
7751
7803
  "api-observability": ["api-observability-axiom-pino-sentry"],
7752
7804
  "api-email": ["api-email-resend-react-email"],
7753
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7805
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7754
7806
  "cli-framework": ["cli-framework-cli-commander"],
7755
- "shared-meta": ["shared-meta-reviewing"]
7807
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7756
7808
  },
7757
7809
  "skill-summoner": {
7758
7810
  "web-framework": ["web-framework-react"],
@@ -7766,13 +7818,15 @@ var BUILT_IN_MATRIX = {
7766
7818
  "api-api": ["api-framework-hono"],
7767
7819
  "api-database": ["api-database-drizzle"],
7768
7820
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7769
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7821
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7822
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7823
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7770
7824
  "api-vector-db": ["api-vector-db-pinecone"],
7771
7825
  "api-observability": ["api-observability-axiom-pino-sentry"],
7772
7826
  "api-email": ["api-email-resend-react-email"],
7773
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7827
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7774
7828
  "cli-framework": ["cli-framework-cli-commander"],
7775
- "shared-meta": ["shared-meta-reviewing"]
7829
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7776
7830
  },
7777
7831
  scribe: {
7778
7832
  "web-framework": ["web-framework-react"],
@@ -7786,13 +7840,15 @@ var BUILT_IN_MATRIX = {
7786
7840
  "api-api": ["api-framework-hono"],
7787
7841
  "api-database": ["api-database-drizzle"],
7788
7842
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7789
- "api-ai": ["api-ai-vercel-ai-sdk", "api-ai-anthropic-sdk", "api-ai-tool-use-patterns"],
7843
+ "ai-orchestration": ["ai-orchestration-vercel-ai-sdk"],
7844
+ "ai-provider": ["ai-provider-anthropic-sdk"],
7845
+ "ai-patterns": ["ai-patterns-tool-use-patterns"],
7790
7846
  "api-vector-db": ["api-vector-db-pinecone"],
7791
7847
  "api-observability": ["api-observability-axiom-pino-sentry"],
7792
7848
  "api-email": ["api-email-resend-react-email"],
7793
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7849
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7794
7850
  "cli-framework": ["cli-framework-cli-commander"],
7795
- "shared-meta": ["shared-meta-reviewing"]
7851
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7796
7852
  },
7797
7853
  "cli-tester": {}
7798
7854
  },
@@ -7812,16 +7868,16 @@ var BUILT_IN_MATRIX = {
7812
7868
  "api-framework-hono",
7813
7869
  "api-database-drizzle",
7814
7870
  "api-auth-better-auth-drizzle-hono",
7815
- "api-ai-vercel-ai-sdk",
7816
- "api-ai-anthropic-sdk",
7817
- "api-ai-tool-use-patterns",
7871
+ "ai-orchestration-vercel-ai-sdk",
7872
+ "ai-provider-anthropic-sdk",
7873
+ "ai-patterns-tool-use-patterns",
7818
7874
  "api-vector-db-pinecone",
7819
7875
  "api-observability-axiom-pino-sentry",
7820
7876
  "api-email-resend-react-email",
7821
- "shared-ci-cd-github-actions",
7877
+ "infra-ci-cd-github-actions",
7822
7878
  "cli-framework-cli-commander",
7823
- "shared-meta-reviewing",
7824
- "shared-meta-cli-reviewing",
7879
+ "meta-reviewing-reviewing",
7880
+ "meta-reviewing-cli-reviewing",
7825
7881
  "web-testing-playwright-e2e"
7826
7882
  ],
7827
7883
  philosophy: "AI-first full-stack with streaming and tool use"
@@ -7829,7 +7885,7 @@ var BUILT_IN_MATRIX = {
7829
7885
  {
7830
7886
  id: "nextjs-saas-starter",
7831
7887
  name: "Next.js SaaS Starter",
7832
- description: "Next.js, Better Auth, Stripe, Drizzle, Resend, PostHog",
7888
+ description: "Better Auth, Stripe, Drizzle, Resend, PostHog",
7833
7889
  skills: {
7834
7890
  "web-developer": {
7835
7891
  "web-framework": ["web-framework-react"],
@@ -7852,11 +7908,10 @@ var BUILT_IN_MATRIX = {
7852
7908
  "api-database": ["api-database-drizzle"],
7853
7909
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
7854
7910
  "api-commerce": ["api-commerce-stripe"],
7855
- "api-flags": ["api-flags-posthog-flags"],
7856
7911
  "api-observability": ["api-observability-axiom-pino-sentry"],
7857
- "api-analytics": ["api-analytics-posthog-analytics"],
7912
+ "api-analytics": ["api-analytics-posthog-analytics", "api-flags-posthog-flags"],
7858
7913
  "api-email": ["api-email-resend-react-email"],
7859
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7914
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7860
7915
  "shared-tooling": [
7861
7916
  "shared-tooling-eslint-prettier",
7862
7917
  "shared-tooling-typescript-config",
@@ -7872,7 +7927,7 @@ var BUILT_IN_MATRIX = {
7872
7927
  ]
7873
7928
  },
7874
7929
  "web-reviewer": {
7875
- "shared-meta": ["shared-meta-reviewing"],
7930
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7876
7931
  "web-framework": ["web-framework-react"],
7877
7932
  "web-meta-framework": ["web-meta-framework-nextjs"],
7878
7933
  "web-styling": ["web-styling-tailwind"],
@@ -7882,7 +7937,7 @@ var BUILT_IN_MATRIX = {
7882
7937
  "web-mocking": ["web-mocks-msw"]
7883
7938
  },
7884
7939
  "api-reviewer": {
7885
- "shared-meta": ["shared-meta-reviewing"],
7940
+ "meta-reviewing": ["meta-reviewing-reviewing"],
7886
7941
  "api-api": ["api-framework-hono"],
7887
7942
  "api-database": ["api-database-drizzle"],
7888
7943
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
@@ -7890,7 +7945,7 @@ var BUILT_IN_MATRIX = {
7890
7945
  "api-observability": ["api-observability-axiom-pino-sentry"]
7891
7946
  },
7892
7947
  "cli-reviewer": {
7893
- "shared-meta": ["shared-meta-cli-reviewing"],
7948
+ "meta-reviewing": ["meta-reviewing-cli-reviewing"],
7894
7949
  "cli-framework": ["cli-framework-cli-commander"]
7895
7950
  },
7896
7951
  "web-tester": {
@@ -7913,7 +7968,7 @@ var BUILT_IN_MATRIX = {
7913
7968
  "api-observability": ["api-observability-axiom-pino-sentry"],
7914
7969
  "api-analytics": ["api-analytics-posthog-analytics"],
7915
7970
  "api-email": ["api-email-resend-react-email"],
7916
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7971
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7917
7972
  "cli-framework": ["cli-framework-cli-commander"]
7918
7973
  },
7919
7974
  "web-architecture": {
@@ -7924,7 +7979,7 @@ var BUILT_IN_MATRIX = {
7924
7979
  "api-observability": ["api-observability-axiom-pino-sentry"],
7925
7980
  "api-analytics": ["api-analytics-posthog-analytics"],
7926
7981
  "api-email": ["api-email-resend-react-email"],
7927
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7982
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7928
7983
  "cli-framework": ["cli-framework-cli-commander"]
7929
7984
  },
7930
7985
  "web-researcher": {
@@ -7945,7 +8000,7 @@ var BUILT_IN_MATRIX = {
7945
8000
  "api-observability": ["api-observability-axiom-pino-sentry"],
7946
8001
  "api-analytics": ["api-analytics-posthog-analytics"],
7947
8002
  "api-email": ["api-email-resend-react-email"],
7948
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8003
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
7949
8004
  "cli-framework": ["cli-framework-cli-commander"]
7950
8005
  },
7951
8006
  "pattern-scout": {
@@ -7964,7 +8019,7 @@ var BUILT_IN_MATRIX = {
7964
8019
  "api-observability": ["api-observability-axiom-pino-sentry"],
7965
8020
  "api-analytics": ["api-analytics-posthog-analytics"],
7966
8021
  "api-email": ["api-email-resend-react-email"],
7967
- "shared-ci-cd": ["shared-ci-cd-github-actions"]
8022
+ "infra-ci-cd": ["infra-ci-cd-github-actions"]
7968
8023
  },
7969
8024
  "web-pattern-critique": {
7970
8025
  "web-framework": ["web-framework-react"],
@@ -7982,8 +8037,8 @@ var BUILT_IN_MATRIX = {
7982
8037
  "api-observability": ["api-observability-axiom-pino-sentry"],
7983
8038
  "api-analytics": ["api-analytics-posthog-analytics"],
7984
8039
  "api-email": ["api-email-resend-react-email"],
7985
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
7986
- "shared-meta": ["shared-meta-reviewing"]
8040
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8041
+ "meta-reviewing": ["meta-reviewing-reviewing"]
7987
8042
  },
7988
8043
  "agent-summoner": {
7989
8044
  "web-framework": ["web-framework-react"],
@@ -8001,9 +8056,9 @@ var BUILT_IN_MATRIX = {
8001
8056
  "api-observability": ["api-observability-axiom-pino-sentry"],
8002
8057
  "api-analytics": ["api-analytics-posthog-analytics"],
8003
8058
  "api-email": ["api-email-resend-react-email"],
8004
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8059
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8005
8060
  "cli-framework": ["cli-framework-cli-commander"],
8006
- "shared-meta": ["shared-meta-reviewing"]
8061
+ "meta-reviewing": ["meta-reviewing-reviewing"]
8007
8062
  },
8008
8063
  "skill-summoner": {
8009
8064
  "web-framework": ["web-framework-react"],
@@ -8021,9 +8076,9 @@ var BUILT_IN_MATRIX = {
8021
8076
  "api-observability": ["api-observability-axiom-pino-sentry"],
8022
8077
  "api-analytics": ["api-analytics-posthog-analytics"],
8023
8078
  "api-email": ["api-email-resend-react-email"],
8024
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8079
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8025
8080
  "cli-framework": ["cli-framework-cli-commander"],
8026
- "shared-meta": ["shared-meta-reviewing"]
8081
+ "meta-reviewing": ["meta-reviewing-reviewing"]
8027
8082
  },
8028
8083
  scribe: {
8029
8084
  "web-framework": ["web-framework-react"],
@@ -8041,9 +8096,9 @@ var BUILT_IN_MATRIX = {
8041
8096
  "api-observability": ["api-observability-axiom-pino-sentry"],
8042
8097
  "api-analytics": ["api-analytics-posthog-analytics"],
8043
8098
  "api-email": ["api-email-resend-react-email"],
8044
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8099
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8045
8100
  "cli-framework": ["cli-framework-cli-commander"],
8046
- "shared-meta": ["shared-meta-reviewing"]
8101
+ "meta-reviewing": ["meta-reviewing-reviewing"]
8047
8102
  },
8048
8103
  "cli-tester": {}
8049
8104
  },
@@ -8064,14 +8119,14 @@ var BUILT_IN_MATRIX = {
8064
8119
  "api-database-drizzle",
8065
8120
  "api-auth-better-auth-drizzle-hono",
8066
8121
  "api-commerce-stripe",
8067
- "api-flags-posthog-flags",
8068
8122
  "api-observability-axiom-pino-sentry",
8069
8123
  "api-analytics-posthog-analytics",
8124
+ "api-flags-posthog-flags",
8070
8125
  "api-email-resend-react-email",
8071
- "shared-ci-cd-github-actions",
8126
+ "infra-ci-cd-github-actions",
8072
8127
  "cli-framework-cli-commander",
8073
- "shared-meta-reviewing",
8074
- "shared-meta-cli-reviewing",
8128
+ "meta-reviewing-reviewing",
8129
+ "meta-reviewing-cli-reviewing",
8075
8130
  "web-testing-playwright-e2e"
8076
8131
  ],
8077
8132
  philosophy: "Ship your SaaS fast with auth, payments, and analytics"
@@ -8079,7 +8134,7 @@ var BUILT_IN_MATRIX = {
8079
8134
  {
8080
8135
  id: "expo-mobile-fullstack",
8081
8136
  name: "Expo Mobile Full-Stack",
8082
- description: "Expo, React Native, Zustand, React Query, Hono, Drizzle",
8137
+ description: "Zustand, React Query, Hono, Drizzle",
8083
8138
  skills: {
8084
8139
  "web-developer": {
8085
8140
  "web-framework": ["web-framework-react"],
@@ -8100,7 +8155,7 @@ var BUILT_IN_MATRIX = {
8100
8155
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8101
8156
  "api-observability": ["api-observability-axiom-pino-sentry"],
8102
8157
  "api-email": ["api-email-resend-react-email"],
8103
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8158
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8104
8159
  "shared-tooling": [
8105
8160
  "shared-tooling-eslint-prettier",
8106
8161
  "shared-tooling-typescript-config",
@@ -8116,7 +8171,7 @@ var BUILT_IN_MATRIX = {
8116
8171
  ]
8117
8172
  },
8118
8173
  "web-reviewer": {
8119
- "shared-meta": ["shared-meta-reviewing"],
8174
+ "meta-reviewing": ["meta-reviewing-reviewing"],
8120
8175
  "web-framework": ["web-framework-react"],
8121
8176
  "mobile-framework": ["mobile-framework-expo", "mobile-framework-react-native"],
8122
8177
  "web-client-state": ["web-state-zustand"],
@@ -8125,14 +8180,14 @@ var BUILT_IN_MATRIX = {
8125
8180
  "web-mocking": ["web-mocks-msw"]
8126
8181
  },
8127
8182
  "api-reviewer": {
8128
- "shared-meta": ["shared-meta-reviewing"],
8183
+ "meta-reviewing": ["meta-reviewing-reviewing"],
8129
8184
  "api-api": ["api-framework-hono"],
8130
8185
  "api-database": ["api-database-drizzle"],
8131
8186
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8132
8187
  "api-observability": ["api-observability-axiom-pino-sentry"]
8133
8188
  },
8134
8189
  "cli-reviewer": {
8135
- "shared-meta": ["shared-meta-cli-reviewing"],
8190
+ "meta-reviewing": ["meta-reviewing-cli-reviewing"],
8136
8191
  "cli-framework": ["cli-framework-cli-commander"]
8137
8192
  },
8138
8193
  "web-tester": {
@@ -8151,7 +8206,7 @@ var BUILT_IN_MATRIX = {
8151
8206
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8152
8207
  "api-observability": ["api-observability-axiom-pino-sentry"],
8153
8208
  "api-email": ["api-email-resend-react-email"],
8154
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8209
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8155
8210
  "cli-framework": ["cli-framework-cli-commander"]
8156
8211
  },
8157
8212
  "web-architecture": {
@@ -8160,7 +8215,7 @@ var BUILT_IN_MATRIX = {
8160
8215
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8161
8216
  "api-observability": ["api-observability-axiom-pino-sentry"],
8162
8217
  "api-email": ["api-email-resend-react-email"],
8163
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8218
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8164
8219
  "cli-framework": ["cli-framework-cli-commander"]
8165
8220
  },
8166
8221
  "web-researcher": {
@@ -8177,7 +8232,7 @@ var BUILT_IN_MATRIX = {
8177
8232
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8178
8233
  "api-observability": ["api-observability-axiom-pino-sentry"],
8179
8234
  "api-email": ["api-email-resend-react-email"],
8180
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8235
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8181
8236
  "cli-framework": ["cli-framework-cli-commander"]
8182
8237
  },
8183
8238
  "pattern-scout": {
@@ -8192,7 +8247,7 @@ var BUILT_IN_MATRIX = {
8192
8247
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8193
8248
  "api-observability": ["api-observability-axiom-pino-sentry"],
8194
8249
  "api-email": ["api-email-resend-react-email"],
8195
- "shared-ci-cd": ["shared-ci-cd-github-actions"]
8250
+ "infra-ci-cd": ["infra-ci-cd-github-actions"]
8196
8251
  },
8197
8252
  "web-pattern-critique": {
8198
8253
  "web-framework": ["web-framework-react"],
@@ -8206,8 +8261,8 @@ var BUILT_IN_MATRIX = {
8206
8261
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8207
8262
  "api-observability": ["api-observability-axiom-pino-sentry"],
8208
8263
  "api-email": ["api-email-resend-react-email"],
8209
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8210
- "shared-meta": ["shared-meta-reviewing"]
8264
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8265
+ "meta-reviewing": ["meta-reviewing-reviewing"]
8211
8266
  },
8212
8267
  "agent-summoner": {
8213
8268
  "web-framework": ["web-framework-react"],
@@ -8221,9 +8276,9 @@ var BUILT_IN_MATRIX = {
8221
8276
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8222
8277
  "api-observability": ["api-observability-axiom-pino-sentry"],
8223
8278
  "api-email": ["api-email-resend-react-email"],
8224
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8279
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8225
8280
  "cli-framework": ["cli-framework-cli-commander"],
8226
- "shared-meta": ["shared-meta-reviewing"]
8281
+ "meta-reviewing": ["meta-reviewing-reviewing"]
8227
8282
  },
8228
8283
  "skill-summoner": {
8229
8284
  "web-framework": ["web-framework-react"],
@@ -8237,9 +8292,9 @@ var BUILT_IN_MATRIX = {
8237
8292
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8238
8293
  "api-observability": ["api-observability-axiom-pino-sentry"],
8239
8294
  "api-email": ["api-email-resend-react-email"],
8240
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8295
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8241
8296
  "cli-framework": ["cli-framework-cli-commander"],
8242
- "shared-meta": ["shared-meta-reviewing"]
8297
+ "meta-reviewing": ["meta-reviewing-reviewing"]
8243
8298
  },
8244
8299
  scribe: {
8245
8300
  "web-framework": ["web-framework-react"],
@@ -8253,9 +8308,9 @@ var BUILT_IN_MATRIX = {
8253
8308
  "api-auth": ["api-auth-better-auth-drizzle-hono"],
8254
8309
  "api-observability": ["api-observability-axiom-pino-sentry"],
8255
8310
  "api-email": ["api-email-resend-react-email"],
8256
- "shared-ci-cd": ["shared-ci-cd-github-actions"],
8311
+ "infra-ci-cd": ["infra-ci-cd-github-actions"],
8257
8312
  "cli-framework": ["cli-framework-cli-commander"],
8258
- "shared-meta": ["shared-meta-reviewing"]
8313
+ "meta-reviewing": ["meta-reviewing-reviewing"]
8259
8314
  },
8260
8315
  "cli-tester": {}
8261
8316
  },
@@ -8275,34 +8330,34 @@ var BUILT_IN_MATRIX = {
8275
8330
  "api-auth-better-auth-drizzle-hono",
8276
8331
  "api-observability-axiom-pino-sentry",
8277
8332
  "api-email-resend-react-email",
8278
- "shared-ci-cd-github-actions",
8333
+ "infra-ci-cd-github-actions",
8279
8334
  "cli-framework-cli-commander",
8280
- "shared-meta-reviewing",
8281
- "shared-meta-cli-reviewing"
8335
+ "meta-reviewing-reviewing",
8336
+ "meta-reviewing-cli-reviewing"
8282
8337
  ],
8283
8338
  philosophy: "Cross-platform mobile with shared React patterns"
8284
8339
  }
8285
8340
  ],
8286
8341
  slugMap: {
8287
8342
  slugToId: {
8343
+ "huggingface-inference": "ai-infrastructure-huggingface-inference",
8288
8344
  trpc: "web-data-fetching-trpc",
8345
+ "cohere-sdk": "ai-provider-cohere-sdk",
8289
8346
  biome: "shared-tooling-biome",
8290
8347
  hono: "api-framework-hono",
8291
8348
  mongodb: "api-database-mongodb",
8292
8349
  "setup-posthog": "api-analytics-setup-posthog",
8293
8350
  react: "web-framework-react",
8294
8351
  typeorm: "api-database-typeorm",
8295
- replicate: "api-ai-replicate",
8352
+ "together-ai": "ai-infrastructure-together-ai",
8296
8353
  prisma: "api-database-prisma",
8297
- "anthropic-sdk": "api-ai-anthropic-sdk",
8298
- "github-actions": "shared-ci-cd-github-actions",
8354
+ "vercel-postgres": "api-database-vercel-postgres",
8299
8355
  "file-upload-patterns": "web-files-file-upload-patterns",
8300
8356
  "zod-validation": "web-forms-zod-validation",
8301
8357
  rxjs: "web-utilities-rxjs",
8302
8358
  "headless-ui": "web-ui-headless-ui",
8303
8359
  payload: "api-cms-payload",
8304
8360
  mysql: "api-database-mysql",
8305
- "cohere-sdk": "api-ai-cohere-sdk",
8306
8361
  "cli-commander": "cli-framework-cli-commander",
8307
8362
  "angular-standalone": "web-framework-angular-standalone",
8308
8363
  "git-hooks": "shared-tooling-git-hooks",
@@ -8311,34 +8366,33 @@ var BUILT_IN_MATRIX = {
8311
8366
  expo: "mobile-framework-expo",
8312
8367
  "react-router": "web-routing-react-router",
8313
8368
  jotai: "web-state-jotai",
8314
- "huggingface-inference": "api-ai-huggingface-inference",
8369
+ litellm: "ai-infrastructure-litellm",
8315
8370
  sanity: "api-cms-sanity",
8316
8371
  "setup-axiom-pino-sentry": "api-observability-setup-axiom-pino-sentry",
8317
- "mistral-sdk": "api-ai-mistral-sdk",
8318
- "research-methodology": "shared-meta-research-methodology",
8319
8372
  websockets: "web-realtime-websockets",
8320
8373
  "graphql-apollo": "web-data-fetching-graphql-apollo",
8321
8374
  "redux-toolkit": "web-state-redux-toolkit",
8322
8375
  turso: "api-baas-turso",
8323
8376
  pinia: "web-state-pinia",
8324
- promptfoo: "api-ai-promptfoo",
8325
- ollama: "api-ai-ollama",
8326
8377
  clerk: "api-auth-clerk",
8327
8378
  elysia: "api-framework-elysia",
8328
8379
  vite: "web-tooling-vite",
8329
8380
  meilisearch: "api-search-meilisearch",
8330
- "cli-reviewing": "shared-meta-cli-reviewing",
8331
8381
  elasticsearch: "api-search-elasticsearch",
8332
8382
  "date-fns": "web-utilities-date-fns",
8333
- upstash: "api-baas-upstash",
8334
8383
  storybook: "web-tooling-storybook",
8335
- "tool-use-patterns": "api-ai-tool-use-patterns",
8384
+ "claude-vision": "ai-provider-claude-vision",
8385
+ "cli-reviewing": "meta-reviewing-cli-reviewing",
8336
8386
  planetscale: "api-baas-planetscale",
8387
+ upstash: "api-database-upstash",
8337
8388
  "shadcn-ui": "web-ui-shadcn-ui",
8338
8389
  nextauth: "api-auth-nextauth",
8390
+ "openai-whisper": "ai-provider-openai-whisper",
8391
+ promptfoo: "ai-observability-promptfoo",
8339
8392
  "react-native": "mobile-framework-react-native",
8340
8393
  sse: "web-realtime-sse",
8341
8394
  "vue-composition-api": "web-framework-vue-composition-api",
8395
+ langchain: "ai-orchestration-langchain",
8342
8396
  chroma: "api-vector-db-chroma",
8343
8397
  "vee-validate": "web-forms-vee-validate",
8344
8398
  "vue-test-utils": "web-testing-vue-test-utils",
@@ -8346,37 +8400,41 @@ var BUILT_IN_MATRIX = {
8346
8400
  zustand: "web-state-zustand",
8347
8401
  "radix-ui": "web-ui-radix-ui",
8348
8402
  "ngrx-signalstore": "web-state-ngrx-signalstore",
8349
- "cloudflare-workers": "shared-ci-cd-cloudflare-workers",
8403
+ llamaindex: "ai-orchestration-llamaindex",
8350
8404
  "posthog-flags": "api-flags-posthog-flags",
8351
8405
  "eslint-prettier": "shared-tooling-eslint-prettier",
8406
+ "openai-sdk": "ai-provider-openai-sdk",
8352
8407
  "framer-motion": "web-animation-framer-motion",
8353
- docker: "shared-ci-cd-docker",
8408
+ "vercel-ai-sdk": "ai-orchestration-vercel-ai-sdk",
8409
+ "anthropic-sdk": "ai-provider-anthropic-sdk",
8410
+ "mistral-sdk": "ai-provider-mistral-sdk",
8411
+ "setup-env": "infra-config-setup-env",
8354
8412
  "playwright-e2e": "web-testing-playwright-e2e",
8355
8413
  "error-boundaries": "web-error-handling-error-boundaries",
8356
8414
  "next-intl": "web-i18n-next-intl",
8357
8415
  solidjs: "web-framework-solidjs",
8358
8416
  astro: "web-meta-framework-astro",
8359
8417
  neon: "api-baas-neon",
8360
- reviewing: "shared-meta-reviewing",
8361
8418
  edgedb: "api-database-edgedb",
8362
8419
  weaviate: "api-vector-db-weaviate",
8363
8420
  "service-workers": "web-pwa-service-workers",
8364
- "setup-env": "shared-infra-setup-env",
8421
+ "cloudflare-workers": "infra-platform-cloudflare-workers",
8365
8422
  "react-testing-library": "web-testing-react-testing-library",
8423
+ "research-methodology": "meta-methodology-research-methodology",
8424
+ replicate: "ai-infrastructure-replicate",
8366
8425
  knex: "api-database-knex",
8367
8426
  cva: "web-styling-cva",
8368
8427
  msw: "web-mocks-msw",
8369
8428
  turborepo: "shared-monorepo-turborepo",
8429
+ "google-gemini-sdk": "ai-provider-google-gemini-sdk",
8370
8430
  "vue-i18n": "web-i18n-vue-i18n",
8371
8431
  "tanstack-router": "web-routing-tanstack-router",
8432
+ "tool-use-patterns": "ai-patterns-tool-use-patterns",
8372
8433
  qdrant: "api-vector-db-qdrant",
8373
8434
  "image-handling": "web-files-image-handling",
8374
8435
  "setup-resend": "api-email-setup-resend",
8375
- "claude-vision": "api-ai-claude-vision",
8376
8436
  "react-query": "web-server-state-react-query",
8377
- llamaindex: "api-ai-llamaindex",
8378
8437
  svelte: "web-framework-svelte",
8379
- elevenlabs: "api-ai-elevenlabs",
8380
8438
  "api-performance": "api-performance-api-performance",
8381
8439
  "graphql-urql": "web-data-fetching-graphql-urql",
8382
8440
  "ant-design": "web-ui-ant-design",
@@ -8392,13 +8450,11 @@ var BUILT_IN_MATRIX = {
8392
8450
  strapi: "api-cms-strapi",
8393
8451
  vueuse: "web-utilities-vueuse",
8394
8452
  firebase: "api-baas-firebase",
8395
- "openai-sdk": "api-ai-openai-sdk",
8396
- langfuse: "api-ai-langfuse",
8397
- "openai-whisper": "api-ai-openai-whisper",
8398
8453
  redis: "api-database-redis",
8399
8454
  "pnpm-workspaces": "shared-monorepo-pnpm-workspaces",
8400
- litellm: "api-ai-litellm",
8455
+ reviewing: "meta-reviewing-reviewing",
8401
8456
  mui: "web-ui-mui",
8457
+ modal: "ai-infrastructure-modal",
8402
8458
  drizzle: "api-database-drizzle",
8403
8459
  surrealdb: "api-database-surrealdb",
8404
8460
  vitest: "web-testing-vitest",
@@ -8407,26 +8463,21 @@ var BUILT_IN_MATRIX = {
8407
8463
  "view-transitions": "web-animation-view-transitions",
8408
8464
  nestjs: "api-framework-nestjs",
8409
8465
  "resend-react-email": "api-email-resend-react-email",
8410
- "vercel-kv": "api-baas-vercel-kv",
8411
- "vercel-postgres": "api-baas-vercel-postgres",
8412
8466
  express: "api-framework-express",
8413
- modal: "api-ai-modal",
8414
8467
  "tanstack-table": "web-ui-tanstack-table",
8468
+ langfuse: "ai-observability-langfuse",
8415
8469
  remix: "web-meta-framework-remix",
8416
- "vercel-ai-sdk": "api-ai-vercel-ai-sdk",
8417
- langchain: "api-ai-langchain",
8418
8470
  "result-types": "web-error-handling-result-types",
8419
8471
  "web-performance": "web-performance-web-performance",
8420
8472
  "typescript-config": "shared-tooling-typescript-config",
8421
8473
  tailwind: "web-styling-tailwind",
8422
8474
  "react-hook-form": "web-forms-react-hook-form",
8423
- "google-gemini-sdk": "api-ai-google-gemini-sdk",
8424
8475
  postgresql: "api-database-postgresql",
8425
8476
  sveltekit: "web-meta-framework-sveltekit",
8426
8477
  "socket-io": "web-realtime-socket-io",
8427
8478
  pinecone: "api-vector-db-pinecone",
8428
8479
  "web-accessibility": "web-accessibility-web-accessibility",
8429
- "together-ai": "api-ai-together-ai",
8480
+ docker: "infra-ci-cd-docker",
8430
8481
  "scss-modules": "web-styling-scss-modules",
8431
8482
  mantine: "web-ui-mantine",
8432
8483
  "auth-security": "shared-security-auth-security",
@@ -8434,31 +8485,35 @@ var BUILT_IN_MATRIX = {
8434
8485
  stripe: "api-commerce-stripe",
8435
8486
  fastify: "api-framework-fastify",
8436
8487
  "cypress-e2e": "web-testing-cypress-e2e",
8488
+ "vercel-kv": "api-database-vercel-kv",
8489
+ "github-actions": "infra-ci-cd-github-actions",
8437
8490
  "posthog-analytics": "api-analytics-posthog-analytics",
8438
8491
  qwik: "web-meta-framework-qwik",
8492
+ elevenlabs: "ai-provider-elevenlabs",
8493
+ ollama: "ai-infrastructure-ollama",
8439
8494
  swr: "web-data-fetching-swr",
8440
8495
  sequelize: "api-database-sequelize",
8441
8496
  "react-intl": "web-i18n-react-intl"
8442
8497
  },
8443
8498
  idToSlug: {
8499
+ "ai-infrastructure-huggingface-inference": "huggingface-inference",
8444
8500
  "web-data-fetching-trpc": "trpc",
8501
+ "ai-provider-cohere-sdk": "cohere-sdk",
8445
8502
  "shared-tooling-biome": "biome",
8446
8503
  "api-framework-hono": "hono",
8447
8504
  "api-database-mongodb": "mongodb",
8448
8505
  "api-analytics-setup-posthog": "setup-posthog",
8449
8506
  "web-framework-react": "react",
8450
8507
  "api-database-typeorm": "typeorm",
8451
- "api-ai-replicate": "replicate",
8508
+ "ai-infrastructure-together-ai": "together-ai",
8452
8509
  "api-database-prisma": "prisma",
8453
- "api-ai-anthropic-sdk": "anthropic-sdk",
8454
- "shared-ci-cd-github-actions": "github-actions",
8510
+ "api-database-vercel-postgres": "vercel-postgres",
8455
8511
  "web-files-file-upload-patterns": "file-upload-patterns",
8456
8512
  "web-forms-zod-validation": "zod-validation",
8457
8513
  "web-utilities-rxjs": "rxjs",
8458
8514
  "web-ui-headless-ui": "headless-ui",
8459
8515
  "api-cms-payload": "payload",
8460
8516
  "api-database-mysql": "mysql",
8461
- "api-ai-cohere-sdk": "cohere-sdk",
8462
8517
  "cli-framework-cli-commander": "cli-commander",
8463
8518
  "web-framework-angular-standalone": "angular-standalone",
8464
8519
  "shared-tooling-git-hooks": "git-hooks",
@@ -8467,34 +8522,33 @@ var BUILT_IN_MATRIX = {
8467
8522
  "mobile-framework-expo": "expo",
8468
8523
  "web-routing-react-router": "react-router",
8469
8524
  "web-state-jotai": "jotai",
8470
- "api-ai-huggingface-inference": "huggingface-inference",
8525
+ "ai-infrastructure-litellm": "litellm",
8471
8526
  "api-cms-sanity": "sanity",
8472
8527
  "api-observability-setup-axiom-pino-sentry": "setup-axiom-pino-sentry",
8473
- "api-ai-mistral-sdk": "mistral-sdk",
8474
- "shared-meta-research-methodology": "research-methodology",
8475
8528
  "web-realtime-websockets": "websockets",
8476
8529
  "web-data-fetching-graphql-apollo": "graphql-apollo",
8477
8530
  "web-state-redux-toolkit": "redux-toolkit",
8478
8531
  "api-baas-turso": "turso",
8479
8532
  "web-state-pinia": "pinia",
8480
- "api-ai-promptfoo": "promptfoo",
8481
- "api-ai-ollama": "ollama",
8482
8533
  "api-auth-clerk": "clerk",
8483
8534
  "api-framework-elysia": "elysia",
8484
8535
  "web-tooling-vite": "vite",
8485
8536
  "api-search-meilisearch": "meilisearch",
8486
- "shared-meta-cli-reviewing": "cli-reviewing",
8487
8537
  "api-search-elasticsearch": "elasticsearch",
8488
8538
  "web-utilities-date-fns": "date-fns",
8489
- "api-baas-upstash": "upstash",
8490
8539
  "web-tooling-storybook": "storybook",
8491
- "api-ai-tool-use-patterns": "tool-use-patterns",
8540
+ "ai-provider-claude-vision": "claude-vision",
8541
+ "meta-reviewing-cli-reviewing": "cli-reviewing",
8492
8542
  "api-baas-planetscale": "planetscale",
8543
+ "api-database-upstash": "upstash",
8493
8544
  "web-ui-shadcn-ui": "shadcn-ui",
8494
8545
  "api-auth-nextauth": "nextauth",
8546
+ "ai-provider-openai-whisper": "openai-whisper",
8547
+ "ai-observability-promptfoo": "promptfoo",
8495
8548
  "mobile-framework-react-native": "react-native",
8496
8549
  "web-realtime-sse": "sse",
8497
8550
  "web-framework-vue-composition-api": "vue-composition-api",
8551
+ "ai-orchestration-langchain": "langchain",
8498
8552
  "api-vector-db-chroma": "chroma",
8499
8553
  "web-forms-vee-validate": "vee-validate",
8500
8554
  "web-testing-vue-test-utils": "vue-test-utils",
@@ -8502,37 +8556,41 @@ var BUILT_IN_MATRIX = {
8502
8556
  "web-state-zustand": "zustand",
8503
8557
  "web-ui-radix-ui": "radix-ui",
8504
8558
  "web-state-ngrx-signalstore": "ngrx-signalstore",
8505
- "shared-ci-cd-cloudflare-workers": "cloudflare-workers",
8559
+ "ai-orchestration-llamaindex": "llamaindex",
8506
8560
  "api-flags-posthog-flags": "posthog-flags",
8507
8561
  "shared-tooling-eslint-prettier": "eslint-prettier",
8562
+ "ai-provider-openai-sdk": "openai-sdk",
8508
8563
  "web-animation-framer-motion": "framer-motion",
8509
- "shared-ci-cd-docker": "docker",
8564
+ "ai-orchestration-vercel-ai-sdk": "vercel-ai-sdk",
8565
+ "ai-provider-anthropic-sdk": "anthropic-sdk",
8566
+ "ai-provider-mistral-sdk": "mistral-sdk",
8567
+ "infra-config-setup-env": "setup-env",
8510
8568
  "web-testing-playwright-e2e": "playwright-e2e",
8511
8569
  "web-error-handling-error-boundaries": "error-boundaries",
8512
8570
  "web-i18n-next-intl": "next-intl",
8513
8571
  "web-framework-solidjs": "solidjs",
8514
8572
  "web-meta-framework-astro": "astro",
8515
8573
  "api-baas-neon": "neon",
8516
- "shared-meta-reviewing": "reviewing",
8517
8574
  "api-database-edgedb": "edgedb",
8518
8575
  "api-vector-db-weaviate": "weaviate",
8519
8576
  "web-pwa-service-workers": "service-workers",
8520
- "shared-infra-setup-env": "setup-env",
8577
+ "infra-platform-cloudflare-workers": "cloudflare-workers",
8521
8578
  "web-testing-react-testing-library": "react-testing-library",
8579
+ "meta-methodology-research-methodology": "research-methodology",
8580
+ "ai-infrastructure-replicate": "replicate",
8522
8581
  "api-database-knex": "knex",
8523
8582
  "web-styling-cva": "cva",
8524
8583
  "web-mocks-msw": "msw",
8525
8584
  "shared-monorepo-turborepo": "turborepo",
8585
+ "ai-provider-google-gemini-sdk": "google-gemini-sdk",
8526
8586
  "web-i18n-vue-i18n": "vue-i18n",
8527
8587
  "web-routing-tanstack-router": "tanstack-router",
8588
+ "ai-patterns-tool-use-patterns": "tool-use-patterns",
8528
8589
  "api-vector-db-qdrant": "qdrant",
8529
8590
  "web-files-image-handling": "image-handling",
8530
8591
  "api-email-setup-resend": "setup-resend",
8531
- "api-ai-claude-vision": "claude-vision",
8532
8592
  "web-server-state-react-query": "react-query",
8533
- "api-ai-llamaindex": "llamaindex",
8534
8593
  "web-framework-svelte": "svelte",
8535
- "api-ai-elevenlabs": "elevenlabs",
8536
8594
  "api-performance-api-performance": "api-performance",
8537
8595
  "web-data-fetching-graphql-urql": "graphql-urql",
8538
8596
  "web-ui-ant-design": "ant-design",
@@ -8548,13 +8606,11 @@ var BUILT_IN_MATRIX = {
8548
8606
  "api-cms-strapi": "strapi",
8549
8607
  "web-utilities-vueuse": "vueuse",
8550
8608
  "api-baas-firebase": "firebase",
8551
- "api-ai-openai-sdk": "openai-sdk",
8552
- "api-ai-langfuse": "langfuse",
8553
- "api-ai-openai-whisper": "openai-whisper",
8554
8609
  "api-database-redis": "redis",
8555
8610
  "shared-monorepo-pnpm-workspaces": "pnpm-workspaces",
8556
- "api-ai-litellm": "litellm",
8611
+ "meta-reviewing-reviewing": "reviewing",
8557
8612
  "web-ui-mui": "mui",
8613
+ "ai-infrastructure-modal": "modal",
8558
8614
  "api-database-drizzle": "drizzle",
8559
8615
  "api-database-surrealdb": "surrealdb",
8560
8616
  "web-testing-vitest": "vitest",
@@ -8563,26 +8619,21 @@ var BUILT_IN_MATRIX = {
8563
8619
  "web-animation-view-transitions": "view-transitions",
8564
8620
  "api-framework-nestjs": "nestjs",
8565
8621
  "api-email-resend-react-email": "resend-react-email",
8566
- "api-baas-vercel-kv": "vercel-kv",
8567
- "api-baas-vercel-postgres": "vercel-postgres",
8568
8622
  "api-framework-express": "express",
8569
- "api-ai-modal": "modal",
8570
8623
  "web-ui-tanstack-table": "tanstack-table",
8624
+ "ai-observability-langfuse": "langfuse",
8571
8625
  "web-meta-framework-remix": "remix",
8572
- "api-ai-vercel-ai-sdk": "vercel-ai-sdk",
8573
- "api-ai-langchain": "langchain",
8574
8626
  "web-error-handling-result-types": "result-types",
8575
8627
  "web-performance-web-performance": "web-performance",
8576
8628
  "shared-tooling-typescript-config": "typescript-config",
8577
8629
  "web-styling-tailwind": "tailwind",
8578
8630
  "web-forms-react-hook-form": "react-hook-form",
8579
- "api-ai-google-gemini-sdk": "google-gemini-sdk",
8580
8631
  "api-database-postgresql": "postgresql",
8581
8632
  "web-meta-framework-sveltekit": "sveltekit",
8582
8633
  "web-realtime-socket-io": "socket-io",
8583
8634
  "api-vector-db-pinecone": "pinecone",
8584
8635
  "web-accessibility-web-accessibility": "web-accessibility",
8585
- "api-ai-together-ai": "together-ai",
8636
+ "infra-ci-cd-docker": "docker",
8586
8637
  "web-styling-scss-modules": "scss-modules",
8587
8638
  "web-ui-mantine": "mantine",
8588
8639
  "shared-security-auth-security": "auth-security",
@@ -8590,8 +8641,12 @@ var BUILT_IN_MATRIX = {
8590
8641
  "api-commerce-stripe": "stripe",
8591
8642
  "api-framework-fastify": "fastify",
8592
8643
  "web-testing-cypress-e2e": "cypress-e2e",
8644
+ "api-database-vercel-kv": "vercel-kv",
8645
+ "infra-ci-cd-github-actions": "github-actions",
8593
8646
  "api-analytics-posthog-analytics": "posthog-analytics",
8594
8647
  "web-meta-framework-qwik": "qwik",
8648
+ "ai-provider-elevenlabs": "elevenlabs",
8649
+ "ai-infrastructure-ollama": "ollama",
8595
8650
  "web-data-fetching-swr": "swr",
8596
8651
  "api-database-sequelize": "sequelize",
8597
8652
  "web-i18n-react-intl": "react-intl"
@@ -8643,4 +8698,4 @@ export {
8643
8698
  getCategoryDomain,
8644
8699
  findStack
8645
8700
  };
8646
- //# sourceMappingURL=chunk-4R6I6A3U.js.map
8701
+ //# sourceMappingURL=chunk-3MXMYHO3.js.map