mcp-lab-agent 1.1.2 → 2.0.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.
package/README.md CHANGED
@@ -4,33 +4,57 @@
4
4
  [![Node.js](https://img.shields.io/badge/node-%3E%3D18-green)](https://nodejs.org)
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
6
6
 
7
- **Assistente de QA com IA que roda direto no seu IDE.** Detecta frameworks automaticamente, gera testes, analisa falhas e avalia apps em browser — sem configuração complexa.
7
+ **Agente autônomo de QA que aprende com os próprios erros.**
8
+
9
+ Não é só um assistente: é um agente que **lê seu projeto, gera testes, executa, corrige falhas automaticamente e aprende** para cada vez acertar mais na primeira tentativa.
8
10
 
9
11
  ---
10
12
 
11
- ## Por que mcp-lab-agent?
13
+ ## O diferencial
14
+
15
+ | Outras ferramentas | **mcp-lab-agent** |
16
+ |-------------------|-------------------|
17
+ | Geram testes | **Gera, roda, corrige e aprende** |
18
+ | Você corrige erros | **Auto-correção com retry inteligente** |
19
+ | Sem memória | **Aprende com erros passados** |
20
+ | Configuração complexa | **Zero config: detecta 15+ frameworks** |
21
+ | Sem métricas | **Taxa de sucesso, correções, aprendizados** |
22
+
23
+ **Modo autônomo:**
24
+
25
+ ```bash
26
+ npx mcp-lab-agent auto "login flow" --max-retries 5
27
+ ```
12
28
 
13
- | web-eval-agent | agentic-qe | **mcp-lab-agent** |
14
- |----------------|------------|-------------------|
15
- | Browser + network | 60 agentes, routing | **Tudo isso + zero config** |
16
- | Python, uv, API key | CLI complexo, muitas deps | **npm install, 2 minutos** |
17
- | Projeto descontinuado | Foco em Claude Code | **Cursor, Cline, Windsurf, qualquer MCP** |
18
- | | | **Detecção automática de 15+ frameworks** |
19
- | — | — | **Flaky detection + model routing** |
20
- | — | — | **Memória de projeto + agentes especializados** |
29
+ O agente:
30
+ 1. Detecta seu projeto (Cypress, Playwright, Jest, etc.)
31
+ 2. Gera o teste com base em aprendizados anteriores
32
+ 3. Executa o teste
33
+ 4. Se falhar: analisa, corrige e tenta de novo
34
+ 5. Aprende com cada correção para melhorar nas próximas
21
35
 
22
- **Em 2 minutos** você tem detecção, execução, geração com IA, análise de falhas, modo browser e métricas.
36
+ **Resultado:** Testes que passam na primeira tentativa aumentam com o tempo.
23
37
 
24
38
  ---
25
39
 
26
40
  ## Quick Start
27
41
 
42
+ ### Modo autônomo (CLI)
43
+
28
44
  ```bash
29
- # Teste o CLI antes de configurar (opcional)
45
+ # Gera, roda, corrige e aprende automaticamente
46
+ npx mcp-lab-agent auto "login flow" --max-retries 5
47
+
48
+ # Ver métricas de aprendizado
49
+ npx mcp-lab-agent stats
50
+
51
+ # Detectar estrutura do projeto
30
52
  npx mcp-lab-agent detect
31
53
  ```
32
54
 
33
- **1. Configure o MCP no Cursor** (`~/.cursor/mcp.json`):
55
+ ### Integração com IDE (Cursor/Cline/Windsurf)
56
+
57
+ **1. Configure o MCP** (`~/.cursor/mcp.json`):
34
58
 
35
59
  ```json
36
60
  {
@@ -44,21 +68,22 @@ npx mcp-lab-agent detect
44
68
  }
45
69
  ```
46
70
 
47
- **2. Reinicie o Cursor e use no chat:**
71
+ **2. Use no chat:**
48
72
 
49
73
  ```
50
74
  "Detecte a estrutura do meu projeto"
75
+ "Modo autônomo: gere teste para login"
51
76
  "Rode os testes"
52
- "Gere um teste E2E para login"
53
77
  "Por que o teste falhou?"
54
78
  "Avalie http://localhost:3000 no browser"
79
+ "Mostre as estatísticas de aprendizado"
55
80
  ```
56
81
 
57
82
  ---
58
83
 
59
84
  ## Architecture
60
85
 
61
- O diagrama abaixo mostra como o mcp-lab-agent conecta IDE, ferramentas especializadas e LLMs em um fluxo único:
86
+ O diagrama abaixo mostra como o agente autônomo funciona:
62
87
 
63
88
  ```mermaid
64
89
  flowchart TB
@@ -66,12 +91,18 @@ flowchart TB
66
91
  Chat[Chat do usuário]
67
92
  end
68
93
 
94
+ subgraph CLI["💻 CLI (Terminal)"]
95
+ Auto["mcp-lab-agent auto"]
96
+ Stats["mcp-lab-agent stats"]
97
+ end
98
+
69
99
  subgraph MCP["MCP Protocol (stdio)"]
70
100
  Transport[Stdio Transport]
71
101
  end
72
102
 
73
103
  subgraph Agent["mcp-lab-agent"]
74
104
  Router[qa_route_task]
105
+ AutoTool["qa_auto<br/>(Loop autônomo)"]
75
106
 
76
107
  subgraph Agents["Agentes Especializados"]
77
108
  D[detection<br/>detect_project, read_project, list_test_files]
@@ -80,12 +111,14 @@ flowchart TB
80
111
  A[analysis<br/>analyze_failures, por_que_falhou, suggest_selector_fix]
81
112
  B[browser<br/>web_eval_browser]
82
113
  R[reporting<br/>create_bug_report, get_business_metrics]
114
+ L[learning<br/>qa_learning_stats]
83
115
  end
84
116
 
85
- subgraph Brain["🧠 Núcleo"]
117
+ subgraph Brain["🧠 Núcleo Inteligente"]
86
118
  MR[Model Router<br/>simples → Groq/Flash | complexo → 70B/Pro]
87
119
  PM[Project Memory<br/>.qa-lab-memory.json]
88
120
  FD[Flaky Detection<br/>timing, selector, network]
121
+ LS[Learning System<br/>salva correções bem-sucedidas]
89
122
  end
90
123
  end
91
124
 
@@ -97,7 +130,16 @@ flowchart TB
97
130
 
98
131
  Chat --> Transport
99
132
  Transport --> Router
100
- Router --> D & E & G & A & B & R
133
+ Router --> AutoTool
134
+ Router --> D & E & G & A & B & R & L
135
+
136
+ Auto --> AutoTool
137
+ Stats --> L
138
+
139
+ AutoTool --> G
140
+ AutoTool --> E
141
+ AutoTool --> A
142
+ AutoTool --> LS
101
143
 
102
144
  D & E & G & A & R --> Proj
103
145
  B --> PW
@@ -105,11 +147,21 @@ flowchart TB
105
147
 
106
148
  G & A --> MR
107
149
  MR --> LLM
108
- G & A --> PM
109
- A --> FD
150
+ G & A & AutoTool --> PM
151
+ A & AutoTool --> FD
152
+ AutoTool --> LS
153
+ LS --> PM
110
154
  ```
111
155
 
112
- **Fluxo resumido:**
156
+ **Fluxo autônomo (qa_auto):**
157
+ 1. **Detecta** projeto (frameworks, pastas, fluxos)
158
+ 2. **Gera** teste usando LLM + memória de aprendizados
159
+ 3. **Executa** o teste
160
+ 4. **Se falhar:** analisa (flaky detection), corrige e tenta de novo
161
+ 5. **Aprende:** salva correções bem-sucedidas na memória
162
+ 6. **Repete** até passar ou atingir max_retries
163
+
164
+ **Fluxo resumido (IDE):**
113
165
  1. **Usuário** fala no chat do IDE
114
166
  2. **MCP** entrega a mensagem ao `mcp-lab-agent`
115
167
  3. **qa_route_task** sugere o agente certo (detection, execution, generation, etc.)
@@ -124,6 +176,8 @@ flowchart TB
124
176
 
125
177
  | Categoria | O que faz |
126
178
  |-----------|-----------|
179
+ | **🤖 Autônomo** | `qa_auto` — loop completo: gera, roda, corrige, aprende (até passar ou max_retries) |
180
+ | **📊 Learning** | Salva correções bem-sucedidas, taxa de sucesso na 1ª tentativa, métricas de aprendizado |
127
181
  | **Detecção** | Cypress, Playwright, WebdriverIO, Jest, Vitest, Mocha, Robot, pytest, Behave, Appium, Detox |
128
182
  | **Execução** | run_tests, watch, coverage (Jest/Vitest) |
129
183
  | **Geração** | Testes via LLM (Groq, Gemini, OpenAI), templates |
@@ -145,16 +199,19 @@ mcp-lab-agent [comando]
145
199
  | Comando | Descrição |
146
200
  |---------|-----------|
147
201
  | *(sem args)* | Inicia o servidor MCP (modo padrão para o IDE) |
148
- | `detect` | Detecta frameworks e estrutura do projeto (JSON) |
202
+ | `auto <descrição> [--max-retries N]` | **[NOVO]** Modo autônomo: gera, roda, corrige e aprende (default: 3 tentativas) |
203
+ | `stats` | **[NOVO]** Mostra estatísticas de aprendizado (taxa de sucesso, correções, etc.) |
204
+ | `detect [--json]` | Detecta frameworks e estrutura do projeto |
149
205
  | `route <tarefa>` | Sugere qual ferramenta usar |
150
206
  | `list` | Lista agentes e ferramentas disponíveis |
151
207
  | `--help` | Mostra ajuda |
152
208
 
153
209
  **Exemplos:**
154
210
  ```bash
211
+ mcp-lab-agent auto "login flow" --max-retries 5
212
+ mcp-lab-agent stats
155
213
  mcp-lab-agent detect
156
214
  mcp-lab-agent route "rodar os testes"
157
- mcp-lab-agent route "gerar teste de login"
158
215
  mcp-lab-agent list
159
216
  ```
160
217
 
@@ -162,6 +219,39 @@ Referência completa do CLI: `mcp-lab-agent --help`
162
219
 
163
220
  ---
164
221
 
222
+ ## Escalabilidade
223
+
224
+ ### Como o mcp-lab-agent escala para empresas
225
+
226
+ **1. Multi-projeto:**
227
+ - Cada projeto tem sua própria memória (`.qa-lab-memory.json`)
228
+ - Aprendizados são isolados por contexto
229
+ - Suporte a monorepos (detecta múltiplos frameworks)
230
+
231
+ **2. CI/CD:**
232
+ ```yaml
233
+ # .github/workflows/qa.yml
234
+ - run: npx mcp-lab-agent auto "smoke tests" --max-retries 2
235
+ - run: npx mcp-lab-agent stats
236
+ ```
237
+
238
+ **3. Métricas exportáveis:**
239
+ - `.qa-lab-memory.json` pode ser lido por dashboards
240
+ - `stats` retorna JSON estruturado
241
+ - Integração com Grafana/DataDog via script
242
+
243
+ **4. Aprendizado compartilhado (roadmap):**
244
+ - Exportar/importar memórias entre projetos
245
+ - Central de aprendizados da empresa
246
+ - Padrões globais + overrides locais
247
+
248
+ **5. Customização:**
249
+ - `qa-lab-flows.json` para fluxos de negócio específicos
250
+ - Variáveis de ambiente para modelos customizados
251
+ - Extensível via MCP tools
252
+
253
+ ---
254
+
165
255
  ## Configuração
166
256
 
167
257
  ### Variáveis de ambiente (opcional)
@@ -184,6 +274,18 @@ npm install playwright
184
274
 
185
275
  ---
186
276
 
277
+ ## Documentação
278
+
279
+ - **[PITCH.md](PITCH.md)** — Apresentação executiva (use para apresentar ao time)
280
+ - **[EXEMPLO_EVOLUCAO.md](EXEMPLO_EVOLUCAO.md)** — Como a taxa de sucesso melhora com o tempo
281
+ - **[ARQUITETURA_LEARNING.md](ARQUITETURA_LEARNING.md)** — Detalhes técnicos do sistema de learning
282
+ - **[CHANGELOG.md](CHANGELOG.md)** — Histórico de versões
283
+ - **[MIGRATION_V2.md](MIGRATION_V2.md)** — Guia de migração da v1.x
284
+
285
+ Documentação completa (local): `docs/`
286
+
287
+ ---
288
+
187
289
  ## Desenvolvimento
188
290
 
189
291
  ```bash