create-genia-os 2.0.0 → 2.1.1

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 (88) hide show
  1. package/README.md +154 -0
  2. package/bin/index.js +240 -0
  3. package/package.json +40 -42
  4. package/template/.claude/CLAUDE.md +215 -0
  5. package/template/.claude/agent-memory/analyst/MEMORY.md +20 -0
  6. package/template/.claude/agent-memory/architect/MEMORY.md +20 -0
  7. package/template/.claude/agent-memory/dev/MEMORY.md +20 -0
  8. package/template/.claude/agent-memory/devops/MEMORY.md +20 -0
  9. package/template/.claude/agent-memory/pm/MEMORY.md +20 -0
  10. package/template/.claude/agent-memory/po/MEMORY.md +20 -0
  11. package/template/.claude/agent-memory/qa/MEMORY.md +20 -0
  12. package/template/.claude/agent-memory/reviewer/MEMORY.md +20 -0
  13. package/template/.claude/agent-memory/sm/MEMORY.md +20 -0
  14. package/template/.claude/hooks/enforce-git-push-authority.py +70 -0
  15. package/template/.claude/hooks/precompact-session-digest.cjs +87 -0
  16. package/template/.claude/hooks/sql-governance.py +65 -0
  17. package/template/.claude/hooks/synapse-engine.cjs +122 -0
  18. package/template/.claude/hooks/write-path-validation.py +59 -0
  19. package/template/.claude/rules/agent-authority.md +39 -0
  20. package/template/.claude/rules/agent-handoff.md +71 -0
  21. package/template/.claude/rules/agent-memory.md +61 -0
  22. package/template/.claude/rules/ids-principles.md +52 -0
  23. package/template/.claude/rules/mcp-usage.md +49 -0
  24. package/template/.claude/rules/story-lifecycle.md +87 -0
  25. package/template/.claude/rules/workflow-execution.md +68 -0
  26. package/template/.claude/settings.json +58 -0
  27. package/template/.claude/settings.local.json +14 -0
  28. package/template/.genia/CONSTITUTION.md +129 -0
  29. package/template/.genia/contexts/api-patterns.md +134 -0
  30. package/template/.genia/contexts/nextjs-react.md +210 -0
  31. package/template/.genia/contexts/projeto.md +18 -0
  32. package/template/.genia/contexts/supabase.md +152 -0
  33. package/template/.genia/contexts/whatsapp-cloud.md +176 -0
  34. package/template/.genia/core-config.yaml +192 -0
  35. package/template/.genia/development/agents/analyst.md +138 -0
  36. package/template/.genia/development/agents/architect.md +171 -0
  37. package/template/.genia/development/agents/dev.md +160 -0
  38. package/template/.genia/development/agents/devops.md +200 -0
  39. package/template/.genia/development/agents/pm.md +142 -0
  40. package/template/.genia/development/agents/po.md +165 -0
  41. package/template/.genia/development/agents/qa.md +183 -0
  42. package/template/.genia/development/agents/reviewer.md +198 -0
  43. package/template/.genia/development/agents/sm.md +230 -0
  44. package/template/.genia/development/checklists/architecture-review.md +189 -0
  45. package/template/.genia/development/checklists/pre-commit.md +205 -0
  46. package/template/.genia/development/checklists/pre-deploy.md +230 -0
  47. package/template/.genia/development/checklists/qa-gate.md +216 -0
  48. package/template/.genia/development/checklists/story-dod.md +155 -0
  49. package/template/.genia/development/tasks/code-review.md +197 -0
  50. package/template/.genia/development/tasks/criar-prd.md +170 -0
  51. package/template/.genia/development/tasks/criar-spec.md +188 -0
  52. package/template/.genia/development/tasks/criar-story.md +185 -0
  53. package/template/.genia/development/tasks/debug-sistematico.md +230 -0
  54. package/template/.genia/development/tasks/dev-implement.md +199 -0
  55. package/template/.genia/development/tasks/qa-review.md +224 -0
  56. package/template/.genia/development/workflows/brownfield.md +178 -0
  57. package/template/.genia/development/workflows/delivery.md +208 -0
  58. package/template/.genia/development/workflows/development.md +189 -0
  59. package/template/.genia/development/workflows/greenfield.md +166 -0
  60. package/template/.genia/development/workflows/planning.md +167 -0
  61. package/template/.genia/development/workflows/qa-loop.md +179 -0
  62. package/template/.genia/development/workflows/spec-pipeline.md +192 -0
  63. package/template/.genia/development/workflows/story-development-cycle.md +252 -0
  64. package/template/.genia/guidelines/clean-code.md +98 -0
  65. package/template/.genia/guidelines/testing.md +176 -0
  66. package/template/.genia/skills/design/canvas-design.md +109 -0
  67. package/template/.genia/skills/design/frontend-design.md +140 -0
  68. package/template/.genia/skills/dev/mcp-builder.md +172 -0
  69. package/template/.genia/skills/dev/webapp-testing.md +150 -0
  70. package/template/.genia/skills/documents/docx.md +153 -0
  71. package/template/.genia/skills/documents/pdf.md +134 -0
  72. package/template/.genia/skills/documents/pptx.md +118 -0
  73. package/template/.genia/skills/documents/xlsx.md +140 -0
  74. package/template/.synapse/agent-analyst +8 -0
  75. package/template/.synapse/agent-architect +8 -0
  76. package/template/.synapse/agent-dev +8 -0
  77. package/template/.synapse/agent-devops +8 -0
  78. package/template/.synapse/agent-pm +8 -0
  79. package/template/.synapse/agent-po +7 -0
  80. package/template/.synapse/agent-qa +8 -0
  81. package/template/.synapse/agent-reviewer +7 -0
  82. package/template/.synapse/agent-sm +7 -0
  83. package/template/.synapse/constitution +7 -0
  84. package/template/.synapse/context +8 -0
  85. package/template/.synapse/global +8 -0
  86. package/template/.synapse/manifest +14 -0
  87. package/template/README.md +53 -0
  88. package/bin/create.js +0 -181
package/bin/create.js DELETED
@@ -1,181 +0,0 @@
1
- #!/usr/bin/env node
2
- 'use strict';
3
-
4
- /**
5
- * create-genia-os v2.0.0
6
- * Instala o GEN.IA OS diretamente do repositório oficial.
7
- * Cross-platform: Windows, macOS, Linux.
8
- * Uso: npx create-genia-os [pasta-destino]
9
- */
10
-
11
- const { execSync } = require('child_process');
12
- const path = require('path');
13
- const os = require('os');
14
- const fse = require('fs-extra');
15
-
16
- // ─── Cores no terminal ───────────────────────────────────────────────────────
17
- const c = {
18
- reset: '\x1b[0m',
19
- bold: '\x1b[1m',
20
- cyan: '\x1b[36m',
21
- green: '\x1b[32m',
22
- yellow: '\x1b[33m',
23
- red: '\x1b[31m',
24
- gray: '\x1b[90m',
25
- };
26
-
27
- const ok = (msg) => console.log(`${c.green}✅ ${msg}${c.reset}`);
28
- const info = (msg) => console.log(`${c.cyan} ${msg}${c.reset}`);
29
- const fail = (msg) => { console.error(`${c.red}❌ ${msg}${c.reset}`); process.exit(1); };
30
- const warn = (msg) => console.log(`${c.yellow}⚠ ${msg}${c.reset}`);
31
-
32
- // ─── Banner ──────────────────────────────────────────────────────────────────
33
- function banner() {
34
- console.log('');
35
- console.log(`${c.cyan}${c.bold}╔════════════════════════════════════════════╗${c.reset}`);
36
- console.log(`${c.cyan}${c.bold}║ GEN.IA OS v2.0 — Instalador Oficial ║${c.reset}`);
37
- console.log(`${c.cyan}${c.bold}║ 9 agentes • Synapse Engine • Governança ║${c.reset}`);
38
- console.log(`${c.cyan}${c.bold}╚════════════════════════════════════════════╝${c.reset}`);
39
- console.log('');
40
- }
41
-
42
- // ─── Verificar git disponível ────────────────────────────────────────────────
43
- function checkGit() {
44
- try {
45
- execSync('git --version', { stdio: 'ignore' });
46
- } catch {
47
- fail('git não encontrado. Instale o Git e tente novamente: https://git-scm.com');
48
- }
49
- }
50
-
51
- // ─── Clonar repositório ──────────────────────────────────────────────────────
52
- function cloneRepo(repo, tempDir) {
53
- info(`Clonando ${repo}...`);
54
- if (fse.existsSync(tempDir)) {
55
- fse.removeSync(tempDir);
56
- }
57
- try {
58
- execSync(`git clone --depth=1 ${repo} "${tempDir}"`, { stdio: 'inherit' });
59
- } catch {
60
- fail(`Falha ao clonar ${repo}. Verifique sua conexão e se o repositório é público.`);
61
- }
62
- }
63
-
64
- // ─── Copiar pastas do GEN.IA OS ──────────────────────────────────────────────
65
- function copyFolders(tempDir, destDir) {
66
- const folders = ['.claude', '.genia', '.synapse', '.business'];
67
- let copied = 0;
68
-
69
- for (const folder of folders) {
70
- const src = path.join(tempDir, folder);
71
- const dst = path.join(destDir, folder);
72
-
73
- if (fse.existsSync(src)) {
74
- fse.copySync(src, dst, { overwrite: true });
75
- ok(`${folder} instalado`);
76
- copied++;
77
- } else {
78
- warn(`${folder} não encontrado no repositório — ignorando`);
79
- }
80
- }
81
-
82
- if (copied === 0) {
83
- fail('Nenhuma pasta do GEN.IA OS encontrada. Repositório pode estar incorreto.');
84
- }
85
- }
86
-
87
- // ─── Verificar instalação ────────────────────────────────────────────────────
88
- function verify(destDir) {
89
- const claudeMd = path.join(destDir, '.claude', 'CLAUDE.md');
90
-
91
- if (!fse.existsSync(claudeMd)) {
92
- fail('Instalação falhou: .claude/CLAUDE.md não encontrado.');
93
- }
94
-
95
- const content = fse.readFileSync(claudeMd, 'utf-8');
96
- const agentes = ['Cypher', 'Morpheus', 'Trinity', 'Neo', 'Tank', 'Oracle', 'Mouse', 'Smith', 'Switch'];
97
- const found = agentes.filter((a) => content.includes(a));
98
-
99
- if (found.length === agentes.length) {
100
- ok('GEN.IA OS v2.0 instalado com sucesso!');
101
- ok('Agentes verificados: ' + found.join(', '));
102
- } else {
103
- const missing = agentes.filter((a) => !content.includes(a));
104
- fail(`Agentes ausentes no CLAUDE.md: ${missing.join(', ')}. Reinstale.`);
105
- }
106
- }
107
-
108
- // ─── Resumo final ────────────────────────────────────────────────────────────
109
- function summary(destDir) {
110
- console.log('');
111
- console.log(`${c.green}${c.bold}╔════════════════════════════════════════════╗${c.reset}`);
112
- console.log(`${c.green}${c.bold}║ GEN.IA OS pronto para uso! 🚀 ║${c.reset}`);
113
- console.log(`${c.green}${c.bold}╚════════════════════════════════════════════╝${c.reset}`);
114
- console.log('');
115
- console.log(`${c.bold}Próximos passos:${c.reset}`);
116
- console.log('');
117
- console.log(` ${c.cyan}1.${c.reset} Abra a pasta no VS Code com Claude Code:`);
118
- console.log(` ${c.gray}code "${destDir}"${c.reset}`);
119
- console.log('');
120
- console.log(` ${c.cyan}2.${c.reset} Preencha o contexto de negócio:`);
121
- console.log(` ${c.gray}Edite .business/OWNER.md com suas informações${c.reset}`);
122
- console.log('');
123
- console.log(` ${c.cyan}3.${c.reset} Inicie uma conversa e chame um agente:`);
124
- console.log(` ${c.gray}"@sm crie a primeira story do projeto"${c.reset}`);
125
- console.log('');
126
- console.log(`${c.yellow}${c.bold}NOTA:${c.reset} Copie o .business/ do seu GENIA-SQUAD-OS para`);
127
- console.log(`este projeto para que os agentes conheçam o contexto`);
128
- console.log('de negócio (OWNER.md, PRIORIDADES.md, etc.).');
129
- console.log('');
130
- console.log(`${c.gray}Documentação: https://github.com/elidyizzy/GENIA-SQUAD-OS${c.reset}`);
131
- console.log('');
132
- }
133
-
134
- // ─── Main ────────────────────────────────────────────────────────────────────
135
- async function main() {
136
- banner();
137
-
138
- const REPO = 'https://github.com/elidyizzy/GENIA-SQUAD-OS';
139
- const TEMP = path.join(os.tmpdir(), `genia-os-tmp-${Date.now()}`);
140
-
141
- const targetArg = process.argv[2] || '.';
142
- const dest = targetArg === '.' ? process.cwd() : path.resolve(process.cwd(), targetArg);
143
-
144
- // Criar destino se necessário
145
- if (targetArg !== '.') {
146
- fse.mkdirpSync(dest);
147
- info(`Instalando em: ${dest}`);
148
- } else {
149
- info(`Instalando no diretório atual: ${dest}`);
150
- }
151
-
152
- console.log('');
153
- console.log(`🚀 GEN.IA OS v2.0 — instalando do repositório oficial...`);
154
- console.log('');
155
-
156
- checkGit();
157
- cloneRepo(REPO, TEMP);
158
-
159
- console.log('');
160
- info('Copiando estrutura do GEN.IA OS...');
161
- console.log('');
162
-
163
- copyFolders(TEMP, dest);
164
-
165
- // Limpar temp
166
- try {
167
- fse.removeSync(TEMP);
168
- } catch {
169
- warn(`Não foi possível remover pasta temporária: ${TEMP}`);
170
- }
171
-
172
- console.log('');
173
- info('Verificando integridade da instalação...');
174
- verify(dest);
175
- summary(dest);
176
- }
177
-
178
- main().catch((e) => {
179
- console.error(`\n${c.red}Erro inesperado:${c.reset}`, e.message);
180
- process.exit(1);
181
- });