Communitygithub.com

agent-architecture-audit

Diagnóstico full-stack para aplicações de agentes e LLM. Audita as 12 camadas da stack de agentes em busca de regressão de wrapper, poluição de memória, falhas de disciplina de ferramentas, loops de reparo ocultos e corrupção de renderização. Produz descobertas classificadas por gravidade com correções first-code. Essencial para desenvolvedores que criam aplicações de agentes, loops autônomos ou qualquer funcionalidade baseada em LLM. Use quando um agente ou funcionalidade LLM se comporta mal e a camada com falha é desconhecida, ou antes de lançar uma stack de agentes.

O que é agent-architecture-audit?

O Agent Architecture Audit é uma skill de diagnóstico especializada para desenvolvedores que constroem sistemas de agentes e aplicações baseadas em LLM. Seu principal objetivo é identificar a camada exata onde uma falha está ocorrendo dentro da complexa stack de agentes, que abrange desde o prompt do sistema até a persistência de dados e loops de reparo ocultos. Diferente de ferramentas de depuração genéricas, esta skill oferece uma abordagem sistemática e baseada em evidências para diagnosticar problemas como regressão de wrapper (onde camadas extras pioram o modelo base), poluição de memória entre sessões, e falhas na execução de ferramentas. A skill é compatível com qualquer plataforma de agente (Claude Code, Cursor, Codex, etc.) e gera relatórios estruturados em JSON com descobertas classificadas por gravidade, priorizando correções no código (code-first) em vez de ajustes no prompt. É ativada principalmente antes de lançamentos em produção, quando o comportamento do agente degrada após adicionar novas camadas, ou durante debugging prolongado sem causa raiz identificada.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/ECC/tree/main/skills/agent-architecture-audit

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Auditoria de Arquitetura de Agente

Um fluxo de trabalho diagnóstico para sistemas de agentes que escondem falhas por trás de camadas de wrapper, memória obsoleta, loops de repetição ou mutações de transporte/renderização.

Quando Ativar

OBRIGATÓRIO para:

  • Lançar qualquer aplicação de agente ou baseada em LLM em produção
  • Lançar funcionalidades com chamada de ferramentas, memória ou fluxos de múltiplas etapas
  • O comportamento do agente degrada após adicionar camadas de wrapper
  • O usuário relata "o agente está piorando" ou "as ferramentas estão instáveis"
  • O mesmo modelo funciona no playground, mas quebra dentro do seu wrapper
  • Depuração do comportamento do agente por mais de 15 minutos sem encontrar a causa raiz

Especialmente crítico quando:

  • Você adicionou novas camadas de prompt, definições de ferramentas ou sistemas de memória
  • Diferentes agentes no seu sistema se comportam de forma inconsistente
  • O modelo estava bem ontem, mas está alucinando hoje
  • Você suspeita de loops de reparo/repetição ocultos que mutam silenciosamente as respostas

Não use para:

  • Depuração geral de código — use agent-introspection-debugging
  • Revisão de código — use agentes de revisão específicos da linguagem
  • Varredura de segurança — use security-review ou security-review/scan
  • Benchmarking de desempenho de agente — use agent-eval
  • Escrever novas funcionalidades — use a skill de fluxo de trabalho apropriada

A Stack de 12 Camadas

Todo sistema de agente possui essas camadas. Qualquer uma delas pode corromper a resposta:

#CamadaO Que Dá Errado
1Prompt do sistemaInstruções conflitantes, inchaço de instruções
2Histórico da sessãoInjeção de contexto obsoleto de turnos anteriores
3Memória de longo prazoPoluição entre sessões, tópicos antigos em novas conversas
4DestilaçãoArtefatos comprimidos reentrando como pseudofatos
5Recordação ativaCamadas de resumo redundantes desperdiçando contexto
6Seleção de ferramentasRoteamento errado da ferramenta, modelo ignora ferramentas necessárias
7Execução de ferramentasExecução alucinada — alega chamar, mas não chama
8Interpretação de ferramentasSaída da ferramenta mal interpretada ou ignorada
9Modelagem da respostaCorrupção de formato na resposta final
10Renderização da plataformaMutação na camada de transporte (UI, API, CLI altera respostas válidas)
11Loops de reparo ocultosAgentes de fallback/repetição silenciosos executando segunda passagem do LLM
12PersistênciaEstado expirado ou artefatos em cache reutilizados como evidência viva

Padrões Comuns de Falha

1. Regressão de Wrapper

O modelo base produz respostas corretas, mas as camadas de wrapper as pioram.

Sintomas:

  • O modelo funciona bem no playground ou chamada direta da API, mas quebra no seu agente
  • Adicionou uma nova camada de prompt, o comportamento existente degradou
  • O agente parece confiante, mas está confiantemente errado
  • "Estava funcionando antes da última atualização"

2. Contaminação de Memória

Tópicos antigos vazam para novas conversas através do histórico, recuperação de memória ou destilação.

Sintomas:

  • O agente traz à tona tópicos passados não relacionados
  • Correções do usuário não persistem (memória antiga sobrescreve a nova)
  • Artefatos da mesma sessão reentram como pseudofatos
  • A memória cresce sem limites, degradando a qualidade da resposta ao longo do tempo

3. Falha de Disciplina de Ferramentas

Ferramentas são declaradas no prompt, mas não são impostas no código. O modelo as ignora ou alucina a execução.

Sintomas:

  • "Deve usar ferramenta X" no prompt, mas o modelo responde sem chamá-la
  • Os resultados da ferramenta parecem corretos, mas nunca foram realmente executados
  • Diferentes ferramentas disputam a mesma responsabilidade
  • O modelo usa a ferramenta quando não deveria, ou a ignora quando deve usá-la

4. Corrupção de Renderização/Transporte

A resposta interna do agente está correta, mas a camada da plataforma a altera durante a entrega.

Sintomas:

  • Logs mostram resposta correta, o usuário vê saída quebrada
  • Renderização de Markdown, análise JSON ou fragmentos de streaming corrompem respostas válidas
  • Agente de fallback oculto substitui silenciosamente a resposta antes da entrega
  • A saída difere entre terminal e UI

5. Camadas de Agente Ocultas

Agentes de reparo, repetição, sumarização ou recordação silenciosos são executados sem contratos explícitos.

Sintomas:

  • A saída muda entre a geração interna e a entrega ao usuário
  • Loops de "correção automática" executam uma segunda passagem do LLM que o usuário desconhece
  • Múltiplos agentes modificam a mesma saída sem coordenação
  • As respostas são "alisadas" ou "corrigidas" por camadas invisíveis

Fluxo de Trabalho de Auditoria

Fase 1: Escopo

Defina o que está auditando:

  • Sistema alvo — qual aplicação de agente?
  • Pontos de entrada — como os usuários interagem com ele?
  • Stack de modelo — qual(is) LLM(s) e provedores?
  • Sintomas — o que o usuário relata?
  • Janela de tempo — quando começou?
  • Camadas para auditar — quais das 12 camadas se aplicam?

Fase 2: Coleta de Evidências

Colete evidências da base de código:

  • Código fonte — loop do agente, roteador de ferramentas, admissão de memória, montagem do prompt
  • Logs — rastreamentos históricos de sessão, registros de chamadas de ferramentas
  • Configuração — modelos de prompt, esquemas de ferramentas, configurações do provedor
  • Arquivos de memória — POPs, bases de conhecimento, arquivos de sessão

Use rg para procurar antipadrões:

# Requisitos de ferramenta expressos apenas no texto do prompt (não no código)
rg "deve.*usar.*ferramenta|required.*call" --type md

# Execução de ferramenta sem validação
rg "tool_call|toolCall|tool_use" --type py --type ts

# Chamadas LLM ocultas fora do loop principal do agente
rg "completion|chat\.create|messages\.create|llm\.invoke"

# Admissão de memória sem prioridade para correções do usuário
rg "memory.*admit|long.*term.*update|persist.*memory" --type py --type ts

# Loops de fallback que executam chamadas LLM adicionais
rg "fallback|retry.*llm|repair.*prompt|re-?prompt" --type py --type ts

# Mutação silenciosa da saída
rg "mutate|rewrite.*response|transform.*output|shap" --type py --type ts

Fase 3: Mapeamento de Falhas

Para cada descoberta, documente:

  • Sintoma — o que o usuário vê
  • Mecanismo — como o wrapper o causa
  • Camada de origem — qual das 12 camadas
  • Causa raiz — a causa mais profunda
  • Evidência — referência de arquivo:linha ou log:linha
  • Confiança — 0.0 a 1.0

Fase 4: Estratégia de Correção

Ordem de correção padrão (primeiro o código, não o prompt):

  1. Impor requisitos de ferramenta no código — impor no código, não apenas no texto do prompt
  2. Remover ou restringir agentes de reparo ocultos — tornar o fallback explícito com contratos
  3. Reduzir duplicação de contexto — mesma informação através de prompt + histórico + memória + destilação
  4. Apertar a admissão de memória — correções do usuário > afirmações do agente
  5. Apertar os gatilhos de destilação — não comprimir o que não deve ser comprimido
  6. Reduzir a mutação de renderização — passagem direta, não transformar
  7. Converter para envelopes JSON tipados — fluxo interno estruturado, não prosa livre

Modelo de Gravidade

NívelSignificadoAção
criticalO agente pode produzir com confiança comportamento operacional erradoCorrigir antes do próximo lançamento
highO agente degrada frequentemente a correção ou estabilidadeCorrigir nesta sprint
mediumA correção geralmente sobrevive, mas a saída é frágil ou desperdiçadoraPlanejar para o próximo ciclo
lowPrincipalmente questões cosméticas ou de manutenibilidadeBacklog

Formato de Saída

Apresente as descobertas ao usuário nesta ordem:

  1. Descobertas classificadas por gravidade (mais críticas primeiro)
  2. Diagnóstico da arquitetura (qual camada corrompeu o quê e por quê)
  3. Plano de correção ordenado (primeiro o código, não o prompt)

Não comece com elogios ou resumos. Se o sistema está quebrado, diga isso diretamente.

Perguntas de Diagnóstico Rápido

Ao auditar um sistema de agente, responda:

#PerguntaSe Sim →
1O modelo pode ignorar uma ferramenta necessária e ainda responder?Ferramenta não imposta no código
2O conteúdo de conversas antigas aparece em novos turnos?Contaminação de memória
3A mesma informação está no prompt do sistema E na memória E no histórico?Duplicação de contexto
4A plataforma executa uma segunda passagem do LLM antes da entrega?Loop de reparo oculto
5A saída difere entre a geração interna e a entrega ao usuário?Corrupção de renderização
6Regras "deve usar ferramenta X" estão apenas no texto do prompt?Falha de disciplina de ferramentas
7O monólogo do próprio agente pode se tornar memória persistente?Envenenamento de memória

Antipadrões a Evitar

  • Evite culpar o modelo antes de falsear regressões nas camadas de wrapper.
  • Evite culpar a memória sem mostrar o caminho da contaminação.
  • Não deixe um estado atual limpo apagar um incidente histórico sujo.
  • Não trate prosa Markdown como um protocolo interno confiável.
  • Não aceite "deve usar ferramenta" no texto do prompt quando o código nunca o impõe.
  • Mantenha as descobertas diretas, baseadas em evidências e classificadas por gravidade.

Esquema de Relatório

As auditorias devem produzir relatórios estruturados seguindo este formato:

{
  "schema_version": "ecc.agent-architecture-audit.report.v1",
  "executive_verdict": {
    "overall_health": "high_risk",
    "primary_failure_mode": "string",
    "most_urgent_fix": "string"
  },
  "scope": {
    "target_name": "string",
    "model_stack": ["string"],
    "layers_to_audit": ["string"]
  },
  "findings": [
    {
      "severity": "critical|high|medium|low",
      "title": "string",
      "mechanism": "string",
      "source_layer": "string",
      "root_cause": "string",
      "evidence_refs": ["file:line"],
      "confidence": 0.0,
      "recommended_fix": "string"
    }
  ],
  "ordered_fix_plan": [
    { "order": 1, "goal": "string", "why_now": "string", "expected_effect": "string" }
  ]
}

Skills Relacionadas

  • agent-introspection-debugging — Depurar falhas de tempo de execução do agente (loops, timeouts, erros de estado)
  • agent-eval — Comparar desempenho de agentes frente a frente
  • security-review — Auditoria de segurança para código e configuração
  • autonomous-agent-harness — Configurar operações de agente autônomo
  • agent-harness-construction — Construir harnesses de agente do zero

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/content-engine

Create platform-native content systems for X, LinkedIn, TikTok, YouTube, newsletters, and repurposed multi-platform campaigns. Use when the user wants social posts, threads, scripts, content calendars, or one source asset adapted cleanly across platforms.

affaan-m/ECC

Multi-platform content distribution across X, LinkedIn, Threads, and Bluesky. Adapts content per platform using content-engine patterns. Never posts identical content cross-platform. Use when the user wants to distribute content across social platforms.

affaan-m/fal-ai-media

Unified media generation via fal.ai MCP — image, video, and audio. Covers text-to-image (Nano Banana), text/image-to-video (Seedance, Kling, Veo 3), text-to-speech (CSM-1B), and video-to-audio (ThinkSound). Use when the user wants to generate images, videos, or audio with AI.

affaan-m/manim-video

日本語翻訳:このファイルは manim-video 用の日本語翻訳が必要です

affaan-m/remotion-video-creation

Remotion のベストプラクティス - React で動画を作成する。3D、アニメーション、音声、字幕、チャート、トランジションなどをカバーするドメイン固有の29のルール。

affaan-m/video-editing

AI-assisted video editing workflows for cutting, structuring, and augmenting real footage. Covers the full pipeline from raw capture through FFmpeg, Remotion, ElevenLabs, fal.ai, and final polish in Descript or CapCut. Use when the user wants to edit video, cut footage, create vlogs, or build video content.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

agent-self-evaluation

Use after completing any non-trivial task. The agent self-rates its output on 5 axes — accuracy, completeness, clarity, actionability, conciseness — with concrete evidence per criterion. Produces a structured 1-5 scorecard with specific improvement suggestions.

agent-sort

Build an evidence-backed ECC install plan for a specific repo by sorting skills, commands, rules, hooks, and extras into DAILY vs LIBRARY buckets using parallel repo-aware review passes. Use when ECC should be trimmed to what a project actually needs instead of loading the full bundle.

ai-first-engineering

Engineering operating model for teams where AI agents generate a large share of implementation output. Use when setting team process, review gates, or ownership rules for a codebase largely written by agents.

ai-regression-testing

Regression testing strategies for AI-assisted development. Sandbox-mode API testing without database dependencies, automated bug-check workflows, and patterns to catch AI blind spots where the same model writes and reviews code. Use when adding regression coverage to AI-assisted code, or when the same model both wrote and reviewed a change.

android-clean-architecture

Clean Architecture patterns for Android and Kotlin Multiplatform projects — module structure, dependency rules, UseCases, Repositories, and data layer patterns. Use when structuring modules, layers, or data flow in an Android or KMP project.

angular-developer

Generates Angular code and provides architectural guidance. Trigger when creating projects, components, or services, or for best practices on reactivity (signals, linkedSignal, resource), forms, dependency injection, routing, SSR, accessibility (ARIA), animations, styling (component styles, Tailwind CSS), testing, or CLI tooling.

api-connector-builder

Build a new API connector or provider by matching the target repo

Habilidades Relacionadas