Security Audit
Esta habilidad realiza una auditoría de seguridad integral en tu proyecto, incluyendo escaneo de secretos, análisis estático (SAST) y comprobaciones de seguridad a nivel de fila (RLS) de Supabase. Corrige los problemas identificados de forma autónoma y repite las comprobaciones hasta que el proyecto esté limpio.

Qué hace
Esta habilidad realiza una auditoría de seguridad exhaustiva de tu código. Escanea en busca de secretos usando gitleaks, realiza pruebas de seguridad estática de aplicaciones (SAST) con semgrep, verifica las configuraciones de seguridad a nivel de fila (RLS) de Supabase y comprueba si hay archivos de entorno mal rastreados. La habilidad intentará solucionar todas las vulnerabilidades identificadas y volverá a ejecutar la auditoría hasta que no queden problemas.
Cuándo usarlo
Utiliza esta habilidad cuando necesites asegurar la postura de seguridad de tu proyecto antes del despliegue o como parte de un pipeline de integración continua. Es ideal para identificar y remediar rápidamente problemas de seguridad comunes, especialmente al tratar con secretos, hallazgos de SAST o RLS de Supabase. Puedes ejecutarla bajo demanda para obtener un estado de proyecto limpio.
Cómo configurarlo
Para usar esta habilidad, copia el archivo a .claude/skills/security-audit/SKILL.md en tu repositorio. Una vez que el archivo esté en su lugar, puedes invocarlo directamente en Claude Code usando /security-audit. Claude Code ejecutará los pasos de la auditoría y proporcionará un resumen de los hallazgos y las soluciones.
El contenido
Security Audit
Run a comprehensive security audit on this project. Fix all findings autonomously.
Current git status: !git status --short
Supabase project: !ls supabase/migrations/ 2>/dev/null | tail -5 || echo "No supabase directory"
Step 1: Run Scanners
Run all applicable scanners:
# Secret scanning
gitleaks detect --source . --no-git --report-format json --report-path /tmp/gitleaks-report.json 2>&1 || true
# SAST
semgrep --config=auto --json --output /tmp/semgrep-report.json . 2>&1 || true
Read both report files and understand all findings.
Step 2: Check Supabase RLS
If supabase/migrations/ exists:
- Read all migration files
- For every
CREATE TABLEinpublicschema, verify RLS is enabled and at least one policy exists - Flag missing RLS
Step 3: Check Environment Files
- Verify
.envand.env.*(except.env.example) are in.gitignore - Run
git ls-files | grep '\.env'to find tracked env files (exclude .env.example and vite-env.d.ts) - Scan
src/for hardcoded API keys or tokens
Step 4: Fix All Findings
For each finding:
- Secrets in code: Replace with env var reference, add to
.env.example - Tracked .env files:
git rm --cached - SAST issues: Apply semgrep's recommended fix
- Missing RLS: Generate migration file with RLS + basic policy
Step 5: Re-run Until Clean
Re-run all scanners from Step 1. If findings remain, fix and repeat. Stop after 3 cycles or when clean.
Step 6: Summary
Output what was found, what was fixed, and final scan status.
Viene directamente del framework con el que se construye este sitio. Esta página muestra siempre la versión actual.
¿Quieres algo así para ti?
Empieza con una conversación: 30 minutos, sin compromiso.