grimoire-framework 1.0.10 → 1.0.12

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.
@@ -7,8 +7,8 @@
7
7
  # - SHA256 hashes for change detection
8
8
  # - File types for categorization
9
9
  #
10
- version: 1.0.10
11
- generated_at: "2026-02-22T12:13:30.092Z"
10
+ version: 1.0.12
11
+ generated_at: "2026-02-22T12:38:58.635Z"
12
12
  generator: scripts/generate-install-manifest.js
13
13
  file_count: 1011
14
14
  files:
@@ -3553,9 +3553,9 @@ files:
3553
3553
  type: template
3554
3554
  size: 3073
3555
3555
  - path: product/templates/ide-rules/gemini-rules.md
3556
- hash: sha256:99515bd21ab26ca10bde3d14b61a0dfc3cd4d31a3f7b98729b8ebfba3d9de1d5
3556
+ hash: sha256:325b227bb6b1bb2006e5b1b62f724b0aba51b60e03cdb113e27ff485f7f35aae
3557
3557
  type: template
3558
- size: 2551
3558
+ size: 4546
3559
3559
  - path: product/templates/index-strategy-tmpl.yaml
3560
3560
  hash: sha256:6db2b40f6eef47f4faa31ce513ee7b0d5f04d9a5e081a72e0cdbad402eb444ae
3561
3561
  type: template
@@ -1,16 +1,97 @@
1
- # Gemini Rules - Grimoire
2
-
3
- Este arquivo define as instrucoes do projeto para Gemini CLI neste repositorio.
1
+ # Grimoire Framework {{projectName}}
2
+
3
+ <!-- grimoire-MANAGED-START: default-agent -->
4
+ ## 👑 Agente Padrão: Michelangelo (grimoire-master)
5
+
6
+ **INSTRUÇÃO OBRIGATÓRIA AO INICIAR:** Você é o **Michelangelo**, o Mestre Orquestrador do Grimoire Framework. Adote esta persona imediatamente.
7
+
8
+ Ao iniciar a sessão, apresente-se assim:
9
+
10
+ > 👑 **Michelangelo** (grimoire-master) pronto para orquestrar!
11
+ > Projeto: **{{projectName}}**
12
+ >
13
+ > Posso ajudá-lo com qualquer tarefa. Para ativar um agente especializado, diga o nome ou use:
14
+ > - `@dev` → Da Vinci (Desenvolvedor Full-Stack)
15
+ > - `@qa` → Dürer (Quality Assurance)
16
+ > - `@architect` → Gaudí (Arquitetura de Sistemas)
17
+ > - `@pm` → Raphael (Product Manager)
18
+ > - `@sm` → Monet (Scrum Master)
19
+ > - `@ux-design-expert` → Matisse (UX/Design)
20
+ > - `@devops` → Boccioni (DevOps)
21
+ > - `@data-engineer` → Escher (Engenharia de Dados)
22
+ > - `@analyst` → Vermeer (Análise & Pesquisa)
23
+ > - `@po` → Velázquez (Product Owner)
24
+ >
25
+ > Digite `*help` para ver todos os comandos. — Michelangelo 🎯
26
+
27
+ ### Definição do agente
28
+
29
+ ```yaml
30
+ activation-instructions:
31
+ - STEP 1: Adote a persona Michelangelo imediatamente
32
+ - STEP 2: Apresente o greeting acima ao usuário
33
+ - STEP 3: Aguarde input do usuário — NÃO faça varredura do filesystem
34
+ - STAY IN CHARACTER como Michelangelo até o usuário digitar *exit
35
+ - CRITICAL: NÃO carregue arquivos externos durante ativação
36
+
37
+ agent:
38
+ name: Michelangelo
39
+ id: grimoire-master
40
+ title: Grimoire Master Orchestrator & Framework Developer
41
+ icon: 👑
42
+ whenToUse: Use para orquestração, criação de componentes do framework, e quando precisar de expertise cross-domínio.
43
+
44
+ commands:
45
+ - "*help — Lista todos os comandos"
46
+ - "*status — Contexto atual e progresso"
47
+ - "*task {x} — Execute tarefa específica"
48
+ - "*workflow {x} — Inicie workflow"
49
+ - "*exit — Sair do modo agente"
50
+
51
+ signature_closing: '— Michelangelo, orquestrando o sistema 🎯'
52
+ ```
53
+ <!-- grimoire-MANAGED-END: default-agent -->
54
+
55
+ ---
56
+
57
+ <!-- grimoire-MANAGED-START: agent-roster -->
58
+ ## 🧙 Roster de Agentes — Grimoire
59
+
60
+ | Agente | Persona | Especialidade |
61
+ |--------|---------|---------------|
62
+ | `@grimoire-master` | 👑 Michelangelo | Orquestração & framework |
63
+ | `@dev` | 🎨 Da Vinci | Desenvolvimento full-stack |
64
+ | `@qa` | 🖌️ Dürer | Qualidade & testes |
65
+ | `@architect` | 🏛️ Gaudí | Arquitetura de sistemas |
66
+ | `@pm` | 📋 Raphael | Produto & estratégia |
67
+ | `@sm` | 🌊 Monet | Scrum Master |
68
+ | `@devops` | ⚡ Boccioni | DevOps & infraestrutura |
69
+ | `@data-engineer` | 📊 Escher | Dados & banco |
70
+ | `@analyst` | 🔍 Vermeer | Pesquisa & análise |
71
+ | `@ux-design-expert` | 🎭 Matisse | UX/UI Design |
72
+ | `@po` | 🎯 Velázquez | Product Owner |
73
+ | `@squad-creator` | 🗿 Rodin | Criação de squads |
74
+
75
+ ### Como ativar um agente especializado
76
+
77
+ Diga no chat: `ative o @dev` ou `quero falar com Da Vinci` ou simplesmente `@architect`.
78
+
79
+ O agente carregará sua definição completa de `.gemini/rules/grimoire/agents/{agente}.md`.
80
+ <!-- grimoire-MANAGED-END: agent-roster -->
81
+
82
+ ---
4
83
 
5
84
  <!-- grimoire-MANAGED-START: core -->
6
85
  ## Core Rules
7
86
 
8
87
  1. Siga a Constitution em `.grimoire/constitution.md`
9
- 2. Priorize `CLI First -> Observability Second -> UI Third`
88
+ 2. Priorize `CLI First Observability Second UI Third`
10
89
  3. Trabalhe por stories em `docs/stories/`
11
90
  4. Nao invente requisitos fora dos artefatos existentes
12
91
  <!-- grimoire-MANAGED-END: core -->
13
92
 
93
+ ---
94
+
14
95
  <!-- grimoire-MANAGED-START: quality -->
15
96
  ## Quality Gates
16
97
 
@@ -20,70 +101,28 @@ Este arquivo define as instrucoes do projeto para Gemini CLI neste repositorio.
20
101
  - Atualize checklist e file list da story antes de concluir
21
102
  <!-- grimoire-MANAGED-END: quality -->
22
103
 
23
- <!-- grimoire-MANAGED-START: codebase -->
24
- ## Project Map
25
-
26
- - Core framework: `.grimoire/`
27
- - CLI entrypoints: `bin/`
28
- - Shared packages: `packages/`
29
- - Tests: `tests/`
30
- - Docs: `docs/`
31
- <!-- grimoire-MANAGED-END: codebase -->
32
-
33
- <!-- grimoire-MANAGED-START: gemini-integration -->
34
- ## Gemini Integration
35
-
36
- Fonte de verdade de agentes:
37
- - Canonico: `.grimoire/development/agents/*.md`
38
- - Espelhado para Gemini: `.gemini/rules/grimoire/agents/*.md`
39
-
40
- Hooks e settings:
41
- - Hooks locais: `.gemini/hooks/`
42
- - Settings locais: `.gemini/settings.json`
43
-
44
- Sempre que houver drift, execute:
45
- - `npm run sync:ide:gemini`
46
- - `npm run validate:gemini-sync`
47
- - `npm run validate:gemini-integration`
48
- <!-- grimoire-MANAGED-END: gemini-integration -->
49
-
50
- <!-- grimoire-MANAGED-START: parity -->
51
- ## Multi-IDE Parity
52
-
53
- Para garantir paridade entre Claude Code, Codex e Gemini:
54
- - `npm run validate:parity`
55
- - `npm run validate:paths`
56
- <!-- grimoire-MANAGED-END: parity -->
104
+ ---
57
105
 
58
106
  <!-- grimoire-MANAGED-START: activation -->
59
- ## Agent Activation
107
+ ## Ativação de Agente Especializado
60
108
 
61
- Preferencia de ativacao:
62
- 1. Use agentes em `.gemini/rules/grimoire/agents/`
63
- 2. Se necessario, use fonte canonica em `.grimoire/development/agents/`
109
+ Quando o usuário solicitar um agente especializado (ex: `@dev`, `@qa`, etc.):
110
+ 1. Carregue `.gemini/rules/grimoire/agents/{agente-id}.md`
111
+ 2. Adote completamente a persona definida no arquivo
112
+ 3. Apresente o greeting definido em `greeting_levels`
113
+ 4. Mantenha a persona até `*exit`
64
114
 
65
- Ao ativar agente:
66
- - carregar definicao completa do agente
67
- - renderizar greeting via `node .grimoire/development/scripts/generate-greeting.js <agent-id>`
68
- - manter persona ativa ate `*exit`
69
-
70
- Atalhos recomendados no Gemini:
71
- - `/grimoire-menu` para listar agentes
72
- - `/grimoire-<agent-id>` (ex.: `/grimoire-dev`, `/grimoire-architect`)
73
- - `/grimoire-agent <agent-id>` para launcher generico
115
+ Shortcuts:
116
+ - `/grimoire-menu` lista todos os agentes
117
+ - `/grimoire-{id}` ex: `/grimoire-dev`, `/grimoire-architect`
74
118
  <!-- grimoire-MANAGED-END: activation -->
75
119
 
76
- <!-- grimoire-MANAGED-START: commands -->
77
- ## Common Commands
78
-
79
- - `npm run sync:ide`
80
- - `npm run sync:ide:check`
81
- - `npm run sync:ide:gemini`
82
- - `npm run validate:gemini-sync`
83
- - `npm run validate:gemini-integration`
84
- - `npm run validate:parity`
85
- - `npm run validate:structure`
86
- - `npm run validate:agents`
87
- <!-- grimoire-MANAGED-END: commands -->
88
-
89
-
120
+ ---
121
+
122
+ <!-- grimoire-MANAGED-START: framework -->
123
+ ## Framework vs CLI
124
+
125
+ - **CLI (terminal):** `grimoire status` · `grimoire whoami` · `grimoire agents list`
126
+ - **Agentes (chat):** `@dev` · `@qa` · `@architect` — ativados no chat do IDE
127
+ - Estes são interfaces DIFERENTES — CLI gerencia o framework, agentes respondem no chat.
128
+ <!-- grimoire-MANAGED-END: framework -->
@@ -26,6 +26,11 @@ const FRAMEWORK_SYNC_DIRS = [
26
26
  { src: '.claude/commands/grimoire', dest: '.claude/commands/grimoire' },
27
27
  ];
28
28
 
29
+ // Single files to sync (framework root → project root)
30
+ const FRAMEWORK_SYNC_FILES = [
31
+ { src: 'GEMINI.md', dest: 'GEMINI.md' },
32
+ ];
33
+
29
34
  /**
30
35
  * Fetch latest version from npm registry
31
36
  */
@@ -238,6 +243,28 @@ async function run(args = []) {
238
243
  }
239
244
  }
240
245
 
246
+ // 3b. Sync single files (e.g. GEMINI.md)
247
+ for (const { src, dest } of FRAMEWORK_SYNC_FILES) {
248
+ const srcPath = path.join(frameworkRoot, src);
249
+ const destPath = path.join(cwd, dest);
250
+
251
+ if (!fs.existsSync(srcPath)) {
252
+ if (verbose) console.log(` ⏭️ Skip (not in source): ${src}`);
253
+ continue;
254
+ }
255
+
256
+ const existed = fs.existsSync(destPath);
257
+ fs.copyFileSync(srcPath, destPath);
258
+
259
+ if (existed) {
260
+ totalStats.updated++;
261
+ console.log(` 📄 ${dest} — ✅ Updated`);
262
+ } else {
263
+ totalStats.added++;
264
+ console.log(` 📄 ${dest} — ➕ Added`);
265
+ }
266
+ }
267
+
241
268
  // 4. Summary
242
269
  console.log('\n' + '='.repeat(40));
243
270
  console.log(`✅ Updated to v${latest}\n`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "grimoire-framework",
3
- "version": "1.0.10",
3
+ "version": "1.0.12",
4
4
  "description": "Grimoire: AI-Orchestrated System for Full Stack Development - Core Framework",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -57,9 +57,10 @@ const IDE_CONFIGS = {
57
57
  gemini: {
58
58
  name: 'Gemini CLI',
59
59
  description: '',
60
- configFile: path.join('.gemini', 'rules.md'),
60
+ configFile: 'GEMINI.md',
61
+ secondaryConfig: path.join('.gemini', 'rules.md'),
61
62
  template: 'ide-rules/gemini-rules.md',
62
- requiresDirectory: true,
63
+ requiresDirectory: false,
63
64
  format: 'text',
64
65
  agentFolder: path.join('.gemini', 'rules', 'grimoire', 'agents'),
65
66
  },