@polymorphism-tech/morph-spec 4.10.0 → 4.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/README.md +2 -2
  2. package/claude-plugin.json +1 -1
  3. package/docs/CHEATSHEET.md +1 -1
  4. package/docs/QUICKSTART.md +1 -1
  5. package/framework/CLAUDE.md +5 -69
  6. package/framework/agents/backend/api-designer.md +3 -0
  7. package/framework/agents/backend/dotnet-senior.md +3 -0
  8. package/framework/agents/backend/ef-modeler.md +2 -0
  9. package/framework/agents/backend/hangfire-orchestrator.md +2 -0
  10. package/framework/agents/backend/ms-agent-expert.md +2 -0
  11. package/framework/agents/frontend/blazor-builder.md +2 -0
  12. package/framework/agents/frontend/nextjs-expert.md +2 -0
  13. package/framework/agents/infrastructure/azure-architect.md +2 -0
  14. package/framework/agents/infrastructure/azure-deploy-specialist.md +2 -0
  15. package/framework/agents/infrastructure/bicep-architect.md +2 -0
  16. package/framework/agents/infrastructure/container-specialist.md +2 -0
  17. package/framework/agents/infrastructure/devops-engineer.md +3 -0
  18. package/framework/agents/infrastructure/infra-architect.md +3 -0
  19. package/framework/agents/integrations/asaas-financial.md +2 -0
  20. package/framework/agents/integrations/azure-identity.md +2 -0
  21. package/framework/agents/integrations/clerk-auth.md +3 -0
  22. package/framework/agents/integrations/hangfire-integration.md +2 -0
  23. package/framework/agents/integrations/resend-email.md +2 -0
  24. package/framework/commands/morph-apply.md +151 -161
  25. package/framework/commands/morph-archive.md +28 -28
  26. package/framework/commands/morph-infra.md +79 -79
  27. package/framework/commands/morph-preflight.md +92 -56
  28. package/framework/commands/morph-proposal.md +94 -70
  29. package/framework/commands/morph-status.md +31 -31
  30. package/framework/commands/morph-troubleshoot.md +63 -60
  31. package/framework/rules/csharp-standards.md +3 -0
  32. package/framework/rules/frontend-standards.md +2 -0
  33. package/framework/rules/infrastructure-standards.md +3 -0
  34. package/framework/rules/morph-workflow.md +57 -2
  35. package/framework/rules/nextjs-standards.md +2 -0
  36. package/framework/rules/testing-standards.md +3 -0
  37. package/framework/skills/level-0-meta/morph-brainstorming/SKILL.md +54 -49
  38. package/framework/skills/level-0-meta/morph-checklist/SKILL.md +42 -19
  39. package/framework/skills/level-0-meta/morph-code-review/SKILL.md +8 -5
  40. package/framework/skills/level-0-meta/morph-code-review-nextjs/SKILL.md +7 -5
  41. package/framework/skills/level-0-meta/morph-frontend-review/SKILL.md +139 -136
  42. package/framework/skills/level-0-meta/morph-init/SKILL.md +42 -13
  43. package/framework/skills/level-0-meta/morph-post-implementation/SKILL.md +130 -130
  44. package/framework/skills/level-0-meta/morph-replicate/SKILL.md +95 -87
  45. package/framework/skills/level-0-meta/morph-simulation-checklist/SKILL.md +24 -0
  46. package/framework/skills/level-0-meta/morph-tool-usage-guide/SKILL.md +42 -41
  47. package/framework/skills/level-0-meta/morph-verification-before-completion/SKILL.md +22 -11
  48. package/framework/skills/level-1-workflows/morph-phase-clarify/SKILL.md +123 -114
  49. package/framework/skills/level-1-workflows/morph-phase-codebase-analysis/SKILL.md +120 -102
  50. package/framework/skills/level-1-workflows/morph-phase-design/SKILL.md +206 -214
  51. package/framework/skills/level-1-workflows/morph-phase-implement/.morph/logs/activity.json +38 -0
  52. package/framework/skills/level-1-workflows/morph-phase-implement/SKILL.md +241 -360
  53. package/framework/skills/level-1-workflows/morph-phase-plan/SKILL.md +107 -115
  54. package/framework/skills/level-1-workflows/morph-phase-setup/SKILL.md +135 -135
  55. package/framework/skills/level-1-workflows/morph-phase-tasks/.morph/logs/activity.json +14 -0
  56. package/framework/skills/level-1-workflows/morph-phase-tasks/SKILL.md +143 -139
  57. package/framework/skills/level-1-workflows/morph-phase-uiux/SKILL.md +168 -165
  58. package/framework/skills/level-1-workflows/morph-scope-escalation/SKILL.md +57 -8
  59. package/package.json +3 -3
  60. package/src/commands/project/doctor.js +7 -2
  61. package/src/commands/project/update.js +4 -4
  62. package/src/lib/stack-filter.js +58 -0
  63. package/src/scripts/setup-infra.js +53 -18
  64. package/src/utils/agents-installer.js +19 -5
  65. package/src/utils/claude-md-injector.js +90 -0
  66. package/src/utils/hooks-installer.js +1 -4
  67. package/src/utils/skills-installer.js +67 -7
  68. package/CLAUDE.md +0 -98
  69. package/framework/memory/patterns-learned.md +0 -766
  70. package/framework/skills/level-0-meta/morph-terminal-title/SKILL.md +0 -61
  71. package/framework/skills/level-0-meta/morph-terminal-title/scripts/set_title.sh +0 -65
@@ -1,3 +1,8 @@
1
+ ---
2
+ stacks:
3
+ - "*"
4
+ ---
5
+
1
6
  # MORPH-SPEC Workflow Rules
2
7
 
3
8
  > Always-active rules for all MORPH-SPEC managed projects.
@@ -18,16 +23,58 @@ UI-heavy features also include **UI/UX** phase (`2-ui/`) between Design and Task
18
23
 
19
24
  ---
20
25
 
26
+ ## Phase Sequence
27
+
28
+ ```
29
+ proposal → setup → [uiux] → design → clarify → plan → tasks → implement → [sync]
30
+ ```
31
+
32
+ Use `morph-spec status {feature}` to see current phase and pending approval gates.
33
+
34
+ ---
35
+
21
36
  ## Phase Commands
22
37
 
23
38
  | Command | Purpose |
24
39
  |---------|---------|
25
- | `/morph-proposal {feature}` | Full spec pipeline (phases 14, pauses for approval) |
40
+ | `/morph-proposal {feature}` | Full spec pipeline (phases 1-4, pauses for approval) |
26
41
  | `/morph-apply {feature}` | Implement feature (phase 5) |
27
42
  | `/morph-status` | Feature dashboard |
28
43
 
29
44
  ---
30
45
 
46
+ ## State & Outputs
47
+
48
+ | Path | Notes |
49
+ |------|-------|
50
+ | `.morph/state.json` | **READ-ONLY** — use `morph-spec` CLI to update |
51
+ | `.morph/features/{feature}/{phase}/` | Feature outputs organized by phase |
52
+ | `.morph/framework/` | **READ-ONLY** — framework files managed by morph-spec |
53
+ | `.morph/config/config.json` | Project configuration (editable) |
54
+
55
+ ### mark-output types
56
+
57
+ Use `morph-spec state mark-output <feature> <type>` with one of these exact type names:
58
+
59
+ | Type | Phase | kebab alias |
60
+ |------|-------|-------------|
61
+ | `proposal` | proposal | — |
62
+ | `schemaAnalysis` | design | `schema-analysis` |
63
+ | `spec` | design | — |
64
+ | `contracts` | design | — |
65
+ | `contractsVsa` | design | `contracts-vsa` |
66
+ | `decisions` | design | — |
67
+ | `clarifications` | clarify | — |
68
+ | `plan` | plan | — |
69
+ | `tasks` | tasks | — |
70
+ | `uiDesignSystem` | uiux | `ui-design-system` |
71
+ | `uiMockups` | uiux | `ui-mockups` |
72
+ | `uiComponents` | uiux | `ui-components` |
73
+ | `uiFlows` | uiux | `ui-flows` |
74
+ | `recap` | implement | — |
75
+
76
+ ---
77
+
31
78
  ## Output Paths
32
79
 
33
80
  All outputs go in `.morph/features/{feature}/`:
@@ -57,7 +104,8 @@ Run a checkpoint every 3 completed tasks:
57
104
 
58
105
  ## Approval Gates
59
106
 
60
- **Design Gate:** Before moving from Design → Tasks, spec must be approved.
107
+ **Design Gate:** Before moving from Design → Plan, spec must be approved.
108
+ **Plan Gate:** Before moving from Plan → Tasks, plan must be approved.
61
109
  **Implementation Gate:** Before starting implementation, task list must be approved.
62
110
 
63
111
  Check approval status: `morph-spec approval-status {feature}`
@@ -85,4 +133,11 @@ Do not modify test files to make a failing test pass when the implementation is
85
133
 
86
134
  ---
87
135
 
136
+ ## Context Window Tip
137
+
138
+ When using 3+ MCPs, add `"experimental": { "mcpCliMode": true }` to `.claude/settings.json`.
139
+ MCP tools load on-demand instead of all at startup — keeps context clean for actual work.
140
+
141
+ ---
142
+
88
143
  *MORPH-SPEC by Polymorphism Tech*
@@ -2,6 +2,8 @@
2
2
  paths:
3
3
  - "**/*.tsx"
4
4
  - "**/*.ts"
5
+ stacks:
6
+ - nextjs
5
7
  ---
6
8
 
7
9
  # Next.js Standards
@@ -4,6 +4,9 @@ paths:
4
4
  - "**/*.test.*"
5
5
  - "**/*.spec.*"
6
6
  - "**/*Tests.cs"
7
+ stacks:
8
+ - dotnet
9
+ - blazor
7
10
  ---
8
11
 
9
12
  # Testing Standards
@@ -3,6 +3,7 @@ name: morph:brainstorming
3
3
  description: Morph-spec-aware brainstorming that loads project context, explores multiple design approaches, asks clarifying questions, and produces proposal.md or decisions.md. Use before designing a feature, when facing architectural decisions with multiple valid approaches, or when a feature needs requirements exploration before committing to a direction.
4
4
  user-invocable: true
5
5
  argument-hint: "[feature-name or topic]"
6
+ allowed-tools: Read, Bash, Glob, Grep, AskUserQuestion
6
7
  ---
7
8
 
8
9
  # Brainstorming — MORPH-SPEC Integrated
@@ -17,20 +18,16 @@ argument-hint: "[feature-name or topic]"
17
18
  - **Phase 2 (Design):** Explore architectural alternatives before writing `spec.md`
18
19
  - **Any phase:** When facing a decision with multiple valid approaches
19
20
 
20
- ## Prerequisites
21
+ ## Recommended Tools
21
22
 
22
- Before brainstorming, load project context:
23
-
24
- ```bash
25
- # Load current state
26
- npx morph-spec state get {feature-name}
27
-
28
- # Read project config
29
- Read: .morph/config/config.json
30
-
31
- # Read existing proposal (if Phase 2)
32
- Read: .morph/features/{feature}/0-proposal/proposal.md
33
- ```
23
+ | Action | Tool | Alternative |
24
+ |--------|------|-------------|
25
+ | Load feature state | **Bash** `npx morph-spec state get $ARGUMENTS` | — |
26
+ | Read project config | **Read** `.morph/config/config.json` | — |
27
+ | Scan existing code | **Glob** / **Grep** | — |
28
+ | Research libraries | **Context7 MCP** `query_docs()` | **WebSearch** |
29
+ | Ask clarifying questions | **AskUserQuestion** (never plain text) | — |
30
+ | Render proposal template | **Bash** `npx morph-spec template render docs/proposal ...` | — |
34
31
 
35
32
  ---
36
33
 
@@ -38,38 +35,35 @@ Read: .morph/features/{feature}/0-proposal/proposal.md
38
35
 
39
36
  ### Step 1: Explore Context
40
37
 
41
- **Gather information before generating ideas:**
38
+ Gather information before generating ideas. This step is what makes morph-aware brainstorming different from generic brainstorming — it grounds your thinking in the actual project state and constraints.
42
39
 
43
- 1. **Read state.json** — current phase, active agents, existing outputs
44
- 2. **Read config.json** — stack, architecture, project name
45
- 3. **Read existing outputs** — proposal.md, spec.md (if they exist)
46
- 4. **Scan codebase** — use Glob/Grep to understand existing patterns
47
- 5. **Check integrations.json** — available MCPs and plugins
48
-
49
- **Use MCP tools when available:**
50
- - **Context7** → look up library capabilities relevant to the feature
51
- - **Supabase** → check existing schema for data-related features
52
- - **GitHub** → check existing issues/PRs for related work
40
+ 1. **Read state** — `npx morph-spec state get $ARGUMENTS` → current phase, active agents, existing outputs, task history
41
+ 2. **Read config** — `.morph/config/config.json` → stack, architecture style (VSA vs standard), project name, integrations
42
+ 3. **Check architecture** — `cat .morph/config/config.json | grep -A3 architecture` → determines which agents and patterns apply
43
+ 4. **Read existing outputs** — proposal.md, spec.md, decisions.md (if they exist from prior work)
44
+ 5. **Check active agents** — `npx morph-spec dispatch-agents $ARGUMENTS design --table` → which specialists are available
45
+ 6. **Scan codebase** — use Glob/Grep to understand existing patterns, domain models, and service boundaries relevant to the feature
46
+ 7. **Check MCP tools** if Context7, GitHub, or other MCPs are available, use them for research
53
47
 
54
48
  ### Step 2: Ask Clarifying Questions
55
49
 
56
50
  Use `AskUserQuestion` to collect responses — **NEVER list questions as plain text**.
57
51
 
58
- - Máximo 4 perguntas por chamada. Se precisar de 5, faça 2 chamadas sequenciais (Q1-Q4 Q5).
59
- - Para cada pergunta, defina 2-4 opções representativas (o usuário pode usar "Other" para resposta livre).
60
- - **Aguarde o retorno do tool antes de prosseguir para o Step 3.**
52
+ - Maximum 4 questions per call. If you need 5+, make sequential calls (Q1-Q4, then Q5).
53
+ - Each question needs 2-4 representative options (the user can type a free response via "Other").
54
+ - **Wait for the tool response before proceeding to Step 3.**
61
55
 
62
- Perguntas-padrão a adaptar para o contexto da feature:
56
+ Starter questions to adapt to the feature context:
63
57
 
64
- | Header (12 chars) | Pergunta | Opções sugeridas |
58
+ | Header (<=12 chars) | Question | Suggested Options |
65
59
  |--------------------|----------|------------------|
66
- | `Escopo` | Qual é a versão mínima viável desta feature? | MVP básico / Versão completa / Em aberto |
67
- | `Constraints` | restrições de performance, budget ou prazo? | Sem restrições / Performance crítica / Budget limitado |
68
- | `Integração` | Precisa integrar com features ou sistemas existentes? | Sim, integra com X / Feature isolada / A definir |
69
- | `Usuários` | Quem são os usuários primários? | End-users / Admins / Sistema interno |
70
- | `Sucesso` | Como saberemos que a feature funciona corretamente? | Métricas definidas / Testes de aceitação / Feedback do usuário |
60
+ | `Scope` | What's the minimum viable version of this feature? | Basic MVP / Full version / Open-ended |
61
+ | `Constraints` | Any performance, budget, or timeline constraints? | No constraints / Performance-critical / Budget-limited |
62
+ | `Integration` | Does this need to integrate with existing features/systems? | Yes, integrates with X / Isolated feature / TBD |
63
+ | `Users` | Who are the primary users? | End-users / Admins / Internal system |
64
+ | `Success` | How will we know this feature works correctly? | Defined metrics / Acceptance tests / User feedback |
71
65
 
72
- > Adapte as opções ao contexto real da feature — as acima são ponto de partida, não template fixo.
66
+ > Adapt the options to the actual feature context these are starting points, not a fixed template.
73
67
 
74
68
  ### Step 3: Generate 2-3 Approaches
75
69
 
@@ -95,16 +89,27 @@ For each approach, document:
95
89
 
96
90
  ### Step 4: Recommend and Document
97
91
 
98
- 1. **Recommend** the best approach with reasoning
99
- 2. **Write output** to the appropriate location:
100
- - Phase 0 → render `docs/proposal` template → `.morph/features/{feature}/0-proposal/proposal.md`
101
- - Phase 2 → document in `decisions.md` as an ADR
92
+ 1. **Recommend** the best approach with clear reasoning
93
+ 2. **Write output** to the appropriate location based on the current phase:
102
94
 
103
- 3. **Update state:**
104
- ```bash
105
- npx morph-spec state mark-output {feature-name} proposal # Phase 0
106
- npx morph-spec state mark-output {feature-name} decisions # Phase 2
107
- ```
95
+ **Phase 0 (Proposal):**
96
+ ```bash
97
+ npx morph-spec template render docs/proposal ".morph/features/$ARGUMENTS/0-proposal/proposal.md" '{"FEATURE_NAME":"...", "DATE":"..."}'
98
+ ```
99
+ Then edit the rendered file to add the brainstorming results.
100
+
101
+ **Phase 2 (Design):**
102
+ Write the decision as an ADR (Architecture Decision Record) in `.morph/features/$ARGUMENTS/1-design/decisions.md`.
103
+
104
+ 3. **Update state** (mandatory — do not skip):
105
+ ```bash
106
+ npx morph-spec state mark-output $ARGUMENTS proposal # Phase 0
107
+ npx morph-spec state mark-output $ARGUMENTS decisions # Phase 2
108
+ ```
109
+ Then verify the output was recorded:
110
+ ```bash
111
+ npx morph-spec state get $ARGUMENTS
112
+ ```
108
113
 
109
114
  ---
110
115
 
@@ -116,7 +121,7 @@ This skill replaces `superpowers:brainstorming` within morph-spec workflows. It
116
121
  - Automatic context loading from `.morph/` state and config
117
122
  - Template rendering for outputs (proposal.md, decisions.md)
118
123
  - State tracking via `morph-spec state mark-output`
119
- - MCP integration for research (Context7, Supabase)
124
+ - MCP integration for research (Context7, GitHub)
120
125
 
121
126
  For brainstorming **outside** morph-spec workflows, the original `superpowers:brainstorming` skill remains available.
122
127
 
@@ -124,10 +129,10 @@ For brainstorming **outside** morph-spec workflows, the original `superpowers:br
124
129
 
125
130
  ## Anti-patterns
126
131
 
127
- - Never skip brainstorming for features with multiple valid approaches
128
- - Never commit to an approach without documenting alternatives
129
- - Never brainstorm without loading project context first
130
- - Never write code before completing the brainstorming output
132
+ - Skipping brainstorming for features with multiple valid approaches — exploring alternatives prevents tunnel vision
133
+ - Committing to an approach without documenting alternatives — future decisions need context on what was considered
134
+ - Brainstorming without loading project context first — leads to approaches that don't fit the existing architecture
135
+ - Writing code before completing the brainstorming output — premature implementation before agreement
131
136
 
132
137
  ---
133
138
 
@@ -7,15 +7,21 @@ allowed-tools: Read, Write, Edit, Bash, Glob, Grep
7
7
 
8
8
  # MORPH Checklists
9
9
 
10
- Types: `deploy`, `security`, `seo`, `performance`, `accessibility`, `legal-brazil`, `simulation` (ver skill: `morph:simulation-checklist`)
10
+ Types: `deploy`, `security`, `seo`, `performance`, `accessibility`, `legal-brazil`, `simulation` (see skill: `morph:simulation-checklist`)
11
11
 
12
12
  ---
13
13
 
14
14
  ## Deploy
15
15
 
16
+ ### MORPH-SPEC Validation (run first)
17
+ - [ ] `npx morph-spec validate-feature {feature}` — passes with 100% pass rate
18
+ - [ ] `npx morph-spec approval-status {feature}` — all gates approved (design, plan, tasks)
19
+ - [ ] `npx morph-spec state get {feature}` — phase is `implement`, all tasks `done`
20
+ - [ ] Recap generated: `.morph/features/{feature}/5-implement/recap.md` exists
21
+
16
22
  ### Pre-Deploy
17
23
  - [ ] `dotnet build --configuration Release` passes
18
- - [ ] `dotnet test` passes
24
+ - [ ] `dotnet test` passes (100% pass rate required — zero tolerance)
19
25
  - [ ] Migrations applied (`dotnet ef database update`)
20
26
  - [ ] Env vars configured (connection strings, API keys, feature flags)
21
27
 
@@ -94,28 +100,45 @@ Types: `deploy`, `security`, `seo`, `performance`, `accessibility`, `legal-brazi
94
100
  - [ ] Alt text on images, captions on videos
95
101
  - [ ] Contrast >= 4.5:1 (AA), color not sole indicator
96
102
  - [ ] Keyboard navigation works, focus visible
97
- - [ ] Skip links, `<html lang="pt-BR">`
103
+ - [ ] Skip links, `<html lang="...">` with correct locale
98
104
  - [ ] Labels on all inputs, clear error messages
99
105
  - [ ] Valid HTML, ARIA used correctly
100
106
 
101
107
  ---
102
108
 
103
- ## Legal Brazil (LGPD)
104
-
105
- ### Documentation
106
- - [ ] Privacy policy (data collected, purpose, legal basis, DPO contact)
107
- - [ ] Terms of use (service description, responsibilities, forum)
108
-
109
- ### Consent & Rights
110
- - [ ] Cookie banner with granular options
111
- - [ ] Explicit consent for marketing, revocation option
112
- - [ ] Data access, correction, deletion, portability
113
-
114
- ### Technical
115
- - [ ] Data minimization, defined retention periods
116
- - [ ] Anonymization/pseudonymization where possible
117
- - [ ] Access logs for personal data
118
- - [ ] Incident response plan (ANPD notification in 72h)
109
+ ## Legal Brazil (LGPD — Lei 13.709/2018)
110
+
111
+ The Brazilian General Data Protection Law (LGPD) applies to any application that processes personal data of individuals in Brazil. Non-compliance can result in fines up to 2% of revenue (capped at R$50M per violation) from ANPD (Autoridade Nacional de Protecao de Dados).
112
+
113
+ ### Documentation (Art. 9, 23, 41)
114
+ - [ ] Privacy policy published and accessible from every page — must include: categories of data collected, legal basis per category (Art. 7), processing purpose, retention period, DPO (Encarregado) contact name and email
115
+ - [ ] Terms of use covering: service description, user responsibilities, governing forum (Brazilian jurisdiction required)
116
+ - [ ] ROPA (Record of Processing Activities) — internal document mapping data flows per Art. 37
117
+
118
+ ### Consent & Data Subject Rights (Art. 7-9, 15-18)
119
+ - [ ] Cookie consent banner with **granular opt-in** (not just "accept all") — separate toggles for analytics, marketing, essential
120
+ - [ ] Explicit consent for marketing communications — checkbox unchecked by default, revocable at any time
121
+ - [ ] Data subject rights page implementing all Art. 18 rights:
122
+ - [ ] Access: user can view all personal data held
123
+ - [ ] Correction: user can update inaccurate data
124
+ - [ ] Deletion: user can request full account/data deletion (Art. 18, IX)
125
+ - [ ] Portability: user can export data in machine-readable format (JSON/CSV)
126
+ - [ ] Opposition: user can object to specific processing
127
+ - [ ] Rights requests processed within 15 days (Art. 19)
128
+
129
+ ### Technical Controls (Art. 46-49)
130
+ - [ ] PII encrypted at rest (AES-256) and in transit (TLS 1.2+)
131
+ - [ ] Data minimization: only collect what the legal basis justifies
132
+ - [ ] Defined retention periods per data category — automatic purge after expiry
133
+ - [ ] Anonymization/pseudonymization for analytics and logs
134
+ - [ ] Access logs for all personal data operations (who accessed what, when)
135
+ - [ ] Incident response plan: ANPD notification within **72 hours** of breach (Art. 48), user notification "within reasonable time"
136
+ - [ ] Data Protection Impact Assessment (DPIA/RIPD) for high-risk processing (Art. 5, XVII)
137
+
138
+ ### DPO (Encarregado — Art. 41)
139
+ - [ ] DPO designated and publicly identified (name + contact on privacy policy)
140
+ - [ ] DPO contact channel operational (email or form)
141
+ - [ ] DPO handles ANPD communications and data subject requests
119
142
 
120
143
  ---
121
144
 
@@ -3,6 +3,9 @@ name: morph:code-review
3
3
  description: .NET/C# code review checklist covering naming conventions, architecture layer integrity, async patterns, logging, error handling, DI lifetimes, and DTO contracts. Use after implementing .NET code, before creating PRs, or when reviewing C# code for compliance with MORPH-SPEC standards.
4
4
  user-invocable: true
5
5
  allowed-tools: Read, Write, Edit, Bash, Glob, Grep
6
+ stacks:
7
+ - dotnet
8
+ - blazor
6
9
  ---
7
10
 
8
11
  # Code Review Checklist
@@ -23,12 +26,12 @@ allowed-tools: Read, Write, Edit, Bash, Glob, Grep
23
26
  git diff --name-only main...HEAD -- "*.cs" | wc -l
24
27
  ```
25
28
 
26
- **Pular revisão se:**
27
- - 0 arquivos `.cs` alteradossem código backend para revisar
28
- - Apenas mudanças em `*.json`, `*.csproj`, `*.md`, arquivos de migration escopo de infra
29
- - Já existe `.morph/features/$ARGUMENTS/5-implement/code-review.md` criado hoje revisado
29
+ **Skip review if:**
30
+ - 0 `.cs` files changed no backend code to review
31
+ - Only changes in `*.json`, `*.csproj`, `*.md`, migration filesinfrastructure scope
32
+ - `.morph/features/$ARGUMENTS/5-implement/code-review.md` already exists from today already reviewed
30
33
 
31
- Se skip: output `"Skipping code-review: [motivo]"` e parar.
34
+ If skipping: output `"Skipping code-review: [reason]"` and stop.
32
35
 
33
36
  ---
34
37
 
@@ -3,6 +3,8 @@ name: morph:code-review-nextjs
3
3
  description: Next.js code review checklist covering naming conventions, component architecture (Server vs Client), data fetching patterns, form implementation, state management, TypeScript/Zod discipline, feature boundaries, and testing. Use after implementing Next.js code, before creating PRs, or when reviewing TSX/TS code for compliance with MORPH-SPEC Next.js standards.
4
4
  user-invocable: true
5
5
  allowed-tools: Read, Write, Edit, Bash, Glob, Grep
6
+ stacks:
7
+ - nextjs
6
8
  ---
7
9
 
8
10
  # Next.js Code Review Checklist
@@ -27,12 +29,12 @@ allowed-tools: Read, Write, Edit, Bash, Glob, Grep
27
29
  git diff --name-only main...HEAD -- "*.tsx" "*.ts" | wc -l
28
30
  ```
29
31
 
30
- **Pular revisão se:**
31
- - 0 arquivos `.tsx`/`.ts` alteradossem código frontend para revisar
32
- - Apenas mudanças em `*.json`, `*.md`, arquivos de config escopo de infra
33
- - Já existe `.morph/features/$ARGUMENTS/5-implement/code-review-nextjs.md` criado hoje revisado
32
+ **Skip review if:**
33
+ - 0 `.tsx`/`.ts` files changed no frontend code to review
34
+ - Only changes in `*.json`, `*.md`, config filesinfrastructure scope
35
+ - `.morph/features/$ARGUMENTS/5-implement/code-review-nextjs.md` already exists from today already reviewed
34
36
 
35
- Se skip: output `"Skipping code-review-nextjs: [motivo]"` e parar.
37
+ If skipping: output `"Skipping code-review-nextjs: [reason]"` and stop.
36
38
 
37
39
  ---
38
40