diff --git a/agents/ag-agente/persona b/agents/ag-agente/persona index 1eeed38..e4e883c 100644 --- a/agents/ag-agente/persona +++ b/agents/ag-agente/persona @@ -37,6 +37,7 @@ Enquanto os outros agentes trabalham **no** produto, você projeta **o** sistema 4. **Herança Consciente** — `global/` é a base universal; extensões locais só existem quando o global não é suficiente 5. **Consistência Global First** — antes de criar algo local, verificar se já existe ou deveria existir em `global/` 6. **Extensão sem extensão** — artefatos de conhecimento não possuem extensão de arquivo; scripts (`.sh`) e dados (`.json`) mantêm as suas +7. **Zod como validador padrão** — sempre que houver validação de variáveis, dados de entrada, parâmetros ou configurações, optar por Zod. Validação manual com `if/typeof` só é aceitável quando Zod não for viável (ver `global/rules/zod-validacao-padrao`) ## Escopo de Atuação @@ -223,6 +224,7 @@ sh verificar-linhas.sh ## Restrições +- **NUNCA executar `git commit`, `git push` ou qualquer comando que altere o histórico do repositório** — o controle de versão é responsabilidade exclusiva do usuário humano (ver `global/rules/proibido-commit-ia`) - NÃO altera regras de negócio dos projetos — atua exclusivamente no ecossistema de agentes - NÃO cria agentes sem escopo claramente diferenciado dos existentes - NÃO duplica conteúdo entre artefatos — prefere referência cruzada a cópia @@ -246,4 +248,4 @@ sh verificar-linhas.sh - [ ] `AGENTS` e `README` refletem a mudança? - [ ] Nenhuma instrução nova contradiz uma rule global ou outra persona? - [ ] As fronteiras de escopo continuam exclusivas? -- [ ] Mudanças foram commitadas com mensagem descritiva? +- [ ] Alterações foram informadas ao usuário para que ele faça o commit? diff --git a/global/rules/proibido-commit-ia b/global/rules/proibido-commit-ia new file mode 100644 index 0000000..d03e1e2 --- /dev/null +++ b/global/rules/proibido-commit-ia @@ -0,0 +1,75 @@ +--- +type: rule +name: proibido-commit-ia +description: A IA nunca pode executar git commit, git push ou qualquer operação que altere o histórico do repositório +scope: global +trigger: always_on +updatedAt: "2026-06-19" +--- + +# Regra: Proibido Commit pela IA + +## Contexto + +O controle de versão é responsabilidade exclusiva do usuário humano. A IA pode preparar alterações, criar arquivos, editar código e até sugerir mensagens de commit — mas NUNCA deve executar comandos que alterem o histórico do repositório. + +## Regra + +A IA **NUNCA** deve executar os seguintes comandos (nem variações deles): + +- `git commit` +- `git push` +- `git merge` +- `git rebase` +- `git tag` +- `git reset` +- `git revert` +- `git cherry-pick` +- `git stash drop` +- `git branch -d` / `git branch -D` + +### Comandos permitidos (somente leitura e staging) + +- `git status` ✅ +- `git diff` ✅ +- `git log` ✅ +- `git add` ✅ (preparar alterações para o usuário revisar) +- `git stash` / `git stash pop` ✅ (preservar trabalho temporário) +- `git branch` (listar) ✅ +- `git ls-files` ✅ +- `git show` ✅ + +## Exemplos + +❌ **Errado** — commitar automaticamente: +```sh +git add -A && git commit -m "fix: corrigir bug" +``` + +❌ **Errado** — push automático: +```sh +git push origin main +``` + +✅ **Correto** — preparar e informar: +```sh +git add -A +git status +# Informar ao usuário: "Alterações staged. Revise e faça o commit quando estiver pronto." +``` + +✅ **Correto** — sugerir mensagem de commit: +``` +Sugestão de commit: +git commit -m "feat: adicionar validação de schema no endpoint /usuarios" +``` + +## Impacto + +- **Segurança:** o usuário mantém controle total sobre o que entra no histórico +- **Revisão:** toda alteração pode ser inspecionada antes de ser commitada +- **Reversibilidade:** evita commits acidentais que poluem o histórico + +## Referências + +- Princípio de autonomia controlada: a IA executa, o humano decide diff --git a/manifesto.json b/manifesto.json index 3d8bc29..c002ff5 100644 --- a/manifesto.json +++ b/manifesto.json @@ -1,7 +1,7 @@ { "versao": "3.0.0", "base_url": "https://paiol.idz.one/desenvolvimento/agent-ia", - "gerado_em": "2026-06-19T19:01:46-03:00", + "gerado_em": "2026-06-19T19:25:38-03:00", "artefatos": { "global": { "rules": [ @@ -13,6 +13,7 @@ "global/rules/jsdoc-padrao", "global/rules/limite-linhas", "global/rules/mensagens-usuario", + "global/rules/proibido-commit-ia", "global/rules/regras-negocio-md", "global/rules/typescript-sem-any", "global/rules/zod-validacao-padrao"