context-first-cli 2.0.2 → 2.0.4

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.
@@ -1,209 +1,182 @@
1
1
  # Refinamento de Requisitos
2
2
 
3
- Este comando refina uma issue coletada, transformando-a em requisitos claros e validados.
3
+ Você é um especialista em produto encarregado de ajudar a refinar requisitos para o projeto.
4
4
 
5
5
  ## ⚠️ IMPORTANTE: Este Comando NÃO Implementa Código
6
6
 
7
- **Este comando é APENAS para refinamento de requisitos:**
8
- - ✅ Refinar e validar requisitos
9
- - ✅ Atualizar issue no task manager via MCP
10
- - ✅ **LER** arquivos dos repositórios principais (read-only)
7
+ **Este comando é APENAS para planejamento e documentação:**
8
+ - ✅ Validar requisitos contra metaspecs
9
+ - ✅ Criar especificação refinada
10
+ - ✅ Salvar documentação em `.sessions/`
11
+ - ✅ Atualizar issue no task manager
11
12
  - ❌ **NÃO implementar código**
12
13
  - ❌ **NÃO fazer edits em arquivos de código**
13
- - ❌ **NÃO fazer checkout de branches nos repositórios principais**
14
- - ❌ **NÃO fazer commits**
14
+ - ❌ **NÃO executar testes ou deploy**
15
15
 
16
- **Próximo passo**: `/spec [ISSUE-ID]` para criar a especificação completa (PRD).
16
+ **Próximo passo**: `/spec [ISSUE-ID]` para criar PRD completo baseado nos requisitos refinados.
17
17
 
18
18
  ---
19
19
 
20
- ## 📋 Pré-requisitos
20
+ ## Objetivo
21
21
 
22
- - Issue coletada via `/collect`
23
- - Contexto do projeto será carregado automaticamente (veja seção "Carregar MetaSpecs" abaixo)
22
+ Transformar um requisito inicial em especificação refinada e validada, pronta para se tornar PRD completo.
24
23
 
25
- ## 🎯 Objetivo
24
+ ## Processo
26
25
 
27
- Refinar a issue coletada, esclarecendo:
28
- - Escopo exato (o que entra e o que não entra)
29
- - Critérios de aceitação claros
30
- - Impacto em cada repositório
31
- - Dependências técnicas
32
- - Riscos e restrições
26
+ ### 1. Fase de Esclarecimento
33
27
 
34
- ## 📝 Processo de Refinamento
28
+ Leia o requisito inicial e faça perguntas para alcançar clareza total sobre:
29
+ - **Objetivo**: Por que construir isso?
30
+ - **Valor de Negócio**: Qual métrica/persona impacta?
31
+ - **Escopo**: O que inclui e o que NÃO inclui?
32
+ - **Interações**: Quais features/componentes existentes são afetados?
35
33
 
36
- ### 1. Carregar Issue
34
+ Continue fazendo perguntas até ter entendimento completo.
37
35
 
38
- **PRIORIDADE 1: Usar MCP (Model Context Protocol)**
36
+ ### 2. Validação Contra Metaspecs
39
37
 
40
- - Leia `ai.properties.md` do orchestrator para identificar o `task_management_system`
41
- - Use o MCP apropriado para buscar a issue:
42
- - `task_management_system=jira`: Use MCP do Jira
43
- - `task_management_system=linear`: Use MCP do Linear
44
- - `task_management_system=github`: Use MCP do GitHub
45
- - Carregue todos os dados da issue (título, descrição, labels, etc.)
38
+ **IMPORTANTE**: Primeiro leia `ai.properties.md` para obter o `base_path`. Os índices JÁ devem estar em contexto (você rodou `/warm-up`). Consulte os índices e leia APENAS os documentos relevantes para validar o requisito.
46
39
 
47
- **FALLBACK: Se MCP não estiver disponível ou falhar**
40
+ **Processo de Validação**:
48
41
 
49
- - Leia `./.sessions/<ISSUE-ID>/collect.md`
50
- - Se o arquivo não existir, informe o erro ao usuário
42
+ 1. **Consulte os índices carregados** pelo `/warm-up`:
43
+ - Leia `context-manifest.json` para encontrar o repositório com `role: "metaspecs"`
44
+ - Obtenha o `id` desse repositório (ex: "my-project-metaspecs")
45
+ - Leia `ai.properties.md` para obter o `base_path`
46
+ - O repositório de metaspecs está em: `{base_path}/{metaspecs-id}/`
47
+ - Consulte `{base_path}/{metaspecs-id}/index.md` - Visão geral do projeto
48
+ - Consulte índices específicos (ex: `specs/business/index.md`, `specs/technical/index.md`)
51
49
 
52
- ### 2. Carregar MetaSpecs
50
+ 2. **Identifique documentos relevantes** para este requisito específico:
51
+ - Em `specs/business/`: Quais documentos de negócio são relevantes?
52
+ - Em `specs/technical/`: Quais documentos técnicos são relevantes?
53
53
 
54
- **Localizar MetaSpecs automaticamente**:
55
- 1. Leia `context-manifest.json` do orchestrator
56
- 2. Encontre o repositório com `"role": "metaspecs"`
57
- 3. Leia `ai.properties.md` para obter o `base_path`
58
- 4. O metaspecs está em: `{base_path}/{metaspecs-repo-id}/`
59
- 5. Leia os arquivos `index.md` relevantes para entender:
60
- - Arquitetura do sistema
61
- - Padrões de design
62
- - Restrições técnicas
63
- - Convenções do projeto
54
+ 3. **Leia APENAS os documentos relevantes** identificados (não leia tudo!)
64
55
 
65
- ### 3. Análise de Escopo
56
+ 4. **Valide o requisito** contra as metaspecs lidas:
57
+ - ✅ Alinhamento com estratégia e visão de produto
58
+ - ✅ Atende necessidades das personas corretas
59
+ - ✅ Compatível com stack tecnológica aprovada
60
+ - ✅ Respeita decisões arquiteturais (ADRs)
61
+ - ✅ Segue regras de negócio existentes
62
+ - ⚠️ Identifique conflitos ou violações
66
63
 
67
- Defina claramente:
64
+ **Se identificar violações**: 🛑 **PARE** e peça esclarecimento ao usuário antes de prosseguir (Princípio Jidoka).
68
65
 
69
- **O que ESTÁ no escopo**:
70
- - Funcionalidades específicas a serem implementadas
71
- - Repositórios que serão modificados
72
- - Integrações necessárias
66
+ ### 3. Fase de Resumo e Aprovação
73
67
 
74
- **O que NÃO ESTÁ no escopo**:
75
- - Funcionalidades relacionadas mas que ficam para depois
76
- - Otimizações futuras
77
- - Features "nice to have"
68
+ Uma vez que tenha coletado informações suficientes e validado contra metaspecs, apresente um resumo estruturado com:
69
+ - **Feature**: Nome da funcionalidade
70
+ - **Objetivo**: Por que construir (1-2 frases)
71
+ - **Valor de Negócio**: Métrica, persona, fase do roadmap (consulte metaspecs)
72
+ - **Escopo**: O que INCLUI e o que NÃO INCLUI
73
+ - **Componentes Afetados**: Lista baseada na arquitetura atual (consulte metaspecs técnicas)
74
+ - **Validação contra Metaspecs**: ✅ Aprovado / ⚠️ Atenção necessária
78
75
 
79
- ### 4. Critérios de Aceitação
76
+ Peça aprovação do usuário e incorpore feedback se necessário.
80
77
 
81
- Defina critérios mensuráveis e testáveis:
78
+ **Dica**: Você pode pesquisar no código-base ou internet antes de finalizar, se necessário.
82
79
 
83
- ```markdown
84
- ## Critérios de Aceitação
80
+ ### 4. Salvamento dos Requisitos Refinados
85
81
 
86
- ### Funcional
87
- - [ ] [Critério 1 - específico e testável]
88
- - [ ] [Critério 2 - específico e testável]
82
+ Uma vez que o usuário aprove, salve os requisitos:
89
83
 
90
- ### Técnico
91
- - [ ] [Critério técnico 1]
92
- - [ ] [Critério técnico 2]
84
+ **IMPORTANTE**: Sempre crie backup local E atualize o task manager (se configurado).
93
85
 
94
- ### Qualidade
95
- - [ ] Testes unitários implementados
96
- - [ ] Testes de integração implementados
97
- - [ ] Documentação atualizada
98
- ```
86
+ **Processo de Salvamento**:
99
87
 
100
- ### 5. Análise de Impacto
88
+ 1. **SEMPRE criar backup local primeiro**:
89
+ - Crie arquivo completo em `./.sessions/<ISSUE-ID>/refined.md` (ex: `./.sessions/FIN-5/refined.md`)
90
+ - Onde `<ISSUE-ID>` é o ID da issue (ex: FIN-5, FIN-123)
91
+ - Inclua TODOS os detalhes do refinamento (backup completo)
101
92
 
102
- Para cada repositório afetado:
93
+ 2. **Se task manager estiver configurado** (leia `ai.properties.md` para identificar `task_management_system`):
94
+ - Identifique a ferramenta MCP do task manager
95
+ - **Atualize o BODY (description) da issue** com versão CONCISA dos requisitos refinados
96
+ - Para Jira: Use MCP do Jira com campo `description`
97
+ - Para Linear: Use MCP do Linear com campo `description`
98
+ - Para GitHub: Use MCP do GitHub com campo `body`
99
+ - **IMPORTANTE**: Crie versão RESUMIDA (máx 3000 palavras) para evitar problemas com limites de API
100
+ - Inclua link para arquivo local no final: "Documento completo: `.sessions/<ISSUE-ID>/refined.md`"
101
+ - **SEMPRE sobrescrever** o body existente (não adicionar ao final)
103
102
 
104
- ```markdown
105
- ## Impacto por Repositório
106
-
107
- ### <repo-1>
108
- - **Componentes afetados**: [lista]
109
- - **Tipo de mudança**: Nova feature / Modificação / Refatoração
110
- - **Complexidade estimada**: Baixa / Média / Alta
111
- - **Riscos**: [riscos específicos]
112
-
113
- ### <repo-2>
114
- - **Componentes afetados**: [lista]
115
- - **Tipo de mudança**: Nova feature / Modificação / Refatoração
116
- - **Complexidade estimada**: Baixa / Média / Alta
117
- - **Riscos**: [riscos específicos]
118
- ```
103
+ **Observação**:
104
+ - O backup local SEMPRE está salvo e completo
105
+ - Se houver erro de API, verifique manualmente se a issue foi atualizada no task manager
119
106
 
120
- ### 6. Dependências e Restrições
107
+ **Template de Saída**:
121
108
 
122
- Identifique:
123
- - Dependências entre repositórios
124
- - Dependências de outras features/issues
125
- - Restrições técnicas
126
- - Restrições de negócio
127
- - Bloqueadores conhecidos
109
+ **IMPORTANTE**: O template padrão para requisitos refinados pode estar documentado no repositório de metaspecs. Consulte `{base_path}/{metaspecs-id}/specs/refined/` ou similar.
128
110
 
129
- ### 7. Estimativa Inicial
111
+ **Template COMPLETO** (para backup local `.sessions/<ISSUE-ID>/refined.md`):
112
+ - **Metadados**: Issue, ID, Task Manager, Projeto, Data, Sprint, Prioridade
113
+ - **🎯 POR QUE**: Razões, valor de negócio, métrica, persona, alinhamento estratégico
114
+ - **📦 O QUE**: Funcionalidades detalhadas, componentes afetados, integrações, escopo negativo completo
115
+ - **🔧 COMO**: Stack, padrões de código, estrutura de arquivos, dependências, ordem de implementação, failure modes, considerações de performance/custo/UX
116
+ - **✅ Validação contra Metaspecs**: Documentos consultados (business e technical), ADRs verificados, resultado da validação
117
+ - **📊 Métricas de Sucesso**: Técnicas, produto/UX, critérios de aceitação
118
+ - **🔄 Impacto no Produto**: Alinhamento com objetivos, habilitadores, riscos mitigados
119
+ - **⚠️ Limitações Conhecidas**: Limitações do MVP
120
+ - **📝 Checklist de Implementação**: Tarefas por área (backend, frontend, testes, segurança, etc.)
130
121
 
131
- Forneça estimativa de esforço:
132
- - **Pequeno**: < 1 dia
133
- - **Médio**: 1-3 dias
134
- - **Grande**: 3-5 dias
135
- - **Muito Grande**: > 5 dias (considere quebrar em issues menores)
122
+ **Template RESUMIDO** (para task manager - máx 3000 palavras):
123
+ ```markdown
124
+ # [Nome Feature] - Requisitos Refinados
136
125
 
137
- ### 8. Perguntas Pendentes
126
+ **Sprint X** | **Y dias** | **Prioridade**
138
127
 
139
- Liste perguntas que ainda precisam ser respondidas antes de iniciar a implementação.
128
+ ## Objetivo
129
+ [1-2 parágrafos: o que é e por que fazer]
140
130
 
141
- ## 📄 Salvamento do Refinamento
131
+ ## Escopo
142
132
 
143
- **PRIORIDADE 1: Atualizar via MCP**
133
+ ### Principais Funcionalidades
134
+ - Funcionalidade 1: [resumo]
135
+ - Funcionalidade 2: [resumo]
136
+ - Validações/Guards: [resumo]
144
137
 
145
- - Use o MCP do task manager para atualizar a issue
146
- - Adicione os critérios de aceitação como comentário ou campo customizado
147
- - Atualize labels/tags se necessário (ex: "refined", "ready-for-spec")
148
- - Adicione estimativa se o task manager suportar
149
- - Informe ao usuário: "✅ Issue [ID] atualizada com refinamento"
138
+ ### Componentes Afetados
139
+ - Componente 1: [tipo de mudança]
140
+ - Componente 2: [tipo de mudança]
150
141
 
151
- **FALLBACK: Criar arquivo .md apenas se MCP falhar**
142
+ ### Segurança
143
+ ✅ [item 1] ✅ [item 2] ✅ [item 3]
152
144
 
153
- Se o MCP não estiver disponível ou falhar, crie/atualize `./.sessions/<ISSUE-ID>/refine.md`:
145
+ ## Escopo Negativo
146
+ ❌ [item 1] ❌ [item 2] ❌ [item 3]
154
147
 
155
- ```markdown
156
- # [Título da Issue] - Refinamento
148
+ ## Stack
149
+ [Tech stack resumida por área]
157
150
 
158
- ## Escopo
151
+ ## Estrutura
152
+ [Árvore de arquivos RESUMIDA - principais módulos apenas]
159
153
 
160
- ### Incluído
161
- - [Item 1]
162
- - [Item 2]
163
-
164
- ### Excluído
165
- - [Item 1]
166
- - [Item 2]
154
+ ## Failure Modes (Evitar)
155
+ 🔴 [crítico 1] 🔴 [crítico 2]
156
+ 🟡 [médio 1] 🟡 [médio 2]
167
157
 
168
158
  ## Critérios de Aceitação
169
- [Conforme seção 3 acima]
170
-
171
- ## Impacto por Repositório
172
- [Conforme seção 4 acima]
173
-
174
- ## Dependências
175
- - [Dependência 1]
176
- - [Dependência 2]
177
-
178
- ## Restrições
179
- - [Restrição 1]
180
- - [Restrição 2]
159
+ - [ ] [item 1]
160
+ - [ ] [item 2]
161
+ - [ ] [item 3]
181
162
 
182
- ## Estimativa
183
- [Pequeno/Médio/Grande/Muito Grande] - [Justificativa]
163
+ ## Validação
164
+ **ADRs**: [lista]
165
+ **Specs**: [principais]
166
+ **Status**: ✅ Aprovado
184
167
 
185
- ## Perguntas Pendentes
186
- 1. [Pergunta 1]
187
- 2. [Pergunta 2]
168
+ **Impacto**: [resumo]
169
+ **Limitações**: [resumo]
188
170
 
189
- ## Riscos Identificados
190
- - [Risco 1 e mitigação]
191
- - [Risco 2 e mitigação]
171
+ ---
172
+ 📄 **Documento completo**: `.sessions/<ISSUE-ID>/refined.md`
192
173
  ```
193
174
 
194
- Informe ao usuário: "⚠️ Refinamento salvo localmente em .sessions/ (task manager não disponível)"
195
-
196
- ## 🔍 Validação
197
-
198
- Valide o refinamento contra:
199
- - Estratégia do produto (se documentada)
200
- - Arquitetura técnica (se documentada)
201
- - Capacidade do time
202
- - Prioridades do roadmap
175
+ **Audiência**: Desenvolvedor IA com capacidades similares às suas. Seja conciso mas completo.
203
176
 
204
177
  ---
205
178
 
206
- **Argumentos fornecidos**:
179
+ **Requisito para Refinar**:
207
180
 
208
181
  ```
209
182
  #$ARGUMENTS
@@ -213,10 +186,12 @@ Valide o refinamento contra:
213
186
 
214
187
  ## 🎯 Próximo Passo
215
188
 
216
- Após refinamento aprovado:
189
+ **Após aprovação do usuário e salvamento dos requisitos refinados**, o fluxo natural é:
217
190
 
218
191
  ```bash
219
192
  /spec [ISSUE-ID]
220
193
  ```
221
194
 
222
- Este comando criará a especificação completa (PRD) da feature.
195
+ **Exemplo**: `/spec FIN-3`
196
+
197
+ Este comando irá criar um PRD (Product Requirements Document) completo baseado nos requisitos refinados, detalhando funcionalidades, user stories, critérios de aceitação e validações finais.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "context-first-cli",
3
- "version": "2.0.2",
3
+ "version": "2.0.4",
4
4
  "description": "A generic CLI to manage the Context-First development methodology across any project.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",