@polymorphism-tech/morph-spec 4.12.0 → 4.14.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 (316) hide show
  1. package/CLAUDE.md +7 -7
  2. package/README.md +28 -34
  3. package/bin/morph-spec.js +41 -24
  4. package/bin/task-manager.js +962 -1341
  5. package/bin/validate.js +1 -1
  6. package/claude-plugin.json +1 -1
  7. package/docs/CHEATSHEET.md +14 -16
  8. package/docs/QUICKSTART.md +15 -15
  9. package/framework/CLAUDE.md +5 -2
  10. package/framework/agents/README.md +3 -4
  11. package/framework/agents/ai-agents/ai-system-architect.md +6 -10
  12. package/framework/agents/architecture/seo-growth-hacker.md +166 -326
  13. package/framework/agents/architecture/standards-architect.md +21 -31
  14. package/framework/agents/backend/dotnet-senior.md +160 -86
  15. package/framework/agents/backend/ef-modeler.md +2 -6
  16. package/framework/agents/backend/hangfire-orchestrator.md +8 -9
  17. package/framework/agents/backend/ms-agent-expert.md +1 -1
  18. package/framework/agents/frontend/nextjs-expert.md +198 -133
  19. package/framework/agents/frontend/ui-ux-designer.md +226 -267
  20. package/framework/agents/infrastructure/infra-architect.md +191 -27
  21. package/framework/agents/integrations/clerk-auth.md +19 -26
  22. package/framework/agents/integrations/hangfire-integration.md +1 -4
  23. package/framework/agents.json +1084 -2278
  24. package/framework/commands/morph-apply.md +4 -6
  25. package/framework/commands/morph-preflight.md +192 -269
  26. package/framework/commands/morph-proposal.md +210 -238
  27. package/framework/commands/morph-status.md +72 -92
  28. package/framework/commands/morph-troubleshoot.md +6 -13
  29. package/framework/hooks/README.md +1 -6
  30. package/framework/hooks/claude-code/post-tool-use/validator-feedback.js +4 -6
  31. package/framework/hooks/claude-code/pre-compact/save-morph-context.js +12 -7
  32. package/framework/hooks/claude-code/pre-tool-use/enforce-phase-writes.js +2 -2
  33. package/framework/hooks/claude-code/pre-tool-use/protect-spec-files.js +2 -2
  34. package/framework/hooks/claude-code/pre-tool-use/task-tracking-guard.js +5 -10
  35. package/framework/hooks/claude-code/session-start/inject-morph-context.js +63 -30
  36. package/framework/hooks/claude-code/session-start/resume-context.js +77 -0
  37. package/framework/hooks/claude-code/statusline.py +4 -5
  38. package/framework/hooks/claude-code/stop/validate-completion.js +4 -4
  39. package/framework/hooks/claude-code/user-prompt/enrich-prompt.js +8 -8
  40. package/framework/hooks/shared/compact-restore.js +28 -5
  41. package/framework/hooks/shared/phase-utils.js +4 -8
  42. package/framework/hooks/shared/state-reader.js +34 -3
  43. package/framework/phases.json +162 -200
  44. package/framework/rules/ai-agents-standards.md +15 -0
  45. package/framework/rules/asaas-standards.md +13 -0
  46. package/framework/rules/clerk-standards.md +13 -0
  47. package/framework/rules/csharp-standards.md +8 -4
  48. package/framework/rules/data-standards.md +18 -0
  49. package/framework/rules/dotnet-templates.md +87 -0
  50. package/framework/rules/frontend-standards.md +13 -13
  51. package/framework/rules/hangfire-standards.md +13 -0
  52. package/framework/rules/infrastructure-standards.md +27 -16
  53. package/framework/rules/morph-workflow.md +73 -13
  54. package/framework/rules/nextjs-standards.md +1 -0
  55. package/framework/rules/nextjs-templates.md +40 -0
  56. package/framework/rules/resend-standards.md +12 -0
  57. package/framework/rules/supabase-standards.md +29 -0
  58. package/framework/skills/README.md +6 -8
  59. package/framework/skills/level-0-meta/mcp-registry.json +21 -99
  60. package/framework/{standards/ai-agents/team-orchestration.md → skills/level-0-meta/morph-agent-teams/SKILL.md} +472 -479
  61. package/framework/skills/level-0-meta/morph-brainstorming/SKILL.md +28 -1
  62. package/framework/skills/level-0-meta/morph-checklist/SKILL.md +2 -2
  63. package/framework/skills/level-0-meta/morph-code-review/SKILL.md +1 -5
  64. package/framework/skills/level-0-meta/morph-code-review/scripts/scan-csharp.mjs +1 -1
  65. package/framework/skills/level-0-meta/morph-frontend-review/SKILL.md +23 -41
  66. package/framework/skills/level-0-meta/morph-init/SKILL.md +18 -14
  67. package/framework/skills/level-0-meta/morph-parallel-dispatch/SKILL.md +225 -0
  68. package/framework/skills/level-0-meta/morph-post-implementation/SKILL.md +20 -0
  69. package/framework/skills/level-0-meta/morph-tool-usage-guide/SKILL.md +4 -8
  70. package/framework/skills/level-0-meta/morph-tool-usage-guide/references/tools-per-phase.md +15 -59
  71. package/framework/skills/level-0-meta/morph-verification-before-completion/SKILL.md +7 -19
  72. package/framework/skills/level-0-meta/morph-verification-before-completion/scripts/check-phase-outputs.mjs +8 -8
  73. package/framework/skills/level-1-workflows/README.md +1 -1
  74. package/framework/skills/level-1-workflows/morph-phase-codebase-analysis/SKILL.md +49 -50
  75. package/framework/skills/level-1-workflows/morph-phase-design/SKILL.md +57 -123
  76. package/framework/skills/level-1-workflows/morph-phase-design/references/architecture-analysis-guide.md +5 -50
  77. package/framework/skills/level-1-workflows/morph-phase-design/references/spec-example.md +1 -1
  78. package/framework/skills/level-1-workflows/morph-phase-implement/SKILL.md +127 -159
  79. package/framework/skills/level-1-workflows/morph-phase-implement/prompts/code-quality-reviewer-prompt.md +1 -1
  80. package/framework/skills/level-1-workflows/morph-phase-implement/prompts/implementer-prompt.md +4 -3
  81. package/framework/skills/level-1-workflows/morph-phase-implement/prompts/spec-reviewer-prompt.md +2 -2
  82. package/framework/skills/level-1-workflows/morph-phase-implement/references/recap-example.md +1 -1
  83. package/framework/skills/level-1-workflows/morph-phase-plan/SKILL.md +17 -13
  84. package/framework/skills/level-1-workflows/morph-phase-tasks/SKILL.md +22 -40
  85. package/framework/skills/level-1-workflows/morph-phase-tasks/references/task-planning-patterns.md +143 -172
  86. package/framework/skills/level-1-workflows/morph-phase-tasks/references/tasks-example.md +5 -5
  87. package/framework/skills/level-1-workflows/morph-phase-uiux/SKILL.md +57 -77
  88. package/framework/skills/level-1-workflows/morph-scope-escalation/SKILL.md +1 -1
  89. package/framework/squad-templates/backend-only.json +6 -6
  90. package/framework/squad-templates/frontend-only.json +17 -8
  91. package/framework/squad-templates/full-stack.json +29 -24
  92. package/framework/standards/STANDARDS.json +1021 -2369
  93. package/framework/standards/backend/dotnet/fluent-validation-vsa.md +200 -0
  94. package/framework/standards/backend/dotnet/result-pattern.md +213 -0
  95. package/framework/standards/backend/dotnet/scalar-ui.md +172 -0
  96. package/framework/standards/backend/dotnet/scrutor.md +158 -0
  97. package/framework/standards/backend/dotnet/vsa-handler-patterns.md +274 -0
  98. package/framework/standards/frontend/nextjs/motion-patterns.md +1 -1
  99. package/framework/standards/infrastructure/supabase/mcp-setup.md +83 -193
  100. package/framework/standards/integration/mcp/mcp-tools.md +91 -77
  101. package/framework/templates/IDE-SNIPPETS.md +2 -6
  102. package/framework/templates/README.md +709 -814
  103. package/framework/templates/REGISTRY.json +223 -762
  104. package/framework/templates/code/dotnet/abstractions/api-endpoint.cs +7 -0
  105. package/framework/templates/code/dotnet/abstractions/error.cs +60 -0
  106. package/framework/templates/code/dotnet/abstractions/handler.cs +12 -0
  107. package/framework/templates/code/dotnet/abstractions/result.cs +74 -0
  108. package/framework/templates/code/dotnet/backend/repository.cs +148 -141
  109. package/framework/templates/code/dotnet/constants/api-tags.cs +6 -0
  110. package/framework/templates/code/dotnet/exceptions/exception-handler.cs +32 -0
  111. package/framework/templates/code/dotnet/extensions/database-extensions.cs +20 -0
  112. package/framework/templates/code/dotnet/extensions/handler-registration.cs +38 -0
  113. package/framework/templates/code/dotnet/extensions/health-checks.cs +24 -0
  114. package/framework/templates/code/dotnet/extensions/map-endpoints.cs +35 -0
  115. package/framework/templates/code/dotnet/extensions/result-extensions.cs +29 -0
  116. package/framework/templates/code/dotnet/feature/endpoint.cs.hbs +21 -0
  117. package/framework/templates/code/dotnet/feature/entity.cs.hbs +8 -0
  118. package/framework/templates/code/dotnet/feature/errors.cs.hbs +8 -0
  119. package/framework/templates/code/dotnet/feature/handler.cs.hbs +24 -0
  120. package/framework/templates/code/dotnet/feature/request.cs.hbs +4 -0
  121. package/framework/templates/code/dotnet/feature/response.cs.hbs +4 -0
  122. package/framework/templates/code/dotnet/feature/validator.cs.hbs +15 -0
  123. package/framework/templates/code/dotnet/jobs/job.cs +21 -17
  124. package/framework/templates/code/dotnet/pipelines/logging-decorator.cs +31 -0
  125. package/framework/templates/code/dotnet/pipelines/validation-decorator.cs +97 -0
  126. package/framework/templates/code/dotnet/test.cs +192 -106
  127. package/framework/templates/context/ARCHITECTURE.md +89 -0
  128. package/framework/templates/context/CONTEXT-FEATURE.md +2 -2
  129. package/framework/templates/context/CONTEXT.md +180 -181
  130. package/framework/templates/context/design-system.md +1 -5
  131. package/framework/templates/docs/onboarding.md +2 -3
  132. package/framework/templates/docs/proposal.md +171 -182
  133. package/framework/templates/docs/spec.md +1 -3
  134. package/framework/templates/docs/ui-components.md +0 -72
  135. package/framework/templates/examples/design-system-examples.md +4 -4
  136. package/framework/templates/feature/decisions.md +0 -66
  137. package/framework/templates/feature/recap.md +1 -2
  138. package/framework/templates/infrastructure/github/README.md +56 -593
  139. package/framework/templates/integrations/clerk-config.cs +0 -41
  140. package/framework/templates/meta-prompts/parallel-workers/parallel-worker.md +2 -2
  141. package/framework/templates/meta-prompts/squad-leaders/backend-squad.md +1 -2
  142. package/framework/templates/meta-prompts/squad-leaders/frontend-squad.md +83 -126
  143. package/framework/templates/meta-prompts/validators/pre-commit-validator.md +2 -2
  144. package/framework/templates/project/validate.js +2 -4
  145. package/framework/templates/ui/design-system.css +1 -1
  146. package/framework/workflows/README.md +8 -8
  147. package/framework/workflows/configs/fast-track.json +51 -0
  148. package/framework/workflows/configs/full.json +68 -0
  149. package/framework/workflows/configs/standard.json +7 -3
  150. package/framework/workflows/docs/STORY-DRIVEN-DEVELOPMENT.md +1 -1
  151. package/framework/workflows/docs/enforcement-pipeline.md +18 -19
  152. package/framework/workflows/docs/full-morph.md +69 -76
  153. package/framework/workflows/docs/standard.md +49 -44
  154. package/framework/workflows/docs/ui-refresh.md +1 -1
  155. package/package.json +3 -3
  156. package/src/commands/agents/dispatch-agents.js +55 -116
  157. package/src/commands/context/context-refresh.js +79 -0
  158. package/src/commands/phase/phase-reset.js +1 -1
  159. package/src/commands/project/doctor.js +10 -32
  160. package/src/commands/project/init.js +12 -0
  161. package/src/commands/project/status.js +6 -12
  162. package/src/commands/scaffold/scaffold.js +131 -0
  163. package/src/commands/scope/escalate.js +1 -1
  164. package/src/commands/state/advance-phase.js +15 -29
  165. package/src/commands/state/state.js +20 -5
  166. package/src/commands/tasks/task.js +0 -30
  167. package/src/commands/validation/validate-feature.js +3 -10
  168. package/src/core/paths/output-schema.js +12 -13
  169. package/src/core/state/phase-state-machine.js +211 -217
  170. package/src/core/state/state-manager.js +9 -9
  171. package/src/lib/agents/agents-manager.js +2 -2
  172. package/src/lib/agents/output-collector.js +1 -2
  173. package/src/lib/detectors/design-system-detector.js +4 -4
  174. package/src/lib/detectors/index.js +1 -11
  175. package/src/lib/generators/architecture-scanner.js +640 -0
  176. package/src/lib/generators/context-generator.js +3 -3
  177. package/src/lib/generators/design-system-generator.js +508 -587
  178. package/src/lib/generators/index.js +12 -10
  179. package/src/lib/generators/metadata-extractor.js +386 -387
  180. package/src/lib/generators/recap-generator.js +4 -4
  181. package/src/lib/generators/scaffold-generator.js +317 -0
  182. package/src/lib/generators/settings-generator.js +0 -1
  183. package/src/lib/phase-chain/phase-validator.js +64 -42
  184. package/src/lib/stack/stack-profile.js +2 -2
  185. package/src/lib/standards/digest-builder.js +72 -285
  186. package/src/lib/tasks/task-parser.js +11 -5
  187. package/src/lib/validators/architecture/architecture-validator.js +259 -387
  188. package/src/lib/validators/content/content-validator.js +287 -287
  189. package/src/lib/validators/css/css-validator.js +340 -352
  190. package/src/lib/validators/packages/package-validator.js +347 -360
  191. package/src/lib/validators/shared/issue-counter.js +14 -18
  192. package/src/lib/validators/validation-runner.js +3 -19
  193. package/src/scripts/setup-infra.js +1 -1
  194. package/src/utils/agents-installer.js +61 -10
  195. package/src/utils/file-copier.js +1 -0
  196. package/src/utils/hooks-installer.js +11 -19
  197. package/src/utils/skills-installer.js +178 -178
  198. package/framework/agents/architecture/prompt-engineer.md +0 -195
  199. package/framework/agents/backend/api-designer.md +0 -106
  200. package/framework/agents/frontend/blazor-builder.md +0 -229
  201. package/framework/agents/frontend/nextjs-ui-specialist.md +0 -218
  202. package/framework/agents/infrastructure/azure-architect.md +0 -150
  203. package/framework/agents/infrastructure/azure-deploy-specialist.md +0 -707
  204. package/framework/agents/infrastructure/bicep-architect.md +0 -132
  205. package/framework/agents/infrastructure/container-specialist.md +0 -137
  206. package/framework/agents/infrastructure/devops-engineer.md +0 -126
  207. package/framework/agents/integrations/azure-identity.md +0 -148
  208. package/framework/agents/quality/code-analyzer.md +0 -239
  209. package/framework/agents/quality/testing-specialist.md +0 -130
  210. package/framework/hooks/claude-code/notification/approval-reminder.js +0 -57
  211. package/framework/hooks/claude-code/post-tool-use/context-refresh.js +0 -109
  212. package/framework/hooks/claude-code/post-tool-use/skill-reminder.js +0 -78
  213. package/framework/index/troubleshooting-index.json +0 -184
  214. package/framework/rules/testing-standards.md +0 -14
  215. package/framework/skills/level-0-meta/morph-replicate/SKILL.md +0 -230
  216. package/framework/skills/level-0-meta/morph-replicate/references/blazor-html-mapping.md +0 -70
  217. package/framework/skills/level-1-workflows/morph-phase-clarify/SKILL.md +0 -256
  218. package/framework/skills/level-1-workflows/morph-phase-clarify/references/clarifications-example.md +0 -117
  219. package/framework/skills/level-1-workflows/morph-phase-setup/SKILL.md +0 -269
  220. package/framework/standards/ai-agents/blazor-ui.md +0 -364
  221. package/framework/standards/architecture/ddd/aggregates.md +0 -120
  222. package/framework/standards/architecture/ddd/bounded-contexts.md +0 -105
  223. package/framework/standards/architecture/ddd/complexity-levels.md +0 -108
  224. package/framework/standards/architecture/ddd/entities.md +0 -99
  225. package/framework/standards/architecture/ddd/ubiquitous-language.md +0 -58
  226. package/framework/standards/architecture/ddd/value-objects.md +0 -124
  227. package/framework/standards/backend/api/minimal-api.md +0 -494
  228. package/framework/standards/backend/api/rest.md +0 -492
  229. package/framework/standards/backend/authentication/passkeys.md +0 -428
  230. package/framework/standards/backend/database/ef-core.md +0 -199
  231. package/framework/standards/backend/database/migrations.md +0 -393
  232. package/framework/standards/backend/database/repository-patterns.md +0 -528
  233. package/framework/standards/backend/dotnet/async.md +0 -366
  234. package/framework/standards/backend/dotnet/core.md +0 -117
  235. package/framework/standards/backend/dotnet/di.md +0 -439
  236. package/framework/standards/backend/dotnet/program-cs-checklist.md +0 -92
  237. package/framework/standards/context/analytics.md +0 -96
  238. package/framework/standards/context/bundles.md +0 -110
  239. package/framework/standards/context/priming.md +0 -78
  240. package/framework/standards/core/architecture.md +0 -185
  241. package/framework/standards/core/coding.md +0 -214
  242. package/framework/standards/core/git-branching-strategy.md +0 -403
  243. package/framework/standards/core/git.md +0 -185
  244. package/framework/standards/core/testing.md +0 -295
  245. package/framework/standards/data/nosql/blob-storage.md +0 -102
  246. package/framework/standards/data/vector-search/azure-ai-search.md +0 -121
  247. package/framework/standards/frontend/blazor/design-checklist.md +0 -222
  248. package/framework/standards/frontend/blazor/fluent-ui-setup.md +0 -595
  249. package/framework/standards/frontend/blazor/fluent-ui.md +0 -137
  250. package/framework/standards/frontend/blazor/html-conversion.md +0 -184
  251. package/framework/standards/frontend/blazor/lifecycle.md +0 -195
  252. package/framework/standards/frontend/blazor/pitfalls.md +0 -198
  253. package/framework/standards/frontend/blazor/state.md +0 -191
  254. package/framework/standards/frontend/design-system/aesthetic-direction.md +0 -266
  255. package/framework/standards/frontend/design-system/design-trends.md +0 -171
  256. package/framework/standards/infrastructure/azure/azure.md +0 -624
  257. package/framework/standards/infrastructure/azure/bicep/bicep-patterns.md +0 -422
  258. package/framework/standards/infrastructure/azure/devops/azure-devops-setup.md +0 -516
  259. package/framework/standards/infrastructure/azure/devops/local-development.md +0 -520
  260. package/framework/standards/infrastructure/azure/services/functions.md +0 -486
  261. package/framework/standards/infrastructure/azure/services/service-bus.md +0 -459
  262. package/framework/standards/infrastructure/azure/services/storage.md +0 -407
  263. package/framework/standards/infrastructure/vercel/vercel-database.md +0 -106
  264. package/framework/standards/integration/api/graphql.md +0 -91
  265. package/framework/standards/integration/api/grpc.md +0 -114
  266. package/framework/standards/integration/api/rest-design.md +0 -95
  267. package/framework/standards/integration/event-driven/cqrs.md +0 -101
  268. package/framework/standards/integration/event-driven/event-sourcing.md +0 -124
  269. package/framework/standards/integration/event-driven/service-bus.md +0 -95
  270. package/framework/standards/observability/logging.md +0 -131
  271. package/framework/standards/observability/metrics.md +0 -121
  272. package/framework/standards/observability/monitoring.md +0 -114
  273. package/framework/standards/observability/tracing.md +0 -132
  274. package/framework/standards/workflows/parallel-execution.md +0 -112
  275. package/framework/standards/workflows/thread-management.md +0 -113
  276. package/framework/templates/code/dotnet/backend/service.cs +0 -139
  277. package/framework/templates/code/dotnet/contracts/Commands.cs +0 -74
  278. package/framework/templates/code/dotnet/contracts/Entities.cs +0 -25
  279. package/framework/templates/code/dotnet/contracts/Queries.cs +0 -74
  280. package/framework/templates/code/dotnet/contracts/api-contracts.cs +0 -173
  281. package/framework/templates/code/dotnet/contracts/contracts-level1.cs +0 -69
  282. package/framework/templates/code/dotnet/contracts/contracts-level2.cs +0 -86
  283. package/framework/templates/code/dotnet/contracts/contracts-level3.cs +0 -41
  284. package/framework/templates/code/dotnet/frontend/component.razor +0 -239
  285. package/framework/templates/infrastructure/azure/Dockerfile.example +0 -82
  286. package/framework/templates/infrastructure/azure/README.md +0 -286
  287. package/framework/templates/infrastructure/azure/app-insights.bicep +0 -63
  288. package/framework/templates/infrastructure/azure/app-service.bicep +0 -164
  289. package/framework/templates/infrastructure/azure/container-app-env.bicep +0 -49
  290. package/framework/templates/infrastructure/azure/container-app.bicep +0 -156
  291. package/framework/templates/infrastructure/azure/deploy-checklist.md +0 -426
  292. package/framework/templates/infrastructure/azure/deploy.ps1 +0 -229
  293. package/framework/templates/infrastructure/azure/deploy.sh +0 -208
  294. package/framework/templates/infrastructure/azure/key-vault.bicep +0 -91
  295. package/framework/templates/infrastructure/azure/main.bicep +0 -189
  296. package/framework/templates/infrastructure/azure/parameters.dev.json +0 -29
  297. package/framework/templates/infrastructure/azure/parameters.prod.json +0 -29
  298. package/framework/templates/infrastructure/azure/parameters.staging.json +0 -29
  299. package/framework/templates/infrastructure/azure/sql-database.bicep +0 -103
  300. package/framework/templates/infrastructure/azure/storage.bicep +0 -106
  301. package/framework/templates/infrastructure/github/actions/azure-auth/action.yml.hbs +0 -22
  302. package/framework/templates/infrastructure/github/workflows/deploy-azure-app-service.yml.hbs +0 -61
  303. package/framework/templates/integrations/azure-identity-config.cs +0 -288
  304. package/framework/templates/project-structure/dotnet-ddd.md +0 -70
  305. package/framework/templates/saas/subscription.cs +0 -347
  306. package/framework/templates/saas/tenant.cs +0 -338
  307. package/framework/templates/ui/FluentDesignTheme.cs +0 -149
  308. package/framework/templates/ui/MudTheme.cs +0 -281
  309. package/framework/workflows/configs/nodejs-cli.json +0 -40
  310. package/src/commands/standards/context-budget.js +0 -89
  311. package/src/lib/standards/index.js +0 -7
  312. package/src/lib/standards/standards-context-injector.js +0 -302
  313. package/src/lib/validators/blazor/blazor-concurrency-analyzer.js +0 -316
  314. package/src/lib/validators/blazor/blazor-state-validator.js +0 -279
  315. package/src/lib/validators/blazor/blazor-validator.js +0 -369
  316. package/src/lib/validators/blazor/index.js +0 -9
@@ -1,2278 +1,1084 @@
1
- {
2
- "$schema": "./agent-schema.json",
3
- "version": "4.0.0",
4
- "total_agents": 46,
5
- "tiers": {
6
- "tier_1_orchestrators": 3,
7
- "tier_2_leaders": 4,
8
- "tier_3_specialists": 31,
9
- "tier_4_validators": 7
10
- },
11
- "agents": {
12
- "standards-architect": {
13
- "tier": 1,
14
- "title": "Chief Architect",
15
- "group": "domain-analysis",
16
- "active_phases": [
17
- "*"
18
- ],
19
- "reports_to": "user",
20
- "domains": [
21
- "architecture",
22
- "developer-experience"
23
- ],
24
- "keywords": [],
25
- "validators": [],
26
- "standards": [
27
- {
28
- "id": "core-coding",
29
- "scope": "all",
30
- "priority": "required"
31
- },
32
- {
33
- "id": "core-architecture",
34
- "scope": "all",
35
- "priority": "required"
36
- },
37
- {
38
- "id": "backend-dotnet-program-cs-checklist",
39
- "scope": "implement",
40
- "priority": "required"
41
- }
42
- ],
43
- "teammate": {
44
- "role": "Team Lead (Delegate Mode)",
45
- "icon": "🎯",
46
- "spawn_prompt": "You are the Chief Architect and Team Lead in delegate mode. Coordinate Domain Leaders, resolve conflicts, synthesize results. DO NOT implement code yourself. Escalate conflicts to user when teammates disagree on architecture/tech choices."
47
- }
48
- },
49
- "ai-system-architect": {
50
- "tier": 1,
51
- "title": "AI/Agent Architect",
52
- "group": "domain-analysis",
53
- "active_phases": [
54
- "design",
55
- "tasks"
56
- ],
57
- "reports_to": "standards-architect",
58
- "domains": [
59
- "ai-orchestration",
60
- "architecture"
61
- ],
62
- "keywords": [
63
- "agent system",
64
- "ai architecture",
65
- "orchestration",
66
- "multi-agent",
67
- "agent workflow"
68
- ],
69
- "validators": [],
70
- "standards": [
71
- {
72
- "id": "core-coding",
73
- "scope": "all",
74
- "priority": "required"
75
- },
76
- {
77
- "id": "core-architecture",
78
- "scope": "all",
79
- "priority": "required"
80
- },
81
- {
82
- "id": "ai-agents-setup",
83
- "scope": "all",
84
- "priority": "required"
85
- },
86
- {
87
- "id": "ai-agents-workflows",
88
- "scope": "design",
89
- "priority": "required"
90
- },
91
- {
92
- "id": "ai-agents-production",
93
- "scope": "implement",
94
- "priority": "required"
95
- },
96
- {
97
- "id": "ai-agents-blazor-ui",
98
- "scope": "implement",
99
- "priority": "reference"
100
- }
101
- ],
102
- "teammate": {
103
- "role": "AI Architect",
104
- "icon": "🤖",
105
- "spawn_prompt": "You are the AI/Agent System Architect. Design agent workflows, tool integrations, and orchestration patterns."
106
- }
107
- },
108
- "popm-advisor": {
109
- "tier": 1,
110
- "title": "Product/Project Advisor",
111
- "group": "domain-analysis",
112
- "active_phases": [
113
- "proposal",
114
- "setup",
115
- "design"
116
- ],
117
- "reports_to": "user",
118
- "domains": [
119
- "requirements",
120
- "business-value"
121
- ],
122
- "keywords": [
123
- "unclear",
124
- "requirements",
125
- "priority",
126
- "roi",
127
- "business value",
128
- "user story"
129
- ],
130
- "validators": [],
131
- "standards": [
132
- {
133
- "id": "core-coding",
134
- "scope": "all",
135
- "priority": "required"
136
- },
137
- {
138
- "id": "core-architecture",
139
- "scope": "all",
140
- "priority": "required"
141
- }
142
- ],
143
- "teammate": null
144
- },
145
- "dotnet-senior": {
146
- "tier": 2,
147
- "title": "Backend Squad Leader",
148
- "group": "backend",
149
- "active_phases": [
150
- "*"
151
- ],
152
- "reports_to": "standards-architect",
153
- "domains": [
154
- "backend"
155
- ],
156
- "keywords": [
157
- "backend",
158
- "api",
159
- "dotnet",
160
- ".net",
161
- "csharp",
162
- "c#",
163
- "web api",
164
- "minimal api"
165
- ],
166
- "validators": [
167
- "architecture",
168
- "packages"
169
- ],
170
- "standards": [
171
- {
172
- "id": "core-coding",
173
- "scope": "all",
174
- "priority": "required"
175
- },
176
- {
177
- "id": "core-architecture",
178
- "scope": "all",
179
- "priority": "required"
180
- },
181
- {
182
- "id": "backend-dotnet-core",
183
- "scope": "implement",
184
- "priority": "required"
185
- },
186
- {
187
- "id": "backend-dotnet-program-cs-checklist",
188
- "scope": "implement",
189
- "priority": "required"
190
- }
191
- ],
192
- "stacks": [
193
- "dotnet",
194
- "blazor"
195
- ],
196
- "teammate": {
197
- "role": "Backend Squad Leader",
198
- "icon": "⚙️",
199
- "spawn_prompt": "You are the Backend Squad Leader. Coordinate backend specialists (ef-modeler, event-architect, api-designer, etc.). Assign tasks, review designs, enforce backend standards. Escalate cross-domain conflicts to standards-architect."
200
- }
201
- },
202
- "infra-architect": {
203
- "tier": 2,
204
- "title": "Infrastructure Squad Leader",
205
- "group": "infra",
206
- "active_phases": [
207
- "*"
208
- ],
209
- "reports_to": "standards-architect",
210
- "domains": [
211
- "infrastructure"
212
- ],
213
- "keywords": [
214
- "infrastructure",
215
- "infra",
216
- "cloud",
217
- "deployment",
218
- "hosting",
219
- "ci/cd",
220
- "container",
221
- "iac",
222
- "pipeline",
223
- "vercel",
224
- "neon",
225
- "planetscale",
226
- "serverless database",
227
- "serverless postgres"
228
- ],
229
- "validators": [],
230
- "standards": [
231
- {
232
- "id": "core-coding",
233
- "scope": "all",
234
- "priority": "required"
235
- },
236
- {
237
- "id": "core-architecture",
238
- "scope": "all",
239
- "priority": "required"
240
- },
241
- {
242
- "id": "infrastructure-vercel-database",
243
- "scope": "design",
244
- "priority": "required"
245
- }
246
- ],
247
- "stacks": [
248
- "azure",
249
- "docker"
250
- ],
251
- "teammate": {
252
- "role": "Infrastructure Squad Leader",
253
- "icon": "🏗️",
254
- "spawn_prompt": "You are the Infrastructure Squad Leader. Coordinate infra specialists regardless of cloud provider (azure-architect, devops-engineer, container-specialist, observability-expert). Focus on IaC, CI/CD, containerization, cost optimization. Delegate to azure-architect for Azure-specific work. IMPORTANT: When deployment target is Vercel, ALWAYS enforce serverless database (Neon, Supabase/PgBouncer, PlanetScale) — never TCP connection pools. Escalate to standards-architect on conflicts."
255
- }
256
- },
257
- "azure-architect": {
258
- "tier": 3,
259
- "title": "Azure Infrastructure Specialist",
260
- "group": "infra",
261
- "active_phases": [
262
- "design",
263
- "implement"
264
- ],
265
- "reports_to": "infra-architect",
266
- "domains": [
267
- "infrastructure"
268
- ],
269
- "keywords": [
270
- "azure",
271
- "bicep",
272
- "arm template",
273
- "azure resources",
274
- "container apps",
275
- "azure sql",
276
- "key vault",
277
- "app insights"
278
- ],
279
- "validators": [
280
- "architecture"
281
- ],
282
- "standards": [
283
- {
284
- "id": "core-coding",
285
- "scope": "all",
286
- "priority": "required"
287
- },
288
- {
289
- "id": "core-architecture",
290
- "scope": "all",
291
- "priority": "required"
292
- },
293
- {
294
- "id": "infrastructure-azure-azure",
295
- "scope": "all",
296
- "priority": "required"
297
- }
298
- ],
299
- "teammate": {
300
- "role": "Infrastructure Squad Leader",
301
- "icon": "☁️",
302
- "spawn_prompt": "You are the Azure Infrastructure Specialist (tier-3). Focus exclusively on Azure resources, Bicep IaC templates, Azure cost optimization, and zero-portal policy. Report to infra-architect."
303
- }
304
- },
305
- "ui-designer": {
306
- "tier": 2,
307
- "title": "UI/UX Squad Leader",
308
- "group": "frontend",
309
- "active_phases": [
310
- "uiux"
311
- ],
312
- "reports_to": "standards-architect",
313
- "domains": [
314
- "frontend-design"
315
- ],
316
- "keywords": [
317
- "wireframe",
318
- "mockup",
319
- "user flow",
320
- "ux",
321
- "design",
322
- "interface design",
323
- "user experience",
324
- "page",
325
- "dashboard",
326
- "form",
327
- "UI",
328
- "settings",
329
- "interface",
330
- "screen",
331
- "panel",
332
- "portal",
333
- "view"
334
- ],
335
- "validators": [
336
- "design-system",
337
- "contrast"
338
- ],
339
- "standards": [
340
- {
341
- "id": "frontend-blazor-fluent-ui",
342
- "scope": "uiux",
343
- "priority": "required"
344
- },
345
- {
346
- "id": "frontend-design-system-naming",
347
- "scope": "all",
348
- "priority": "required"
349
- },
350
- {
351
- "id": "frontend-design-system-animations",
352
- "scope": "all",
353
- "priority": "required"
354
- }
355
- ],
356
- "teammate": {
357
- "role": "UI/UX Squad Leader (FASE 1.5)",
358
- "icon": "🎨",
359
- "spawn_prompt": "You are the UI/UX Squad Leader for FASE 1.5. Create wireframes, mockups, user flows. Define design system (colors, typography, spacing). Work is AGNOSTIC (no implementation code). Apply modern design trends (glassmorphism, gradients, soft shadows, micro-interactions). Guide Fluent UI vs MudBlazor selection. Enforce WCAG AA accessibility (4.5:1 contrast, focus visible, ARIA)."
360
- }
361
- },
362
- "ef-modeler": {
363
- "tier": 3,
364
- "title": "Data Persistence Specialist (Relational)",
365
- "group": "backend",
366
- "active_phases": [
367
- "design",
368
- "implement"
369
- ],
370
- "reports_to": "dotnet-senior",
371
- "domains": [
372
- "backend-data"
373
- ],
374
- "keywords": [
375
- "entity",
376
- "database",
377
- "migration",
378
- "ef core",
379
- "entity framework",
380
- "sql",
381
- "dbcontext"
382
- ],
383
- "validators": [
384
- "architecture",
385
- "blazor-concurrency"
386
- ],
387
- "standards": [
388
- {
389
- "id": "core-coding",
390
- "scope": "all",
391
- "priority": "required"
392
- },
393
- {
394
- "id": "backend-database-ef-core",
395
- "scope": "all",
396
- "priority": "required"
397
- },
398
- {
399
- "id": "backend-dotnet-core",
400
- "scope": "implement",
401
- "priority": "required"
402
- }
403
- ],
404
- "teammate": {
405
- "role": "Data Persistence Specialist",
406
- "icon": "🗄️",
407
- "spawn_prompt": "You are the Data Persistence Specialist (EF Core). Focus on Models/, Migrations/, DbContext. Follow blazor-efcore.md standards. Use IDbContextFactory for background ops. Message blazor-builder when entities ready for UI binding."
408
- }
409
- },
410
- "event-architect": {
411
- "tier": 3,
412
- "title": "Event-Driven Architecture Specialist",
413
- "group": "backend",
414
- "active_phases": [
415
- "design",
416
- "implement"
417
- ],
418
- "reports_to": "dotnet-senior",
419
- "domains": [
420
- "backend-events"
421
- ],
422
- "keywords": [
423
- "event",
424
- "service bus",
425
- "rabbitmq",
426
- "cqrs",
427
- "event sourcing",
428
- "messaging",
429
- "pub/sub",
430
- "domain events",
431
- "saga",
432
- "real-time",
433
- "realtime",
434
- "websocket",
435
- "live updates"
436
- ],
437
- "validators": [
438
- "architecture",
439
- "event-driven"
440
- ],
441
- "standards": [
442
- {
443
- "id": "core-coding",
444
- "scope": "all",
445
- "priority": "required"
446
- },
447
- {
448
- "id": "core-architecture",
449
- "scope": "all",
450
- "priority": "required"
451
- }
452
- ],
453
- "teammate": {
454
- "role": "Event-Driven Architecture Specialist",
455
- "icon": "📨",
456
- "spawn_prompt": "You are the Event-Driven Architecture Specialist. Implement Azure Service Bus queues/topics, CQRS patterns, Event Sourcing, Domain Events. Design idempotent handlers, dead letter queues, saga patterns."
457
- }
458
- },
459
- "api-designer": {
460
- "tier": 3,
461
- "title": "API Design Specialist",
462
- "group": "backend",
463
- "active_phases": [
464
- "design",
465
- "implement"
466
- ],
467
- "reports_to": "dotnet-senior",
468
- "domains": [
469
- "backend-api"
470
- ],
471
- "keywords": [
472
- "rest",
473
- "graphql",
474
- "grpc",
475
- "api",
476
- "openapi",
477
- "swagger",
478
- "versioning",
479
- "rate limiting",
480
- "hot chocolate",
481
- "endpoint"
482
- ],
483
- "validators": [],
484
- "standards": [
485
- {
486
- "id": "core-coding",
487
- "scope": "all",
488
- "priority": "required"
489
- },
490
- {
491
- "id": "core-architecture",
492
- "scope": "all",
493
- "priority": "required"
494
- }
495
- ],
496
- "teammate": {
497
- "role": "API Design Specialist",
498
- "icon": "🔌",
499
- "spawn_prompt": "You are the API Design Specialist. Design REST APIs (resource naming, HTTP verbs, status codes), GraphQL schemas with Hot Chocolate, gRPC .proto files. Add OpenAPI/Swagger annotations. Implement API versioning, rate limiting. Review with frontend specialists."
500
- }
501
- },
502
- "nosql-cache-expert": {
503
- "tier": 3,
504
- "title": "NoSQL & Cache Specialist",
505
- "group": "backend",
506
- "active_phases": [
507
- "design",
508
- "implement"
509
- ],
510
- "reports_to": "dotnet-senior",
511
- "domains": [
512
- "backend-nosql"
513
- ],
514
- "keywords": [
515
- "cosmos",
516
- "cosmosdb",
517
- "redis",
518
- "cache",
519
- "blob storage",
520
- "nosql",
521
- "document db",
522
- "key-value",
523
- "azure storage"
524
- ],
525
- "validators": [],
526
- "standards": [
527
- {
528
- "id": "core-coding",
529
- "scope": "all",
530
- "priority": "required"
531
- },
532
- {
533
- "id": "core-architecture",
534
- "scope": "all",
535
- "priority": "required"
536
- }
537
- ],
538
- "teammate": {
539
- "role": "NoSQL & Cache Specialist",
540
- "icon": "💾",
541
- "spawn_prompt": "You are the NoSQL & Cache Specialist. Implement Azure Cosmos DB (SQL API, partition keys, RUs), Redis Cache (cache-aside, read-through, write-behind), Blob Storage (hot/cool/archive tiers). Design cache invalidation strategies."
542
- }
543
- },
544
- "domain-architect": {
545
- "tier": 2,
546
- "title": "Domain Modeling Leader",
547
- "group": "domain-analysis",
548
- "active_phases": [
549
- "design",
550
- "implement"
551
- ],
552
- "reports_to": "standards-architect",
553
- "domains": [
554
- "backend-ddd"
555
- ],
556
- "keywords": [
557
- "ddd",
558
- "domain driven design",
559
- "aggregate",
560
- "aggregate root",
561
- "entity",
562
- "value object",
563
- "domain event",
564
- "bounded context",
565
- "ubiquitous language",
566
- "domain modeling",
567
- "aggregateroot",
568
- "domainevents",
569
- "integration event"
570
- ],
571
- "validators": [
572
- "architecture"
573
- ],
574
- "standards": [
575
- {
576
- "id": "core-coding",
577
- "scope": "all",
578
- "priority": "required"
579
- },
580
- {
581
- "id": "core-architecture",
582
- "scope": "all",
583
- "priority": "required"
584
- },
585
- {
586
- "id": "architecture-ddd-complexity-levels",
587
- "scope": "design",
588
- "priority": "required"
589
- },
590
- {
591
- "id": "architecture-ddd-aggregates",
592
- "scope": "design",
593
- "priority": "required"
594
- },
595
- {
596
- "id": "architecture-ddd-entities",
597
- "scope": "design",
598
- "priority": "required"
599
- },
600
- {
601
- "id": "architecture-ddd-value-objects",
602
- "scope": "design",
603
- "priority": "required"
604
- },
605
- {
606
- "id": "architecture-ddd-bounded-contexts",
607
- "scope": "design",
608
- "priority": "required"
609
- },
610
- {
611
- "id": "architecture-ddd-ubiquitous-language",
612
- "scope": "design",
613
- "priority": "required"
614
- }
615
- ],
616
- "teammate": {
617
- "role": "Domain Modeling Leader",
618
- "icon": "📐",
619
- "spawn_prompt": "You are the Domain Modeling Leader for MORPH-SPEC. Your primary responsibility is detecting the correct domain complexity level and producing the Aggregate Blueprint before any contracts are generated.\n\nALWAYS start with the 5-question complexity detection:\n1. Does the main entity have state transitions? (Draft → Confirmed → Shipped) → Yes = Level 2+\n2. Are there business invariants? (\"can only cancel if Active\") → Yes = Level 2+\n3. Are there derived calculations? (Total, Balance, Discount) → Yes = Level 2+\n4. Do other modules need to react to changes? (Domain Events with consumers) → Yes = Level 2+\n5. Did the user explicitly declare a Bounded Context? Or are there 3+ domains with conflicting models? → Yes = Level 3\nIf none of the above: Level 1 (CRUD)\n\nFor Level 1: Use contracts-level1.cs template. No AggregateRoot, no Domain Events.\nFor Level 2: Use contracts-level2.cs template. Design AggregateRoot with factory methods, invariants, Value Objects, Domain Events.\nFor Level 3: Use contracts-level3.cs template. Add BOUNDED_CONTEXT namespace, Integration Events, cross-BC ID references only.\n\nDocument in spec.md under ## Domain Complexity and ## Aggregate Blueprint (Level 2+).\nCoordinate ef-modeler for persistence design and event-architect for Domain Event patterns.\nRef: framework/standards/architecture/ddd/complexity-levels.md"
620
- }
621
- },
622
- "hangfire-orchestrator": {
623
- "tier": 3,
624
- "title": "Background Jobs Specialist",
625
- "group": "backend",
626
- "active_phases": [
627
- "implement"
628
- ],
629
- "reports_to": "dotnet-senior",
630
- "domains": [
631
- "backend-jobs"
632
- ],
633
- "keywords": [
634
- "scheduled",
635
- "job",
636
- "background",
637
- "cron",
638
- "hangfire",
639
- "recurring",
640
- "fire and forget",
641
- "delayed"
642
- ],
643
- "validators": [
644
- "architecture",
645
- "blazor-concurrency"
646
- ],
647
- "standards": [
648
- {
649
- "id": "core-coding",
650
- "scope": "all",
651
- "priority": "required"
652
- },
653
- {
654
- "id": "core-architecture",
655
- "scope": "all",
656
- "priority": "required"
657
- }
658
- ],
659
- "teammate": {
660
- "role": "Background Jobs Specialist",
661
- "icon": "⏰",
662
- "spawn_prompt": "You are the Background Jobs Specialist (Hangfire). Implement fire-and-forget jobs, delayed jobs, recurring jobs (cron), continuations (chaining). Configure retry policies, queue management. Use IDbContextFactory/IRepositoryFactory for scoped operations in background jobs (NOT direct DbContext injection). Also handles webhook integration, event-driven job pipelines, and async processing of external service callbacks."
663
- }
664
- },
665
- "ms-agent-expert": {
666
- "tier": 3,
667
- "title": "Microsoft Agent Framework Expert",
668
- "group": "ai",
669
- "active_phases": [
670
- "design",
671
- "implement"
672
- ],
673
- "reports_to": "ai-system-architect",
674
- "domains": [
675
- "ai-agents"
676
- ],
677
- "keywords": [
678
- "agent",
679
- "ai",
680
- "llm",
681
- "rag",
682
- "embedding",
683
- "mcp",
684
- "a2a",
685
- "middleware",
686
- "microsoft agent framework",
687
- "ichatclient"
688
- ],
689
- "validators": [
690
- "architecture",
691
- "packages"
692
- ],
693
- "standards": [
694
- {
695
- "id": "core-coding",
696
- "scope": "all",
697
- "priority": "required"
698
- },
699
- {
700
- "id": "ai-agents-setup",
701
- "scope": "all",
702
- "priority": "required"
703
- },
704
- {
705
- "id": "ai-agents-workflows",
706
- "scope": "design",
707
- "priority": "required"
708
- },
709
- {
710
- "id": "ai-agents-production",
711
- "scope": "implement",
712
- "priority": "required"
713
- },
714
- {
715
- "id": "ai-agents-blazor-ui",
716
- "scope": "implement",
717
- "priority": "reference"
718
- }
719
- ],
720
- "teammate": {
721
- "role": "Microsoft Agent Framework Expert",
722
- "icon": "🤖",
723
- "spawn_prompt": "You are the Microsoft Agent Framework Expert. Implement ChatClientAgent, AIFunctionFactory, agent workflows (sequential, handoff, group chat). Integrate MCP tools (McpClientFactory, ListToolsAsync, Cast<AITool>). Host agents via A2A protocol (MapA2A, agent cards). Add middleware pipeline, observability (WithOpenTelemetry)."
724
- }
725
- },
726
- "supabase-expert": {
727
- "tier": 3,
728
- "title": "Supabase & PostgreSQL Specialist",
729
- "group": "backend",
730
- "active_phases": [
731
- "design",
732
- "implement"
733
- ],
734
- "reports_to": "dotnet-senior",
735
- "domains": [
736
- "backend-supabase"
737
- ],
738
- "keywords": [
739
- "supabase",
740
- "postgresql",
741
- "rls",
742
- "realtime",
743
- "pgvector",
744
- "row level security",
745
- "edge functions"
746
- ],
747
- "validators": [],
748
- "standards": [
749
- {
750
- "id": "core-coding",
751
- "scope": "all",
752
- "priority": "required"
753
- },
754
- {
755
- "id": "core-architecture",
756
- "scope": "all",
757
- "priority": "required"
758
- }
759
- ],
760
- "teammate": {
761
- "role": "Supabase & PostgreSQL Specialist",
762
- "icon": "🐘",
763
- "spawn_prompt": "You are the Supabase & PostgreSQL Specialist. Implement Supabase Auth (magic links, OAuth, JWT), Row Level Security (RLS policies), Realtime subscriptions, Edge Functions (Deno/TypeScript). Use pgvector for embeddings/similarity search. Design efficient schemas with proper indexing."
764
- }
765
- },
766
- "vector-search-expert": {
767
- "tier": 3,
768
- "title": "Vector Search & RAG Specialist",
769
- "group": "ai",
770
- "active_phases": [
771
- "design",
772
- "implement"
773
- ],
774
- "reports_to": "ai-system-architect",
775
- "domains": [
776
- "ai-vector"
777
- ],
778
- "keywords": [
779
- "vector db",
780
- "embeddings",
781
- "semantic search",
782
- "rag",
783
- "pgvector",
784
- "similarity search",
785
- "retrieval augmented"
786
- ],
787
- "validators": [],
788
- "standards": [
789
- {
790
- "id": "core-coding",
791
- "scope": "all",
792
- "priority": "required"
793
- },
794
- {
795
- "id": "ai-agents-setup",
796
- "scope": "all",
797
- "priority": "required"
798
- },
799
- {
800
- "id": "ai-agents-workflows",
801
- "scope": "design",
802
- "priority": "required"
803
- }
804
- ],
805
- "teammate": {
806
- "role": "Vector Search & RAG Specialist",
807
- "icon": "🔎",
808
- "spawn_prompt": "You are the Vector Search & RAG Specialist. Implement vector embeddings (OpenAI, Azure AI), similarity search (pgvector, Azure AI Search), RAG pipelines (chunking, embedding, retrieval). Design hybrid search (vector + full-text). Optimize embedding dimensions and index types (HNSW, IVFFlat)."
809
- }
810
- },
811
- "context-optimizer": {
812
- "tier": 3,
813
- "title": "Context & Token Optimization Specialist",
814
- "group": "ai",
815
- "active_phases": [
816
- "implement"
817
- ],
818
- "reports_to": "ai-system-architect",
819
- "domains": [
820
- "ai-context"
821
- ],
822
- "keywords": [
823
- "context window",
824
- "token optimization",
825
- "chunking",
826
- "context compression",
827
- "summarization",
828
- "token budget"
829
- ],
830
- "validators": [],
831
- "standards": [
832
- {
833
- "id": "core-coding",
834
- "scope": "all",
835
- "priority": "required"
836
- },
837
- {
838
- "id": "ai-agents-workflows",
839
- "scope": "all",
840
- "priority": "required"
841
- }
842
- ],
843
- "teammate": {
844
- "role": "Context & Token Optimization Specialist",
845
- "icon": "🧠",
846
- "spawn_prompt": "You are the Context & Token Optimization Specialist. Optimize context windows (sliding window, summarization, selective inclusion), implement token counting and budget management, design chunking strategies (semantic, fixed-size, recursive). Reduce costs through prompt caching, context compression."
847
- }
848
- },
849
- "prompt-engineer": {
850
- "tier": 3,
851
- "title": "Prompt Engineer",
852
- "group": "ai",
853
- "active_phases": [
854
- "design",
855
- "implement"
856
- ],
857
- "reports_to": "ai-system-architect",
858
- "domains": [
859
- "ai-prompts"
860
- ],
861
- "keywords": [
862
- "prompt",
863
- "prompting",
864
- "system prompt",
865
- "few-shot",
866
- "chain-of-thought",
867
- "llm prompt",
868
- "agent prompt"
869
- ],
870
- "validators": [],
871
- "standards": [
872
- {
873
- "id": "core-coding",
874
- "scope": "all",
875
- "priority": "required"
876
- }
877
- ],
878
- "teammate": {
879
- "role": "Prompt Engineer",
880
- "icon": "✍️",
881
- "spawn_prompt": "You are the Prompt Engineer (tier-3). Design system prompts, few-shot examples, chain-of-thought patterns, and optimize LLM interactions. Always show the full prompt text — never just describe it. Apply techniques: constitutional AI, recursive prompting, tree of thoughts, self-consistency."
882
- }
883
- },
884
- "asaas-financial": {
885
- "tier": 3,
886
- "title": "Payment Integration Specialist (Brazil)",
887
- "group": "backend",
888
- "active_phases": [
889
- "design",
890
- "implement"
891
- ],
892
- "reports_to": "dotnet-senior",
893
- "domains": [
894
- "integration-payment"
895
- ],
896
- "keywords": [
897
- "asaas",
898
- "payment",
899
- "pix",
900
- "boleto",
901
- "credit card",
902
- "subscription",
903
- "pagamento"
904
- ],
905
- "validators": [
906
- "architecture",
907
- "contract-compliance"
908
- ],
909
- "standards": [
910
- {
911
- "id": "core-coding",
912
- "scope": "all",
913
- "priority": "required"
914
- },
915
- {
916
- "id": "core-architecture",
917
- "scope": "all",
918
- "priority": "required"
919
- }
920
- ],
921
- "teammate": {
922
- "role": "Payment Integration Specialist",
923
- "icon": "💳",
924
- "spawn_prompt": "You are the Payment Integration Specialist (Asaas SDK for Brazil). Implement PIX payments, Boleto generation, Credit Card processing, Subscription management. Follow contract-compliance validator patterns for SDK usage."
925
- }
926
- },
927
- "clerk-auth": {
928
- "tier": 3,
929
- "title": "Auth SaaS Integration Specialist",
930
- "group": "backend",
931
- "active_phases": [
932
- "design",
933
- "implement"
934
- ],
935
- "reports_to": "dotnet-senior",
936
- "domains": [
937
- "integration-auth"
938
- ],
939
- "keywords": [
940
- "clerk",
941
- "clerk auth",
942
- "add auth",
943
- "implement auth",
944
- "login",
945
- "signup",
946
- "oauth"
947
- ],
948
- "validators": [],
949
- "standards": [
950
- {
951
- "id": "core-coding",
952
- "scope": "all",
953
- "priority": "required"
954
- },
955
- {
956
- "id": "core-architecture",
957
- "scope": "all",
958
- "priority": "required"
959
- }
960
- ],
961
- "teammate": {
962
- "role": "Auth SaaS Integration Specialist",
963
- "icon": "🔐",
964
- "spawn_prompt": "You are the Auth SaaS Integration Specialist (Clerk SDK). Implement Clerk authentication flows (login, signup, OAuth), session management, user profile. Integrate with Blazor or Next.js frontend."
965
- }
966
- },
967
- "resend-email": {
968
- "tier": 3,
969
- "title": "Email Integration Specialist",
970
- "group": "backend",
971
- "active_phases": [
972
- "implement"
973
- ],
974
- "reports_to": "dotnet-senior",
975
- "domains": [
976
- "integration-email"
977
- ],
978
- "keywords": [
979
- "resend",
980
- "email",
981
- "transactional email",
982
- "email notification",
983
- "send email",
984
- "email template",
985
- "smtp"
986
- ],
987
- "validators": [
988
- "architecture",
989
- "contract-compliance"
990
- ],
991
- "standards": [
992
- {
993
- "id": "core-coding",
994
- "scope": "all",
995
- "priority": "required"
996
- },
997
- {
998
- "id": "core-architecture",
999
- "scope": "all",
1000
- "priority": "required"
1001
- }
1002
- ],
1003
- "teammate": {
1004
- "role": "Email Integration Specialist",
1005
- "icon": "📧",
1006
- "spawn_prompt": "You are the Email Integration Specialist (Resend SDK). Implement transactional emails, email templates, notification sending. Follow contract-compliance validator for SDK usage patterns."
1007
- }
1008
- },
1009
- "blazor-builder": {
1010
- "tier": 3,
1011
- "title": "Blazor Development Specialist",
1012
- "group": "frontend",
1013
- "active_phases": [
1014
- "uiux",
1015
- "tasks",
1016
- "implement"
1017
- ],
1018
- "reports_to": "ui-designer",
1019
- "domains": [
1020
- "frontend-blazor"
1021
- ],
1022
- "keywords": [
1023
- "blazor",
1024
- "razor",
1025
- "server-side",
1026
- "component",
1027
- "fluent ui",
1028
- "mudblazor",
1029
- "signalr",
1030
- "page",
1031
- "view",
1032
- "form"
1033
- ],
1034
- "validators": [
1035
- "architecture",
1036
- "blazor",
1037
- "blazor-concurrency",
1038
- "blazor-state",
1039
- "css",
1040
- "design-system"
1041
- ],
1042
- "standards": [
1043
- {
1044
- "id": "core-coding",
1045
- "scope": "all",
1046
- "priority": "required"
1047
- },
1048
- {
1049
- "id": "frontend-blazor-lifecycle",
1050
- "scope": "all",
1051
- "priority": "required"
1052
- },
1053
- {
1054
- "id": "frontend-blazor-state",
1055
- "scope": "all",
1056
- "priority": "required"
1057
- },
1058
- {
1059
- "id": "frontend-blazor-pitfalls",
1060
- "scope": "all",
1061
- "priority": "required"
1062
- },
1063
- {
1064
- "id": "backend-database-ef-core",
1065
- "scope": "implement",
1066
- "priority": "reference"
1067
- },
1068
- {
1069
- "id": "frontend-blazor-fluent-ui",
1070
- "scope": "all",
1071
- "priority": "required"
1072
- }
1073
- ],
1074
- "teammate": {
1075
- "role": "Blazor Development Specialist",
1076
- "icon": "⚡",
1077
- "spawn_prompt": "You are the Blazor Development Specialist. Build Blazor Server components (Fluent UI or MudBlazor). Follow component-per-file pattern, use @inject for DI, implement loading states and error boundaries. Integrate SignalR for real-time features. Message ef-modeler for data, css-specialist for design system validation."
1078
- }
1079
- },
1080
- "nextjs-expert": {
1081
- "tier": 3,
1082
- "title": "Next.js Development Specialist",
1083
- "group": "frontend",
1084
- "active_phases": [
1085
- "uiux",
1086
- "tasks",
1087
- "implement"
1088
- ],
1089
- "reports_to": "ui-designer",
1090
- "domains": [
1091
- "frontend-nextjs"
1092
- ],
1093
- "keywords": [
1094
- "next.js",
1095
- "nextjs",
1096
- "react",
1097
- "tsx",
1098
- "shadcn",
1099
- "tailwind",
1100
- "tanstack",
1101
- "react-query",
1102
- "zod",
1103
- "react-hook-form",
1104
- "app router",
1105
- "server component",
1106
- "client component",
1107
- "vercel",
1108
- "neon",
1109
- "planetscale"
1110
- ],
1111
- "validators": [
1112
- "nextjs-component"
1113
- ],
1114
- "standards": [
1115
- {
1116
- "id": "core-coding",
1117
- "scope": "all",
1118
- "priority": "required"
1119
- },
1120
- {
1121
- "id": "core-architecture",
1122
- "scope": "all",
1123
- "priority": "required"
1124
- },
1125
- {
1126
- "id": "frontend-nextjs-naming-conventions",
1127
- "scope": "all",
1128
- "priority": "required"
1129
- },
1130
- {
1131
- "id": "frontend-nextjs-project-structure",
1132
- "scope": "all",
1133
- "priority": "required"
1134
- },
1135
- {
1136
- "id": "frontend-nextjs-app-router",
1137
- "scope": "all",
1138
- "priority": "required"
1139
- },
1140
- {
1141
- "id": "frontend-nextjs-components",
1142
- "scope": "all",
1143
- "priority": "required"
1144
- },
1145
- {
1146
- "id": "frontend-nextjs-data-fetching",
1147
- "scope": "implement",
1148
- "priority": "required"
1149
- },
1150
- {
1151
- "id": "frontend-nextjs-forms",
1152
- "scope": "implement",
1153
- "priority": "required"
1154
- },
1155
- {
1156
- "id": "frontend-nextjs-state-management",
1157
- "scope": "implement",
1158
- "priority": "required"
1159
- },
1160
- {
1161
- "id": "frontend-nextjs-testing",
1162
- "scope": "implement",
1163
- "priority": "reference"
1164
- },
1165
- {
1166
- "id": "frontend-nextjs-nextjs-patterns",
1167
- "scope": "all",
1168
- "priority": "required"
1169
- },
1170
- {
1171
- "id": "infrastructure-vercel-database",
1172
- "scope": "design",
1173
- "priority": "required"
1174
- }
1175
- ],
1176
- "teammate": {
1177
- "role": "Next.js Development Specialist",
1178
- "icon": "⚛️",
1179
- "spawn_prompt": "You are the Next.js Development Specialist. Build Next.js 14+ applications with shadcn/ui components, TanStack Query for data fetching, Server Actions for mutations. Implement Route Handlers for API routes. Message api-designer for backend endpoints, css-specialist for design system. IMPORTANT: When deployment target is Vercel, database must be serverless (Neon, Supabase/PgBouncer port 6543, PlanetScale) — never a plain TCP connection pool."
1180
- }
1181
- },
1182
- "nextjs-ui-specialist": {
1183
- "tier": 3,
1184
- "title": "Next.js UI Specialist",
1185
- "group": "frontend",
1186
- "active_phases": [
1187
- "design",
1188
- "tasks",
1189
- "implement"
1190
- ],
1191
- "reports_to": "ui-designer",
1192
- "domains": [
1193
- "frontend-nextjs-ui"
1194
- ],
1195
- "keywords": [
1196
- "framer-motion",
1197
- "animation",
1198
- "transition",
1199
- "motion design",
1200
- "shadcn theme",
1201
- "tailwind tokens",
1202
- "tailwind config",
1203
- "design system",
1204
- "icon system",
1205
- "lucide",
1206
- "animated",
1207
- "micro-interaction",
1208
- "hover effect",
1209
- "scroll animation",
1210
- "page transition",
1211
- "variants",
1212
- "AnimatePresence"
1213
- ],
1214
- "validators": [
1215
- "design-system",
1216
- "nextjs-component"
1217
- ],
1218
- "standards": [
1219
- {
1220
- "id": "core-coding",
1221
- "scope": "all",
1222
- "priority": "required"
1223
- },
1224
- {
1225
- "id": "frontend-nextjs-components",
1226
- "scope": "all",
1227
- "priority": "required"
1228
- },
1229
- {
1230
- "id": "frontend-nextjs-nextjs-patterns",
1231
- "scope": "all",
1232
- "priority": "required"
1233
- },
1234
- {
1235
- "id": "frontend-nextjs-motion-patterns",
1236
- "scope": "all",
1237
- "priority": "required"
1238
- }
1239
- ],
1240
- "teammate": {
1241
- "role": "Next.js UI Specialist",
1242
- "icon": "✨",
1243
- "spawn_prompt": "You are the Next.js UI Specialist (Tier 3). Focus exclusively on the visual layer: Framer Motion animations (variants, AnimatePresence, useInView, gestures), shadcn/ui theming via CSS vars without editing primitives, Tailwind token bridging from design-system.md, and Lucide icon consistency. ALWAYS read .morph/context/design-system.md first and use only defined tokens. ALWAYS implement useReducedMotion() for WCAG compliance. Do NOT handle data-fetching, routing, or API routes — that's nextjs-expert's domain."
1244
- }
1245
- },
1246
- "css-specialist": {
1247
- "tier": 3,
1248
- "title": "CSS & Design System Specialist",
1249
- "group": "frontend",
1250
- "active_phases": [
1251
- "implement"
1252
- ],
1253
- "reports_to": "ui-designer",
1254
- "domains": [
1255
- "frontend-css"
1256
- ],
1257
- "keywords": [
1258
- "css",
1259
- "design system",
1260
- "styling",
1261
- "theme",
1262
- "design tokens",
1263
- "palette"
1264
- ],
1265
- "validators": [
1266
- "css",
1267
- "contrast",
1268
- "design-system"
1269
- ],
1270
- "standards": [
1271
- {
1272
- "id": "frontend-design-system-naming",
1273
- "scope": "all",
1274
- "priority": "required"
1275
- },
1276
- {
1277
- "id": "frontend-design-system-animations",
1278
- "scope": "all",
1279
- "priority": "required"
1280
- }
1281
- ],
1282
- "teammate": {
1283
- "role": "CSS & Design System Specialist",
1284
- "icon": "🎨",
1285
- "spawn_prompt": "You are the CSS & Design System Specialist (FASE 5 only). MANDATORY FIRST STEP: Read .morph/context/design-system.md. Validate all CSS follows the design system — colors (var(--color-*)), spacing (var(--space-*)), typography (var(--font-*, --text-*)), motion (var(--duration-*, --easing-*)), shadows (var(--shadow-*)), and advanced effects (var(--glass-*, --aurora-*, --perspective-*)). No off-palette hardcoded colors, no inline styles with raw values. Enforce naming conventions (BEM for custom classes). Verify WCAG AA contrast (4.5:1 text, 3:1 UI). Ref: framework/standards/frontend/design-system/design-trends.md for modern technique catalog. Run design-system, css, contrast validators. Any missing tokens must be added to design-system.md before proceeding."
1286
- }
1287
- },
1288
- "seo-growth-hacker": {
1289
- "tier": 3,
1290
- "title": "SEO & Growth Specialist",
1291
- "group": "frontend",
1292
- "active_phases": [
1293
- "implement"
1294
- ],
1295
- "reports_to": "ui-designer",
1296
- "domains": [
1297
- "seo"
1298
- ],
1299
- "keywords": [
1300
- "seo",
1301
- "landing page",
1302
- "meta tags",
1303
- "core web vitals",
1304
- "schema markup",
1305
- "organic traffic",
1306
- "content marketing"
1307
- ],
1308
- "validators": [],
1309
- "standards": [
1310
- {
1311
- "id": "core-coding",
1312
- "scope": "all",
1313
- "priority": "required"
1314
- }
1315
- ],
1316
- "teammate": {
1317
- "role": "SEO & Growth Specialist",
1318
- "icon": "📈",
1319
- "spawn_prompt": "You are the SEO & Growth Specialist (tier-3). Audit technical SEO (Core Web Vitals, meta tags, schema markup JSON-LD), optimize content for search engines, implement structured data (Product, Article, FAQ, HowTo, Organization). Focus on Next.js/Blazor page optimization, Lighthouse scores, and organic traffic growth."
1320
- }
1321
- },
1322
- "bicep-architect": {
1323
- "tier": 3,
1324
- "title": "Infrastructure as Code Specialist",
1325
- "group": "infra",
1326
- "active_phases": [
1327
- "design",
1328
- "implement"
1329
- ],
1330
- "reports_to": "azure-architect",
1331
- "domains": [
1332
- "infrastructure-iac"
1333
- ],
1334
- "keywords": [
1335
- "bicep",
1336
- "iac",
1337
- "infra",
1338
- "provision",
1339
- "arm template",
1340
- "infrastructure as code"
1341
- ],
1342
- "validators": [
1343
- "architecture"
1344
- ],
1345
- "standards": [
1346
- {
1347
- "id": "core-coding",
1348
- "scope": "all",
1349
- "priority": "required"
1350
- },
1351
- {
1352
- "id": "core-architecture",
1353
- "scope": "all",
1354
- "priority": "required"
1355
- },
1356
- {
1357
- "id": "infrastructure-azure-azure",
1358
- "scope": "all",
1359
- "priority": "required"
1360
- }
1361
- ],
1362
- "teammate": {
1363
- "role": "Infrastructure as Code Specialist",
1364
- "icon": "📜",
1365
- "spawn_prompt": "You are the Infrastructure as Code Specialist (Bicep). Write main.bicep, modules/*.bicep, parameters.{env}.json. Never create Azure resources manually. Also handles Azure Container Apps deployment: env var mapping (config:path → DOUBLE__UNDERSCORE), what-if validation before deploy, Blazor Server sticky sessions, rollback via revision activation, and cost validation."
1366
- }
1367
- },
1368
- "devops-engineer": {
1369
- "tier": 3,
1370
- "title": "CI/CD Specialist",
1371
- "group": "infra",
1372
- "active_phases": [
1373
- "implement"
1374
- ],
1375
- "reports_to": "infra-architect",
1376
- "domains": [
1377
- "infrastructure-cicd"
1378
- ],
1379
- "keywords": [
1380
- "pipeline",
1381
- "ci/cd",
1382
- "deploy",
1383
- "release",
1384
- "github actions",
1385
- "azure pipelines",
1386
- "deployment"
1387
- ],
1388
- "validators": [],
1389
- "standards": [
1390
- {
1391
- "id": "core-coding",
1392
- "scope": "all",
1393
- "priority": "required"
1394
- },
1395
- {
1396
- "id": "core-architecture",
1397
- "scope": "all",
1398
- "priority": "required"
1399
- }
1400
- ],
1401
- "teammate": {
1402
- "role": "CI/CD Specialist",
1403
- "icon": "🚀",
1404
- "spawn_prompt": "You are the CI/CD Specialist. Build Azure Pipelines or GitHub Actions workflows. Implement Blue-Green, Canary, Rolling deployment strategies. Integrate with bicep-architect for IaC deployment, container-specialist for image builds."
1405
- }
1406
- },
1407
- "container-specialist": {
1408
- "tier": 3,
1409
- "title": "Containerization Specialist",
1410
- "group": "infra",
1411
- "active_phases": [
1412
- "implement"
1413
- ],
1414
- "reports_to": "infra-architect",
1415
- "domains": [
1416
- "infrastructure-containers"
1417
- ],
1418
- "keywords": [
1419
- "docker",
1420
- "container",
1421
- "containerize",
1422
- "dockerfile",
1423
- "multi-stage",
1424
- "container apps"
1425
- ],
1426
- "validators": [],
1427
- "standards": [
1428
- {
1429
- "id": "core-coding",
1430
- "scope": "all",
1431
- "priority": "required"
1432
- },
1433
- {
1434
- "id": "core-architecture",
1435
- "scope": "all",
1436
- "priority": "required"
1437
- }
1438
- ],
1439
- "teammate": {
1440
- "role": "Containerization Specialist",
1441
- "icon": "🐳",
1442
- "spawn_prompt": "You are the Containerization Specialist. Write Dockerfiles (multi-stage builds), .dockerignore. Deploy to Azure Container Apps (scale-to-zero, KEDA scaling). Optimize image size, configure health checks."
1443
- }
1444
- },
1445
- "observability-expert": {
1446
- "tier": 3,
1447
- "title": "Observability Specialist",
1448
- "group": "infra",
1449
- "active_phases": [
1450
- "implement"
1451
- ],
1452
- "reports_to": "infra-architect",
1453
- "domains": [
1454
- "infrastructure-observability"
1455
- ],
1456
- "keywords": [
1457
- "monitoring",
1458
- "logging",
1459
- "tracing",
1460
- "metrics",
1461
- "app insights",
1462
- "serilog",
1463
- "opentelemetry",
1464
- "dashboards",
1465
- "alerts"
1466
- ],
1467
- "validators": [
1468
- "observability"
1469
- ],
1470
- "standards": [
1471
- {
1472
- "id": "core-coding",
1473
- "scope": "all",
1474
- "priority": "required"
1475
- },
1476
- {
1477
- "id": "core-architecture",
1478
- "scope": "all",
1479
- "priority": "required"
1480
- }
1481
- ],
1482
- "teammate": {
1483
- "role": "Observability Specialist",
1484
- "icon": "📊",
1485
- "spawn_prompt": "You are the Observability Specialist. Setup Application Insights (connection strings, sampling), configure Serilog (sinks, enrichers), instrument OpenTelemetry (.NET SDK). Create custom metrics, dashboards, alert rules. Write Log Analytics queries (KQL)."
1486
- }
1487
- },
1488
- "azure-identity": {
1489
- "tier": 3,
1490
- "title": "Microsoft Identity Specialist",
1491
- "group": "infra",
1492
- "active_phases": [
1493
- "design",
1494
- "implement"
1495
- ],
1496
- "reports_to": "infra-architect",
1497
- "domains": [
1498
- "infrastructure-identity"
1499
- ],
1500
- "keywords": [
1501
- "identity",
1502
- "entra",
1503
- "microsoft auth",
1504
- "azure ad",
1505
- "b2c",
1506
- "passkeys",
1507
- "webauthn",
1508
- "managed identity"
1509
- ],
1510
- "validators": [],
1511
- "standards": [
1512
- {
1513
- "id": "core-coding",
1514
- "scope": "all",
1515
- "priority": "required"
1516
- },
1517
- {
1518
- "id": "core-architecture",
1519
- "scope": "all",
1520
- "priority": "required"
1521
- }
1522
- ],
1523
- "teammate": {
1524
- "role": "Microsoft Identity Specialist",
1525
- "icon": "🔑",
1526
- "spawn_prompt": "You are the Microsoft Identity Specialist. Implement Azure AD B2C, Entra External ID, Managed Identity for Azure resources. Add WebAuthn/Passkeys support (FIDO2 registration/authentication flows)."
1527
- }
1528
- },
1529
- "testing-specialist": {
1530
- "tier": 3,
1531
- "title": "Testing Specialist",
1532
- "group": "testing",
1533
- "active_phases": [
1534
- "implement"
1535
- ],
1536
- "reports_to": "standards-architect",
1537
- "domains": [
1538
- "quality-testing"
1539
- ],
1540
- "keywords": [
1541
- "test",
1542
- "testing",
1543
- "unit",
1544
- "integration",
1545
- "e2e",
1546
- "xunit",
1547
- "moq",
1548
- "testcontainers",
1549
- "bunit"
1550
- ],
1551
- "validators": [],
1552
- "standards": [
1553
- {
1554
- "id": "core-coding",
1555
- "scope": "all",
1556
- "priority": "required"
1557
- },
1558
- {
1559
- "id": "core-architecture",
1560
- "scope": "all",
1561
- "priority": "required"
1562
- }
1563
- ],
1564
- "teammate": {
1565
- "role": "Testing Specialist",
1566
- "icon": "🧪",
1567
- "spawn_prompt": "You are the Testing Specialist. Write unit tests (xUnit, Moq/NSubstitute, FluentAssertions), integration tests (TestContainers, Respawn for DB reset), Blazor component tests (bUnit), HTTP mocking (WireMock). Follow Arrange-Act-Assert (AAA) pattern."
1568
- }
1569
- },
1570
- "code-analyzer": {
1571
- "tier": 3,
1572
- "title": "Code Quality Analyst",
1573
- "group": "testing",
1574
- "active_phases": [
1575
- "implement"
1576
- ],
1577
- "reports_to": "standards-architect",
1578
- "domains": [
1579
- "quality-review"
1580
- ],
1581
- "keywords": [
1582
- "analyze",
1583
- "review",
1584
- "refactor",
1585
- "clean code",
1586
- "smell",
1587
- "duplicate",
1588
- "solid",
1589
- "architecture review"
1590
- ],
1591
- "validators": [],
1592
- "standards": [
1593
- {
1594
- "id": "core-coding",
1595
- "scope": "all",
1596
- "priority": "required"
1597
- },
1598
- {
1599
- "id": "core-architecture",
1600
- "scope": "all",
1601
- "priority": "required"
1602
- }
1603
- ],
1604
- "teammate": {
1605
- "role": "Code Quality Analyst",
1606
- "icon": "🔍",
1607
- "spawn_prompt": "You are the Code Quality Analyst. Review code for architecture violations, clean code principles (naming, complexity, duplication), SOLID principles. Identify code smells, suggest refactorings. Run architecture and packages validators."
1608
- }
1609
- },
1610
- "troubleshooting-expert": {
1611
- "tier": 3,
1612
- "title": "Troubleshooting & Debug Expert",
1613
- "group": "support",
1614
- "active_phases": [
1615
- "implement"
1616
- ],
1617
- "reports_to": "standards-architect",
1618
- "domains": [
1619
- "quality-debug"
1620
- ],
1621
- "keywords": [
1622
- "debug",
1623
- "troubleshoot",
1624
- "root cause",
1625
- "analyze error",
1626
- "investigate",
1627
- "diagnose"
1628
- ],
1629
- "validators": [],
1630
- "standards": [
1631
- {
1632
- "id": "core-coding",
1633
- "scope": "all",
1634
- "priority": "required"
1635
- },
1636
- {
1637
- "id": "core-architecture",
1638
- "scope": "all",
1639
- "priority": "required"
1640
- }
1641
- ],
1642
- "teammate": {
1643
- "role": "Troubleshooting Expert (Escalation)",
1644
- "icon": "🔧",
1645
- "spawn_prompt": "You are the Troubleshooting Expert (spawned after 3 failed attempts). Analyze root cause of failures: validation errors, compilation errors, runtime exceptions. Review attempt logs from recovery-tracker. Propose alternative approaches. Message standards-architect with findings."
1646
- }
1647
- },
1648
- "load-testing-expert": {
1649
- "tier": 3,
1650
- "title": "Load Testing & Performance Specialist",
1651
- "group": "testing",
1652
- "active_phases": [
1653
- "implement"
1654
- ],
1655
- "reports_to": "standards-architect",
1656
- "domains": [
1657
- "quality-performance"
1658
- ],
1659
- "keywords": [
1660
- "load test",
1661
- "performance test",
1662
- "k6",
1663
- "jmeter",
1664
- "stress test",
1665
- "capacity planning",
1666
- "bottleneck",
1667
- "scalability",
1668
- "concurrent users"
1669
- ],
1670
- "validators": [
1671
- "performance"
1672
- ],
1673
- "standards": [
1674
- {
1675
- "id": "core-coding",
1676
- "scope": "all",
1677
- "priority": "required"
1678
- },
1679
- {
1680
- "id": "core-architecture",
1681
- "scope": "all",
1682
- "priority": "required"
1683
- }
1684
- ],
1685
- "teammate": {
1686
- "role": "Load Testing Specialist",
1687
- "icon": "📈",
1688
- "spawn_prompt": "You are the Load Testing Specialist. Write k6 scripts (stress test, spike test, soak test), JMeter test plans. Analyze bottlenecks (DB, CPU, memory). Recommend capacity planning (how many users system supports)."
1689
- }
1690
- },
1691
- "documentation-specialist": {
1692
- "tier": 3,
1693
- "title": "Documentation Specialist",
1694
- "group": "docs",
1695
- "active_phases": [
1696
- "implement"
1697
- ],
1698
- "reports_to": "standards-architect",
1699
- "domains": [
1700
- "developer-experience-docs"
1701
- ],
1702
- "keywords": [
1703
- "readme",
1704
- "documentation",
1705
- "api docs",
1706
- "contributing",
1707
- "deployment guide",
1708
- "onboarding"
1709
- ],
1710
- "validators": [],
1711
- "standards": [
1712
- {
1713
- "id": "core-coding",
1714
- "scope": "all",
1715
- "priority": "required"
1716
- },
1717
- {
1718
- "id": "core-architecture",
1719
- "scope": "all",
1720
- "priority": "required"
1721
- }
1722
- ],
1723
- "teammate": {
1724
- "role": "Documentation Specialist (Post-FASE 5)",
1725
- "icon": "📝",
1726
- "spawn_prompt": "You are the Documentation Specialist (runs after FASE 5). Generate README.md (how to run project), CONTRIBUTING.md (contributor guide), API documentation (Swagger annotations, markdown docs), deployment guides (infra setup). Update existing docs with new features."
1727
- }
1728
- },
1729
- "vsa-architect": {
1730
- "tier": 3,
1731
- "title": "Vertical Slice Architecture Specialist",
1732
- "group": "domain-analysis",
1733
- "active_phases": [
1734
- "design",
1735
- "implement"
1736
- ],
1737
- "domains": [
1738
- "architecture",
1739
- "backend"
1740
- ],
1741
- "keywords": [
1742
- "vertical slice",
1743
- "vertical-slice",
1744
- "vsa",
1745
- "minimal api",
1746
- "minimal apis",
1747
- "ihandler",
1748
- "result pattern",
1749
- "feature slice",
1750
- "scrutor",
1751
- "vertical slice architecture"
1752
- ],
1753
- "standards": [
1754
- {
1755
- "id": "core-coding",
1756
- "scope": "all",
1757
- "priority": "required"
1758
- },
1759
- {
1760
- "id": "architecture-vertical-slice-vertical-slice",
1761
- "scope": "all",
1762
- "priority": "required"
1763
- }
1764
- ],
1765
- "teammate": {
1766
- "role": "VSA Architecture Specialist",
1767
- "icon": "🍕",
1768
- "spawn_prompt": "Você é o VSA Specialist. Analise a proposta e produza um VSA Blueprint:\n1. ENTITY FIELDS: todos os campos com tipos C# corretos (sem AggregateRoot, sem Value Objects)\n2. OPERATIONS: slices necessários (Create, GetAll, GetById, Update, Delete + operações customizadas)\n3. ROUTES: HTTP method + rota por operação (ex: POST /api/products, GET /api/products/{id:guid})\n4. ERROR TYPES: Error factory methods para {Entity}Errors (apenas NotFound e casos específicos)\n5. VALIDATION RULES: regras FluentValidation por campo por operação\n\nNão use AggregateRoot, DomainEvent, CQRS formal, MediatR, Application Service layer.\nCada operação é um slice autônomo: Request + Response + Handler + Validator + Endpoint.\nRef: framework/standards/architecture/vertical-slice/vertical-slice.md"
1769
- }
1770
- },
1771
- "morph-spec-architect": {
1772
- "tier": 3,
1773
- "title": "Morph-Spec Architect",
1774
- "group": "domain-analysis",
1775
- "active_phases": [
1776
- "design",
1777
- "tasks"
1778
- ],
1779
- "reports_to": "feature-lead",
1780
- "domains": [
1781
- "cli",
1782
- "framework-design",
1783
- "nodejs",
1784
- "architecture"
1785
- ],
1786
- "keywords": [
1787
- "morph-spec",
1788
- "framework feature",
1789
- "new command",
1790
- "cli architecture",
1791
- "plugin",
1792
- "hook design"
1793
- ],
1794
- "validators": [],
1795
- "standards": [],
1796
- "teammate": {
1797
- "role": "specialist",
1798
- "icon": "🔧",
1799
- "spawn_prompt": "You are the Morph-Spec Architect. You deeply understand the morph-spec-framework codebase: its 4-tier agent hierarchy, state machine (with filesystem-based phase derivation), Commander.js CLI surface (~25 commands registered in bin/morph-spec.js), hooks system, skills system, and the .morph/ directory layout. Your job is to design new features that fit naturally into the existing architecture. Before proposing implementation, always: (1) identify which existing modules can be reused, (2) determine where the new command should live in src/commands/, (3) define the state impact (does it need new state fields?), (4) list which tests need to be written. Follow ESM module patterns throughout."
1800
- }
1801
- },
1802
- "nodejs-cli-expert": {
1803
- "tier": 3,
1804
- "title": "Node.js CLI Expert",
1805
- "group": "testing",
1806
- "active_phases": [
1807
- "implement"
1808
- ],
1809
- "reports_to": "feature-lead",
1810
- "domains": [
1811
- "nodejs",
1812
- "cli",
1813
- "javascript",
1814
- "esm",
1815
- "testing"
1816
- ],
1817
- "keywords": [
1818
- "nodejs",
1819
- "javascript",
1820
- "esm",
1821
- "commander",
1822
- "node --test",
1823
- "cli command",
1824
- "morph-spec implementation"
1825
- ],
1826
- "validators": [],
1827
- "standards": [],
1828
- "teammate": {
1829
- "role": "specialist",
1830
- "icon": "🟢",
1831
- "spawn_prompt": "You are the Node.js CLI Expert for the morph-spec-framework. You implement features in Node.js ESM following the project's conventions: (1) All imports use ESM syntax with .js extensions on relative paths; (2) Commands are registered in bin/morph-spec.js after being defined in src/commands/<domain>/<command>.js; (3) Tests use native node:test runner with mock.fn() for mocking — no external test libraries; (4) Error handling: hooks are fail-open (catch+exit 0), CLI commands exit(1) on fatal errors; (5) Never use require() or module.exports. When implementing a feature, always write the tests alongside the implementation. The test command is: node --test --test-concurrency=1"
1832
- }
1833
- },
1834
- "security-expert": {
1835
- "tier": 4,
1836
- "title": "Security Validator",
1837
- "group": "testing",
1838
- "active_phases": [
1839
- "*"
1840
- ],
1841
- "reports_to": "standards-architect",
1842
- "domains": [
1843
- "security"
1844
- ],
1845
- "keywords": [
1846
- "sql injection",
1847
- "xss",
1848
- "secrets",
1849
- "security scan",
1850
- "vulnerability",
1851
- "csrf",
1852
- "insecure deserialization"
1853
- ],
1854
- "validators": [
1855
- "security"
1856
- ],
1857
- "standards": [
1858
- {
1859
- "id": "core-coding",
1860
- "scope": "all",
1861
- "priority": "required"
1862
- },
1863
- {
1864
- "id": "core-architecture",
1865
- "scope": "all",
1866
- "priority": "required"
1867
- }
1868
- ],
1869
- "teammate": {
1870
- "icon": "🛡️",
1871
- "role": "Security Validator (read-only)",
1872
- "spawn_prompt": "You are the Security Validator (Tier 4, READ-ONLY). Scan ALL source files (.cs, .razor, .tsx, .ts, .js) in the project for security vulnerabilities:\n\n1. SQL injection — string concatenation in queries (look for $\"...{var}...\" inside SQL/EF raw queries)\n2. Hardcoded secrets — API keys, passwords, connection strings in source code (not in appsettings)\n3. XSS — @Html.Raw usage in Razor/Blazor without sanitization\n4. Insecure deserialization — BinaryFormatter usage\n5. CSRF — POST forms/endpoints missing anti-forgery tokens ([ValidateAntiForgeryToken] or @Html.AntiForgeryToken)\n\nUse Grep and Glob to scan. Do NOT modify any files.\n\nOutput a JSON object: { \"passed\": boolean, \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"error\" }] }"
1873
- },
1874
- "hook_behavior": {
1875
- "validates": [
1876
- "SQL injection (string concatenation in queries)",
1877
- "Hardcoded secrets (API keys, passwords, connection strings)",
1878
- "XSS (@Html.Raw usage in Razor/Blazor)",
1879
- "Insecure deserialization (BinaryFormatter)",
1880
- "CSRF (missing anti-forgery tokens)"
1881
- ],
1882
- "severity": "error",
1883
- "blocks_on_fail": true
1884
- }
1885
- },
1886
- "architecture-expert": {
1887
- "tier": 4,
1888
- "title": "Architecture Validator",
1889
- "group": "domain-analysis",
1890
- "active_phases": [
1891
- "*"
1892
- ],
1893
- "reports_to": "standards-architect",
1894
- "domains": [
1895
- "architecture"
1896
- ],
1897
- "keywords": [
1898
- "architecture",
1899
- "clean code",
1900
- "solid",
1901
- "dependency injection"
1902
- ],
1903
- "validators": [
1904
- "architecture"
1905
- ],
1906
- "standards": [
1907
- {
1908
- "id": "core-coding",
1909
- "scope": "all",
1910
- "priority": "required"
1911
- },
1912
- {
1913
- "id": "core-architecture",
1914
- "scope": "all",
1915
- "priority": "required"
1916
- }
1917
- ],
1918
- "teammate": {
1919
- "icon": "🏗️",
1920
- "role": "Architecture Validator (read-only)",
1921
- "spawn_prompt": "You are the Architecture Validator (Tier 4, READ-ONLY). Scan the project for architectural violations:\n\n1. DbContext injection — look for direct DbContext injection instead of IDbContextFactory in Blazor components (.razor, .razor.cs)\n2. Async/await anti-patterns — search for .Result, .Wait(), .GetAwaiter().GetResult() in async code\n3. DI registration order — in Program.cs, verify services are registered before middleware (app.Use*/Map*)\n4. Blazor render mode — verify InteractiveServer/InteractiveWebAssembly components don't use incompatible patterns\n5. Layer violations — Domain/Application projects must not reference Infrastructure or Web projects\n\nUse Grep and Glob to scan. Do NOT modify any files.\n\nOutput a JSON object: { \"passed\": boolean, \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"error\" }] }"
1922
- },
1923
- "hook_behavior": {
1924
- "validates": [
1925
- "DbContext injection (IDbContextFactory required)",
1926
- "Async/await patterns (no .Result or .Wait)",
1927
- "DI registration order (services before middleware)",
1928
- "Blazor render mode compatibility"
1929
- ],
1930
- "severity": "error",
1931
- "blocks_on_fail": true
1932
- }
1933
- },
1934
- "packages-validator": {
1935
- "tier": 4,
1936
- "title": "Packages Validator",
1937
- "group": "testing",
1938
- "active_phases": [
1939
- "*"
1940
- ],
1941
- "reports_to": "standards-architect",
1942
- "domains": [
1943
- "packages"
1944
- ],
1945
- "keywords": [
1946
- "nuget",
1947
- "packages",
1948
- "dependencies",
1949
- "version conflict"
1950
- ],
1951
- "validators": [
1952
- "packages"
1953
- ],
1954
- "standards": [
1955
- {
1956
- "id": "core-coding",
1957
- "scope": "all",
1958
- "priority": "required"
1959
- }
1960
- ],
1961
- "teammate": {
1962
- "icon": "📦",
1963
- "role": "Packages Validator (read-only)",
1964
- "spawn_prompt": "You are the Packages Validator (Tier 4, READ-ONLY). Scan all project files for package issues:\n\n1. NuGet version conflicts — search *.csproj files for the same PackageReference appearing with different versions across projects\n2. Incompatible .NET 10 packages — check that major package versions are compatible with the target framework\n3. Security vulnerabilities — look for known outdated packages (Newtonsoft.Json < 13.0.1, System.Text.Json < 8.0.5, etc.)\n4. For npm projects: check package.json for duplicate dependencies, outdated major versions\n\nUse Grep and Glob to scan. Do NOT modify any files.\n\nOutput a JSON object: { \"passed\": boolean, \"issues\": [{ \"file\": string, \"message\": string, \"severity\": \"error\" }] }"
1965
- },
1966
- "hook_behavior": {
1967
- "validates": [
1968
- "NuGet version conflicts (same package, different versions)",
1969
- "Incompatible .NET 10 packages",
1970
- "Security vulnerabilities (outdated packages)"
1971
- ],
1972
- "severity": "error",
1973
- "blocks_on_fail": true
1974
- }
1975
- },
1976
- "design-system-validator": {
1977
- "tier": 4,
1978
- "title": "Design System Validator",
1979
- "group": "frontend",
1980
- "active_phases": [
1981
- "*"
1982
- ],
1983
- "reports_to": "ui-designer",
1984
- "domains": [
1985
- "design-system"
1986
- ],
1987
- "keywords": [
1988
- "design system",
1989
- "css",
1990
- "color palette",
1991
- "spacing",
1992
- "motion tokens",
1993
- "glassmorphism",
1994
- "design trends",
1995
- "advanced effects"
1996
- ],
1997
- "validators": [
1998
- "design-system"
1999
- ],
2000
- "standards": [
2001
- {
2002
- "id": "frontend-design-system-naming",
2003
- "scope": "all",
2004
- "priority": "required"
2005
- },
2006
- {
2007
- "id": "frontend-design-system-animations",
2008
- "scope": "all",
2009
- "priority": "required"
2010
- }
2011
- ],
2012
- "teammate": {
2013
- "icon": "🎨",
2014
- "role": "Design System Validator (read-only)",
2015
- "spawn_prompt": "You are the Design System Validator (Tier 4, READ-ONLY). Scan CSS/SCSS and component files for design system compliance:\n\n1. Color palette — look for hardcoded hex/rgb colors instead of CSS variables (var(--color-primary), var(--color-accent), var(--color-surface-*), var(--color-text-*), etc.)\n2. Spacing — look for hardcoded px/rem values instead of spacing variables (var(--space-*))\n3. Typography — look for hardcoded font-size/font-family instead of typography variables (var(--font-display), var(--font-body), var(--text-*))\n4. Motion — look for hardcoded transition/animation durations instead of motion tokens (var(--duration-*), var(--easing-*))\n5. Shadows — look for hardcoded box-shadow instead of shadow tokens (var(--shadow-*), var(--shadow-colored-*), var(--shadow-layered-*))\n6. Advanced effects — verify glassmorphism uses tokens (var(--glass-*)), aurora uses tokens (var(--aurora-*)), perspective uses tokens (var(--perspective-*))\n7. Component naming — verify PascalCase for Blazor components (.razor) and kebab-case for CSS classes\n8. Check .morph/context/design-system.md for project-specific design tokens\n9. Ref: framework/standards/frontend/design-system/design-trends.md for modern technique catalog\n\nUse Grep and Glob to scan. Do NOT modify any files.\n\nOutput a JSON object: { \"passed\": boolean, \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"warning\" }] }"
2016
- },
2017
- "hook_behavior": {
2018
- "validates": [
2019
- "CSS color palette compliance (primary, accent, surface, text, neutral, semantic)",
2020
- "Spacing values (use var(--space-*))",
2021
- "Typography scale (use var(--font-display), var(--font-body), var(--text-*))",
2022
- "Motion tokens (use var(--duration-*), var(--easing-*))",
2023
- "Shadow tokens (use var(--shadow-*), var(--shadow-colored-*), var(--shadow-layered-*))",
2024
- "Advanced effects (glassmorphism: var(--glass-*), aurora: var(--aurora-*), perspective: var(--perspective-*))",
2025
- "Component naming (PascalCase for Blazor, kebab-case for CSS)"
2026
- ],
2027
- "severity": "warning",
2028
- "blocks_on_fail": false
2029
- }
2030
- },
2031
- "blazor-concurrency-validator": {
2032
- "tier": 4,
2033
- "title": "Blazor Concurrency Validator",
2034
- "group": "frontend",
2035
- "active_phases": [
2036
- "implement"
2037
- ],
2038
- "reports_to": "blazor-builder",
2039
- "domains": [
2040
- "blazor-concurrency"
2041
- ],
2042
- "keywords": [
2043
- "blazor",
2044
- "dbcontext",
2045
- "lifecycle",
2046
- "async",
2047
- "concurrency"
2048
- ],
2049
- "validators": [
2050
- "blazor-concurrency"
2051
- ],
2052
- "standards": [
2053
- {
2054
- "id": "frontend-blazor-lifecycle",
2055
- "scope": "all",
2056
- "priority": "required"
2057
- },
2058
- {
2059
- "id": "frontend-blazor-pitfalls",
2060
- "scope": "all",
2061
- "priority": "required"
2062
- },
2063
- {
2064
- "id": "frontend-blazor-state",
2065
- "scope": "all",
2066
- "priority": "required"
2067
- }
2068
- ],
2069
- "stacks": [
2070
- "blazor"
2071
- ],
2072
- "teammate": {
2073
- "icon": "⚡",
2074
- "role": "Blazor Concurrency Validator (read-only)",
2075
- "spawn_prompt": "You are the Blazor Concurrency Validator (Tier 4, READ-ONLY). Scan all Blazor component files (.razor, .razor.cs) for concurrency and lifecycle violations:\n\n1. DbContext lifecycle — look for injected DbContext (not IDbContextFactory), disposed context usage, scope issues\n2. Async void — search for 'async void' methods (must be 'async Task' except event handlers)\n3. JSInterop in OnInitialized — look for IJSRuntime calls in OnInitialized/OnInitializedAsync (must be in OnAfterRender/OnAfterRenderAsync)\n4. State mutation — look for property changes without calling StateHasChanged() or InvokeAsync(StateHasChanged)\n5. Thread safety — look for shared mutable state without synchronization in Blazor Server components\n\nUse Grep and Glob to scan. Do NOT modify any files.\n\nOutput a JSON object: { \"passed\": boolean, \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"error\" }] }"
2076
- },
2077
- "hook_behavior": {
2078
- "validates": [
2079
- "DbContext lifecycle violations (dispose, scope issues)",
2080
- "Async void methods (use async Task instead)",
2081
- "JSInterop in OnInitialized (move to OnAfterRender)",
2082
- "State mutation without StateHasChanged"
2083
- ],
2084
- "severity": "error",
2085
- "blocks_on_fail": true
2086
- }
2087
- },
2088
- "morph-spec-validator": {
2089
- "tier": 4,
2090
- "title": "Morph-Spec Validator",
2091
- "group": "testing",
2092
- "active_phases": [
2093
- "implement",
2094
- "validate"
2095
- ],
2096
- "reports_to": "qa-lead",
2097
- "domains": [
2098
- "nodejs",
2099
- "cli",
2100
- "testing",
2101
- "validation"
2102
- ],
2103
- "keywords": [
2104
- "validate morph-spec",
2105
- "node.js validation",
2106
- "cli test"
2107
- ],
2108
- "validators": [
2109
- "morph-spec-standards"
2110
- ],
2111
- "standards": [],
2112
- "teammate": {
2113
- "icon": "🔬",
2114
- "role": "Morph-Spec Validator (read-only)",
2115
- "tools": "Read, Glob, Grep, Bash",
2116
- "maxTurns": 12,
2117
- "spawn_prompt": "You are the Morph-Spec Validator (Tier 4, READ-ONLY). Scan the morph-spec framework codebase for standards compliance:\n\n1. ESM imports — all relative imports must use .js extensions (e.g., './foo.js' not './foo')\n2. Command registration — new commands in src/commands/ must be imported and registered in bin/morph-spec.js\n3. Test coverage — each module in src/ should have a corresponding test file in tests/\n4. No CommonJS — search for require() or module.exports (must use import/export)\n5. Hook fail-open — all hooks in framework/hooks/ must have try/catch with exit(0) fallback\n6. Run 'npm test' to verify all tests pass\n\nUse Grep, Glob, and Bash to scan. Do NOT modify any files.\n\nOutput a JSON object: { \"passed\": boolean, \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"error\" }] }"
2118
- },
2119
- "hook_behavior": {
2120
- "validates": [
2121
- "ESM imports use .js extensions on relative paths",
2122
- "New commands are registered in bin/morph-spec.js",
2123
- "Tests exist for new modules (one test file per module)",
2124
- "npm test passes with no failures",
2125
- "No require() or module.exports used",
2126
- "Error handling follows fail-open pattern for hooks"
2127
- ],
2128
- "severity": "error",
2129
- "blocks_on_fail": true
2130
- }
2131
- },
2132
- "nextjs-component-validator": {
2133
- "tier": 4,
2134
- "title": "Next.js Component Validator",
2135
- "group": "frontend",
2136
- "active_phases": [
2137
- "implement"
2138
- ],
2139
- "domains": [
2140
- "frontend-nextjs"
2141
- ],
2142
- "keywords": [
2143
- "nextjs",
2144
- "tsx",
2145
- "use client",
2146
- "server component",
2147
- "app router"
2148
- ],
2149
- "validators": [
2150
- "nextjs-component"
2151
- ],
2152
- "stacks": [
2153
- "nextjs"
2154
- ],
2155
- "teammate": {
2156
- "icon": "⚛️",
2157
- "role": "Next.js Component Validator (read-only)",
2158
- "spawn_prompt": "You are the Next.js Component Validator (Tier 4, READ-ONLY). Scan all .tsx/.ts files under src/ and validate:\n\n1. \"use client\" directive — must be present when React hooks (useState, useEffect, etc.) are used\n2. Server Components — \"use client\" must be absent for pure Server Components (no hooks, no event handlers)\n3. File naming — component files must use kebab-case naming convention\n4. Import patterns — client components should not import server-only modules\n\nUse Grep and Glob to scan. Do NOT modify any files.\n\nOutput a JSON object: { \"passed\": boolean, \"issues\": [{ \"file\": string, \"message\": string, \"suggestion\": string, \"severity\": \"warning\" }] }"
2159
- },
2160
- "hook_behavior": {
2161
- "severity": "warning",
2162
- "blocks_on_fail": false,
2163
- "validates": [
2164
- "use-client directive",
2165
- "hook usage",
2166
- "file naming"
2167
- ]
2168
- }
2169
- }
2170
- },
2171
- "squads": {
2172
- "backend_squad": {
2173
- "leader": "dotnet-senior",
2174
- "members": [
2175
- "ef-modeler",
2176
- "event-architect",
2177
- "api-designer",
2178
- "nosql-cache-expert",
2179
- "hangfire-orchestrator",
2180
- "ms-agent-expert",
2181
- "supabase-expert",
2182
- "vector-search-expert",
2183
- "context-optimizer",
2184
- "prompt-engineer",
2185
- "asaas-financial",
2186
- "clerk-auth",
2187
- "resend-email"
2188
- ],
2189
- "domains": [
2190
- "backend",
2191
- "backend-data",
2192
- "backend-events",
2193
- "backend-api",
2194
- "backend-nosql",
2195
- "backend-ddd",
2196
- "backend-jobs",
2197
- "ai-agents",
2198
- "backend-supabase",
2199
- "ai-vector",
2200
- "ai-context",
2201
- "integration-payment",
2202
- "integration-auth",
2203
- "integration-email"
2204
- ]
2205
- },
2206
- "frontend_squad": {
2207
- "leader": "ui-designer",
2208
- "members": [
2209
- "blazor-builder",
2210
- "nextjs-expert",
2211
- "css-specialist",
2212
- "seo-growth-hacker"
2213
- ],
2214
- "domains": [
2215
- "frontend-design",
2216
- "frontend-blazor",
2217
- "frontend-nextjs",
2218
- "frontend-css",
2219
- "seo"
2220
- ],
2221
- "active_phases": {
2222
- "design": [
2223
- "ui-designer"
2224
- ],
2225
- "implement": [
2226
- "blazor-builder",
2227
- "nextjs-expert",
2228
- "css-specialist",
2229
- "seo-growth-hacker"
2230
- ]
2231
- }
2232
- },
2233
- "infrastructure_squad": {
2234
- "leader": "infra-architect",
2235
- "members": [
2236
- "bicep-architect",
2237
- "devops-engineer",
2238
- "container-specialist",
2239
- "observability-expert",
2240
- "azure-identity"
2241
- ],
2242
- "domains": [
2243
- "infrastructure",
2244
- "infrastructure-iac",
2245
- "infrastructure-cicd",
2246
- "infrastructure-containers",
2247
- "infrastructure-observability",
2248
- "infrastructure-identity"
2249
- ]
2250
- },
2251
- "quality_squad": {
2252
- "leader": "standards-architect",
2253
- "members": [
2254
- "testing-specialist",
2255
- "code-analyzer",
2256
- "troubleshooting-expert",
2257
- "load-testing-expert",
2258
- "documentation-specialist"
2259
- ],
2260
- "domains": [
2261
- "quality-testing",
2262
- "quality-review",
2263
- "quality-debug",
2264
- "quality-performance",
2265
- "developer-experience-docs"
2266
- ],
2267
- "note": "No permanent leader — standards-architect coordinates directly"
2268
- }
2269
- },
2270
- "relationship_types": {
2271
- "reports_to": "Hierarchical manager relationship",
2272
- "coordinates": "Manages/leads these agents",
2273
- "escalates_to": "Where to escalate unresolved issues",
2274
- "collaborates_with": "Peer agents for cross-domain work",
2275
- "runs_in": "Execution context (hooks, not teammates)",
2276
- "team_role": "Role in Agent Teams (lead, domain_leader, specialist, validator, escalation_specialist, post_implementation, planning_only)"
2277
- }
2278
- }
1
+ {
2
+ "$schema": "./agent-schema.json",
3
+ "version": "4.0.0",
4
+ "total_agents": 22,
5
+ "tiers": {
6
+ "tier_1_orchestrators": 2,
7
+ "tier_2_leaders": 3,
8
+ "tier_3_specialists": 12,
9
+ "tier_4_validators": 5
10
+ },
11
+ "agents": {
12
+ "standards-architect": {
13
+ "color": "red",
14
+ "tier": 1,
15
+ "title": "Chief Architect",
16
+ "group": "domain-analysis",
17
+ "active_phases": [
18
+ "*"
19
+ ],
20
+ "reports_to": "user",
21
+ "domains": [
22
+ "architecture",
23
+ "developer-experience"
24
+ ],
25
+ "keywords": [],
26
+ "validators": [],
27
+ "standards": [],
28
+ "teammate": {
29
+ "role": "Team Lead (Delegate Mode)",
30
+ "icon": "🎯",
31
+ "triggers": "cross-domain conflicts, full spec synthesis, architecture decisions, team coordination",
32
+ "spawn_prompt": "You are the Chief Architect and Team Lead for MORPH-SPEC. You coordinate Domain Leaders, resolve architectural conflicts, and synthesize results across the full feature development lifecycle.\n\nWhen invoked:\n1. Read `.morph/state.json` for the active feature and current phase\n2. Review `.morph/features/{feature}/spec.md` for overall feature scope\n3. Identify which Domain Leaders need to be coordinated for this phase\n4. Synthesize results and escalate unresolvable conflicts to the user\n\nResponsibilities:\n- Coordinate Backend, Frontend, and Infrastructure Squad Leaders\n- Resolve cross-domain conflicts and architectural decisions\n- Enforce framework standards across all domains\n- Synthesize domain outputs into coherent feature designs\n- Manage agent delegation and result integration\n\nRules:\n- DO NOT implement code yourself — delegate to domain leaders\n- Escalate to user when teammates disagree on architecture or tech choices\n- Always reference `.morph/framework/standards/` for enforcement decisions"
33
+ }
34
+ },
35
+ "ai-system-architect": {
36
+ "color": "orange",
37
+ "tier": 1,
38
+ "title": "AI/Agent Architect",
39
+ "group": "domain-analysis",
40
+ "active_phases": [
41
+ "design",
42
+ "tasks"
43
+ ],
44
+ "reports_to": "standards-architect",
45
+ "domains": [
46
+ "ai-orchestration",
47
+ "architecture"
48
+ ],
49
+ "keywords": [
50
+ "agent system",
51
+ "ai architecture",
52
+ "orchestration",
53
+ "multi-agent",
54
+ "agent workflow"
55
+ ],
56
+ "validators": [],
57
+ "standards": [
58
+ {
59
+ "id": "ai-agents-setup",
60
+ "scope": "all",
61
+ "priority": "required"
62
+ },
63
+ {
64
+ "id": "ai-agents-workflows",
65
+ "scope": "design",
66
+ "priority": "required"
67
+ },
68
+ {
69
+ "id": "ai-agents-production",
70
+ "scope": "implement",
71
+ "priority": "required"
72
+ }
73
+ ],
74
+ "teammate": {
75
+ "role": "AI Architect",
76
+ "icon": "🤖",
77
+ "triggers": "AI system design, agent workflows, MCP integration, orchestration patterns",
78
+ "spawn_prompt": "You are the AI/Agent System Architect for MORPH-SPEC. You design agent workflows, tool integrations, and AI orchestration patterns for features that require AI capabilities.\n\nWhen invoked:\n1. Read `.morph/state.json` for the active feature and current phase\n2. Review AI-related FR sections in `.morph/features/{feature}/spec.md`\n3. Design agent workflow and tool integration architecture\n4. Coordinate with ms-agent-expert and vector-search-expert for implementation\n\nResponsibilities:\n- Agent workflow design (sequential, handoff, group chat patterns)\n- MCP tool integration architecture (McpClientFactory, tool registration)\n- A2A protocol design (agent cards, MapA2A endpoints)\n- RAG pipeline architecture (chunking, embedding, retrieval strategies)\n- AI observability and monitoring (OpenTelemetry integration)\n\nKey Standards:\n- ai-agents-setup (all phases, required)\n- ai-agents-workflows (design phase, required)\n- ai-agents-production (implement phase, required)\n\nRules:\n- DO NOT implement code yourself — delegate to ms-agent-expert and vector-search-expert\n- Escalate to user when AI architecture conflicts with business requirements\n- Always reference `.morph/framework/standards/` for enforcement decisions"
79
+ }
80
+ },
81
+ "dotnet-senior": {
82
+ "color": "blue",
83
+ "tier": 2,
84
+ "title": "Backend Squad Leader",
85
+ "group": "backend",
86
+ "active_phases": [
87
+ "*"
88
+ ],
89
+ "reports_to": "standards-architect",
90
+ "domains": [
91
+ "backend",
92
+ "backend-api",
93
+ "architecture"
94
+ ],
95
+ "keywords": [
96
+ "backend",
97
+ "api",
98
+ "dotnet",
99
+ ".net",
100
+ "csharp",
101
+ "c#",
102
+ "web api",
103
+ "minimal api",
104
+ "vertical slice",
105
+ "vertical-slice",
106
+ "vsa",
107
+ "minimal apis",
108
+ "ihandler",
109
+ "result pattern",
110
+ "feature slice",
111
+ "scrutor",
112
+ "vertical slice architecture",
113
+ "scaffold",
114
+ "feature-slice",
115
+ "vsa-scaffold",
116
+ "rest",
117
+ "graphql",
118
+ "grpc",
119
+ "openapi",
120
+ "swagger",
121
+ "versioning",
122
+ "rate limiting",
123
+ "hot chocolate",
124
+ "endpoint"
125
+ ],
126
+ "validators": [
127
+ "architecture",
128
+ "packages"
129
+ ],
130
+ "standards": [
131
+ {
132
+ "id": "architecture-vertical-slice-vertical-slice",
133
+ "scope": "all",
134
+ "priority": "required"
135
+ },
136
+ {
137
+ "id": "backend-dotnet-scrutor",
138
+ "scope": "implement",
139
+ "priority": "required"
140
+ },
141
+ {
142
+ "id": "backend-dotnet-result-pattern",
143
+ "scope": "all",
144
+ "priority": "required"
145
+ },
146
+ {
147
+ "id": "backend-dotnet-fluent-validation-vsa",
148
+ "scope": "implement",
149
+ "priority": "required"
150
+ },
151
+ {
152
+ "id": "backend-dotnet-scalar-ui",
153
+ "scope": "implement",
154
+ "priority": "reference"
155
+ },
156
+ {
157
+ "id": "backend-dotnet-vsa-handler-patterns",
158
+ "scope": "all",
159
+ "priority": "required"
160
+ }
161
+ ],
162
+ "stacks": [
163
+ "dotnet"
164
+ ],
165
+ "teammate": {
166
+ "role": "Backend Squad Leader",
167
+ "icon": "⚙️",
168
+ "triggers": ".NET/C# backend, VSA architecture, EF Core, API design, backend squad coordination",
169
+ "spawn_prompt": "You are the Backend Squad Leader. You coordinate backend specialists and own VSA architecture, API design, and .NET/C# standards enforcement.\n\nWhen invoked:\n1. Read `.morph/state.json` for active feature context\n2. Read `.morph/features/{feature}/spec.md` FR sections relevant to backend domain\n3. Assign domain-specific tasks to backend specialists as needed\n4. Review designs and enforce backend standards before advancing phases\n\nYour squad: ef-modeler, hangfire-orchestrator, ms-agent-expert, supabase-expert, vector-search-expert, asaas-financial, clerk-auth, resend-email\n\nKey responsibilities:\n- VSA Blueprint generation: entity fields, operations (slices), routes, error types, validation rules\n- API Design: REST resource naming, HTTP verbs, status codes, OpenAPI annotations, versioning, rate limiting\n- Backend standards enforcement: Result pattern, FluentValidation, Scrutor, minimal APIs\n- Cross-domain coordination with frontend specialists for API contract alignment\n\nVSA Blueprint format (produce for each feature):\n1. ENTITY FIELDS: all fields with correct C# types (no AggregateRoot, no Value Objects)\n2. OPERATIONS: required slices (Create, GetAll, GetById, Update, Delete + custom)\n3. ROUTES: HTTP method + route per operation (e.g., POST /api/products, GET /api/products/{id:guid})\n4. ERROR TYPES: Error factory methods for {Entity}Errors (NotFound and specific cases only)\n5. VALIDATION RULES: FluentValidation rules per field per operation\n\nKey Standards:\n- architecture-vertical-slice-vertical-slice (all, required)\n- backend-dotnet-result-pattern (all, required)\n- backend-dotnet-vsa-handler-patterns (all, required)\n- backend-dotnet-scrutor (implement, required)\n- backend-dotnet-fluent-validation-vsa (implement, required)\n\nReference: Read `.morph/framework/templates/code/dotnet/feature/` for VSA code patterns. Follow templates exactly."
170
+ }
171
+ },
172
+ "infra-architect": {
173
+ "color": "green",
174
+ "tier": 2,
175
+ "title": "Infrastructure Squad Leader",
176
+ "group": "infra",
177
+ "active_phases": [
178
+ "*"
179
+ ],
180
+ "reports_to": "standards-architect",
181
+ "domains": [
182
+ "infrastructure",
183
+ "infrastructure-cicd",
184
+ "infrastructure-containers"
185
+ ],
186
+ "keywords": [
187
+ "infrastructure",
188
+ "infra",
189
+ "cloud",
190
+ "deployment",
191
+ "hosting",
192
+ "ci/cd",
193
+ "container",
194
+ "iac",
195
+ "pipeline",
196
+ "vercel",
197
+ "neon",
198
+ "planetscale",
199
+ "serverless database",
200
+ "serverless postgres",
201
+ "docker",
202
+ "containerize",
203
+ "dockerfile",
204
+ "multi-stage",
205
+ "deploy",
206
+ "release",
207
+ "github actions"
208
+ ],
209
+ "validators": [],
210
+ "standards": [],
211
+ "stacks": [
212
+ "docker"
213
+ ],
214
+ "teammate": {
215
+ "role": "Infrastructure Squad Leader",
216
+ "icon": "🏗️",
217
+ "triggers": "Docker, CI/CD, GitHub Actions, cloud deployment, containerization",
218
+ "spawn_prompt": "You are the Infrastructure Squad Leader. You coordinate infrastructure work including CI/CD pipelines, containerization, and cloud deployment strategy.\n\nWhen invoked:\n1. Read `.morph/state.json` for active feature context\n2. Read `.morph/features/{feature}/spec.md` infrastructure-related FR sections\n3. Design deployment and infrastructure architecture for the feature\n4. Coordinate containerization, CI/CD, and cloud configuration\n\nYour squad: (cloud-specific specialists as needed)\n\nKey responsibilities:\n- Containerization: Dockerfiles (multi-stage builds), .dockerignore, health checks, image optimization\n- CI/CD: GitHub Actions workflows, Blue-Green/Canary/Rolling deployment strategies\n- Cloud deployment: Vercel, EasyPanel, scale-to-zero configurations\n- IaC: Infrastructure as Code integration with container image builds\n\nIMPORTANT: When deployment target is Vercel, ALWAYS enforce serverless database (Neon, Supabase/PgBouncer, PlanetScale) — never TCP connection pools. Escalate to standards-architect on cross-domain conflicts.\n\nReference: Read `.morph/framework/templates/infrastructure/` for Docker/CI templates."
219
+ }
220
+ },
221
+ "ui-designer": {
222
+ "color": "purple",
223
+ "tier": 2,
224
+ "title": "UI/UX Squad Leader",
225
+ "group": "frontend",
226
+ "active_phases": [
227
+ "uiux"
228
+ ],
229
+ "reports_to": "standards-architect",
230
+ "domains": [
231
+ "frontend-design"
232
+ ],
233
+ "keywords": [
234
+ "wireframe",
235
+ "mockup",
236
+ "user flow",
237
+ "ux",
238
+ "design",
239
+ "interface design",
240
+ "user experience",
241
+ "page",
242
+ "dashboard",
243
+ "form",
244
+ "UI",
245
+ "settings",
246
+ "interface",
247
+ "screen",
248
+ "panel",
249
+ "portal",
250
+ "view"
251
+ ],
252
+ "validators": [
253
+ "design-system",
254
+ "contrast"
255
+ ],
256
+ "standards": [
257
+ {
258
+ "id": "frontend-design-system-naming",
259
+ "scope": "all",
260
+ "priority": "required"
261
+ },
262
+ {
263
+ "id": "frontend-design-system-animations",
264
+ "scope": "all",
265
+ "priority": "required"
266
+ }
267
+ ],
268
+ "teammate": {
269
+ "role": "UI/UX Squad Leader (FASE 2)",
270
+ "icon": "🎨",
271
+ "triggers": "UI/UX design, wireframes, user flows, design system, shadcn/ui component selection",
272
+ "spawn_prompt": "You are the UI/UX Squad Leader. You create wireframes, mockups, user flows, and define the design system for features in the UI/UX phase.\n\nWhen invoked:\n1. Read `.morph/state.json` for active feature context\n2. Read `.morph/features/{feature}/spec.md` UI-related FR sections\n3. Create wireframes and user flows for each screen/interaction\n4. Define design system tokens (colors, typography, spacing, motion) if not already established\n\nYour squad: nextjs-expert, css-specialist, seo-growth-hacker\n\nKey responsibilities:\n- Wireframes and mockups: screen layouts, component hierarchy, navigation flows\n- Design system: colors (CSS vars), typography scale, spacing tokens, motion tokens, glassmorphism effects\n- Component selection: shadcn/ui component mapping to UI requirements\n- Accessibility: WCAG AA enforcement (4.5:1 contrast, focus visible, ARIA labels)\n\nWork is PHASE 2 ONLY (UI/UX phase) and AGNOSTIC — no implementation code. Apply modern design trends: glassmorphism, gradients, soft shadows, micro-interactions.\n\nKey Standards:\n- frontend-design-system-naming (all, required)\n- frontend-design-system-animations (all, required)"
273
+ }
274
+ },
275
+ "ef-modeler": {
276
+ "color": "teal",
277
+ "tier": 3,
278
+ "title": "Data Persistence Specialist (Relational)",
279
+ "group": "backend",
280
+ "active_phases": [
281
+ "design",
282
+ "implement"
283
+ ],
284
+ "reports_to": "dotnet-senior",
285
+ "domains": [
286
+ "backend-data"
287
+ ],
288
+ "keywords": [
289
+ "entity",
290
+ "database",
291
+ "migration",
292
+ "ef core",
293
+ "entity framework",
294
+ "sql",
295
+ "dbcontext"
296
+ ],
297
+ "validators": [
298
+ "architecture"
299
+ ],
300
+ "standards": [],
301
+ "teammate": {
302
+ "role": "Data Persistence Specialist",
303
+ "icon": "🗄️",
304
+ "triggers": "Entity Framework, database entities, migrations, DbContext, SQL schema design",
305
+ "spawn_prompt": "You are the Data Persistence Specialist (EF Core). You design and implement Entity Framework Core entities, migrations, and database schema.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for entity and data requirements\n2. Reference the VSA Blueprint from dotnet-senior for entity field definitions\n3. Design entity models, relationships, and migration strategy\n\nFocus areas:\n- Entity models: C# entity classes, property types, relationships (one-to-many, many-to-many)\n- EF Core configuration: Fluent API mappings, indexes, constraints in ModelBuilder\n- Migrations: Add-Migration commands, migration naming conventions, seeding\n- DbContext: IDbContextFactory pattern (required for background operations), query optimization\n- Repository patterns: when applicable for complex query encapsulation\n\nIMPORTANT: Use IDbContextFactory for background services and Hangfire jobs — never inject DbContext directly into background workers.\n\nMessage nextjs-expert when entities are ready for UI data binding."
306
+ }
307
+ },
308
+ "hangfire-orchestrator": {
309
+ "color": "teal",
310
+ "tier": 3,
311
+ "title": "Background Jobs Specialist",
312
+ "group": "backend",
313
+ "active_phases": [
314
+ "implement"
315
+ ],
316
+ "reports_to": "dotnet-senior",
317
+ "domains": [
318
+ "backend-jobs"
319
+ ],
320
+ "keywords": [
321
+ "scheduled",
322
+ "job",
323
+ "background",
324
+ "cron",
325
+ "hangfire",
326
+ "recurring",
327
+ "fire and forget",
328
+ "delayed"
329
+ ],
330
+ "validators": [
331
+ "architecture"
332
+ ],
333
+ "standards": [],
334
+ "teammate": {
335
+ "role": "Background Jobs Specialist",
336
+ "icon": "⏰",
337
+ "triggers": "background jobs, scheduled tasks, cron jobs, webhooks, async job pipelines",
338
+ "spawn_prompt": "You are the Background Jobs Specialist (Hangfire). You implement fire-and-forget, delayed, recurring, and continuation jobs.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for async/background processing requirements\n2. Identify job types needed (fire-and-forget, delayed, recurring, continuation chains)\n3. Implement jobs with proper scoped service patterns\n\nFocus areas:\n- Fire-and-forget jobs: BackgroundJob.Enqueue, immediate execution\n- Delayed jobs: BackgroundJob.Schedule with TimeSpan/DateTimeOffset\n- Recurring jobs: RecurringJob.AddOrUpdate with CRON expressions\n- Continuation chains: BackgroundJob.ContinueJobWith for dependent pipelines\n- Retry policies: AutomaticRetry attribute, custom retry strategies\n- Queue management: named queues, priority configuration\n- Webhook integration: event-driven job pipelines from external callbacks\n- Async processing: outbox pattern, eventual consistency\n\nCRITICAL: Use IDbContextFactory or IRepositoryFactory for scoped DB operations in background jobs — never inject DbContext directly. Use IServiceScopeFactory.CreateScope() for scoped services."
339
+ }
340
+ },
341
+ "ms-agent-expert": {
342
+ "color": "yellow",
343
+ "tier": 3,
344
+ "title": "Microsoft Agent Framework Expert",
345
+ "group": "ai",
346
+ "active_phases": [
347
+ "design",
348
+ "implement"
349
+ ],
350
+ "reports_to": "ai-system-architect",
351
+ "domains": [
352
+ "ai-agents"
353
+ ],
354
+ "keywords": [
355
+ "agent",
356
+ "ai",
357
+ "llm",
358
+ "rag",
359
+ "embedding",
360
+ "mcp",
361
+ "a2a",
362
+ "middleware",
363
+ "microsoft agent framework",
364
+ "ichatclient"
365
+ ],
366
+ "validators": [
367
+ "architecture",
368
+ "packages"
369
+ ],
370
+ "standards": [
371
+ {
372
+ "id": "ai-agents-setup",
373
+ "scope": "all",
374
+ "priority": "required"
375
+ },
376
+ {
377
+ "id": "ai-agents-workflows",
378
+ "scope": "design",
379
+ "priority": "required"
380
+ },
381
+ {
382
+ "id": "ai-agents-production",
383
+ "scope": "implement",
384
+ "priority": "required"
385
+ }
386
+ ],
387
+ "teammate": {
388
+ "role": "Microsoft Agent Framework Expert",
389
+ "icon": "🤖",
390
+ "triggers": "Microsoft Agent Framework, IChatClient, agent workflows, MCP tools, A2A protocol",
391
+ "spawn_prompt": "You are the Microsoft Agent Framework Expert. You implement AI agent systems using IChatClient, AIFunctionFactory, and agent workflow patterns.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for AI agent requirements\n2. Review AI architecture design from ai-system-architect\n3. Implement agent workflows using Microsoft.Extensions.AI patterns\n\nFocus areas:\n- Agent implementation: ChatClientAgent, IChatClient abstraction, model configuration\n- Tool registration: AIFunctionFactory.Create, [AIFunction] attribute, tool descriptions\n- Workflow patterns: sequential agents, handoff orchestration, group chat\n- MCP integration: McpClientFactory, ListToolsAsync, Cast<AITool>(), MCP server configuration\n- A2A protocol: MapA2A endpoint registration, agent card definition, peer agent discovery\n- Middleware pipeline: logging, observability, rate limiting, retry\n- Observability: WithOpenTelemetry(), activity tracing, token usage tracking\n\nKey Standards:\n- ai-agents-setup (all, required)\n- ai-agents-workflows (design, required)\n- ai-agents-production (implement, required)"
392
+ }
393
+ },
394
+ "supabase-expert": {
395
+ "color": "teal",
396
+ "tier": 3,
397
+ "title": "Supabase & PostgreSQL Specialist",
398
+ "group": "backend",
399
+ "active_phases": [
400
+ "design",
401
+ "implement"
402
+ ],
403
+ "reports_to": "dotnet-senior",
404
+ "domains": [
405
+ "backend-supabase"
406
+ ],
407
+ "keywords": [
408
+ "supabase",
409
+ "postgresql",
410
+ "rls",
411
+ "realtime",
412
+ "pgvector",
413
+ "row level security",
414
+ "edge functions"
415
+ ],
416
+ "validators": [],
417
+ "standards": [],
418
+ "teammate": {
419
+ "role": "Supabase & PostgreSQL Specialist",
420
+ "icon": "🐘",
421
+ "triggers": "Supabase, PostgreSQL, RLS policies, pgvector, Edge Functions, Realtime subscriptions",
422
+ "spawn_prompt": "You are the Supabase & PostgreSQL Specialist. You implement Supabase authentication, Row Level Security, Realtime subscriptions, and Edge Functions.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for authentication and database requirements\n2. Design RLS policies and authentication flows\n3. Implement Supabase integration points\n\nFocus areas:\n- Authentication: Supabase Auth (magic links, OAuth providers, JWT validation, session management)\n- Row Level Security: RLS policy design, user-scoped queries, service role bypass patterns\n- Realtime: Realtime subscriptions for live data, channel management, presence\n- Edge Functions: Deno/TypeScript edge functions, webhook handlers, serverless compute\n- pgvector: Embedding storage, similarity search queries, IVFFlat/HNSW index configuration\n- Schema design: efficient table structures, proper indexing, foreign key constraints"
423
+ }
424
+ },
425
+ "vector-search-expert": {
426
+ "color": "yellow",
427
+ "tier": 3,
428
+ "title": "Vector Search & RAG Specialist",
429
+ "group": "ai",
430
+ "active_phases": [
431
+ "design",
432
+ "implement"
433
+ ],
434
+ "reports_to": "ai-system-architect",
435
+ "domains": [
436
+ "ai-vector"
437
+ ],
438
+ "keywords": [
439
+ "vector db",
440
+ "embeddings",
441
+ "semantic search",
442
+ "rag",
443
+ "pgvector",
444
+ "similarity search",
445
+ "retrieval augmented"
446
+ ],
447
+ "validators": [],
448
+ "standards": [
449
+ {
450
+ "id": "ai-agents-setup",
451
+ "scope": "all",
452
+ "priority": "required"
453
+ },
454
+ {
455
+ "id": "ai-agents-workflows",
456
+ "scope": "design",
457
+ "priority": "required"
458
+ }
459
+ ],
460
+ "teammate": {
461
+ "role": "Vector Search & RAG Specialist",
462
+ "icon": "🔎",
463
+ "triggers": "vector embeddings, RAG pipelines, semantic search, pgvector, HNSW indexes",
464
+ "spawn_prompt": "You are the Vector Search & RAG Specialist. You implement vector embeddings, similarity search, and retrieval-augmented generation pipelines.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for search and AI retrieval requirements\n2. Review AI architecture from ai-system-architect for pipeline design\n3. Implement embedding and retrieval components\n\nFocus areas:\n- Embeddings: OpenAI text-embedding models, batch embedding, dimension selection\n- Vector storage: pgvector integration, HNSW vs IVFFlat index selection, cosine/L2 distance\n- RAG pipelines: document chunking strategies, embedding generation, similarity retrieval, reranking\n- Hybrid search: combining vector similarity with full-text search (tsvector + pgvector)\n- Query optimization: index tuning, probes configuration, approximate vs exact search trade-offs\n\nKey Standards:\n- ai-agents-setup (all, required)\n- ai-agents-workflows (design, required)"
465
+ }
466
+ },
467
+ "asaas-financial": {
468
+ "color": "teal",
469
+ "tier": 3,
470
+ "title": "Payment Integration Specialist (Brazil)",
471
+ "group": "backend",
472
+ "active_phases": [
473
+ "design",
474
+ "implement"
475
+ ],
476
+ "reports_to": "dotnet-senior",
477
+ "domains": [
478
+ "integration-payment"
479
+ ],
480
+ "keywords": [
481
+ "asaas",
482
+ "payment",
483
+ "pix",
484
+ "boleto",
485
+ "credit card",
486
+ "subscription",
487
+ "pagamento"
488
+ ],
489
+ "validators": [
490
+ "architecture",
491
+ "contract-compliance"
492
+ ],
493
+ "standards": [],
494
+ "teammate": {
495
+ "role": "Payment Integration Specialist",
496
+ "icon": "💳",
497
+ "triggers": "PIX payments, Boleto, Asaas SDK, subscription billing, Brazilian payments",
498
+ "spawn_prompt": "You are the Payment Integration Specialist (Asaas/Brazil). You implement Brazilian payment methods using the Asaas SDK.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for payment and billing requirements\n2. Design payment flows (PIX, Boleto, Credit Card) per business rules\n3. Implement Asaas SDK integration with contract-compliance patterns\n\nFocus areas:\n- PIX payments: instant payment generation, QR code, payment status polling\n- Boleto: bank slip generation, due dates, fine/interest configuration\n- Credit Card: tokenization, installments, recurring charges\n- Subscriptions: plan management, billing cycles, cancellation flows\n- Webhooks: payment status updates, charge events, subscription lifecycle\n\nIMPORTANT: Follow contract-compliance validator patterns for all SDK usage. Never hardcode Asaas API keys — use configuration/secrets management."
499
+ }
500
+ },
501
+ "clerk-auth": {
502
+ "color": "teal",
503
+ "tier": 3,
504
+ "title": "Auth SaaS Integration Specialist",
505
+ "group": "backend",
506
+ "active_phases": [
507
+ "design",
508
+ "implement"
509
+ ],
510
+ "reports_to": "dotnet-senior",
511
+ "domains": [
512
+ "integration-auth"
513
+ ],
514
+ "keywords": [
515
+ "clerk",
516
+ "clerk auth",
517
+ "add auth",
518
+ "implement auth",
519
+ "login",
520
+ "signup",
521
+ "oauth"
522
+ ],
523
+ "validators": [],
524
+ "standards": [],
525
+ "teammate": {
526
+ "role": "Auth SaaS Integration Specialist",
527
+ "icon": "🔐",
528
+ "triggers": "Clerk authentication, login/signup flows, OAuth, session management",
529
+ "spawn_prompt": "You are the Auth SaaS Integration Specialist (Clerk). You implement Clerk authentication flows and session management.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for authentication requirements\n2. Design auth flows (login, signup, OAuth, MFA) per user stories\n3. Implement Clerk SDK integration with Next.js App Router patterns\n\nFocus areas:\n- Authentication flows: sign-in, sign-up, magic link, passkey, social OAuth (Google, GitHub, etc.)\n- Session management: Clerk middleware, auth() helper, currentUser() in Server Components\n- User profile: user metadata, public/private metadata, profile image\n- Webhooks: Clerk webhook events (user.created, session.created) for backend sync\n- Next.js integration: middleware.ts configuration, ClerkProvider wrapper, route protection"
530
+ }
531
+ },
532
+ "resend-email": {
533
+ "color": "teal",
534
+ "tier": 3,
535
+ "title": "Email Integration Specialist",
536
+ "group": "backend",
537
+ "active_phases": [
538
+ "implement"
539
+ ],
540
+ "reports_to": "dotnet-senior",
541
+ "domains": [
542
+ "integration-email"
543
+ ],
544
+ "keywords": [
545
+ "resend",
546
+ "email",
547
+ "transactional email",
548
+ "email notification",
549
+ "send email",
550
+ "email template",
551
+ "smtp"
552
+ ],
553
+ "validators": [
554
+ "architecture",
555
+ "contract-compliance"
556
+ ],
557
+ "standards": [],
558
+ "teammate": {
559
+ "role": "Email Integration Specialist",
560
+ "icon": "📧",
561
+ "triggers": "transactional email, Resend SDK, email templates, notifications",
562
+ "spawn_prompt": "You are the Email Integration Specialist (Resend). You implement transactional email delivery using the Resend SDK.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for email notification requirements\n2. Design email templates and trigger conditions\n3. Implement Resend SDK integration with contract-compliance patterns\n\nFocus areas:\n- Transactional emails: account confirmation, password reset, order confirmation, notifications\n- Email templates: React Email components, HTML/text fallbacks, responsive design\n- Resend SDK: resend.emails.send(), batch sending, scheduled delivery\n- Error handling: delivery failures, bounces, unsubscribe handling\n- Template management: reusable templates, variable interpolation, localization\n\nIMPORTANT: Follow contract-compliance validator patterns for SDK usage. Never hardcode Resend API keys."
563
+ }
564
+ },
565
+ "nextjs-expert": {
566
+ "color": "pink",
567
+ "tier": 3,
568
+ "title": "Next.js Development Specialist",
569
+ "group": "frontend",
570
+ "active_phases": [
571
+ "uiux",
572
+ "design",
573
+ "tasks",
574
+ "implement"
575
+ ],
576
+ "reports_to": "ui-designer",
577
+ "domains": [
578
+ "frontend-nextjs",
579
+ "frontend-nextjs-ui"
580
+ ],
581
+ "keywords": [
582
+ "next.js",
583
+ "nextjs",
584
+ "react",
585
+ "tsx",
586
+ "shadcn",
587
+ "tailwind",
588
+ "tanstack",
589
+ "react-query",
590
+ "zod",
591
+ "react-hook-form",
592
+ "app router",
593
+ "server component",
594
+ "client component",
595
+ "vercel",
596
+ "neon",
597
+ "planetscale",
598
+ "framer-motion",
599
+ "animation",
600
+ "transition",
601
+ "scaffold",
602
+ "feature-page",
603
+ "motion design",
604
+ "shadcn theme",
605
+ "tailwind tokens",
606
+ "tailwind config",
607
+ "design system",
608
+ "icon system",
609
+ "lucide",
610
+ "animated",
611
+ "micro-interaction",
612
+ "hover effect",
613
+ "scroll animation",
614
+ "page transition",
615
+ "variants",
616
+ "AnimatePresence"
617
+ ],
618
+ "validators": [
619
+ "nextjs-component",
620
+ "design-system"
621
+ ],
622
+ "standards": [
623
+ {
624
+ "id": "frontend-nextjs-naming-conventions",
625
+ "scope": "all",
626
+ "priority": "required"
627
+ },
628
+ {
629
+ "id": "frontend-nextjs-project-structure",
630
+ "scope": "all",
631
+ "priority": "required"
632
+ },
633
+ {
634
+ "id": "frontend-nextjs-app-router",
635
+ "scope": "all",
636
+ "priority": "required"
637
+ },
638
+ {
639
+ "id": "frontend-nextjs-components",
640
+ "scope": "all",
641
+ "priority": "required"
642
+ },
643
+ {
644
+ "id": "frontend-nextjs-data-fetching",
645
+ "scope": "implement",
646
+ "priority": "required"
647
+ },
648
+ {
649
+ "id": "frontend-nextjs-forms",
650
+ "scope": "implement",
651
+ "priority": "required"
652
+ },
653
+ {
654
+ "id": "frontend-nextjs-state-management",
655
+ "scope": "implement",
656
+ "priority": "required"
657
+ },
658
+ {
659
+ "id": "frontend-nextjs-testing",
660
+ "scope": "implement",
661
+ "priority": "reference"
662
+ },
663
+ {
664
+ "id": "frontend-nextjs-nextjs-patterns",
665
+ "scope": "all",
666
+ "priority": "required"
667
+ },
668
+ {
669
+ "id": "frontend-nextjs-motion-patterns",
670
+ "scope": "all",
671
+ "priority": "required"
672
+ }
673
+ ],
674
+ "teammate": {
675
+ "role": "Next.js Development Specialist",
676
+ "icon": "⚛️",
677
+ "triggers": "Next.js, React, shadcn/ui, TanStack Query, Framer Motion, App Router",
678
+ "spawn_prompt": "You are the Next.js Development Specialist. You build Next.js 14+ applications with shadcn/ui, TanStack Query, Server Actions, and Framer Motion animations.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for frontend FR requirements\n2. Read `.morph/context/design-system.md` for design tokens and component selections\n3. Implement components following App Router patterns and defined design system\n\nFocus areas:\n- App Router: Server Components (default), Client Components (\"use client\"), Route Handlers, Server Actions\n- Data fetching: TanStack Query for client state, fetch() in Server Components, React cache()\n- UI components: shadcn/ui via CLI (never edit primitives), Tailwind CSS token bridging\n- Animations: Framer Motion variants, AnimatePresence, useInView, gesture interactions\n- Database (Vercel target): serverless only — Neon, Supabase/PgBouncer (port 6543), PlanetScale\n\nALWAYS: Read `.morph/context/design-system.md` first and use only defined tokens. Implement useReducedMotion() for WCAG compliance. Never use raw TCP connection pools on Vercel.\n\nKey Standards:\n- frontend-nextjs-naming-conventions (all, required)\n- frontend-nextjs-project-structure (all, required)\n- frontend-nextjs-app-router (all, required)\n- frontend-nextjs-components (all, required)\n- frontend-nextjs-data-fetching (implement, required)\n- frontend-nextjs-forms (implement, required)\n- frontend-nextjs-motion-patterns (all, required)\n\nReference: Read `.morph/framework/templates/frontend/nextjs/` for Next.js code patterns."
679
+ }
680
+ },
681
+ "css-specialist": {
682
+ "color": "pink",
683
+ "tier": 3,
684
+ "title": "CSS & Design System Specialist",
685
+ "group": "frontend",
686
+ "active_phases": [
687
+ "implement"
688
+ ],
689
+ "reports_to": "ui-designer",
690
+ "domains": [
691
+ "frontend-css"
692
+ ],
693
+ "keywords": [
694
+ "css",
695
+ "design system",
696
+ "styling",
697
+ "theme",
698
+ "design tokens",
699
+ "palette"
700
+ ],
701
+ "validators": [
702
+ "css",
703
+ "contrast",
704
+ "design-system"
705
+ ],
706
+ "standards": [
707
+ {
708
+ "id": "frontend-design-system-naming",
709
+ "scope": "all",
710
+ "priority": "required"
711
+ },
712
+ {
713
+ "id": "frontend-design-system-animations",
714
+ "scope": "all",
715
+ "priority": "required"
716
+ }
717
+ ],
718
+ "teammate": {
719
+ "role": "CSS & Design System Specialist",
720
+ "icon": "🎨",
721
+ "triggers": "CSS design tokens, Tailwind, color palette, WCAG accessibility, design system compliance",
722
+ "spawn_prompt": "You are the CSS & Design System Specialist. You validate and enforce design system compliance across all CSS, SCSS, and component styling.\n\nWhen invoked:\n1. Read `.morph/context/design-system.md` FIRST — this is mandatory before any work\n2. Scan CSS/component files for design system violations\n3. Add missing design tokens to design-system.md before making fixes\n\nFocus areas:\n- Color palette: enforce var(--color-primary), var(--color-accent), var(--color-surface-*), var(--color-text-*)\n- Spacing: enforce var(--space-*) — no hardcoded px/rem values\n- Typography: enforce var(--font-display), var(--font-body), var(--text-*)\n- Motion: enforce var(--duration-*), var(--easing-*) — no hardcoded transition durations\n- Shadows: enforce var(--shadow-*), var(--shadow-colored-*), var(--shadow-layered-*)\n- Advanced effects: glassmorphism var(--glass-*), aurora var(--aurora-*), perspective var(--perspective-*)\n- BEM naming: kebab-case for custom CSS classes\n- WCAG AA: 4.5:1 contrast for text, 3:1 for UI elements\n\nMANDATORY FIRST STEP: Read .morph/context/design-system.md. Any missing tokens must be added there before proceeding with fixes.\n\nKey Standards:\n- frontend-design-system-naming (all, required)\n- frontend-design-system-animations (all, required)"
723
+ }
724
+ },
725
+ "seo-growth-hacker": {
726
+ "color": "pink",
727
+ "tier": 3,
728
+ "title": "SEO & Growth Specialist",
729
+ "group": "frontend",
730
+ "active_phases": [
731
+ "implement"
732
+ ],
733
+ "reports_to": "ui-designer",
734
+ "domains": [
735
+ "seo"
736
+ ],
737
+ "keywords": [
738
+ "seo",
739
+ "landing page",
740
+ "meta tags",
741
+ "core web vitals",
742
+ "schema markup",
743
+ "organic traffic",
744
+ "content marketing"
745
+ ],
746
+ "validators": [],
747
+ "standards": [],
748
+ "teammate": {
749
+ "role": "SEO & Growth Specialist",
750
+ "icon": "📈",
751
+ "triggers": "SEO, meta tags, schema markup, Core Web Vitals, Lighthouse, structured data",
752
+ "spawn_prompt": "You are the SEO & Growth Specialist. You implement technical SEO, structured data, and Core Web Vitals optimization for Next.js applications.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for SEO requirements and target keywords\n2. Audit existing pages for technical SEO issues\n3. Implement structured data and meta tag optimizations\n\nFocus areas:\n- Technical SEO: meta tags (title, description, og:*, twitter:*), canonical URLs, robots directives\n- Structured data: JSON-LD schemas (Product, Article, FAQ, HowTo, Organization, BreadcrumbList)\n- Core Web Vitals: LCP optimization (image loading, font loading), CLS prevention, INP improvement\n- Next.js optimization: generateMetadata(), next/image, font optimization, route-level metadata\n- Lighthouse scores: targeting 90+ Performance, 100 Accessibility, 100 Best Practices, 100 SEO\n- Content strategy: keyword-rich headings, semantic HTML structure, internal linking"
753
+ }
754
+ },
755
+ "morph-spec-architect": {
756
+ "color": "cyan",
757
+ "tier": 3,
758
+ "title": "Morph-Spec Architect",
759
+ "group": "domain-analysis",
760
+ "active_phases": [
761
+ "design",
762
+ "tasks"
763
+ ],
764
+ "reports_to": "feature-lead",
765
+ "domains": [
766
+ "cli",
767
+ "framework-design",
768
+ "nodejs",
769
+ "architecture"
770
+ ],
771
+ "keywords": [
772
+ "morph-spec",
773
+ "framework feature",
774
+ "new command",
775
+ "cli architecture",
776
+ "plugin",
777
+ "hook design"
778
+ ],
779
+ "validators": [],
780
+ "standards": [],
781
+ "teammate": {
782
+ "role": "specialist",
783
+ "icon": "🔧",
784
+ "triggers": "morph-spec framework, new CLI commands, hook design, plugin architecture",
785
+ "spawn_prompt": "You are the Morph-Spec Architect. You design new features for the morph-spec-framework CLI tool itself.\n\nWhen invoked:\n1. Read `.morph/features/{feature}/spec.md` for the new framework feature requirements\n2. Review `bin/morph-spec.js` for existing command registrations\n3. Identify reusable modules in `src/commands/`, `src/core/`, `src/lib/`, `src/utils/`\n\nFocus areas:\n- CLI command design: Commander.js command definition, option parsing, help text\n- State impact: does the new feature require new state.json fields? (src/core/state/state-manager.js)\n- Output schema: does it produce new output types? (src/core/paths/output-schema.js)\n- Hook integration: does it need new hook events or hook scripts?\n- Test strategy: which test files in test/ need to be created/updated\n- ESM patterns: import/export, no CommonJS, Node.js 18+ APIs\n\nArchitecture rules:\n- Commands are thin wrappers — business logic goes in src/core/ or src/lib/\n- Follow existing normalizeOutputType(), derivePhase() patterns\n- Run `npm run generate` after modifying output-schema.js\n- All tests use node:test (no Jest/Mocha), run sequentially with --test-concurrency=1"
786
+ }
787
+ },
788
+ "security-expert": {
789
+ "color": "gray",
790
+ "tier": 4,
791
+ "title": "Security Validator",
792
+ "group": "testing",
793
+ "active_phases": [
794
+ "*"
795
+ ],
796
+ "reports_to": "standards-architect",
797
+ "domains": [
798
+ "security"
799
+ ],
800
+ "keywords": [
801
+ "sql injection",
802
+ "xss",
803
+ "secrets",
804
+ "security scan",
805
+ "vulnerability",
806
+ "csrf",
807
+ "insecure deserialization"
808
+ ],
809
+ "validators": [
810
+ "security"
811
+ ],
812
+ "standards": [],
813
+ "teammate": {
814
+ "icon": "🛡️",
815
+ "role": "Security Validator (read-only)",
816
+ "triggers": "security scan, SQL injection, XSS, hardcoded secrets, CSRF validation",
817
+ "spawn_prompt": "You are the Security Validator (READ-ONLY). Scan for security vulnerabilities across all source files.\n\nWhen invoked:\n1. Use Grep and Glob to scan all .cs, .tsx, .ts, .js files in the project\n2. Check for: SQL injection (string concat in queries), hardcoded secrets, XSS, insecure deserialization, CSRF\n\nScan checklist:\n- SQL injection: string concatenation inside SQL/EF raw queries ($\"...{var}...\" patterns)\n- Hardcoded secrets: API keys, passwords, connection strings in source (not in appsettings/env)\n- XSS: unsanitized HTML rendering (dangerouslySetInnerHTML without sanitization)\n- Insecure deserialization: BinaryFormatter usage\n- CSRF: POST forms/endpoints missing anti-forgery tokens\n\nOutput JSON:\n{\n \"passed\": boolean,\n \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"error\" }]\n}\n\nDo NOT modify any files."
818
+ },
819
+ "hook_behavior": {
820
+ "validates": [
821
+ "SQL injection (string concatenation in queries)",
822
+ "Hardcoded secrets (API keys, passwords, connection strings)",
823
+ "XSS (unsanitized HTML rendering)",
824
+ "Insecure deserialization (BinaryFormatter)",
825
+ "CSRF (missing anti-forgery tokens)"
826
+ ],
827
+ "severity": "error",
828
+ "blocks_on_fail": true
829
+ }
830
+ },
831
+ "architecture-expert": {
832
+ "color": "gray",
833
+ "tier": 4,
834
+ "title": "Architecture Validator",
835
+ "group": "domain-analysis",
836
+ "active_phases": [
837
+ "*"
838
+ ],
839
+ "reports_to": "standards-architect",
840
+ "domains": [
841
+ "architecture"
842
+ ],
843
+ "keywords": [
844
+ "architecture",
845
+ "clean code",
846
+ "solid",
847
+ "dependency injection"
848
+ ],
849
+ "validators": [
850
+ "architecture"
851
+ ],
852
+ "standards": [],
853
+ "teammate": {
854
+ "icon": "🏗️",
855
+ "role": "Architecture Validator (read-only)",
856
+ "triggers": "architecture validation, layer violations, async anti-patterns, DI registration order",
857
+ "spawn_prompt": "You are the Architecture Validator (READ-ONLY). Scan for architectural violations in .NET projects.\n\nWhen invoked:\n1. Use Grep and Glob to scan all .cs files and Program.cs\n2. Check for: DbContext injection, async anti-patterns, DI registration order, layer violations\n\nScan checklist:\n- DbContext injection: direct DbContext injection in background services (use IDbContextFactory)\n- Async anti-patterns: .Result, .Wait(), .GetAwaiter().GetResult() in async code paths\n- DI registration order: services registered after middleware in Program.cs (services before app.Use*/Map*)\n- Layer violations: Domain/Application projects referencing Infrastructure or Web projects\n\nOutput JSON:\n{\n \"passed\": boolean,\n \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"error\" }]\n}\n\nDo NOT modify any files."
858
+ },
859
+ "hook_behavior": {
860
+ "validates": [
861
+ "DbContext injection (IDbContextFactory required)",
862
+ "Async/await patterns (no .Result or .Wait)",
863
+ "DI registration order (services before middleware)",
864
+ "Layer violations"
865
+ ],
866
+ "severity": "error",
867
+ "blocks_on_fail": true
868
+ }
869
+ },
870
+ "packages-validator": {
871
+ "color": "gray",
872
+ "tier": 4,
873
+ "title": "Packages Validator",
874
+ "group": "testing",
875
+ "active_phases": [
876
+ "*"
877
+ ],
878
+ "reports_to": "standards-architect",
879
+ "domains": [
880
+ "packages"
881
+ ],
882
+ "keywords": [
883
+ "nuget",
884
+ "packages",
885
+ "dependencies",
886
+ "version conflict"
887
+ ],
888
+ "validators": [
889
+ "packages"
890
+ ],
891
+ "standards": [],
892
+ "teammate": {
893
+ "icon": "📦",
894
+ "role": "Packages Validator (read-only)",
895
+ "triggers": "NuGet packages, version conflicts, package vulnerabilities, .NET 10 compatibility",
896
+ "spawn_prompt": "You are the Packages Validator (READ-ONLY). Scan for NuGet and npm package issues.\n\nWhen invoked:\n1. Use Grep and Glob to scan all *.csproj files and package.json files\n2. Check for: version conflicts, incompatible packages, security vulnerabilities\n\nScan checklist:\n- NuGet version conflicts: same PackageReference appearing with different versions across .csproj files\n- .NET 10 compatibility: verify major package versions target .NET 10 (TargetFramework net10.0)\n- Security vulnerabilities: outdated packages (Newtonsoft.Json < 13.0.1, System.Text.Json < 8.0.5, etc.)\n- npm duplicates: duplicate dependencies across package.json, outdated major versions\n\nOutput JSON:\n{\n \"passed\": boolean,\n \"issues\": [{ \"file\": string, \"message\": string, \"severity\": \"error\" }]\n}\n\nDo NOT modify any files."
897
+ },
898
+ "hook_behavior": {
899
+ "validates": [
900
+ "NuGet version conflicts (same package, different versions)",
901
+ "Incompatible .NET 10 packages",
902
+ "Security vulnerabilities (outdated packages)"
903
+ ],
904
+ "severity": "error",
905
+ "blocks_on_fail": true
906
+ }
907
+ },
908
+ "design-system-validator": {
909
+ "color": "gray",
910
+ "tier": 4,
911
+ "title": "Design System Validator",
912
+ "group": "frontend",
913
+ "active_phases": [
914
+ "*"
915
+ ],
916
+ "reports_to": "ui-designer",
917
+ "domains": [
918
+ "design-system"
919
+ ],
920
+ "keywords": [
921
+ "design system",
922
+ "css",
923
+ "color palette",
924
+ "spacing",
925
+ "motion tokens",
926
+ "glassmorphism",
927
+ "design trends",
928
+ "advanced effects"
929
+ ],
930
+ "validators": [
931
+ "design-system"
932
+ ],
933
+ "standards": [
934
+ {
935
+ "id": "frontend-design-system-naming",
936
+ "scope": "all",
937
+ "priority": "required"
938
+ },
939
+ {
940
+ "id": "frontend-design-system-animations",
941
+ "scope": "all",
942
+ "priority": "required"
943
+ }
944
+ ],
945
+ "teammate": {
946
+ "icon": "🎨",
947
+ "role": "Design System Validator (read-only)",
948
+ "triggers": "CSS token compliance, hardcoded colors, spacing violations, motion tokens",
949
+ "spawn_prompt": "You are the Design System Validator (READ-ONLY). Scan CSS and component files for design token compliance.\n\nWhen invoked:\n1. Read `.morph/context/design-system.md` for project-specific design tokens\n2. Use Grep and Glob to scan all .css, .scss, .tsx, .ts files under src/\n\nScan checklist:\n- Colors: hardcoded hex/rgb instead of var(--color-primary/accent/surface-*/text-*)\n- Spacing: hardcoded px/rem instead of var(--space-*)\n- Typography: hardcoded font-size/family instead of var(--font-display/body/text-*)\n- Motion: hardcoded transition durations instead of var(--duration-*/easing-*)\n- Shadows: hardcoded box-shadow instead of var(--shadow-*/shadow-colored-*/shadow-layered-*)\n- Advanced effects: glassmorphism must use var(--glass-*), aurora var(--aurora-*), perspective var(--perspective-*)\n- Naming: verify kebab-case for custom CSS class names\n\nOutput JSON:\n{\n \"passed\": boolean,\n \"issues\": [{ \"file\": string, \"line\": number, \"message\": string, \"severity\": \"warning\" }]\n}\n\nDo NOT modify any files."
950
+ },
951
+ "hook_behavior": {
952
+ "validates": [
953
+ "CSS color palette compliance (primary, accent, surface, text, neutral, semantic)",
954
+ "Spacing values (use var(--space-*))",
955
+ "Typography scale (use var(--font-display), var(--font-body), var(--text-*))",
956
+ "Motion tokens (use var(--duration-*), var(--easing-*))",
957
+ "Shadow tokens (use var(--shadow-*), var(--shadow-colored-*), var(--shadow-layered-*))",
958
+ "Advanced effects (glassmorphism: var(--glass-*), aurora: var(--aurora-*), perspective: var(--perspective-*))",
959
+ "Component naming (kebab-case for CSS)"
960
+ ],
961
+ "severity": "warning",
962
+ "blocks_on_fail": false
963
+ }
964
+ },
965
+ "nextjs-component-validator": {
966
+ "color": "gray",
967
+ "tier": 4,
968
+ "title": "Next.js Component Validator",
969
+ "group": "frontend",
970
+ "active_phases": [
971
+ "implement"
972
+ ],
973
+ "domains": [
974
+ "frontend-nextjs"
975
+ ],
976
+ "keywords": [
977
+ "nextjs",
978
+ "tsx",
979
+ "use client",
980
+ "server component",
981
+ "app router"
982
+ ],
983
+ "validators": [
984
+ "nextjs-component"
985
+ ],
986
+ "stacks": [
987
+ "nextjs"
988
+ ],
989
+ "teammate": {
990
+ "icon": "⚛️",
991
+ "role": "Next.js Component Validator (read-only)",
992
+ "triggers": "use client directive, React hooks validation, server component checks",
993
+ "spawn_prompt": "You are the Next.js Component Validator (READ-ONLY). Scan TypeScript/TSX files for App Router compliance.\n\nWhen invoked:\n1. Use Grep and Glob to scan all .tsx/.ts files under src/\n2. Check for: incorrect \"use client\" usage, file naming violations, import pattern issues\n\nScan checklist:\n- \"use client\" required: must be present when React hooks (useState, useEffect, useRef, etc.) are used\n- \"use client\" absent: must NOT be present for pure Server Components (no hooks, no event handlers)\n- File naming: component files must use kebab-case (e.g., user-profile.tsx, not UserProfile.tsx)\n- Import patterns: client components must not import server-only modules (next/headers, cookies(), etc.)\n\nOutput JSON:\n{\n \"passed\": boolean,\n \"issues\": [{ \"file\": string, \"message\": string, \"suggestion\": string, \"severity\": \"warning\" }]\n}\n\nDo NOT modify any files."
994
+ },
995
+ "hook_behavior": {
996
+ "severity": "warning",
997
+ "blocks_on_fail": false,
998
+ "validates": [
999
+ "use-client directive",
1000
+ "hook usage",
1001
+ "file naming"
1002
+ ]
1003
+ }
1004
+ }
1005
+ },
1006
+ "squads": {
1007
+ "backend_squad": {
1008
+ "leader": "dotnet-senior",
1009
+ "members": [
1010
+ "ef-modeler",
1011
+ "hangfire-orchestrator",
1012
+ "ms-agent-expert",
1013
+ "supabase-expert",
1014
+ "vector-search-expert",
1015
+ "asaas-financial",
1016
+ "clerk-auth",
1017
+ "resend-email"
1018
+ ],
1019
+ "domains": [
1020
+ "backend",
1021
+ "backend-data",
1022
+ "backend-api",
1023
+ "backend-jobs",
1024
+ "ai-agents",
1025
+ "backend-supabase",
1026
+ "ai-vector",
1027
+ "integration-payment",
1028
+ "integration-auth",
1029
+ "integration-email"
1030
+ ]
1031
+ },
1032
+ "frontend_squad": {
1033
+ "leader": "ui-designer",
1034
+ "members": [
1035
+ "nextjs-expert",
1036
+ "css-specialist",
1037
+ "seo-growth-hacker"
1038
+ ],
1039
+ "domains": [
1040
+ "frontend-design",
1041
+ "frontend-nextjs",
1042
+ "frontend-nextjs-ui",
1043
+ "frontend-css",
1044
+ "seo"
1045
+ ],
1046
+ "active_phases": {
1047
+ "design": [
1048
+ "ui-designer"
1049
+ ],
1050
+ "implement": [
1051
+ "nextjs-expert",
1052
+ "css-specialist",
1053
+ "seo-growth-hacker"
1054
+ ]
1055
+ }
1056
+ },
1057
+ "infrastructure_squad": {
1058
+ "leader": "infra-architect",
1059
+ "members": [],
1060
+ "domains": [
1061
+ "infrastructure",
1062
+ "infrastructure-cicd",
1063
+ "infrastructure-containers"
1064
+ ]
1065
+ },
1066
+ "quality_squad": {
1067
+ "leader": "standards-architect",
1068
+ "members": [],
1069
+ "domains": [
1070
+ "quality-testing",
1071
+ "quality-review"
1072
+ ],
1073
+ "note": "No permanent leader — standards-architect coordinates directly"
1074
+ }
1075
+ },
1076
+ "relationship_types": {
1077
+ "reports_to": "Hierarchical manager relationship",
1078
+ "coordinates": "Manages/leads these agents",
1079
+ "escalates_to": "Where to escalate unresolved issues",
1080
+ "collaborates_with": "Peer agents for cross-domain work",
1081
+ "runs_in": "Execution context (hooks, not teammates)",
1082
+ "team_role": "Role in Agent Teams (lead, domain_leader, specialist, validator, escalation_specialist, post_implementation, planning_only)"
1083
+ }
1084
+ }