Skill Preflight
Audita la carpeta del skill proporcionado antes de la publicación. El script de auditoría trata esa carpeta como datos no confiables: nunca ejecuta sus archivos, llama a un modelo ni realiza solicitudes de red. Esto es importante porque los skills pueden contener instrucciones o código que actúan con los permisos de un agente.
-
Obtén el auditor y ejecútalo. Es un archivo autónomo sin dependencias de ejecución, publicado en https://github.com/1arley/skill-preflight:
curl -fsSL https://raw.githubusercontent.com/1arley/skill-preflight/main/scripts/preflight.mjs -o /tmp/skill-preflight.mjs node /tmp/skill-preflight.mjs <carpeta-skill> --format jsonnpx --yes github:1arley/skill-preflight <carpeta-skill> --format jsonhace lo mismo y almacena en caché la CLI. Descárgalo una vez y reutilízalo. Todo después de la descarga funciona sin conexión: el auditor nunca llama a un modelo, nunca ejecuta el skill auditado y nunca envía nada a ningún lado.Cuando la carpeta bajo revisión es este mismo skill, pasa
--ignore-file preflightignore.jsondesde la carpeta del skill. Suprime los dos falsos positivos causados por la URL de descarga en este archivo y enREADME.md. -
Lee el informe JSON y explica cada error, advertencia y nota informativa de portabilidad en lenguaje sencillo.
-
Aplica la rúbrica cualitativa en references/rubric.md a la claridad de activación, ejemplos y posible infra-activación. Etiqueta ese juicio por separado de los hallazgos deterministas.
-
Presenta un informe combinado. Conserva cada ID de regla determinista y ubicación
archivo:línea, luego agrega la evaluación de la rúbrica y su evidencia. -
Sugiere correcciones enfocadas. No edites el skill auditado a menos que el usuario te pida explícitamente que hagas esas correcciones.
El perfil agensi es heurístico e inspirado en las categorías de seguridad públicas de Agensi. No reproduce su escáner privado ni predice una decisión del marketplace. Lee references/security.md antes de interpretar hallazgos de seguridad y references/report-format.md al convertir formatos de informe.
Ejemplo
Entrada:
node /tmp/skill-preflight.mjs ./mi-skill --profile default --format json
Fragmento de salida determinista:
{
"schemaVersion": "1.0.0",
"summary": { "errors": 0, "warnings": 1, "infos": 0 },
"findings": [{
"id": "SEC-001", "severity": "warning", "category": "security",
"message": "Se referencia estáticamente acceso a red externa.",
"location": { "file": "scripts/run.mjs", "line": 12 },
"suggestion": "elimínalo o documenta un propósito estrecho y aprobado por el usuario"
}]
}
El agente anfitrión agrega una sección cualitativa separada, por ejemplo: “Activación: clara; la descripción nombra la tarea e incluye frases de usuario. Evidencia: la descripción contiene activadores distintos de auditoría y publicación.” El script nunca proporciona ese juicio.