@agents-inc/cli 0.79.0 → 0.81.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +2 -2
  3. package/dist/{chunk-XA7WF3BI.js → chunk-3C6AXGR7.js} +3 -3
  4. package/dist/{chunk-7JQIMEUX.js → chunk-3SCIYMRK.js} +3 -3
  5. package/dist/{chunk-FSK4TQX7.js → chunk-4R6I6A3U.js} +3225 -134
  6. package/dist/chunk-4R6I6A3U.js.map +1 -0
  7. package/dist/{chunk-MUCQ27HV.js → chunk-4R72372U.js} +2 -2
  8. package/dist/{chunk-XYPAOBBV.js → chunk-633YIZOU.js} +2 -2
  9. package/dist/{chunk-OOWNDQCG.js → chunk-6SEOOFMV.js} +6 -4
  10. package/dist/chunk-6SEOOFMV.js.map +1 -0
  11. package/dist/{chunk-KVRR4PEJ.js → chunk-A4R2AHH3.js} +5 -5
  12. package/dist/{chunk-QD3GQ2CH.js → chunk-A7KWEOOC.js} +6 -5
  13. package/dist/chunk-A7KWEOOC.js.map +1 -0
  14. package/dist/{chunk-SJNUTUSJ.js → chunk-AGEKXFYP.js} +5 -5
  15. package/dist/{chunk-32HX6UYI.js → chunk-BN73X3JN.js} +59 -2
  16. package/dist/chunk-BN73X3JN.js.map +1 -0
  17. package/dist/{chunk-F4IZ3UAS.js → chunk-C7RO4MAX.js} +4 -4
  18. package/dist/{chunk-HANGA633.js → chunk-EJ25JDI2.js} +5 -5
  19. package/dist/chunk-EJ25JDI2.js.map +1 -0
  20. package/dist/{chunk-Q755X6QF.js → chunk-FWGRGNB5.js} +4 -4
  21. package/dist/{chunk-VDVLM3KB.js → chunk-GLUVHKBJ.js} +8 -4
  22. package/dist/chunk-GLUVHKBJ.js.map +1 -0
  23. package/dist/{chunk-NKLNT7N7.js → chunk-H3NQGJMB.js} +2 -2
  24. package/dist/{chunk-N2XGUAJU.js → chunk-HZ67BGPS.js} +2 -12
  25. package/dist/chunk-HZ67BGPS.js.map +1 -0
  26. package/dist/{chunk-B4C2S5LP.js → chunk-IDII4V66.js} +17 -15
  27. package/dist/chunk-IDII4V66.js.map +1 -0
  28. package/dist/{chunk-OIHZ2YH3.js → chunk-JOJQ4E6M.js} +7 -7
  29. package/dist/{chunk-YFHVP3VA.js → chunk-KSWD7FSM.js} +3 -3
  30. package/dist/{chunk-FUWUCKES.js → chunk-LO4X32JC.js} +2 -2
  31. package/dist/{chunk-D4T3HHE7.js → chunk-MNJAF4K2.js} +2 -2
  32. package/dist/{chunk-EO6KJI5D.js → chunk-NJ2RJLRS.js} +906 -63
  33. package/dist/chunk-NJ2RJLRS.js.map +1 -0
  34. package/dist/{chunk-U2KFFRRX.js → chunk-NZAJTLEK.js} +2 -2
  35. package/dist/{chunk-N34D3ROY.js → chunk-RJOJUSU4.js} +8 -5
  36. package/dist/chunk-RJOJUSU4.js.map +1 -0
  37. package/dist/{chunk-7HGMFJ4Y.js → chunk-RXQNQXTF.js} +3 -3
  38. package/dist/{chunk-OTMIGYBB.js → chunk-STPYV6V3.js} +6 -6
  39. package/dist/{chunk-KQDGLEBF.js → chunk-TJXBRYM4.js} +10 -10
  40. package/dist/chunk-TJXBRYM4.js.map +1 -0
  41. package/dist/{chunk-7LBYURQR.js → chunk-TQ363UUH.js} +2 -2
  42. package/dist/{chunk-IFCASC6R.js → chunk-TZY7WNWO.js} +2 -2
  43. package/dist/{chunk-W46L2PXK.js → chunk-WZGROC5L.js} +2 -2
  44. package/dist/commands/build/marketplace.js +4 -4
  45. package/dist/commands/build/plugins.js +8 -8
  46. package/dist/commands/build/stack.js +8 -8
  47. package/dist/commands/compile.js +8 -8
  48. package/dist/commands/config/index.js +8 -8
  49. package/dist/commands/config/path.js +7 -7
  50. package/dist/commands/config/show.js +8 -8
  51. package/dist/commands/diff.js +7 -7
  52. package/dist/commands/doctor.js +7 -7
  53. package/dist/commands/edit.js +23 -23
  54. package/dist/commands/eject.js +7 -7
  55. package/dist/commands/import/skill.js +7 -7
  56. package/dist/commands/info.js +7 -7
  57. package/dist/commands/init.js +23 -23
  58. package/dist/commands/list.js +7 -7
  59. package/dist/commands/new/agent.js +8 -8
  60. package/dist/commands/new/marketplace.js +9 -9
  61. package/dist/commands/new/skill.js +8 -8
  62. package/dist/commands/outdated.js +7 -7
  63. package/dist/commands/search.js +7 -7
  64. package/dist/commands/uninstall.js +7 -7
  65. package/dist/commands/update.js +8 -8
  66. package/dist/commands/validate.js +7 -7
  67. package/dist/components/wizard/category-grid.js +2 -2
  68. package/dist/components/wizard/category-grid.test.js +11 -11
  69. package/dist/components/wizard/domain-selection.js +9 -9
  70. package/dist/components/wizard/source-grid.js +2 -2
  71. package/dist/components/wizard/source-grid.test.js +11 -11
  72. package/dist/components/wizard/stack-selection.js +8 -8
  73. package/dist/components/wizard/step-agents.js +9 -9
  74. package/dist/components/wizard/step-agents.test.js +13 -13
  75. package/dist/components/wizard/step-agents.test.js.map +1 -1
  76. package/dist/components/wizard/step-build.js +9 -9
  77. package/dist/components/wizard/step-build.test.js +12 -12
  78. package/dist/components/wizard/step-confirm.js +4 -4
  79. package/dist/components/wizard/step-confirm.test.js +10 -10
  80. package/dist/components/wizard/step-settings.js +7 -7
  81. package/dist/components/wizard/step-settings.test.js +10 -10
  82. package/dist/components/wizard/step-sources.js +9 -9
  83. package/dist/components/wizard/step-sources.test.js +12 -12
  84. package/dist/components/wizard/step-stack.js +9 -12
  85. package/dist/components/wizard/step-stack.test.js +19 -111
  86. package/dist/components/wizard/step-stack.test.js.map +1 -1
  87. package/dist/components/wizard/wizard-layout.js +10 -10
  88. package/dist/components/wizard/wizard-tabs.js +1 -1
  89. package/dist/components/wizard/wizard-tabs.test.js +12 -23
  90. package/dist/components/wizard/wizard-tabs.test.js.map +1 -1
  91. package/dist/components/wizard/wizard.js +21 -21
  92. package/dist/config-exports.js +1 -1
  93. package/dist/hooks/init.js +23 -23
  94. package/dist/{loader-JMOO2A7C.js → loader-LI3EM4VG.js} +4 -4
  95. package/dist/{source-loader-D3VIG3GM.js → source-loader-6Z353WKU.js} +7 -7
  96. package/dist/source-manager-IZYZR4SK.js +19 -0
  97. package/dist/src/agents/meta/agent-summoner/workflow.md +10 -10
  98. package/dist/src/agents/meta/convention-keeper/critical-reminders.md +17 -0
  99. package/dist/src/agents/meta/convention-keeper/critical-requirements.md +15 -0
  100. package/dist/src/agents/meta/convention-keeper/examples.md +71 -0
  101. package/dist/src/agents/meta/convention-keeper/intro.md +11 -0
  102. package/dist/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  103. package/dist/src/agents/meta/convention-keeper/output-format.md +134 -0
  104. package/dist/src/agents/meta/convention-keeper/workflow.md +258 -0
  105. package/dist/src/agents/meta/{documentor → scribe}/metadata.yaml +2 -2
  106. package/{src/agents/meta/documentor → dist/src/agents/meta/scribe}/workflow.md +1 -1
  107. package/dist/src/agents/planning/web-pm/workflow.md +1 -1
  108. package/dist/stores/wizard-store.js +7 -7
  109. package/dist/stores/wizard-store.test.js +19 -13
  110. package/dist/stores/wizard-store.test.js.map +1 -1
  111. package/package.json +1 -1
  112. package/src/agents/meta/agent-summoner/workflow.md +10 -10
  113. package/src/agents/meta/convention-keeper/critical-reminders.md +17 -0
  114. package/src/agents/meta/convention-keeper/critical-requirements.md +15 -0
  115. package/src/agents/meta/convention-keeper/examples.md +71 -0
  116. package/src/agents/meta/convention-keeper/intro.md +11 -0
  117. package/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  118. package/src/agents/meta/convention-keeper/output-format.md +134 -0
  119. package/src/agents/meta/convention-keeper/workflow.md +258 -0
  120. package/src/agents/meta/{documentor → scribe}/metadata.yaml +2 -2
  121. package/{dist/src/agents/meta/documentor → src/agents/meta/scribe}/workflow.md +1 -1
  122. package/src/agents/planning/web-pm/workflow.md +1 -1
  123. package/dist/chunk-32HX6UYI.js.map +0 -1
  124. package/dist/chunk-B4C2S5LP.js.map +0 -1
  125. package/dist/chunk-EO6KJI5D.js.map +0 -1
  126. package/dist/chunk-FSK4TQX7.js.map +0 -1
  127. package/dist/chunk-HANGA633.js.map +0 -1
  128. package/dist/chunk-KQDGLEBF.js.map +0 -1
  129. package/dist/chunk-N2XGUAJU.js.map +0 -1
  130. package/dist/chunk-N34D3ROY.js.map +0 -1
  131. package/dist/chunk-OOWNDQCG.js.map +0 -1
  132. package/dist/chunk-QD3GQ2CH.js.map +0 -1
  133. package/dist/chunk-VDVLM3KB.js.map +0 -1
  134. package/dist/source-manager-FPYFJRR7.js +0 -19
  135. /package/dist/{chunk-XA7WF3BI.js.map → chunk-3C6AXGR7.js.map} +0 -0
  136. /package/dist/{chunk-7JQIMEUX.js.map → chunk-3SCIYMRK.js.map} +0 -0
  137. /package/dist/{chunk-MUCQ27HV.js.map → chunk-4R72372U.js.map} +0 -0
  138. /package/dist/{chunk-XYPAOBBV.js.map → chunk-633YIZOU.js.map} +0 -0
  139. /package/dist/{chunk-KVRR4PEJ.js.map → chunk-A4R2AHH3.js.map} +0 -0
  140. /package/dist/{chunk-SJNUTUSJ.js.map → chunk-AGEKXFYP.js.map} +0 -0
  141. /package/dist/{chunk-F4IZ3UAS.js.map → chunk-C7RO4MAX.js.map} +0 -0
  142. /package/dist/{chunk-Q755X6QF.js.map → chunk-FWGRGNB5.js.map} +0 -0
  143. /package/dist/{chunk-NKLNT7N7.js.map → chunk-H3NQGJMB.js.map} +0 -0
  144. /package/dist/{chunk-OIHZ2YH3.js.map → chunk-JOJQ4E6M.js.map} +0 -0
  145. /package/dist/{chunk-YFHVP3VA.js.map → chunk-KSWD7FSM.js.map} +0 -0
  146. /package/dist/{chunk-FUWUCKES.js.map → chunk-LO4X32JC.js.map} +0 -0
  147. /package/dist/{chunk-D4T3HHE7.js.map → chunk-MNJAF4K2.js.map} +0 -0
  148. /package/dist/{chunk-U2KFFRRX.js.map → chunk-NZAJTLEK.js.map} +0 -0
  149. /package/dist/{chunk-7HGMFJ4Y.js.map → chunk-RXQNQXTF.js.map} +0 -0
  150. /package/dist/{chunk-OTMIGYBB.js.map → chunk-STPYV6V3.js.map} +0 -0
  151. /package/dist/{chunk-7LBYURQR.js.map → chunk-TQ363UUH.js.map} +0 -0
  152. /package/dist/{chunk-IFCASC6R.js.map → chunk-TZY7WNWO.js.map} +0 -0
  153. /package/dist/{chunk-W46L2PXK.js.map → chunk-WZGROC5L.js.map} +0 -0
  154. /package/dist/{loader-JMOO2A7C.js.map → loader-LI3EM4VG.js.map} +0 -0
  155. /package/dist/{source-loader-D3VIG3GM.js.map → source-loader-6Z353WKU.js.map} +0 -0
  156. /package/dist/{source-manager-FPYFJRR7.js.map → source-manager-IZYZR4SK.js.map} +0 -0
  157. /package/dist/src/agents/meta/{documentor → scribe}/critical-reminders.md +0 -0
  158. /package/dist/src/agents/meta/{documentor → scribe}/critical-requirements.md +0 -0
  159. /package/dist/src/agents/meta/{documentor → scribe}/examples.md +0 -0
  160. /package/dist/src/agents/meta/{documentor → scribe}/intro.md +0 -0
  161. /package/dist/src/agents/meta/{documentor → scribe}/output-format.md +0 -0
  162. /package/src/agents/meta/{documentor → scribe}/critical-reminders.md +0 -0
  163. /package/src/agents/meta/{documentor → scribe}/critical-requirements.md +0 -0
  164. /package/src/agents/meta/{documentor → scribe}/examples.md +0 -0
  165. /package/src/agents/meta/{documentor → scribe}/intro.md +0 -0
  166. /package/src/agents/meta/{documentor → scribe}/output-format.md +0 -0
@@ -358,16 +358,12 @@ var defaultRules = {
358
358
  reason: "Base frameworks are mutually exclusive"
359
359
  },
360
360
  {
361
- skills: ["nextjs", "remix", "sveltekit", "astro"],
361
+ skills: ["nextjs", "remix", "nuxt", "sveltekit", "astro", "qwik"],
362
362
  reason: "Meta-frameworks are mutually exclusive"
363
363
  },
364
364
  {
365
- skills: ["pinia", "zustand", "redux-toolkit", "mobx"],
366
- reason: "Pinia is Vue-only; zustand/redux-toolkit/mobx skills teach React patterns"
367
- },
368
- {
369
- skills: ["ngrx-signalstore", "zustand", "pinia", "redux-toolkit", "mobx"],
370
- reason: "NgRx SignalStore is Angular-only"
365
+ skills: ["zustand", "redux-toolkit", "mobx", "jotai"],
366
+ reason: "React state management libraries are mutually exclusive"
371
367
  },
372
368
  {
373
369
  skills: ["react-query", "swr"],
@@ -382,52 +378,51 @@ var defaultRules = {
382
378
  reason: "Both are E2E frameworks"
383
379
  },
384
380
  {
385
- skills: ["react-hook-form", "vee-validate"],
386
- reason: "react-hook-form is React-only, vee-validate is Vue-only"
381
+ skills: ["hono", "express", "fastify", "elysia", "nestjs"],
382
+ reason: "API frameworks are mutually exclusive within a single service"
387
383
  },
388
384
  {
389
- skills: ["react-testing-library", "vue-test-utils"],
390
- reason: "Framework-specific testing libraries"
385
+ skills: ["drizzle", "prisma", "sequelize", "typeorm"],
386
+ reason: "SQL ORMs are mutually exclusive"
391
387
  },
392
388
  {
393
- skills: ["hono", "express", "fastify"],
394
- reason: "API frameworks are mutually exclusive within a single service"
389
+ skills: ["cli-commander", "oclif-ink"],
390
+ reason: "CLI frameworks are mutually exclusive"
395
391
  },
396
392
  {
397
- skills: ["drizzle", "prisma", "mongodb"],
398
- reason: "Database ORMs/ODMs are mutually exclusive"
393
+ skills: ["mongodb", "mongoose"],
394
+ reason: "Raw MongoDB driver and Mongoose ODM are alternative approaches"
399
395
  },
400
396
  {
401
- skills: ["cli-commander", "oclif-ink"],
402
- reason: "CLI frameworks are mutually exclusive"
403
- }
404
- ],
405
- discourages: [
397
+ skills: ["pinecone", "qdrant", "chroma", "weaviate"],
398
+ reason: "Vector databases are mutually exclusive"
399
+ },
406
400
  {
407
- skills: ["zustand", "redux-toolkit", "mobx"],
408
- reason: "Using multiple React state libraries adds complexity"
401
+ skills: ["elasticsearch", "meilisearch"],
402
+ reason: "Search engines are mutually exclusive"
409
403
  },
410
404
  {
411
- skills: ["redux-toolkit", "zustand"],
412
- reason: "Redux Toolkit adds more boilerplate than Zustand"
405
+ skills: ["payload", "sanity", "strapi"],
406
+ reason: "CMS platforms are mutually exclusive"
413
407
  },
414
408
  {
415
- skills: ["swr", "react-query"],
416
- reason: "SWR is simpler but React Query has more features"
409
+ skills: ["shadcn-ui", "mui", "chakra-ui", "mantine", "ant-design"],
410
+ reason: "React UI component libraries define competing design systems"
417
411
  },
418
412
  {
419
- skills: ["express", "hono"],
420
- reason: "Express is mature but Hono offers better performance and edge support"
413
+ skills: ["turborepo", "nx"],
414
+ reason: "Monorepo build orchestrators are mutually exclusive"
421
415
  },
422
416
  {
423
- skills: ["express", "fastify"],
424
- reason: "Express is mature but Fastify offers better performance"
417
+ skills: ["biome", "eslint-prettier"],
418
+ reason: "Linting and formatting tools are mutually exclusive"
425
419
  },
426
420
  {
427
- skills: ["cypress-e2e", "playwright-e2e"],
428
- reason: "Cypress excels at interactive debugging; Playwright has better cross-browser support and CI performance"
421
+ skills: ["react-router", "tanstack-router"],
422
+ reason: "React client-side routers are mutually exclusive"
429
423
  }
430
424
  ],
425
+ discourages: [],
431
426
  compatibleWith: [
432
427
  // React ecosystem (includes Next.js, Remix as meta-frameworks)
433
428
  {
@@ -553,6 +548,57 @@ var defaultRules = {
553
548
  "nuxt"
554
549
  ],
555
550
  reason: "URQL has bindings for React, Vue, and Solid"
551
+ },
552
+ // React Router
553
+ {
554
+ skills: ["react-router", "react", "remix"],
555
+ reason: "React Router is a React routing library"
556
+ },
557
+ // React UI component libraries
558
+ {
559
+ skills: ["chakra-ui", "react", "nextjs", "remix"],
560
+ reason: "Chakra UI is a React component library"
561
+ },
562
+ {
563
+ skills: ["mantine", "react", "nextjs", "remix"],
564
+ reason: "Mantine is a React component library"
565
+ },
566
+ {
567
+ skills: ["mui", "react", "nextjs", "remix"],
568
+ reason: "MUI is a React component library"
569
+ },
570
+ {
571
+ skills: ["ant-design", "react", "nextjs", "remix"],
572
+ reason: "Ant Design is a React component library"
573
+ },
574
+ {
575
+ skills: ["headless-ui", "react", "vue-composition-api", "nextjs", "remix", "nuxt"],
576
+ reason: "Headless UI supports React and Vue"
577
+ },
578
+ // Vue ecosystem
579
+ {
580
+ skills: ["vueuse", "vue-composition-api", "nuxt"],
581
+ reason: "VueUse composables require Vue 3"
582
+ },
583
+ // Mobile
584
+ {
585
+ skills: ["expo", "react", "react-native"],
586
+ reason: "Expo is a React Native framework"
587
+ },
588
+ // Cross-framework tools
589
+ {
590
+ skills: [
591
+ "storybook",
592
+ "react",
593
+ "vue-composition-api",
594
+ "angular-standalone",
595
+ "svelte",
596
+ "nextjs",
597
+ "remix",
598
+ "nuxt",
599
+ "sveltekit"
600
+ ],
601
+ reason: "Storybook supports all major frameworks"
556
602
  }
557
603
  ],
558
604
  recommends: [
@@ -575,7 +621,13 @@ var defaultRules = {
575
621
  { skill: "msw", reason: "Network-level API mocking for tests" },
576
622
  { skill: "playwright-e2e", reason: "Cross-browser E2E testing" },
577
623
  { skill: "posthog-analytics", reason: "Product analytics and feature flags" },
578
- { skill: "prisma", reason: "Mature database ORM with great DX" }
624
+ { skill: "prisma", reason: "Mature database ORM with great DX" },
625
+ { skill: "vercel-ai-sdk", reason: "Provider-agnostic AI integration with streaming" },
626
+ { skill: "anthropic-sdk", reason: "Direct Claude API access with tool use and vision" },
627
+ { skill: "hono", reason: "Fast, lightweight API framework with edge support" },
628
+ { skill: "pinecone", reason: "Managed vector database for AI applications" },
629
+ { skill: "stripe", reason: "Industry-standard payment processing" },
630
+ { skill: "expo", reason: "Best-in-class React Native development experience" }
579
631
  ],
580
632
  requires: [
581
633
  {
@@ -696,6 +748,79 @@ var defaultRules = {
696
748
  needs: ["react", "vue-composition-api", "solidjs", "nextjs", "remix", "nuxt"],
697
749
  needsAny: true,
698
750
  reason: "URQL supports React, Vue, and Solid"
751
+ },
752
+ {
753
+ skill: "react-router",
754
+ needs: ["react", "nextjs", "remix"],
755
+ needsAny: true,
756
+ reason: "React Router is a React routing library"
757
+ },
758
+ {
759
+ skill: "chakra-ui",
760
+ needs: ["react", "nextjs", "remix"],
761
+ needsAny: true,
762
+ reason: "Chakra UI is a React component library"
763
+ },
764
+ {
765
+ skill: "mantine",
766
+ needs: ["react", "nextjs", "remix"],
767
+ needsAny: true,
768
+ reason: "Mantine is a React component library"
769
+ },
770
+ {
771
+ skill: "mui",
772
+ needs: ["react", "nextjs", "remix"],
773
+ needsAny: true,
774
+ reason: "MUI is a React component library"
775
+ },
776
+ {
777
+ skill: "ant-design",
778
+ needs: ["react", "nextjs", "remix"],
779
+ needsAny: true,
780
+ reason: "Ant Design is a React component library"
781
+ },
782
+ {
783
+ skill: "headless-ui",
784
+ needs: ["react", "vue-composition-api", "nextjs", "remix", "nuxt"],
785
+ needsAny: true,
786
+ reason: "Headless UI supports React and Vue"
787
+ },
788
+ {
789
+ skill: "vueuse",
790
+ needs: ["vue-composition-api", "nuxt"],
791
+ needsAny: true,
792
+ reason: "VueUse composables require Vue 3"
793
+ },
794
+ {
795
+ skill: "expo",
796
+ needs: ["react-native"],
797
+ reason: "Expo is a React Native framework"
798
+ },
799
+ {
800
+ skill: "react-native",
801
+ needs: ["react"],
802
+ reason: "React Native is built on React"
803
+ },
804
+ {
805
+ skill: "claude-vision",
806
+ needs: ["anthropic-sdk"],
807
+ reason: "Claude Vision uses the Anthropic SDK"
808
+ },
809
+ {
810
+ skill: "openai-whisper",
811
+ needs: ["openai-sdk"],
812
+ reason: "Whisper API uses the OpenAI SDK"
813
+ },
814
+ {
815
+ skill: "next-intl",
816
+ needs: ["nextjs"],
817
+ reason: "next-intl is built specifically for Next.js"
818
+ },
819
+ {
820
+ skill: "trpc",
821
+ needs: ["react", "nextjs", "remix"],
822
+ needsAny: true,
823
+ reason: "Our tRPC skill teaches React Query integration patterns"
699
824
  }
700
825
  ],
701
826
  alternatives: [
@@ -705,12 +830,12 @@ var defaultRules = {
705
830
  },
706
831
  {
707
832
  purpose: "Meta-Framework",
708
- skills: ["nextjs", "remix", "nuxt", "sveltekit", "astro"]
833
+ skills: ["nextjs", "remix", "nuxt", "sveltekit", "astro", "qwik"]
709
834
  },
710
- { purpose: "Routing (React)", skills: ["tanstack-router"] },
835
+ { purpose: "Routing (React)", skills: ["tanstack-router", "react-router"] },
711
836
  {
712
837
  purpose: "Styling",
713
- skills: ["scss-modules", "tailwind", "cva"]
838
+ skills: ["scss-modules", "tailwind"]
714
839
  },
715
840
  {
716
841
  purpose: "Client State (React)",
@@ -720,7 +845,7 @@ var defaultRules = {
720
845
  { purpose: "Client State (Angular)", skills: ["ngrx-signalstore"] },
721
846
  {
722
847
  purpose: "Server State / Data Fetching",
723
- skills: ["react-query", "swr"]
848
+ skills: ["react-query", "swr", "trpc"]
724
849
  },
725
850
  {
726
851
  purpose: "GraphQL Client",
@@ -728,9 +853,12 @@ var defaultRules = {
728
853
  },
729
854
  {
730
855
  purpose: "API Framework",
731
- skills: ["hono", "express", "fastify"]
856
+ skills: ["hono", "express", "fastify", "elysia", "nestjs"]
857
+ },
858
+ {
859
+ purpose: "Database ORM / ODM",
860
+ skills: ["drizzle", "prisma", "sequelize", "typeorm", "mongoose"]
732
861
  },
733
- { purpose: "Database ORM / ODM", skills: ["drizzle", "prisma", "mongodb"] },
734
862
  { purpose: "Forms (React)", skills: ["react-hook-form"] },
735
863
  { purpose: "Forms (Vue)", skills: ["vee-validate"] },
736
864
  { purpose: "Validation", skills: ["zod-validation"] },
@@ -742,15 +870,43 @@ var defaultRules = {
742
870
  skills: ["playwright-e2e", "cypress-e2e"]
743
871
  },
744
872
  { purpose: "API Mocking", skills: ["msw"] },
745
- { purpose: "UI Components (React + Tailwind)", skills: ["shadcn-ui"] },
746
- { purpose: "Mobile", skills: ["react-native"] },
873
+ {
874
+ purpose: "UI Components (React)",
875
+ skills: ["shadcn-ui", "mui", "chakra-ui", "mantine", "ant-design"]
876
+ },
877
+ { purpose: "Mobile", skills: ["react-native", "expo"] },
747
878
  {
748
879
  purpose: "CLI Framework",
749
880
  skills: ["cli-commander", "oclif-ink"]
750
881
  },
751
- { purpose: "AI SDK", skills: ["vercel-ai-sdk"] },
752
- { purpose: "Backend as a Service", skills: ["supabase"] },
753
- { purpose: "Auth", skills: ["better-auth-drizzle-hono", "nextauth", "clerk"] }
882
+ { purpose: "AI SDK", skills: ["vercel-ai-sdk", "langchain", "llamaindex"] },
883
+ { purpose: "Backend as a Service", skills: ["supabase", "firebase", "appwrite"] },
884
+ { purpose: "Auth", skills: ["better-auth-drizzle-hono", "nextauth", "clerk"] },
885
+ {
886
+ purpose: "AI Provider SDK",
887
+ skills: [
888
+ "anthropic-sdk",
889
+ "openai-sdk",
890
+ "google-gemini-sdk",
891
+ "mistral-sdk",
892
+ "cohere-sdk",
893
+ "together-ai",
894
+ "replicate",
895
+ "huggingface-inference",
896
+ "ollama",
897
+ "litellm"
898
+ ]
899
+ },
900
+ { purpose: "Vector Database", skills: ["pinecone", "qdrant", "chroma", "weaviate"] },
901
+ { purpose: "Search Engine", skills: ["elasticsearch", "meilisearch"] },
902
+ { purpose: "CMS", skills: ["payload", "sanity", "strapi"] },
903
+ { purpose: "Managed Database", skills: ["neon", "planetscale", "turso", "vercel-postgres"] },
904
+ { purpose: "Cache / KV Store", skills: ["redis", "upstash", "vercel-kv"] },
905
+ { purpose: "Payment", skills: ["stripe"] },
906
+ { purpose: "Realtime", skills: ["websockets", "socket-io", "sse"] },
907
+ { purpose: "Animation", skills: ["framer-motion", "css-animations", "view-transitions"] },
908
+ { purpose: "Monorepo Orchestrator", skills: ["turborepo", "nx"] },
909
+ { purpose: "Linting / Formatting", skills: ["biome", "eslint-prettier"] }
754
910
  ]
755
911
  }
756
912
  };
@@ -944,7 +1100,7 @@ var defaultStacks = [
944
1100
  "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
945
1101
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
946
1102
  },
947
- documentor: {
1103
+ scribe: {
948
1104
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
949
1105
  "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
950
1106
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
@@ -1062,7 +1218,7 @@ var defaultStacks = [
1062
1218
  "api-auth": [{ id: "api-auth-nextauth", preloaded: false }],
1063
1219
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
1064
1220
  },
1065
- documentor: {
1221
+ scribe: {
1066
1222
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1067
1223
  "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
1068
1224
  "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
@@ -1270,7 +1426,7 @@ var defaultStacks = [
1270
1426
  "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
1271
1427
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
1272
1428
  },
1273
- documentor: {
1429
+ scribe: {
1274
1430
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1275
1431
  "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
1276
1432
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
@@ -1534,7 +1690,7 @@ var defaultStacks = [
1534
1690
  { id: "shared-monorepo-pnpm-workspaces", preloaded: false }
1535
1691
  ]
1536
1692
  },
1537
- documentor: {
1693
+ scribe: {
1538
1694
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1539
1695
  "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
1540
1696
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
@@ -1570,6 +1726,7 @@ var defaultStacks = [
1570
1726
  "web-framework": [{ id: "web-framework-react", preloaded: true }],
1571
1727
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1572
1728
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1729
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1573
1730
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
1574
1731
  "shared-tooling": SHARED_TOOLING,
1575
1732
  "web-tooling": [{ id: "web-tooling-vite", preloaded: false }]
@@ -1579,30 +1736,35 @@ var defaultStacks = [
1579
1736
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1580
1737
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1581
1738
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1739
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1582
1740
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }]
1583
1741
  },
1584
1742
  "web-pm": {
1585
1743
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1586
1744
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1587
1745
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1746
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1588
1747
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }]
1589
1748
  },
1590
1749
  "web-researcher": {
1591
1750
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1592
1751
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1593
1752
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1753
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1594
1754
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }]
1595
1755
  },
1596
1756
  "pattern-scout": {
1597
1757
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1598
1758
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1599
1759
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1760
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1600
1761
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }]
1601
1762
  },
1602
1763
  "web-pattern-critique": {
1603
1764
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1604
1765
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1605
1766
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1767
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1606
1768
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
1607
1769
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }]
1608
1770
  },
@@ -1610,6 +1772,7 @@ var defaultStacks = [
1610
1772
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1611
1773
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1612
1774
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1775
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1613
1776
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
1614
1777
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
1615
1778
  },
@@ -1617,13 +1780,15 @@ var defaultStacks = [
1617
1780
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1618
1781
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1619
1782
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1783
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1620
1784
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
1621
1785
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
1622
1786
  },
1623
- documentor: {
1787
+ scribe: {
1624
1788
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1625
1789
  "web-client-state": [{ id: "web-state-redux-toolkit", preloaded: false }],
1626
1790
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1791
+ "web-routing": [{ id: "web-routing-react-router", preloaded: false }],
1627
1792
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
1628
1793
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
1629
1794
  },
@@ -1808,7 +1973,7 @@ var defaultStacks = [
1808
1973
  "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
1809
1974
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
1810
1975
  },
1811
- documentor: {
1976
+ scribe: {
1812
1977
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1813
1978
  "web-styling": [{ id: "web-styling-scss-modules", preloaded: false }],
1814
1979
  "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
@@ -1927,7 +2092,7 @@ var defaultStacks = [
1927
2092
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
1928
2093
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
1929
2094
  },
1930
- documentor: {
2095
+ scribe: {
1931
2096
  "web-framework": [{ id: "web-framework-react", preloaded: false }],
1932
2097
  "web-meta-framework": [{ id: "web-meta-framework-remix", preloaded: false }],
1933
2098
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
@@ -2043,7 +2208,7 @@ var defaultStacks = [
2043
2208
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2044
2209
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2045
2210
  },
2046
- documentor: {
2211
+ scribe: {
2047
2212
  "web-framework": [{ id: "web-framework-svelte", preloaded: false }],
2048
2213
  "web-meta-framework": [{ id: "web-meta-framework-sveltekit", preloaded: false }],
2049
2214
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
@@ -2151,7 +2316,7 @@ var defaultStacks = [
2151
2316
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2152
2317
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2153
2318
  },
2154
- documentor: {
2319
+ scribe: {
2155
2320
  "web-framework": [{ id: "web-framework-solidjs", preloaded: false }],
2156
2321
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2157
2322
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
@@ -2184,6 +2349,7 @@ var defaultStacks = [
2184
2349
  "api-api": [{ id: "api-framework-hono", preloaded: true }],
2185
2350
  "api-database": [{ id: "api-database-drizzle", preloaded: true }],
2186
2351
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2352
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }],
2187
2353
  "shared-tooling": SHARED_TOOLING
2188
2354
  },
2189
2355
  "web-reviewer": {
@@ -2195,19 +2361,22 @@ var defaultStacks = [
2195
2361
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }],
2196
2362
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2197
2363
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2198
- "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
2364
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2365
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }]
2199
2366
  },
2200
2367
  "web-pm": {
2201
2368
  "web-meta-framework": [{ id: "web-meta-framework-astro", preloaded: false }],
2202
2369
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2203
2370
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2204
2371
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2205
- "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
2372
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2373
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }]
2206
2374
  },
2207
2375
  "web-architecture": {
2208
2376
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2209
2377
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2210
- "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
2378
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2379
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }]
2211
2380
  },
2212
2381
  "web-researcher": {
2213
2382
  "web-meta-framework": [{ id: "web-meta-framework-astro", preloaded: false }],
@@ -2216,14 +2385,16 @@ var defaultStacks = [
2216
2385
  "api-researcher": {
2217
2386
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2218
2387
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2219
- "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
2388
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2389
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }]
2220
2390
  },
2221
2391
  "pattern-scout": {
2222
2392
  "web-meta-framework": [{ id: "web-meta-framework-astro", preloaded: false }],
2223
2393
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2224
2394
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2225
2395
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2226
- "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
2396
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2397
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }]
2227
2398
  },
2228
2399
  "web-pattern-critique": {
2229
2400
  "web-meta-framework": [{ id: "web-meta-framework-astro", preloaded: false }],
@@ -2231,6 +2402,7 @@ var defaultStacks = [
2231
2402
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2232
2403
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2233
2404
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2405
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }],
2234
2406
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }]
2235
2407
  },
2236
2408
  "agent-summoner": {
@@ -2239,6 +2411,7 @@ var defaultStacks = [
2239
2411
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2240
2412
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2241
2413
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2414
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }],
2242
2415
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2243
2416
  },
2244
2417
  "skill-summoner": {
@@ -2247,14 +2420,16 @@ var defaultStacks = [
2247
2420
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2248
2421
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2249
2422
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2423
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }],
2250
2424
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2251
2425
  },
2252
- documentor: {
2426
+ scribe: {
2253
2427
  "web-meta-framework": [{ id: "web-meta-framework-astro", preloaded: false }],
2254
2428
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2255
2429
  "api-api": [{ id: "api-framework-hono", preloaded: false }],
2256
2430
  "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2257
2431
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2432
+ "api-cms": [{ id: "api-cms-sanity", preloaded: false }],
2258
2433
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2259
2434
  },
2260
2435
  "web-tester": {
@@ -2363,7 +2538,7 @@ var defaultStacks = [
2363
2538
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2364
2539
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2365
2540
  },
2366
- documentor: {
2541
+ scribe: {
2367
2542
  "web-framework": [{ id: "web-framework-vue-composition-api", preloaded: false }],
2368
2543
  "web-client-state": [{ id: "web-state-pinia", preloaded: false }],
2369
2544
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
@@ -2487,7 +2662,7 @@ var defaultStacks = [
2487
2662
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2488
2663
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2489
2664
  },
2490
- documentor: {
2665
+ scribe: {
2491
2666
  "web-framework": [{ id: "web-framework-vue-composition-api", preloaded: false }],
2492
2667
  "web-meta-framework": [{ id: "web-meta-framework-nuxt", preloaded: false }],
2493
2668
  "web-client-state": [{ id: "web-state-pinia", preloaded: false }],
@@ -2604,7 +2779,7 @@ var defaultStacks = [
2604
2779
  "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2605
2780
  "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
2606
2781
  },
2607
- documentor: {
2782
+ scribe: {
2608
2783
  "web-framework": [{ id: "web-framework-angular-standalone", preloaded: false }],
2609
2784
  "web-client-state": [{ id: "web-state-ngrx-signalstore", preloaded: false }],
2610
2785
  "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
@@ -2621,6 +2796,674 @@ var defaultStacks = [
2621
2796
  ]
2622
2797
  }
2623
2798
  }
2799
+ },
2800
+ {
2801
+ id: "nextjs-ai-saas",
2802
+ name: "Next.js AI SaaS",
2803
+ description: "Next.js, Vercel AI SDK, Anthropic SDK, Drizzle, Pinecone",
2804
+ philosophy: "AI-first full-stack with streaming and tool use",
2805
+ agents: {
2806
+ "web-developer": {
2807
+ "web-framework": [{ id: "web-framework-react", preloaded: true }],
2808
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: true }],
2809
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
2810
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
2811
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
2812
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2813
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
2814
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
2815
+ "shared-tooling": SHARED_TOOLING,
2816
+ "web-tooling": [{ id: "web-tooling-vite", preloaded: false }]
2817
+ },
2818
+ "api-developer": {
2819
+ "api-api": [{ id: "api-framework-hono", preloaded: true }],
2820
+ "api-database": [{ id: "api-database-drizzle", preloaded: true }],
2821
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2822
+ "api-ai": [
2823
+ { id: "api-ai-vercel-ai-sdk", preloaded: true },
2824
+ { id: "api-ai-anthropic-sdk", preloaded: true },
2825
+ { id: "api-ai-tool-use-patterns", preloaded: false }
2826
+ ],
2827
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
2828
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2829
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
2830
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
2831
+ "shared-tooling": SHARED_TOOLING
2832
+ },
2833
+ "cli-developer": {
2834
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: true }],
2835
+ "shared-tooling": SHARED_TOOLING
2836
+ },
2837
+ "web-reviewer": {
2838
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }],
2839
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
2840
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
2841
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
2842
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
2843
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
2844
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2845
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }]
2846
+ },
2847
+ "api-reviewer": {
2848
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }],
2849
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
2850
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2851
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2852
+ "api-ai": [
2853
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
2854
+ { id: "api-ai-anthropic-sdk", preloaded: false }
2855
+ ],
2856
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
2857
+ },
2858
+ "cli-reviewer": {
2859
+ "shared-meta": [{ id: "shared-meta-cli-reviewing", preloaded: true }],
2860
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
2861
+ },
2862
+ "web-tester": {
2863
+ "web-testing": [
2864
+ { id: "web-testing-playwright-e2e", preloaded: false },
2865
+ { id: "web-testing-vitest", preloaded: false }
2866
+ ],
2867
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }]
2868
+ },
2869
+ "web-pm": {
2870
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
2871
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
2872
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
2873
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
2874
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
2875
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2876
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
2877
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
2878
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
2879
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2880
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2881
+ "api-ai": [
2882
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
2883
+ { id: "api-ai-anthropic-sdk", preloaded: false },
2884
+ { id: "api-ai-tool-use-patterns", preloaded: false }
2885
+ ],
2886
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
2887
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2888
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
2889
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
2890
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
2891
+ },
2892
+ "web-architecture": {
2893
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
2894
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2895
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2896
+ "api-ai": [
2897
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
2898
+ { id: "api-ai-anthropic-sdk", preloaded: false },
2899
+ { id: "api-ai-tool-use-patterns", preloaded: false }
2900
+ ],
2901
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
2902
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2903
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
2904
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
2905
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
2906
+ },
2907
+ "web-researcher": {
2908
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
2909
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
2910
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
2911
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
2912
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
2913
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2914
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
2915
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }]
2916
+ },
2917
+ "api-researcher": {
2918
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
2919
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2920
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2921
+ "api-ai": [
2922
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
2923
+ { id: "api-ai-anthropic-sdk", preloaded: false },
2924
+ { id: "api-ai-tool-use-patterns", preloaded: false }
2925
+ ],
2926
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
2927
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2928
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
2929
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
2930
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
2931
+ },
2932
+ "pattern-scout": {
2933
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
2934
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
2935
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
2936
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
2937
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
2938
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2939
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
2940
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
2941
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
2942
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2943
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2944
+ "api-ai": [
2945
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
2946
+ { id: "api-ai-anthropic-sdk", preloaded: false },
2947
+ { id: "api-ai-tool-use-patterns", preloaded: false }
2948
+ ],
2949
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
2950
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2951
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
2952
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }]
2953
+ },
2954
+ "web-pattern-critique": {
2955
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
2956
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
2957
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
2958
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
2959
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
2960
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2961
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
2962
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
2963
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
2964
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2965
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2966
+ "api-ai": [
2967
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
2968
+ { id: "api-ai-anthropic-sdk", preloaded: false },
2969
+ { id: "api-ai-tool-use-patterns", preloaded: false }
2970
+ ],
2971
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
2972
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2973
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
2974
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
2975
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }]
2976
+ },
2977
+ "agent-summoner": {
2978
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
2979
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
2980
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
2981
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
2982
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
2983
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
2984
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
2985
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
2986
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
2987
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
2988
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
2989
+ "api-ai": [
2990
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
2991
+ { id: "api-ai-anthropic-sdk", preloaded: false },
2992
+ { id: "api-ai-tool-use-patterns", preloaded: false }
2993
+ ],
2994
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
2995
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
2996
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
2997
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
2998
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
2999
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3000
+ },
3001
+ "skill-summoner": {
3002
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3003
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3004
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3005
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3006
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3007
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3008
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3009
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3010
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3011
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3012
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3013
+ "api-ai": [
3014
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
3015
+ { id: "api-ai-anthropic-sdk", preloaded: false },
3016
+ { id: "api-ai-tool-use-patterns", preloaded: false }
3017
+ ],
3018
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
3019
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3020
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3021
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3022
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3023
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3024
+ },
3025
+ scribe: {
3026
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3027
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3028
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3029
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3030
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3031
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3032
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3033
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3034
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3035
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3036
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3037
+ "api-ai": [
3038
+ { id: "api-ai-vercel-ai-sdk", preloaded: false },
3039
+ { id: "api-ai-anthropic-sdk", preloaded: false },
3040
+ { id: "api-ai-tool-use-patterns", preloaded: false }
3041
+ ],
3042
+ "api-vector-db": [{ id: "api-vector-db-pinecone", preloaded: false }],
3043
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3044
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3045
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3046
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3047
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3048
+ },
3049
+ "cli-tester": {}
3050
+ }
3051
+ },
3052
+ {
3053
+ id: "nextjs-saas-starter",
3054
+ name: "Next.js SaaS Starter",
3055
+ description: "Next.js, Better Auth, Stripe, Drizzle, Resend, PostHog",
3056
+ philosophy: "Ship your SaaS fast with auth, payments, and analytics",
3057
+ agents: {
3058
+ "web-developer": {
3059
+ "web-framework": [{ id: "web-framework-react", preloaded: true }],
3060
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: true }],
3061
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3062
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3063
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3064
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3065
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3066
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3067
+ "shared-tooling": SHARED_TOOLING,
3068
+ "web-tooling": [{ id: "web-tooling-vite", preloaded: false }]
3069
+ },
3070
+ "api-developer": {
3071
+ "api-api": [{ id: "api-framework-hono", preloaded: true }],
3072
+ "api-database": [{ id: "api-database-drizzle", preloaded: true }],
3073
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3074
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: true }],
3075
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3076
+ "api-analytics": [
3077
+ { id: "api-analytics-posthog-analytics", preloaded: false },
3078
+ { id: "api-flags-posthog-flags", preloaded: false }
3079
+ ],
3080
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3081
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3082
+ "shared-tooling": SHARED_TOOLING
3083
+ },
3084
+ "cli-developer": {
3085
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: true }],
3086
+ "shared-tooling": SHARED_TOOLING
3087
+ },
3088
+ "web-reviewer": {
3089
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }],
3090
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3091
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3092
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3093
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3094
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3095
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3096
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }]
3097
+ },
3098
+ "api-reviewer": {
3099
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }],
3100
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3101
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3102
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3103
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3104
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
3105
+ },
3106
+ "cli-reviewer": {
3107
+ "shared-meta": [{ id: "shared-meta-cli-reviewing", preloaded: true }],
3108
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3109
+ },
3110
+ "web-tester": {
3111
+ "web-testing": [
3112
+ { id: "web-testing-playwright-e2e", preloaded: false },
3113
+ { id: "web-testing-vitest", preloaded: false }
3114
+ ],
3115
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }]
3116
+ },
3117
+ "web-pm": {
3118
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3119
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3120
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3121
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3122
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3123
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3124
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3125
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3126
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3127
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3128
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3129
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3130
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3131
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3132
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3133
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3134
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3135
+ },
3136
+ "web-architecture": {
3137
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3138
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3139
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3140
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3141
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3142
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3143
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3144
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3145
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3146
+ },
3147
+ "web-researcher": {
3148
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3149
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3150
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3151
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3152
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3153
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3154
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3155
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }]
3156
+ },
3157
+ "api-researcher": {
3158
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3159
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3160
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3161
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3162
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3163
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3164
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3165
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3166
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3167
+ },
3168
+ "pattern-scout": {
3169
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3170
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3171
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3172
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3173
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3174
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3175
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3176
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3177
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3178
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3179
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3180
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3181
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3182
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3183
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3184
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }]
3185
+ },
3186
+ "web-pattern-critique": {
3187
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3188
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3189
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3190
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3191
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3192
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3193
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3194
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3195
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3196
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3197
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3198
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3199
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3200
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3201
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3202
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3203
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }]
3204
+ },
3205
+ "agent-summoner": {
3206
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3207
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3208
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3209
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3210
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3211
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3212
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3213
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3214
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3215
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3216
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3217
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3218
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3219
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3220
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3221
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3222
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3223
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3224
+ },
3225
+ "skill-summoner": {
3226
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3227
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3228
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3229
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3230
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3231
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3232
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3233
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3234
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3235
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3236
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3237
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3238
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3239
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3240
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3241
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3242
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3243
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3244
+ },
3245
+ scribe: {
3246
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3247
+ "web-meta-framework": [{ id: "web-meta-framework-nextjs", preloaded: false }],
3248
+ "web-styling": [{ id: "web-styling-tailwind", preloaded: false }],
3249
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3250
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3251
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3252
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3253
+ "web-accessibility": [{ id: "web-accessibility-web-accessibility", preloaded: false }],
3254
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3255
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3256
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3257
+ "api-commerce": [{ id: "api-commerce-stripe", preloaded: false }],
3258
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3259
+ "api-analytics": [{ id: "api-analytics-posthog-analytics", preloaded: false }],
3260
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3261
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3262
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3263
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3264
+ },
3265
+ "cli-tester": {}
3266
+ }
3267
+ },
3268
+ {
3269
+ id: "expo-mobile-fullstack",
3270
+ name: "Expo Mobile Full-Stack",
3271
+ description: "Expo, React Native, Zustand, React Query, Hono, Drizzle",
3272
+ philosophy: "Cross-platform mobile with shared React patterns",
3273
+ agents: {
3274
+ "web-developer": {
3275
+ "web-framework": [{ id: "web-framework-react", preloaded: true }],
3276
+ "mobile-framework": [
3277
+ { id: "mobile-framework-expo", preloaded: true },
3278
+ { id: "mobile-framework-react-native", preloaded: true }
3279
+ ],
3280
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3281
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3282
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3283
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3284
+ "shared-tooling": SHARED_TOOLING
3285
+ },
3286
+ "api-developer": {
3287
+ "api-api": [{ id: "api-framework-hono", preloaded: true }],
3288
+ "api-database": [{ id: "api-database-drizzle", preloaded: true }],
3289
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3290
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3291
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3292
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3293
+ "shared-tooling": SHARED_TOOLING
3294
+ },
3295
+ "cli-developer": {
3296
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: true }],
3297
+ "shared-tooling": SHARED_TOOLING
3298
+ },
3299
+ "web-reviewer": {
3300
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }],
3301
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3302
+ "mobile-framework": [
3303
+ { id: "mobile-framework-expo", preloaded: false },
3304
+ { id: "mobile-framework-react-native", preloaded: false }
3305
+ ],
3306
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3307
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3308
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3309
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }]
3310
+ },
3311
+ "api-reviewer": {
3312
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }],
3313
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3314
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3315
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3316
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }]
3317
+ },
3318
+ "cli-reviewer": {
3319
+ "shared-meta": [{ id: "shared-meta-cli-reviewing", preloaded: true }],
3320
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3321
+ },
3322
+ "web-tester": {
3323
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3324
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }]
3325
+ },
3326
+ "web-pm": {
3327
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3328
+ "mobile-framework": [
3329
+ { id: "mobile-framework-expo", preloaded: false },
3330
+ { id: "mobile-framework-react-native", preloaded: false }
3331
+ ],
3332
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3333
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3334
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3335
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3336
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3337
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3338
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3339
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3340
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3341
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3342
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3343
+ },
3344
+ "web-architecture": {
3345
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3346
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3347
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3348
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3349
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3350
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3351
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3352
+ },
3353
+ "web-researcher": {
3354
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3355
+ "mobile-framework": [
3356
+ { id: "mobile-framework-expo", preloaded: false },
3357
+ { id: "mobile-framework-react-native", preloaded: false }
3358
+ ],
3359
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3360
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3361
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3362
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }]
3363
+ },
3364
+ "api-researcher": {
3365
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3366
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3367
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3368
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3369
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3370
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3371
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }]
3372
+ },
3373
+ "pattern-scout": {
3374
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3375
+ "mobile-framework": [
3376
+ { id: "mobile-framework-expo", preloaded: false },
3377
+ { id: "mobile-framework-react-native", preloaded: false }
3378
+ ],
3379
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3380
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3381
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3382
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3383
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3384
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3385
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3386
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3387
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3388
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }]
3389
+ },
3390
+ "web-pattern-critique": {
3391
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3392
+ "mobile-framework": [
3393
+ { id: "mobile-framework-expo", preloaded: false },
3394
+ { id: "mobile-framework-react-native", preloaded: false }
3395
+ ],
3396
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3397
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3398
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3399
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3400
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3401
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3402
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3403
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3404
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3405
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3406
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: true }]
3407
+ },
3408
+ "agent-summoner": {
3409
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3410
+ "mobile-framework": [
3411
+ { id: "mobile-framework-expo", preloaded: false },
3412
+ { id: "mobile-framework-react-native", preloaded: false }
3413
+ ],
3414
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3415
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3416
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3417
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3418
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3419
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3420
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3421
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3422
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3423
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3424
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3425
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3426
+ },
3427
+ "skill-summoner": {
3428
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3429
+ "mobile-framework": [
3430
+ { id: "mobile-framework-expo", preloaded: false },
3431
+ { id: "mobile-framework-react-native", preloaded: false }
3432
+ ],
3433
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3434
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3435
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3436
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3437
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3438
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3439
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3440
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3441
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3442
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3443
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3444
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3445
+ },
3446
+ scribe: {
3447
+ "web-framework": [{ id: "web-framework-react", preloaded: false }],
3448
+ "mobile-framework": [
3449
+ { id: "mobile-framework-expo", preloaded: false },
3450
+ { id: "mobile-framework-react-native", preloaded: false }
3451
+ ],
3452
+ "web-client-state": [{ id: "web-state-zustand", preloaded: false }],
3453
+ "web-server-state": [{ id: "web-server-state-react-query", preloaded: false }],
3454
+ "web-testing": [{ id: "web-testing-vitest", preloaded: false }],
3455
+ "web-mocking": [{ id: "web-mocks-msw", preloaded: false }],
3456
+ "api-api": [{ id: "api-framework-hono", preloaded: false }],
3457
+ "api-database": [{ id: "api-database-drizzle", preloaded: false }],
3458
+ "api-auth": [{ id: "api-auth-better-auth-drizzle-hono", preloaded: false }],
3459
+ "api-observability": [{ id: "api-observability-axiom-pino-sentry", preloaded: false }],
3460
+ "api-email": [{ id: "api-email-resend-react-email", preloaded: false }],
3461
+ "shared-ci-cd": [{ id: "shared-ci-cd-github-actions", preloaded: false }],
3462
+ "cli-framework": [{ id: "cli-framework-cli-commander", preloaded: false }],
3463
+ "shared-meta": [{ id: "shared-meta-reviewing", preloaded: false }]
3464
+ },
3465
+ "cli-tester": {}
3466
+ }
2624
3467
  }
2625
3468
  ];
2626
3469
 
@@ -2630,4 +3473,4 @@ export {
2630
3473
  defaultRules,
2631
3474
  defaultStacks
2632
3475
  };
2633
- //# sourceMappingURL=chunk-EO6KJI5D.js.map
3476
+ //# sourceMappingURL=chunk-NJ2RJLRS.js.map