ai-execution-protocol 0.3.1 → 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 +5 -1
- package/README.md +41 -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 +4 -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 +1 -1
- package/dist/minimal/context-map.yaml +1 -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 +9 -1
- package/dist/minimal/protocol/capability-gate.yaml +56 -0
- package/dist/minimal/protocol/capability-router.yaml +1 -1
- package/dist/minimal/protocol/context-rules.yaml +2 -1
- package/dist/minimal/protocol/fast-path.yaml +6 -1
- package/dist/minimal/protocol/intelligence-router.yaml +63 -0
- package/dist/minimal/protocol/route-packs.yaml +38 -1
- package/dist/minimal/protocol/router.yaml +28 -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 +27 -2
- package/package.json +9 -2
- package/protocol/README.yaml +9 -1
- package/protocol/capability-gate.yaml +56 -0
- package/protocol/capability-router.yaml +1 -1
- package/protocol/context-rules.yaml +2 -1
- package/protocol/fast-path.yaml +6 -1
- package/protocol/intelligence-router.yaml +63 -0
- package/protocol/route-packs.yaml +38 -1
- package/protocol/router.yaml +28 -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 +46 -0
- 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 +4 -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 +1 -1
- package/templates/minimal/context-map.yaml +1 -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,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.
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
# 13 - Uso em IDEs
|
|
2
|
+
|
|
3
|
+
## Ideia central
|
|
4
|
+
|
|
5
|
+
O protocolo deve ser facil de instalar e seguro para conviver com regras ja
|
|
6
|
+
existentes da IDE ou do projeto.
|
|
7
|
+
|
|
8
|
+
## Comando facil
|
|
9
|
+
|
|
10
|
+
Na raiz deste framework, use sempre a mesma memoria:
|
|
11
|
+
|
|
12
|
+
```powershell
|
|
13
|
+
.\install.ps1 C:\caminho\projeto -Force
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Se a IDE usa bem npm:
|
|
17
|
+
|
|
18
|
+
```powershell
|
|
19
|
+
npm run install-protocol -- C:\caminho\projeto
|
|
20
|
+
npm run dry-run-protocol -- C:\caminho\projeto
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Depois de publicar como pacote:
|
|
24
|
+
|
|
25
|
+
```powershell
|
|
26
|
+
npm install -g ai-execution-protocol
|
|
27
|
+
ai-protocol install C:\caminho\projeto
|
|
28
|
+
ai-protocol install C:\caminho\projeto --dry-run
|
|
29
|
+
ai-protocol integrate C:\caminho\projeto --dry-run
|
|
30
|
+
ai-protocol integrate C:\caminho\projeto --yes
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Via Python instalado:
|
|
34
|
+
|
|
35
|
+
```powershell
|
|
36
|
+
pip install ai-execution-protocol
|
|
37
|
+
ai-protocol install C:\caminho\projeto
|
|
38
|
+
ai-protocol verify C:\caminho\projeto
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Se o terminal da IDE ja estiver no projeto alvo:
|
|
42
|
+
|
|
43
|
+
```powershell
|
|
44
|
+
C:\caminho\ai-research\install.ps1 . -Force
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
No CMD:
|
|
48
|
+
|
|
49
|
+
```bat
|
|
50
|
+
install.bat C:\caminho\projeto
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
O `install.ps1` ja gera o pacote minimo, instala e verifica. O final esperado e
|
|
54
|
+
`PASS`.
|
|
55
|
+
|
|
56
|
+
O npm instala direto via Node. Ele nao muda o comportamento do protocolo e nao
|
|
57
|
+
depende de PowerShell.
|
|
58
|
+
|
|
59
|
+
No uso por pacote, `npm install` e `pip install` instalam a CLI. A alteracao no
|
|
60
|
+
projeto so acontece quando o usuario roda `ai-protocol install <projeto>`.
|
|
61
|
+
|
|
62
|
+
`ai-protocol integrate <projeto> --yes` e opcional. Ele escreve apenas blocos
|
|
63
|
+
marcados em arquivos de instrucao de IDE e cria backup antes de alterar arquivo
|
|
64
|
+
existente.
|
|
65
|
+
|
|
66
|
+
## Comportamento por IDE
|
|
67
|
+
|
|
68
|
+
- Codex: usa `AGENTS.md` como instrucao raiz do workspace.
|
|
69
|
+
- Cursor: pode receber bloco marcado em `.cursorrules` e `.cursor/rules/`.
|
|
70
|
+
- Claude Code: pode receber bloco marcado em `CLAUDE.md`.
|
|
71
|
+
- GitHub Copilot: pode receber bloco marcado em `.github/copilot-instructions.md`.
|
|
72
|
+
- Outras IDEs: o protocolo continua disponivel em `AGENTS.md` e `protocol/`.
|
|
73
|
+
|
|
74
|
+
## Convivencia com arquivos do usuario
|
|
75
|
+
|
|
76
|
+
O instalador nao apaga documentos do projeto por padrao.
|
|
77
|
+
|
|
78
|
+
Ele faz:
|
|
79
|
+
|
|
80
|
+
- injeta bloco `AI_PROTOCOL_BEGIN` em `AGENTS.md`;
|
|
81
|
+
- mantem instrucoes antigas abaixo do bloco;
|
|
82
|
+
- adiciona entradas faltantes em `.aiignore`;
|
|
83
|
+
- copia `protocol/`;
|
|
84
|
+
- cria backup antes de substituir `protocol/` com `-Force`.
|
|
85
|
+
|
|
86
|
+
O comando `install` nao altera:
|
|
87
|
+
|
|
88
|
+
- `README.md`;
|
|
89
|
+
- `docs/`;
|
|
90
|
+
- `.cursorrules`;
|
|
91
|
+
- `CLAUDE.md`;
|
|
92
|
+
- `.github/copilot-instructions.md`;
|
|
93
|
+
- configs de Next, Vite, Django, Laravel, Rails ou outros frameworks.
|
|
94
|
+
|
|
95
|
+
O comando `integrate --yes` pode alterar somente:
|
|
96
|
+
|
|
97
|
+
- `CLAUDE.md`;
|
|
98
|
+
- `.cursorrules`;
|
|
99
|
+
- `.github/copilot-instructions.md`;
|
|
100
|
+
- `.cursor/rules/ai-execution-protocol.mdc`.
|
|
101
|
+
|
|
102
|
+
Cada alteracao usa marcadores `AI_PROTOCOL_IDE_BEGIN` e
|
|
103
|
+
`AI_PROTOCOL_IDE_END`, entao uma nova execucao atualiza o mesmo bloco em vez de
|
|
104
|
+
duplicar texto.
|
|
105
|
+
|
|
106
|
+
Com documentos e frameworks do usuario, o comportamento esperado e:
|
|
107
|
+
|
|
108
|
+
- preservar os arquivos existentes;
|
|
109
|
+
- ler docs do projeto somente quando a rota exigir contexto;
|
|
110
|
+
- tratar docs antigos, gerados ou historicos como nao confiaveis ate verificar;
|
|
111
|
+
- usar configs de framework como fonte tecnica quando a tarefa tocar aquele
|
|
112
|
+
framework;
|
|
113
|
+
- nao copiar regras do protocolo para varios arquivos da IDE.
|
|
114
|
+
|
|
115
|
+
## Ordem de prioridade
|
|
116
|
+
|
|
117
|
+
Quando houver conflito, a IA deve seguir:
|
|
118
|
+
|
|
119
|
+
1. pedido atual do usuario;
|
|
120
|
+
2. bloco obrigatorio em `AGENTS.md`;
|
|
121
|
+
3. regras especificas da IDE ou do projeto;
|
|
122
|
+
4. docs e historico somente quando a rota pedir.
|
|
123
|
+
|
|
124
|
+
## Regra pratica
|
|
125
|
+
|
|
126
|
+
Use um comando e confira o `PASS`.
|
|
127
|
+
|
|
128
|
+
```text
|
|
129
|
+
install.ps1 <projeto> -Force
|
|
130
|
+
npm run install-protocol -- <projeto>
|
|
131
|
+
ai-protocol install <projeto>
|
|
132
|
+
ai-protocol install <projeto> --dry-run
|
|
133
|
+
ai-protocol integrate <projeto> --yes
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Se `PASS` aparecer, a IA pode tratar o protocolo como ativo naquele projeto.
|
|
137
|
+
Se a IDE nao ler `AGENTS.md`, rode tambem `integrate --yes`.
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# 14 - Publicacao
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Preparar este framework para publicacao sem expor informacao privada e sem
|
|
6
|
+
vender a ideia como pronta demais.
|
|
7
|
+
|
|
8
|
+
## Posicionamento publico
|
|
9
|
+
|
|
10
|
+
Use termos como:
|
|
11
|
+
|
|
12
|
+
- framework experimental;
|
|
13
|
+
- pesquisa em evolucao;
|
|
14
|
+
- proposta tecnica;
|
|
15
|
+
- protocolo conceitual;
|
|
16
|
+
- metodologia para agentes de IA.
|
|
17
|
+
|
|
18
|
+
Evite prometer que o protocolo elimina risco, substitui revisao humana ou
|
|
19
|
+
garante seguranca. A mensagem correta e: o framework reduz risco operacional ao
|
|
20
|
+
forcar contexto minimo, classificacao de risco, validacao e entrega com
|
|
21
|
+
evidencia.
|
|
22
|
+
|
|
23
|
+
## Arquivos recomendados para publicar
|
|
24
|
+
|
|
25
|
+
Publicacao base:
|
|
26
|
+
|
|
27
|
+
- `README.md`
|
|
28
|
+
- `LICENSE`
|
|
29
|
+
- `.gitignore`
|
|
30
|
+
- `AGENTS.md`
|
|
31
|
+
- `INDEX.yaml`
|
|
32
|
+
- `config.yaml`
|
|
33
|
+
- `docs/`
|
|
34
|
+
- `protocol/`
|
|
35
|
+
- `cases/`
|
|
36
|
+
- `examples/`
|
|
37
|
+
- `schema/`
|
|
38
|
+
- `eval/`
|
|
39
|
+
- `scripts/`
|
|
40
|
+
- `responses/`
|
|
41
|
+
- `prompts/`
|
|
42
|
+
- `package.json`
|
|
43
|
+
- `pyproject.toml`
|
|
44
|
+
- `requirements.txt`
|
|
45
|
+
- `install.ps1`
|
|
46
|
+
- `install.bat`
|
|
47
|
+
|
|
48
|
+
Arquivos gerados ou historicos devem ficar fora do Git quando nao forem
|
|
49
|
+
necessarios para explicar o framework:
|
|
50
|
+
|
|
51
|
+
- `build/`
|
|
52
|
+
- `dist/`
|
|
53
|
+
- `results/`
|
|
54
|
+
- `benchmarks/generated/`
|
|
55
|
+
- `model-runs/generated/`
|
|
56
|
+
- `*.tgz`
|
|
57
|
+
- `*.whl`
|
|
58
|
+
- `*.tar.gz`
|
|
59
|
+
- `__pycache__/`
|
|
60
|
+
- `*.egg-info/`
|
|
61
|
+
|
|
62
|
+
## Checklist de privacidade
|
|
63
|
+
|
|
64
|
+
Antes de publicar, confira se nao existe:
|
|
65
|
+
|
|
66
|
+
- `.env` ou arquivo local de configuracao;
|
|
67
|
+
- senha;
|
|
68
|
+
- token;
|
|
69
|
+
- chave de API;
|
|
70
|
+
- certificado privado;
|
|
71
|
+
- dado de cliente;
|
|
72
|
+
- log real;
|
|
73
|
+
- print com informacao sensivel;
|
|
74
|
+
- nome de projeto privado que voce nao quer expor;
|
|
75
|
+
- caminho local sensivel em exemplo publico.
|
|
76
|
+
|
|
77
|
+
Se algo sensivel ja entrou no historico do Git, apagar o arquivo depois pode
|
|
78
|
+
nao ser suficiente. Nesse caso, trate como remocao de dado sensivel do
|
|
79
|
+
historico antes de publicar.
|
|
80
|
+
|
|
81
|
+
## Checklist tecnico
|
|
82
|
+
|
|
83
|
+
1. Confirme que `.gitignore` cobre dependencias, builds, logs e segredos.
|
|
84
|
+
2. Confirme que `README.md` explica objetivo, status, estrutura e validacao.
|
|
85
|
+
3. Confirme que `LICENSE` existe.
|
|
86
|
+
4. Rode a validacao geral:
|
|
87
|
+
|
|
88
|
+
```powershell
|
|
89
|
+
python scripts/health_check.py
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
5. Rode a bateria estrutural:
|
|
93
|
+
|
|
94
|
+
```powershell
|
|
95
|
+
python scripts/framework_tests.py
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
6. Procure sinais obvios de segredo antes do primeiro commit:
|
|
99
|
+
|
|
100
|
+
```powershell
|
|
101
|
+
rg -n -i "api[_-]?key|token|secret|senha|password|client_secret|private_key" .
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Revise manualmente qualquer resultado. Nem todo resultado e vazamento; alguns
|
|
105
|
+
podem ser apenas regras de seguranca ou exemplos.
|
|
106
|
+
|
|
107
|
+
## Primeiro commit
|
|
108
|
+
|
|
109
|
+
Depois de criar o repositorio no GitHub:
|
|
110
|
+
|
|
111
|
+
```powershell
|
|
112
|
+
git init
|
|
113
|
+
git add .
|
|
114
|
+
git commit -m "Initial AI execution protocol framework"
|
|
115
|
+
git branch -M main
|
|
116
|
+
git remote add origin https://github.com/SEU_USUARIO/NOME_DO_REPOSITORIO.git
|
|
117
|
+
git push -u origin main
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Criterio de pronto para publicar
|
|
121
|
+
|
|
122
|
+
O projeto esta pronto para publicacao inicial quando:
|
|
123
|
+
|
|
124
|
+
- a proposta aparece como experimental;
|
|
125
|
+
- a estrutura separa estudo (`docs/`) de operacao (`protocol/`);
|
|
126
|
+
- arquivos privados e gerados estao ignorados;
|
|
127
|
+
- README, licenca e indice estao consistentes;
|
|
128
|
+
- validacoes locais passaram ou os limites estao documentados.
|