Skip to content

security-audit-agent

Mundo aislado para auditorías de seguridad de código de OTROS mundos del universo, vía el skill oficial security-audit de Cloudflare (cloudflare/security-audit-skill, MIT). Mismo patrón que seo-agent/ads-agent: mundo auditor, nunca auditado — el skill vive solo acá, nunca se instala en _shared/skills/ ni en el world objetivo.

Ver AGENTS.md para contexto completo, TASKS.md para el backlog y CLAUDE.md para las convenciones heredadas del universo.

Workflow defensivo, source-first, de 6 fases:

  1. Reconocimiento (RECONNAISSANCE.md) — mapea el codebase, stack, superficie de ataque, sin ejecutar nada todavía.
  2. Búsqueda dirigida (HUNTING.md) — subagentes (“hunters”) aislados, cada uno con su <output-dir>/agents/<id>/{scratch,artifacts}/ propio, buscan por clase de ataque (ATTACK-CLASSES.md + los archivos temáticos: WEB-PROTOCOL-AND-AUTH.md, CLIENT-SIDE.md, AI-AND-LLM.md, CLOUD-AND-DEPLOYMENT.md, DATA-ISOLATION-AND-LIFECYCLE.md, DESKTOP-MOBILE-AND-LOCAL-IPC.md, MEMORY-SAFETY-AND-BINARY.md, PROTOCOLS-RPC-AND-MESSAGING.md, RESOURCE-EXHAUSTION-AND-AVAILABILITY.md, SUPPLY-CHAIN-AND-RELEASE.md).
  3. Validación de candidatos — cada hallazgo candidato se confirma contra el código real antes de pasar a la siguiente fase (nada se reporta sin evidencia verificada).
  4. findings.json — machine-readable, valida contra report-schema.json con validate-findings.cjs (Node stdlib, sin dependencias npm).
  5. Verificación independiente — un segundo pase (verifier), separado del hunter que encontró el issue, lo re-confirma.
  6. Reportes finales (VALIDATION-AND-REPORTING.md) — REPORT.md (resumen ejecutivo), FINDINGS-DETAIL.md (detalle técnico por hallazgo), NEEDS-VALIDATION.md (candidatos sin confirmar, para revisión humana). validate-coverage-ledger.cjs verifica que el reconocimiento cubrió el codebase real, no solo una muestra.

Contrato completo: .claude/skills/security-audit/SKILL.md.

  • guidance (default) — preguntas puntuales o revisión focalizada (“¿este endpoint tiene un problema de auth?”, “revisá este diff”). No crea artefactos, no dispara las 6 fases.
  • full audit — solo ante pedido explícito de auditoría/pentest/review end-to-end. Dispara el workflow completo y escribe los artefactos compartidos (run-metadata.json, architecture.md, coverage-ledger.json, findings.json, REPORT.md, FINDINGS-DETAIL.md, NEEDS-VALIDATION.md) en <output-dir>/ — por defecto ~/security-audit-skill/<repo-name>/run-<N>/, o reports/<world>-<fecha>/ dentro de este mundo si preferís trackearlo en git (reports/ ya está en .gitignore — son artefactos grandes y regenerables).

Comando /security-run-on (world → world)

Section titled “Comando /security-run-on (world → world)”

.claude/commands/security-run-on.md (symlink desde _shared/commands/, curado en .claude/commands.manifest.txt) ejecuta security-audit contra otro world del monorepo sin instalarlo ahí:

/security-run-on <world-name> [guidance|full-audit] [pregunta/alcance]
/security-run-on cnm-cigars guidance "revisá el endpoint de login por SQLi"
/security-run-on lippia-alba full-audit
  • guidance (default) — pregunta puntual o revisión focalizada, no crea artefactos.
  • full-audit — workflow completo de 6 fases, artefactos en reports/<world>-<fecha>/ dentro de este mundo (nunca dentro del target).

Pasos internos: get_world_context($1) vía MCP orchestrator → resuelve ../$1 → inspección read-only del código. Si un finding tiene fix sugerido y se pide aplicarlo: rama security/<slug>-<fecha> dentro del world objetivo, commit local (nunca push/merge automático, nunca commit directo a main/master/develop del mundo auditado). Fuente completa: .claude/commands/security-run-on.md.

Section titled “Comandos disponibles (.claude/commands/, symlinks curados en commands.manifest.txt)”
Comando Uso
/session-start Carga contexto del mundo al empezar sesión
/session-end Cierra sesión, resume cambios
/commit Commit siguiendo Conventional Commits
/commit-push-pr Commit + push + abre PR
/task-start Abre tracking de tiempo (MCP time-tracker)
/task-end Cierra tracking de tiempo
/search-docs Busca en la documentación del universo

Editar el subset activo en .claude/commands.manifest.txt + regenerar con pwsh $AI_OS_ROOT/_shared/scripts/link-world-commands.ps1 -World security-audit-agent.