ai-execution-protocol 0.3.0 → 0.4.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/AGENTS.md +12 -1
- package/README.md +54 -2
- package/behavior/audit-checklist.yaml +55 -0
- package/behavior/contract.yaml +156 -0
- package/dataset/README.md +38 -0
- package/dataset/raw-examples.md +36 -0
- package/dataset/train.jsonl +3 -0
- package/dataset/validation.jsonl +2 -0
- package/dist/minimal/AGENTS.md +8 -1
- package/dist/minimal/README.md +3 -0
- package/dist/minimal/behavior/audit-checklist.yaml +15 -0
- package/dist/minimal/behavior/contract.yaml +29 -0
- package/dist/minimal/canonical-state.yaml +1 -1
- package/dist/minimal/capabilities/registry.yaml +48 -0
- package/dist/minimal/context-map.yaml +2 -1
- package/dist/minimal/ide-rules/instruction-block.md +23 -0
- package/dist/minimal/memory/INDEX.yaml +1 -1
- package/dist/minimal/protocol/README.yaml +11 -1
- package/dist/minimal/protocol/capability-gate.yaml +56 -0
- package/dist/minimal/protocol/capability-router.yaml +123 -0
- package/dist/minimal/protocol/context-rules.yaml +2 -1
- package/dist/minimal/protocol/fast-path.yaml +8 -1
- package/dist/minimal/protocol/intelligence-router.yaml +63 -0
- package/dist/minimal/protocol/route-packs.yaml +49 -1
- package/dist/minimal/protocol/router.yaml +35 -1
- package/docs/00-visao-geral.md +41 -0
- package/docs/01-modelo-de-execucao.md +25 -0
- package/docs/02-niveis-de-risco.md +62 -0
- package/docs/03-mapeamento-antes-de-alterar.md +48 -0
- package/docs/04-janela-de-contexto.md +56 -0
- package/docs/05-validacao-e-entrega.md +48 -0
- package/docs/06-memoria-e-continuidade.md +27 -0
- package/docs/07-legibilidade-para-ia.md +47 -0
- package/docs/08-posicionamento.md +48 -0
- package/docs/09-governanca-de-mudancas.md +48 -0
- package/docs/10-economia-de-prompt.md +79 -0
- package/docs/11-retencao-de-resultados.md +26 -0
- package/docs/12-instalacao-em-outro-projeto.md +254 -0
- package/docs/13-uso-em-ides.md +137 -0
- package/docs/14-publicacao.md +128 -0
- package/docs/15-contexto-persistente.md +204 -0
- package/docs/16-release-e-atualizacao.md +146 -0
- package/docs/17-documentacao-atomica.md +117 -0
- package/docs/18-memoria-adaptativa.md +107 -0
- package/docs/19-orcamento-de-contexto.md +63 -0
- package/docs/20-validacao-seletiva.md +46 -0
- package/docs/21-roteamento-de-capacidades.md +121 -0
- package/docs/22-roadmap-v1.md +163 -0
- package/docs/23-contrato-comportamental.md +116 -0
- package/docs/24-gate-de-capacidades-e-inteligencia.md +109 -0
- package/docs/README.md +58 -0
- package/eval/README.md +27 -0
- package/eval/rubric.yaml +57 -0
- package/eval/sample-result.yaml +28 -0
- package/install-manifest.json +38 -2
- package/package.json +9 -2
- package/protocol/README.yaml +11 -1
- package/protocol/capability-gate.yaml +56 -0
- package/protocol/capability-router.yaml +123 -0
- package/protocol/context-rules.yaml +2 -1
- package/protocol/fast-path.yaml +8 -1
- package/protocol/intelligence-router.yaml +63 -0
- package/protocol/route-packs.yaml +49 -1
- package/protocol/router.yaml +35 -1
- package/roadmap/v1.yaml +139 -0
- package/schema/README.md +26 -0
- package/schema/behavior-contract.schema.json +31 -0
- package/schema/capability-registry.schema.json +51 -0
- package/schema/evaluated-response.schema.json +27 -0
- package/schema/evaluation-result.schema.json +32 -0
- package/schema/memory-entry.schema.json +55 -0
- package/schema/protocol-rule.schema.json +16 -0
- package/schema/protocol-rule.schema.yaml +28 -0
- package/schema/test-case.schema.json +44 -0
- package/schema/test-case.schema.yaml +37 -0
- package/scripts/README.md +79 -1
- package/scripts/build_dist.py +3 -0
- package/scripts/npm_install_protocol.js +60 -1
- package/scripts/verify_install.py +25 -0
- package/templates/minimal/AGENTS.md +8 -1
- package/templates/minimal/behavior/audit-checklist.yaml +15 -0
- package/templates/minimal/behavior/contract.yaml +29 -0
- package/templates/minimal/canonical-state.yaml +1 -1
- package/templates/minimal/capabilities/registry.yaml +48 -0
- package/templates/minimal/context-map.yaml +2 -1
- package/templates/minimal/ide-rules/instruction-block.md +23 -0
- package/templates/minimal/memory/INDEX.yaml +1 -1
- package/templates/minimal/protocol/capability-gate.yaml +10 -0
- package/templates/minimal/protocol/intelligence-router.yaml +10 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# 05 - Validacao e Entrega
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
Uma entrega so fica confiavel quando existe evidencia do que foi validado e do
|
|
6
|
+
que nao foi validado.
|
|
7
|
+
|
|
8
|
+
## Validacao automatica
|
|
9
|
+
|
|
10
|
+
Pode incluir testes, typecheck, build, lint, verificacao de links e checagem de
|
|
11
|
+
diff.
|
|
12
|
+
|
|
13
|
+
Selecione primeiro o menor conjunto capaz de provar o comportamento alterado.
|
|
14
|
+
Amplie para a suite completa quando a mudanca atingir contrato compartilhado,
|
|
15
|
+
instalacao, seguranca, varios modulos ou release.
|
|
16
|
+
|
|
17
|
+
## Validacao manual
|
|
18
|
+
|
|
19
|
+
Deve explicar onde testar, quais passos executar, resultado esperado e sinais de
|
|
20
|
+
regressao.
|
|
21
|
+
|
|
22
|
+
Quando houver chance de quebrar fluxo existente, impacto visual, dados,
|
|
23
|
+
permissao, build, deploy ou integracao, a IA deve entregar uma lista objetiva do
|
|
24
|
+
que testar manualmente.
|
|
25
|
+
|
|
26
|
+
## Transparencia
|
|
27
|
+
|
|
28
|
+
A IA nao deve dizer que algo foi testado se nao foi.
|
|
29
|
+
|
|
30
|
+
## Entrega clara
|
|
31
|
+
|
|
32
|
+
Quando houver interpretacao tecnica, uma boa resposta final separa:
|
|
33
|
+
|
|
34
|
+
- prompt original;
|
|
35
|
+
- prompt melhorado da IA;
|
|
36
|
+
- o que mudou;
|
|
37
|
+
- o que foi validado;
|
|
38
|
+
- o que nao foi validado;
|
|
39
|
+
- o que testar quando houver risco de quebra;
|
|
40
|
+
- risco residual;
|
|
41
|
+
- resumo em linguagem simples;
|
|
42
|
+
- proximo passo apenas quando necessario.
|
|
43
|
+
|
|
44
|
+
Por padrao, use uma linha por item. Cresca o formato somente quando risco,
|
|
45
|
+
validacao ou explicacao exigirem.
|
|
46
|
+
|
|
47
|
+
Uma resposta direta de nivel 0 pode omitir a comparacao de prompt quando nao
|
|
48
|
+
houver interpretacao de escopo.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# 06 - Memoria e Continuidade
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
Memoria ajuda a preservar decisoes, mas deve ser curta e seletiva.
|
|
6
|
+
|
|
7
|
+
## Registrar
|
|
8
|
+
|
|
9
|
+
- decisao estavel;
|
|
10
|
+
- regra recorrente;
|
|
11
|
+
- problema conhecido;
|
|
12
|
+
- checkpoint para retomada;
|
|
13
|
+
- comando ou validacao importante.
|
|
14
|
+
|
|
15
|
+
## Nao registrar
|
|
16
|
+
|
|
17
|
+
- logs longos;
|
|
18
|
+
- detalhes temporarios;
|
|
19
|
+
- historico sem utilidade futura;
|
|
20
|
+
- conclusoes sem evidencia;
|
|
21
|
+
- informacao especifica demais.
|
|
22
|
+
|
|
23
|
+
## Retomada
|
|
24
|
+
|
|
25
|
+
Quando for melhor abrir nova conversa, deixar resumo com objetivo, ultimo corte,
|
|
26
|
+
areas relevantes, validacoes feitas, pendencias e proximo passo.
|
|
27
|
+
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# 07 - Legibilidade Para IA
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
Os arquivos devem ser organizados para a IA ler e aplicar com o minimo de
|
|
6
|
+
ambiguidade.
|
|
7
|
+
|
|
8
|
+
## Regras
|
|
9
|
+
|
|
10
|
+
- Um assunto principal por arquivo.
|
|
11
|
+
- Um arquivo deve representar um assunto rastreavel, nao apenas ser curto.
|
|
12
|
+
- Titulos diretos e previsiveis.
|
|
13
|
+
- Listas curtas e objetivas.
|
|
14
|
+
- Regras antes de exemplos.
|
|
15
|
+
- Termos consistentes.
|
|
16
|
+
- Separar teoria, criterio, template e exemplo.
|
|
17
|
+
- Evitar texto decorativo.
|
|
18
|
+
- Evitar paragrafos longos escondendo decisao importante.
|
|
19
|
+
- Evitar nomes genericos como `geral.md`, `notas.md` ou `parte-1.md`.
|
|
20
|
+
|
|
21
|
+
## Documentacao atomica
|
|
22
|
+
|
|
23
|
+
Use arquivos por dominio, fluxo, decisao, componente ou integracao.
|
|
24
|
+
|
|
25
|
+
O nome do arquivo deve conter termos que a IA provavelmente buscaria. Depois de
|
|
26
|
+
abrir a doc certa, use `rg` para encontrar simbolos e trechos no codigo.
|
|
27
|
+
|
|
28
|
+
Regra curta:
|
|
29
|
+
|
|
30
|
+
```text
|
|
31
|
+
Doc atomica localiza.
|
|
32
|
+
rg encontra.
|
|
33
|
+
Codigo verificado decide.
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Formato preferido
|
|
37
|
+
|
|
38
|
+
1. Ideia central.
|
|
39
|
+
2. Quando usar.
|
|
40
|
+
3. Regras.
|
|
41
|
+
4. Criterios.
|
|
42
|
+
5. Excecoes.
|
|
43
|
+
6. Exemplos.
|
|
44
|
+
7. Validacao ou entrega esperada.
|
|
45
|
+
|
|
46
|
+
Nem todo arquivo precisa ter todas as secoes. O importante e manter ordem
|
|
47
|
+
previsivel.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# 08 - Posicionamento
|
|
2
|
+
|
|
3
|
+
## O que e
|
|
4
|
+
|
|
5
|
+
Um framework para orientar IA em tarefas tecnicas com risco controlado,
|
|
6
|
+
contexto minimo, validacao e entrega com evidencia.
|
|
7
|
+
|
|
8
|
+
## Para quem e
|
|
9
|
+
|
|
10
|
+
- Agentes de codigo.
|
|
11
|
+
- Assistentes em IDE.
|
|
12
|
+
- Times que usam IA para desenvolvimento.
|
|
13
|
+
- Pessoas que querem reduzir erro, retrabalho e custo de contexto.
|
|
14
|
+
|
|
15
|
+
## Problema que resolve
|
|
16
|
+
|
|
17
|
+
IA tecnica costuma errar quando age rapido demais, le contexto demais ou trata
|
|
18
|
+
tarefa critica como simples.
|
|
19
|
+
|
|
20
|
+
O framework cria um processo para a IA decidir antes de agir.
|
|
21
|
+
|
|
22
|
+
## O que nao tenta resolver
|
|
23
|
+
|
|
24
|
+
- Nao substitui testes reais.
|
|
25
|
+
- Nao substitui revisao humana em tarefa critica.
|
|
26
|
+
- Nao garante que a IA sempre esteja certa.
|
|
27
|
+
- Nao elimina necessidade de entender o projeto.
|
|
28
|
+
|
|
29
|
+
## Promessa
|
|
30
|
+
|
|
31
|
+
Reduzir erro operacional e custo de contexto ao fazer a IA:
|
|
32
|
+
|
|
33
|
+
- classificar risco;
|
|
34
|
+
- abrir menos arquivos;
|
|
35
|
+
- mapear impacto quando necessario;
|
|
36
|
+
- pedir confirmacao em tarefa critica;
|
|
37
|
+
- validar antes de entregar;
|
|
38
|
+
- explicar limites e risco residual.
|
|
39
|
+
|
|
40
|
+
## Como medir sucesso
|
|
41
|
+
|
|
42
|
+
- Menos arquivos lidos por tarefa.
|
|
43
|
+
- Menos tokens por rota.
|
|
44
|
+
- Mais tarefas com risco classificado corretamente.
|
|
45
|
+
- Menos acoes sensiveis sem confirmacao.
|
|
46
|
+
- Mais entregas com validacao clara.
|
|
47
|
+
- Menos regressao por mudanca fora de escopo.
|
|
48
|
+
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# 09 - Governanca de Mudancas
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
O protocolo deve evoluir sem perder clareza, economia e confiabilidade.
|
|
6
|
+
|
|
7
|
+
## Quando mudar uma regra
|
|
8
|
+
|
|
9
|
+
Mude uma regra quando houver:
|
|
10
|
+
|
|
11
|
+
- falha repetida em caso real;
|
|
12
|
+
- ambiguidade detectada por teste;
|
|
13
|
+
- custo alto de contexto;
|
|
14
|
+
- duplicacao clara;
|
|
15
|
+
- nova categoria de risco.
|
|
16
|
+
|
|
17
|
+
## Antes de mudar
|
|
18
|
+
|
|
19
|
+
- Identifique o arquivo certo.
|
|
20
|
+
- Verifique se a mudanca afeta `protocol/`, `cases/`, `eval/` ou `scripts/`.
|
|
21
|
+
- Evite duplicar regra existente.
|
|
22
|
+
- Mantenha o arquivo abaixo de 400 linhas.
|
|
23
|
+
|
|
24
|
+
## Depois de mudar
|
|
25
|
+
|
|
26
|
+
- Atualize indice relacionado.
|
|
27
|
+
- Se criar ou dividir docs, atualize `docs/README.md`, `INDEX.yaml` ou
|
|
28
|
+
`context-map.yaml` quando relevante.
|
|
29
|
+
- Verifique se a mudanca criou duplicidade entre assuntos.
|
|
30
|
+
- Atualize `CHANGELOG.md`.
|
|
31
|
+
- Rode `scripts/health_check.py`.
|
|
32
|
+
- Se mudar `protocol/`, rode `scripts/build_dist.py`.
|
|
33
|
+
- Se mudar avaliacao, rode benchmarks.
|
|
34
|
+
|
|
35
|
+
## Regra de economia
|
|
36
|
+
|
|
37
|
+
Toda mudanca deve reduzir ambiguidade sem aumentar contexto desnecessario.
|
|
38
|
+
|
|
39
|
+
## Regra para docs novas
|
|
40
|
+
|
|
41
|
+
Antes de criar uma doc nova, procure se o assunto ja existe:
|
|
42
|
+
|
|
43
|
+
```powershell
|
|
44
|
+
rg -n "termo-do-assunto|alias|simbolo" docs context-map.yaml INDEX.yaml
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Se existir, atualize a doc existente. Se nao existir e o assunto tiver valor
|
|
48
|
+
proprio, crie uma doc atomica com nome buscavel.
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# 10 - Economia de Prompt
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
A IA deve melhorar o prompt do usuario, mas nao deve transformar um pedido
|
|
6
|
+
curto em uma especificacao gigante sem necessidade.
|
|
7
|
+
|
|
8
|
+
Prompt melhorado deve ser proporcional ao risco.
|
|
9
|
+
|
|
10
|
+
## Regra pratica
|
|
11
|
+
|
|
12
|
+
- Nivel 0: reescreva em uma linha curta ou repita o objetivo com mais clareza.
|
|
13
|
+
- Nivel 1: no maximo uma frase de interpretacao.
|
|
14
|
+
- Nivel 2: objetivo, escopo e validacao em poucas linhas.
|
|
15
|
+
- Nivel 3: objetivo, risco critico, confirmacao e validacao.
|
|
16
|
+
|
|
17
|
+
## O que evitar
|
|
18
|
+
|
|
19
|
+
- Repetir contexto inteiro.
|
|
20
|
+
- Copiar regras do protocolo no prompt.
|
|
21
|
+
- Adicionar features nao solicitadas.
|
|
22
|
+
- Criar checklist grande para tarefa simples.
|
|
23
|
+
|
|
24
|
+
## Economia por rota
|
|
25
|
+
|
|
26
|
+
Use `protocol/route-packs.yaml` depois de escolher a rota em
|
|
27
|
+
`protocol/router.yaml`.
|
|
28
|
+
|
|
29
|
+
O pack resume a acao minima de cada rota. Abra os YAML completos somente quando:
|
|
30
|
+
|
|
31
|
+
- o risco ou escopo nao estiver claro;
|
|
32
|
+
- o plano de validacao ainda nao estiver claro;
|
|
33
|
+
- a tarefa for nivel 2 ou 3 e o impacto ainda nao estiver mapeado;
|
|
34
|
+
- for preciso texto exato de regra ou schema.
|
|
35
|
+
|
|
36
|
+
## Formato economico
|
|
37
|
+
|
|
38
|
+
Mostre o prompt original e o prompt melhorado quando houver acao tecnica,
|
|
39
|
+
interpretacao de escopo, risco nivel 1 ou maior, ou quando a melhoria alterar a
|
|
40
|
+
execucao.
|
|
41
|
+
|
|
42
|
+
Em uma resposta direta de nivel 0, sem interpretacao relevante, omita a
|
|
43
|
+
comparacao quando ela custar mais do que esclarecer.
|
|
44
|
+
|
|
45
|
+
Para nivel 1, use micro formato organizado:
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
PO: [pedido do usuario em uma linha]
|
|
49
|
+
PM: [pedido refinado em uma linha]
|
|
50
|
+
OK:
|
|
51
|
+
Feito: [resposta ou mudanca]
|
|
52
|
+
Validado: [evidencia ou nao rodei]
|
|
53
|
+
Risco: [nenhum/baixo/restante]
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Para nivel 2-3, use formato compacto:
|
|
57
|
+
|
|
58
|
+
```text
|
|
59
|
+
PO: [pedido do usuario em uma linha]
|
|
60
|
+
PM: [pedido refinado em uma linha]
|
|
61
|
+
Feito: [resposta ou mudanca]
|
|
62
|
+
Validado: [evidencia ou nao rodei]
|
|
63
|
+
Risco: [nenhum/baixo/restante]
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Use `Testar:` somente quando houver risco de quebrar algo. Use `Confirmar:`
|
|
67
|
+
somente em nivel 3 ou acao sensivel.
|
|
68
|
+
|
|
69
|
+
## Economia com risco critico bloqueado
|
|
70
|
+
|
|
71
|
+
Economia de prompt nao pode esconder risco.
|
|
72
|
+
|
|
73
|
+
Quando um pedido tem parte nivel 3 que nao pode ser executada, mantenha essa
|
|
74
|
+
parte como nivel 3 bloqueado e execute apenas subtarefas seguras com contexto
|
|
75
|
+
proporcional.
|
|
76
|
+
|
|
77
|
+
Isso reduz custo porque a IA nao precisa abrir contexto critico para uma acao
|
|
78
|
+
que nao conseguira executar. Ao mesmo tempo, a entrega continua honesta: a parte
|
|
79
|
+
sensivel fica registrada como pendente, nao como concluida.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# 11 - Retencao de Resultados
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
Resultados gerados ajudam auditoria, mas podem virar custo de contexto se forem
|
|
6
|
+
lidos sem necessidade.
|
|
7
|
+
|
|
8
|
+
## Regras
|
|
9
|
+
|
|
10
|
+
- Seguir `.aiignore` e `INDEX.yaml/read_policy.ignore_by_default`.
|
|
11
|
+
- Nao ler `generated/` por padrao.
|
|
12
|
+
- Ler `results/` apenas quando a tarefa envolver avaliacao ou historico.
|
|
13
|
+
- Manter relatorios recentes pequenos.
|
|
14
|
+
- Arquivar ou remover resultados antigos quando deixarem de ser uteis.
|
|
15
|
+
- Nunca usar resultado antigo como estado atual sem verificar.
|
|
16
|
+
|
|
17
|
+
## Pastas geradas
|
|
18
|
+
|
|
19
|
+
- `benchmarks/generated/`
|
|
20
|
+
- `model-runs/generated/`
|
|
21
|
+
- `results/`
|
|
22
|
+
|
|
23
|
+
## Uso esperado
|
|
24
|
+
|
|
25
|
+
Use resultados para comparar, auditar e medir evolucao. Nao use como regra
|
|
26
|
+
operacional principal.
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
# 12 - Instalacao em Outro Projeto
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
Use `dist/minimal/` para aplicar o protocolo em outro projeto.
|
|
6
|
+
|
|
7
|
+
## Como gerar
|
|
8
|
+
|
|
9
|
+
Na raiz deste projeto:
|
|
10
|
+
|
|
11
|
+
```powershell
|
|
12
|
+
python scripts/build_dist.py
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## O que copiar
|
|
16
|
+
|
|
17
|
+
O instalador copia de `dist/minimal/` para a raiz do projeto alvo:
|
|
18
|
+
|
|
19
|
+
- `AGENTS.md`
|
|
20
|
+
- `.aiignore`
|
|
21
|
+
- `canonical-state.yaml`
|
|
22
|
+
- `context-map.yaml`
|
|
23
|
+
- `decisions/README.md`
|
|
24
|
+
- `memory/INDEX.yaml`
|
|
25
|
+
- `candidate-memory/README.md`
|
|
26
|
+
- `capabilities/registry.yaml`
|
|
27
|
+
- `protocol/`
|
|
28
|
+
|
|
29
|
+
Ele tambem inclui template interno para integracao opcional com arquivos de IDE.
|
|
30
|
+
Esse template nao e aplicado sem comando explicito.
|
|
31
|
+
|
|
32
|
+
## Instalacao automatica
|
|
33
|
+
|
|
34
|
+
### CLI instalada
|
|
35
|
+
|
|
36
|
+
Projeto novo:
|
|
37
|
+
|
|
38
|
+
```powershell
|
|
39
|
+
ai-protocol init C:\caminho\projeto
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Projeto existente:
|
|
43
|
+
|
|
44
|
+
```powershell
|
|
45
|
+
ai-protocol install C:\caminho\projeto
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Previa sem alterar arquivos:
|
|
49
|
+
|
|
50
|
+
```powershell
|
|
51
|
+
ai-protocol install C:\caminho\projeto --dry-run
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Integracao opcional com arquivos de instrucao de IDE:
|
|
55
|
+
|
|
56
|
+
```powershell
|
|
57
|
+
ai-protocol integrate C:\caminho\projeto --dry-run
|
|
58
|
+
ai-protocol integrate C:\caminho\projeto --yes
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### PowerShell
|
|
62
|
+
|
|
63
|
+
```powershell
|
|
64
|
+
.\install.ps1 C:\caminho\projeto -Force
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Esse comando gera `dist/minimal/`, instala o protocolo e roda a verificacao.
|
|
68
|
+
O resultado esperado no final e `PASS`.
|
|
69
|
+
|
|
70
|
+
### NPM
|
|
71
|
+
|
|
72
|
+
Uso local, dentro deste repositorio:
|
|
73
|
+
|
|
74
|
+
```powershell
|
|
75
|
+
npm run install-protocol -- C:\caminho\projeto
|
|
76
|
+
npm run dry-run-protocol -- C:\caminho\projeto
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
O script npm instala direto via Node. Ele existe para IDEs e projetos onde
|
|
80
|
+
`npm run` e mais facil de lembrar.
|
|
81
|
+
|
|
82
|
+
Uso como pacote publicado:
|
|
83
|
+
|
|
84
|
+
```powershell
|
|
85
|
+
npm install -g ai-execution-protocol
|
|
86
|
+
ai-protocol install C:\caminho\projeto
|
|
87
|
+
ai-protocol integrate C:\caminho\projeto --yes
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Atualizar uma instalacao existente:
|
|
91
|
+
|
|
92
|
+
```powershell
|
|
93
|
+
npm install -g ai-execution-protocol@latest
|
|
94
|
+
ai-protocol install C:\caminho\projeto
|
|
95
|
+
ai-protocol integrate C:\caminho\projeto --yes
|
|
96
|
+
ai-protocol verify C:\caminho\projeto
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Para verificar manualmente via npm:
|
|
100
|
+
|
|
101
|
+
```powershell
|
|
102
|
+
npm run verify-protocol -- C:\caminho\projeto
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Ou com a CLI instalada:
|
|
106
|
+
|
|
107
|
+
```powershell
|
|
108
|
+
ai-protocol verify C:\caminho\projeto
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Se o terminal da IDE ja estiver aberto no projeto alvo, use o caminho completo
|
|
112
|
+
do framework e `.` como alvo:
|
|
113
|
+
|
|
114
|
+
```powershell
|
|
115
|
+
C:\caminho\ai-research\install.ps1 . -Force
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Ou via npm, a partir da raiz deste framework:
|
|
119
|
+
|
|
120
|
+
```powershell
|
|
121
|
+
npm run install-protocol -- .
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Python
|
|
125
|
+
|
|
126
|
+
Forma equivalente via Python:
|
|
127
|
+
|
|
128
|
+
```powershell
|
|
129
|
+
python scripts/install_protocol.py --target C:\caminho\projeto --force
|
|
130
|
+
python scripts/install_protocol.py --target C:\caminho\projeto --dry-run
|
|
131
|
+
python scripts/verify_install.py --target C:\caminho\projeto
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Uso como pacote publicado:
|
|
135
|
+
|
|
136
|
+
```powershell
|
|
137
|
+
pip install ai-execution-protocol
|
|
138
|
+
ai-protocol install C:\caminho\projeto
|
|
139
|
+
ai-protocol integrate C:\caminho\projeto --yes
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Atualizar uma instalacao existente:
|
|
143
|
+
|
|
144
|
+
```powershell
|
|
145
|
+
python -m pip install --upgrade ai-execution-protocol
|
|
146
|
+
ai-protocol install C:\caminho\projeto
|
|
147
|
+
ai-protocol integrate C:\caminho\projeto --yes
|
|
148
|
+
ai-protocol verify C:\caminho\projeto
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Tambem funciona como modulo:
|
|
152
|
+
|
|
153
|
+
```powershell
|
|
154
|
+
python -m ai_execution_protocol install C:\caminho\projeto
|
|
155
|
+
python -m ai_execution_protocol init C:\caminho\projeto
|
|
156
|
+
python -m ai_execution_protocol install C:\caminho\projeto --dry-run
|
|
157
|
+
python -m ai_execution_protocol integrate C:\caminho\projeto --yes
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Ou no CMD:
|
|
161
|
+
|
|
162
|
+
```bat
|
|
163
|
+
install.bat C:\caminho\projeto
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## Verificacao obrigatoria
|
|
167
|
+
|
|
168
|
+
```powershell
|
|
169
|
+
python scripts/verify_install.py --target C:\caminho\projeto
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
O verificador deve retornar `PASS`. Se retornar `FAIL`, a IA nao deve tratar o
|
|
173
|
+
protocolo como instalado corretamente.
|
|
174
|
+
|
|
175
|
+
Use esta regra facil de lembrar:
|
|
176
|
+
|
|
177
|
+
```text
|
|
178
|
+
PowerShell = install.ps1 <projeto> -Force
|
|
179
|
+
NPM local = npm run install-protocol -- <projeto>
|
|
180
|
+
NPM pacote = npm install -g ai-execution-protocol; ai-protocol install <projeto>
|
|
181
|
+
NPM atualizar = npm install -g ai-execution-protocol@latest; ai-protocol install <projeto>
|
|
182
|
+
Python local = install_protocol.py + verify_install.py
|
|
183
|
+
Python pacote = pip install ai-execution-protocol; ai-protocol install <projeto>
|
|
184
|
+
Python atualizar = python -m pip install --upgrade ai-execution-protocol; ai-protocol install <projeto>
|
|
185
|
+
previa = ai-protocol install <projeto> --dry-run
|
|
186
|
+
integracao IDE = ai-protocol integrate <projeto> --yes
|
|
187
|
+
alvo atual = use . como <projeto>
|
|
188
|
+
sucesso = PASS
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## Como usar
|
|
192
|
+
|
|
193
|
+
No projeto alvo, a IA deve ler:
|
|
194
|
+
|
|
195
|
+
1. `AGENTS.md`
|
|
196
|
+
2. `protocol/fast-path.yaml`
|
|
197
|
+
3. `protocol/router.yaml`
|
|
198
|
+
|
|
199
|
+
Depois deve abrir apenas os arquivos indicados pela rota.
|
|
200
|
+
|
|
201
|
+
Para tornar o protocolo obrigatorio, mantenha `AGENTS.md` na raiz do projeto
|
|
202
|
+
alvo. No Codex, esse arquivo vira a instrucao principal do agente naquele
|
|
203
|
+
workspace.
|
|
204
|
+
|
|
205
|
+
## Convivencia com arquivos existentes
|
|
206
|
+
|
|
207
|
+
O instalador preserva arquivos existentes do projeto:
|
|
208
|
+
|
|
209
|
+
- se ja existir `AGENTS.md`, injeta um bloco `AI_PROTOCOL_BEGIN` no topo e
|
|
210
|
+
mantem as instrucoes antigas abaixo;
|
|
211
|
+
- se ja existir `.aiignore`, adiciona apenas as entradas faltantes;
|
|
212
|
+
- se `--force` substituir `protocol/`, cria backup em `.ai-protocol-backup/`;
|
|
213
|
+
- nao altera `README.md`, `docs/`, `.cursorrules`, `CLAUDE.md`,
|
|
214
|
+
`.github/copilot-instructions.md` ou configuracoes de frameworks.
|
|
215
|
+
|
|
216
|
+
O comando separado `ai-protocol integrate <projeto> --yes` pode alterar:
|
|
217
|
+
|
|
218
|
+
- `CLAUDE.md`;
|
|
219
|
+
- `.cursorrules`;
|
|
220
|
+
- `.github/copilot-instructions.md`;
|
|
221
|
+
- `.cursor/rules/ai-execution-protocol.mdc`.
|
|
222
|
+
|
|
223
|
+
Ele usa marcadores `AI_PROTOCOL_IDE_BEGIN` e `AI_PROTOCOL_IDE_END`, cria backup
|
|
224
|
+
e atualiza o mesmo bloco quando executado novamente. Sem `--yes`, apenas mostra
|
|
225
|
+
o plano.
|
|
226
|
+
|
|
227
|
+
Na pratica, documentos e regras do usuario continuam existindo. O protocolo nao
|
|
228
|
+
vira dono desses arquivos; ele orienta a IA a le-los somente quando a rota pedir
|
|
229
|
+
contexto e a nao sobrescreve-los sem pedido explicito.
|
|
230
|
+
|
|
231
|
+
Quando houver conflito, a IA deve seguir esta ordem:
|
|
232
|
+
|
|
233
|
+
1. pedido atual do usuario;
|
|
234
|
+
2. bloco obrigatorio do protocolo em `AGENTS.md`;
|
|
235
|
+
3. regras especificas da IDE, do framework ou do projeto;
|
|
236
|
+
4. relatorios antigos ou arquivos gerados somente depois de verificar.
|
|
237
|
+
|
|
238
|
+
Exemplos preservados: `README.md`, `docs/`, `.cursorrules`, `CLAUDE.md`,
|
|
239
|
+
`.github/copilot-instructions.md`, `next.config.*`, `vite.config.*`,
|
|
240
|
+
`angular.json`, `package.json`, `pyproject.toml`, `composer.json`,
|
|
241
|
+
`Gemfile`, `Cargo.toml` e arquivos equivalentes de framework.
|
|
242
|
+
|
|
243
|
+
## O que nao copiar
|
|
244
|
+
|
|
245
|
+
Nao copie por padrao:
|
|
246
|
+
|
|
247
|
+
- `docs/`
|
|
248
|
+
- `cases/`
|
|
249
|
+
- `eval/`
|
|
250
|
+
- `results/`
|
|
251
|
+
- `benchmarks/`
|
|
252
|
+
- `model-runs/`
|
|
253
|
+
|
|
254
|
+
Essas pastas servem para evoluir e testar o framework, nao para uso minimo.
|