feat: promover ag-agente a Arquiteto de Agentes + scripts de governança

- Persona reescrita: foco em design de sistemas multiagente, governança
  arquitetural, protocolos de colaboração e visão estratégica
- Incluído mapa visual de agentes e tabela de protocolos
- Princípios arquiteturais: responsabilidade única, acoplamento fraco,
  coesão alta, herança consciente
- AGENTS e README atualizados para refletir novo papel
- validar-repositorio.sh: validação local (sem GitHub Actions)
- scripts/auditar-agentes.sh: auditoria de consistência entre agentes
- .git/hooks/pre-commit: validação automática antes de cada commit
This commit is contained in:
Luiz Silva 2026-06-19 16:23:26 -03:00
parent bf9be375e2
commit d32a08d811
5 changed files with 257 additions and 145 deletions

47
validar-repositorio.sh Executable file
View file

@ -0,0 +1,47 @@
#!/usr/bin/env bash
# --------------------------------------------------------------
# validar-repositorio.sh – validações rápidas para o projeto AGENT-IA
# --------------------------------------------------------------
# 1) Verifica se ainda existem artefatos .md proibidos
# 2) Checa se a versão no manifesto.json está no formato semver (X.Y.Z)
# 3) Executa verificar-linhas.sh (se disponível)
# --------------------------------------------------------------
set -euo pipefail
REPO_ROOT="$(cd "$(dirname "$0")" && pwd)"
cd "$REPO_ROOT"
msg_ok() { echo -e "\e[32m✅ $1\e[0m"; }
msg_err() { echo -e "\e[31m❌ $1\e[0m"; }
# ---- 1) Busca por arquivos .md proibidos ---------------------
forbidden=$(git ls-files "*.md" | grep -vE "(COMERCIAL/|\.ajuda|regras-negocio\.md|dominio-.*\.md|\.docs/adrs|\.git)" || true)
if [[ -n "$forbidden" ]]; then
msg_err "Arquivos .md proibidos encontrados:"
echo "$forbidden"
exit 1
else
msg_ok "Nenhum arquivo .md proibido encontrado."
fi
# ---- 2) Validação da versão no manifesto.json ---------------
if [[ -f manifesto.json ]]; then
version=$(jq -r '.versao // empty' manifesto.json)
if [[ "$version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
msg_ok "Versão do manifesto válida: $version"
else
msg_err "Versão do manifesto inválida ou ausente em manifesto.json"
exit 1
fi
else
msg_err "manifesto.json não encontrado!"
exit 1
fi
# ---- 3) Verificar limite de linhas (opcional) ----------------
if [[ -x "$REPO_ROOT/verificar-linhas.sh" ]]; then
"$REPO_ROOT/verificar-linhas.sh"
msg_ok "Limite de linhas verificado."
fi
exit 0