create-genia-os 2.1.0 → 2.2.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 (89) hide show
  1. package/README.md +154 -106
  2. package/bin/index.js +240 -240
  3. package/package.json +42 -37
  4. package/template/.claude/CLAUDE.md +215 -215
  5. package/template/.claude/agent-memory/analyst/MEMORY.md +20 -20
  6. package/template/.claude/agent-memory/architect/MEMORY.md +20 -20
  7. package/template/.claude/agent-memory/dev/MEMORY.md +20 -20
  8. package/template/.claude/agent-memory/devops/MEMORY.md +20 -20
  9. package/template/.claude/agent-memory/pm/MEMORY.md +20 -20
  10. package/template/.claude/agent-memory/po/MEMORY.md +20 -20
  11. package/template/.claude/agent-memory/qa/MEMORY.md +20 -20
  12. package/template/.claude/agent-memory/reviewer/MEMORY.md +20 -20
  13. package/template/.claude/agent-memory/sm/MEMORY.md +20 -20
  14. package/template/.claude/hooks/enforce-git-push-authority.py +70 -70
  15. package/template/.claude/hooks/metrics-tracker.cjs +65 -0
  16. package/template/.claude/hooks/precompact-session-digest.cjs +87 -87
  17. package/template/.claude/hooks/sql-governance.py +65 -65
  18. package/template/.claude/hooks/synapse-engine.cjs +122 -122
  19. package/template/.claude/hooks/write-path-validation.py +59 -59
  20. package/template/.claude/rules/agent-authority.md +39 -39
  21. package/template/.claude/rules/agent-handoff.md +71 -71
  22. package/template/.claude/rules/agent-memory.md +61 -61
  23. package/template/.claude/rules/ids-principles.md +52 -52
  24. package/template/.claude/rules/mcp-usage.md +49 -49
  25. package/template/.claude/rules/new-project.md +157 -0
  26. package/template/.claude/rules/story-lifecycle.md +87 -87
  27. package/template/.claude/rules/workflow-execution.md +68 -68
  28. package/template/.claude/settings.json +58 -58
  29. package/template/.claude/settings.local.json +14 -14
  30. package/template/.genia/CONSTITUTION.md +129 -129
  31. package/template/.genia/contexts/api-patterns.md +134 -134
  32. package/template/.genia/contexts/nextjs-react.md +210 -210
  33. package/template/.genia/contexts/projeto.md +18 -18
  34. package/template/.genia/contexts/supabase.md +152 -152
  35. package/template/.genia/contexts/whatsapp-cloud.md +176 -176
  36. package/template/.genia/core-config.yaml +192 -192
  37. package/template/.genia/development/agents/analyst.md +138 -138
  38. package/template/.genia/development/agents/architect.md +171 -171
  39. package/template/.genia/development/agents/dev.md +160 -160
  40. package/template/.genia/development/agents/devops.md +200 -200
  41. package/template/.genia/development/agents/pm.md +142 -142
  42. package/template/.genia/development/agents/po.md +165 -165
  43. package/template/.genia/development/agents/qa.md +183 -183
  44. package/template/.genia/development/agents/reviewer.md +198 -198
  45. package/template/.genia/development/agents/sm.md +230 -230
  46. package/template/.genia/development/checklists/architecture-review.md +189 -189
  47. package/template/.genia/development/checklists/pre-commit.md +205 -205
  48. package/template/.genia/development/checklists/pre-deploy.md +230 -230
  49. package/template/.genia/development/checklists/qa-gate.md +216 -216
  50. package/template/.genia/development/checklists/story-dod.md +155 -155
  51. package/template/.genia/development/tasks/code-review.md +197 -197
  52. package/template/.genia/development/tasks/criar-prd.md +170 -170
  53. package/template/.genia/development/tasks/criar-spec.md +188 -188
  54. package/template/.genia/development/tasks/criar-story.md +185 -185
  55. package/template/.genia/development/tasks/debug-sistematico.md +230 -230
  56. package/template/.genia/development/tasks/dev-implement.md +199 -199
  57. package/template/.genia/development/tasks/qa-review.md +224 -224
  58. package/template/.genia/development/workflows/brownfield.md +178 -178
  59. package/template/.genia/development/workflows/delivery.md +208 -208
  60. package/template/.genia/development/workflows/development.md +189 -189
  61. package/template/.genia/development/workflows/greenfield.md +166 -166
  62. package/template/.genia/development/workflows/planning.md +167 -167
  63. package/template/.genia/development/workflows/qa-loop.md +179 -179
  64. package/template/.genia/development/workflows/spec-pipeline.md +192 -192
  65. package/template/.genia/development/workflows/story-development-cycle.md +252 -252
  66. package/template/.genia/guidelines/clean-code.md +98 -98
  67. package/template/.genia/guidelines/testing.md +176 -176
  68. package/template/.genia/skills/design/canvas-design.md +109 -109
  69. package/template/.genia/skills/design/frontend-design.md +140 -140
  70. package/template/.genia/skills/dev/mcp-builder.md +172 -172
  71. package/template/.genia/skills/dev/webapp-testing.md +150 -150
  72. package/template/.genia/skills/documents/docx.md +153 -153
  73. package/template/.genia/skills/documents/pdf.md +134 -134
  74. package/template/.genia/skills/documents/pptx.md +118 -118
  75. package/template/.genia/skills/documents/xlsx.md +140 -140
  76. package/template/.synapse/agent-analyst +8 -8
  77. package/template/.synapse/agent-architect +8 -8
  78. package/template/.synapse/agent-dev +8 -8
  79. package/template/.synapse/agent-devops +8 -8
  80. package/template/.synapse/agent-pm +8 -8
  81. package/template/.synapse/agent-po +7 -7
  82. package/template/.synapse/agent-qa +8 -8
  83. package/template/.synapse/agent-reviewer +7 -7
  84. package/template/.synapse/agent-sm +7 -7
  85. package/template/.synapse/constitution +7 -7
  86. package/template/.synapse/context +8 -8
  87. package/template/.synapse/global +8 -8
  88. package/template/.synapse/manifest +14 -14
  89. package/template/README.md +53 -53
@@ -1,205 +1,205 @@
1
- # Checklist: Pré-Commit
2
-
3
- > Verificações obrigatórias antes de qualquer commit.
4
- > Executado por @dev. Automatizável via git hooks.
5
-
6
- ---
7
-
8
- ## Objetivo
9
-
10
- Garantir que nenhum commit "sujo" entre no histórico do repositório. Um commit deve ser uma unidade de mudança coesa, funcional e segura. Esta checklist previne problemas que são muito mais custosos de corrigir depois do commit.
11
-
12
- ---
13
-
14
- ## Checklist Completo
15
-
16
- ### Bloco 1 — Qualidade de Código (Obrigatório)
17
-
18
- ```bash
19
- npm run lint
20
- ```
21
-
22
- - [ ] Zero erros de lint
23
- - [ ] Zero warnings de lint (warnings são erros em potencial)
24
- - [ ] Nenhuma regra do ESLint desabilitada com `// eslint-disable` sem comentário explicativo
25
-
26
- ```bash
27
- npm run typecheck
28
- ```
29
-
30
- - [ ] Zero erros TypeScript
31
- - [ ] Nenhum `@ts-ignore` ou `@ts-expect-error` sem explicação no comentário
32
- - [ ] Sem `any` usado como atalho — tipagem explícita ou `unknown`
33
-
34
- ---
35
-
36
- ### Bloco 2 — Testes (Obrigatório)
37
-
38
- ```bash
39
- npm run test
40
- ```
41
-
42
- - [ ] Todos os testes passando
43
- - [ ] Nenhum teste em `skip` ou `xtest` que foi esquecido
44
- - [ ] Nenhum `test.only` esquecido (faria outros testes serem ignorados no CI)
45
-
46
- ```bash
47
- npm run coverage
48
- ```
49
-
50
- - [ ] Coverage >= 80% nas linhas modificadas
51
- - [ ] Se coverage caiu abaixo de 80%: adicionar testes antes de commitar
52
-
53
- ---
54
-
55
- ### Bloco 3 — Segurança (Obrigatório)
56
-
57
- Antes de executar `git add`, verifique todos os arquivos no diff:
58
-
59
- ```bash
60
- git diff --staged
61
- ```
62
-
63
- - [ ] Sem passwords, tokens, API keys ou secrets hardcodados
64
- - [ ] Sem credenciais de banco de dados no código
65
- - [ ] Sem URLs de ambiente hardcodadas (usar variáveis de ambiente)
66
- - [ ] Arquivo `.env` ou `.env.local` NÃO está sendo commitado
67
- - [ ] Sem chaves privadas (`.pem`, `.key`) no staged
68
- - [ ] Sem tokens de autenticação em nenhum arquivo
69
-
70
- **Se encontrar qualquer desses:** remova ANTES de commitar. Secrets no histórico git são permanentes e comprometem a segurança do projeto.
71
-
72
- ---
73
-
74
- ### Bloco 4 — Limpeza de Código (Obrigatório)
75
-
76
- Leia o diff uma vez como se fosse o reviewer:
77
-
78
- - [ ] Sem `console.log`, `console.debug`, `console.warn` de debug esquecidos
79
- - [ ] Sem código comentado desnecessariamente (use `git stash` se quiser salvar)
80
- - [ ] Sem imports não utilizados
81
- - [ ] Sem variáveis declaradas e não utilizadas
82
- - [ ] Sem arquivos de teste manual esquecidos (`test.html`, `debug.js`, etc.)
83
-
84
- ---
85
-
86
- ### Bloco 5 — Conformidade com Padrões (Obrigatório)
87
-
88
- - [ ] Todos os imports novos usam paths absolutos com `@/`
89
- - [ ] Nenhum import relativo com `../../` em arquivos novos
90
- - [ ] Nomenclatura seguindo os padrões do SPEC-TECNICO (camelCase, PascalCase)
91
- - [ ] Arquivos criados nas pastas corretas conforme estrutura definida
92
-
93
- ---
94
-
95
- ### Bloco 6 — Formato do Commit (Obrigatório)
96
-
97
- A mensagem de commit deve seguir o formato:
98
-
99
- ```
100
- tipo(escopo): descrição em imperativo presente
101
-
102
- [corpo opcional com contexto adicional]
103
-
104
- Story: STORY-XXX
105
- Co-Authored-By: GEN.IA OS <genia@bedata.com.br>
106
- ```
107
-
108
- - [ ] Tipo válido: `feat`, `fix`, `refactor`, `test`, `docs`, `style`, `chore`
109
- - [ ] Escopo relevante ao módulo modificado
110
- - [ ] Descrição em imperativo: "adicionar", "corrigir", "implementar" (não "adicionado", "foi corrigido")
111
- - [ ] Descrição em até 72 caracteres na primeira linha
112
- - [ ] Story ID incluído quando aplicável
113
- - [ ] Co-authored-by incluído
114
-
115
- **Exemplos corretos:**
116
- ```
117
- feat(auth): implementar formulário de login com validação de email
118
- fix(api): corrigir erro 500 ao criar usuário sem telefone
119
- test(payment): adicionar casos de teste para falha de pagamento
120
- ```
121
-
122
- **Exemplos incorretos:**
123
- ```
124
- update stuff
125
- fixing bug
126
- WIP
127
- feat: fiz várias coisas no componente de login e também corrigi um bug
128
- ```
129
-
130
- ---
131
-
132
- ### Bloco 7 — Atomicidade (Boas Práticas)
133
-
134
- - [ ] Este commit representa UMA mudança coesa e descritível em uma frase?
135
- - [ ] Se o commit precisaria de "e também" na descrição, considere dividir em 2 commits
136
- - [ ] Arquivos não relacionados a esta mudança NÃO estão em stage
137
- - [ ] Arquivos de configuração pessoal (`.vscode/settings.json` pessoal, etc.) não incluídos
138
-
139
- ---
140
-
141
- ## Verificação Rápida Final
142
-
143
- Execute a sequência completa antes de `git commit`:
144
-
145
- ```bash
146
- npm run lint && npm run typecheck && npm run test && echo "PRÉ-COMMIT OK ✓"
147
- ```
148
-
149
- Se este comando terminar com `PRÉ-COMMIT OK ✓`, o commit pode ser feito.
150
-
151
- Se falhar: corrija o problema identificado antes de commitar.
152
-
153
- ---
154
-
155
- ## Automatização com Git Hooks
156
-
157
- Para automatizar parte desta checklist, adicione o hook em `.git/hooks/pre-commit`:
158
-
159
- ```bash
160
- #!/bin/sh
161
- echo "Executando verificações pré-commit..."
162
-
163
- npm run lint
164
- if [ $? -ne 0 ]; then
165
- echo "BLOQUEADO: Lint falhou. Corrija os erros antes de commitar."
166
- exit 1
167
- fi
168
-
169
- npm run typecheck
170
- if [ $? -ne 0 ]; then
171
- echo "BLOQUEADO: TypeScript com erros. Corrija antes de commitar."
172
- exit 1
173
- fi
174
-
175
- npm run test
176
- if [ $? -ne 0 ]; then
177
- echo "BLOQUEADO: Testes falhando. Corrija antes de commitar."
178
- exit 1
179
- fi
180
-
181
- echo "Verificações pré-commit concluídas. ✓"
182
- exit 0
183
- ```
184
-
185
- Tornar executável:
186
- ```bash
187
- chmod +x .git/hooks/pre-commit
188
- ```
189
-
190
- **Nota:** @devops é responsável por configurar hooks em nível de projeto (usando Husky ou similar) para que se apliquem a todo o time.
191
-
192
- ---
193
-
194
- ## Exceções
195
-
196
- Em situações excepcionais, @architect pode autorizar um commit que não passa em todas as verificações, com:
197
- - Registro documentado da exceção
198
- - Justificativa técnica
199
- - Issue criada para resolução imediata (no mesmo sprint)
200
-
201
- **Exceções nunca são a norma.** Se você se pega precisando de exceções frequentemente, o problema é no código ou no processo.
202
-
203
- ---
204
-
205
- *GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*
1
+ # Checklist: Pré-Commit
2
+
3
+ > Verificações obrigatórias antes de qualquer commit.
4
+ > Executado por @dev. Automatizável via git hooks.
5
+
6
+ ---
7
+
8
+ ## Objetivo
9
+
10
+ Garantir que nenhum commit "sujo" entre no histórico do repositório. Um commit deve ser uma unidade de mudança coesa, funcional e segura. Esta checklist previne problemas que são muito mais custosos de corrigir depois do commit.
11
+
12
+ ---
13
+
14
+ ## Checklist Completo
15
+
16
+ ### Bloco 1 — Qualidade de Código (Obrigatório)
17
+
18
+ ```bash
19
+ npm run lint
20
+ ```
21
+
22
+ - [ ] Zero erros de lint
23
+ - [ ] Zero warnings de lint (warnings são erros em potencial)
24
+ - [ ] Nenhuma regra do ESLint desabilitada com `// eslint-disable` sem comentário explicativo
25
+
26
+ ```bash
27
+ npm run typecheck
28
+ ```
29
+
30
+ - [ ] Zero erros TypeScript
31
+ - [ ] Nenhum `@ts-ignore` ou `@ts-expect-error` sem explicação no comentário
32
+ - [ ] Sem `any` usado como atalho — tipagem explícita ou `unknown`
33
+
34
+ ---
35
+
36
+ ### Bloco 2 — Testes (Obrigatório)
37
+
38
+ ```bash
39
+ npm run test
40
+ ```
41
+
42
+ - [ ] Todos os testes passando
43
+ - [ ] Nenhum teste em `skip` ou `xtest` que foi esquecido
44
+ - [ ] Nenhum `test.only` esquecido (faria outros testes serem ignorados no CI)
45
+
46
+ ```bash
47
+ npm run coverage
48
+ ```
49
+
50
+ - [ ] Coverage >= 80% nas linhas modificadas
51
+ - [ ] Se coverage caiu abaixo de 80%: adicionar testes antes de commitar
52
+
53
+ ---
54
+
55
+ ### Bloco 3 — Segurança (Obrigatório)
56
+
57
+ Antes de executar `git add`, verifique todos os arquivos no diff:
58
+
59
+ ```bash
60
+ git diff --staged
61
+ ```
62
+
63
+ - [ ] Sem passwords, tokens, API keys ou secrets hardcodados
64
+ - [ ] Sem credenciais de banco de dados no código
65
+ - [ ] Sem URLs de ambiente hardcodadas (usar variáveis de ambiente)
66
+ - [ ] Arquivo `.env` ou `.env.local` NÃO está sendo commitado
67
+ - [ ] Sem chaves privadas (`.pem`, `.key`) no staged
68
+ - [ ] Sem tokens de autenticação em nenhum arquivo
69
+
70
+ **Se encontrar qualquer desses:** remova ANTES de commitar. Secrets no histórico git são permanentes e comprometem a segurança do projeto.
71
+
72
+ ---
73
+
74
+ ### Bloco 4 — Limpeza de Código (Obrigatório)
75
+
76
+ Leia o diff uma vez como se fosse o reviewer:
77
+
78
+ - [ ] Sem `console.log`, `console.debug`, `console.warn` de debug esquecidos
79
+ - [ ] Sem código comentado desnecessariamente (use `git stash` se quiser salvar)
80
+ - [ ] Sem imports não utilizados
81
+ - [ ] Sem variáveis declaradas e não utilizadas
82
+ - [ ] Sem arquivos de teste manual esquecidos (`test.html`, `debug.js`, etc.)
83
+
84
+ ---
85
+
86
+ ### Bloco 5 — Conformidade com Padrões (Obrigatório)
87
+
88
+ - [ ] Todos os imports novos usam paths absolutos com `@/`
89
+ - [ ] Nenhum import relativo com `../../` em arquivos novos
90
+ - [ ] Nomenclatura seguindo os padrões do SPEC-TECNICO (camelCase, PascalCase)
91
+ - [ ] Arquivos criados nas pastas corretas conforme estrutura definida
92
+
93
+ ---
94
+
95
+ ### Bloco 6 — Formato do Commit (Obrigatório)
96
+
97
+ A mensagem de commit deve seguir o formato:
98
+
99
+ ```
100
+ tipo(escopo): descrição em imperativo presente
101
+
102
+ [corpo opcional com contexto adicional]
103
+
104
+ Story: STORY-XXX
105
+ Co-Authored-By: GEN.IA OS <genia@bedata.com.br>
106
+ ```
107
+
108
+ - [ ] Tipo válido: `feat`, `fix`, `refactor`, `test`, `docs`, `style`, `chore`
109
+ - [ ] Escopo relevante ao módulo modificado
110
+ - [ ] Descrição em imperativo: "adicionar", "corrigir", "implementar" (não "adicionado", "foi corrigido")
111
+ - [ ] Descrição em até 72 caracteres na primeira linha
112
+ - [ ] Story ID incluído quando aplicável
113
+ - [ ] Co-authored-by incluído
114
+
115
+ **Exemplos corretos:**
116
+ ```
117
+ feat(auth): implementar formulário de login com validação de email
118
+ fix(api): corrigir erro 500 ao criar usuário sem telefone
119
+ test(payment): adicionar casos de teste para falha de pagamento
120
+ ```
121
+
122
+ **Exemplos incorretos:**
123
+ ```
124
+ update stuff
125
+ fixing bug
126
+ WIP
127
+ feat: fiz várias coisas no componente de login e também corrigi um bug
128
+ ```
129
+
130
+ ---
131
+
132
+ ### Bloco 7 — Atomicidade (Boas Práticas)
133
+
134
+ - [ ] Este commit representa UMA mudança coesa e descritível em uma frase?
135
+ - [ ] Se o commit precisaria de "e também" na descrição, considere dividir em 2 commits
136
+ - [ ] Arquivos não relacionados a esta mudança NÃO estão em stage
137
+ - [ ] Arquivos de configuração pessoal (`.vscode/settings.json` pessoal, etc.) não incluídos
138
+
139
+ ---
140
+
141
+ ## Verificação Rápida Final
142
+
143
+ Execute a sequência completa antes de `git commit`:
144
+
145
+ ```bash
146
+ npm run lint && npm run typecheck && npm run test && echo "PRÉ-COMMIT OK ✓"
147
+ ```
148
+
149
+ Se este comando terminar com `PRÉ-COMMIT OK ✓`, o commit pode ser feito.
150
+
151
+ Se falhar: corrija o problema identificado antes de commitar.
152
+
153
+ ---
154
+
155
+ ## Automatização com Git Hooks
156
+
157
+ Para automatizar parte desta checklist, adicione o hook em `.git/hooks/pre-commit`:
158
+
159
+ ```bash
160
+ #!/bin/sh
161
+ echo "Executando verificações pré-commit..."
162
+
163
+ npm run lint
164
+ if [ $? -ne 0 ]; then
165
+ echo "BLOQUEADO: Lint falhou. Corrija os erros antes de commitar."
166
+ exit 1
167
+ fi
168
+
169
+ npm run typecheck
170
+ if [ $? -ne 0 ]; then
171
+ echo "BLOQUEADO: TypeScript com erros. Corrija antes de commitar."
172
+ exit 1
173
+ fi
174
+
175
+ npm run test
176
+ if [ $? -ne 0 ]; then
177
+ echo "BLOQUEADO: Testes falhando. Corrija antes de commitar."
178
+ exit 1
179
+ fi
180
+
181
+ echo "Verificações pré-commit concluídas. ✓"
182
+ exit 0
183
+ ```
184
+
185
+ Tornar executável:
186
+ ```bash
187
+ chmod +x .git/hooks/pre-commit
188
+ ```
189
+
190
+ **Nota:** @devops é responsável por configurar hooks em nível de projeto (usando Husky ou similar) para que se apliquem a todo o time.
191
+
192
+ ---
193
+
194
+ ## Exceções
195
+
196
+ Em situações excepcionais, @architect pode autorizar um commit que não passa em todas as verificações, com:
197
+ - Registro documentado da exceção
198
+ - Justificativa técnica
199
+ - Issue criada para resolução imediata (no mesmo sprint)
200
+
201
+ **Exceções nunca são a norma.** Se você se pega precisando de exceções frequentemente, o problema é no código ou no processo.
202
+
203
+ ---
204
+
205
+ *GEN.IA OS v1.0 — {{TEAM_NAME}} — {{CREATOR_NAME}}*