Inicio rápido de Codex Security CLI
Configura Codex Security, ejecuta un análisis local y revisa el informe, los hallazgos y la cobertura.
Codex Security ayuda a los equipos de seguridad e ingeniería a encontrar, confirmar y corregir vulnerabilidades. Usa su interfaz de línea de comandos (CLI) para analizar repositorios que poseas o tengas permiso para evaluar, revisar los hallazgos a lo largo del tiempo y comprobar los cambios antes de que se incorporen.
Comprueba los requisitos previos
La CLI requiere Node.js 22 o posterior. Para ejecutar un análisis o exportar hallazgos también se requiere Python 3.10 o posterior. Para obtener más información, consulta Autenticación y requisitos previos.
Configura y verifica la CLI
Instala el paquete publicado:
npm install @openai/codex-securityEnumera los comandos disponibles:
npx @openai/codex-security --helpConsulta también la referencia de la CLI.
Inicia sesión
Para uso local, inicia sesión con tu cuenta de ChatGPT:
npx @openai/codex-security loginEn una máquina remota o sin interfaz gráfica, usa la autenticación de dispositivo:
npx @openai/codex-security login --device-authPara CI y otros flujos de trabajo automatizados, configura una OpenAI API key:
export OPENAI_API_KEY="<your-api-key>"Para las credenciales de AWS, consulta la configuración de Amazon Bedrock.
Para usar tu inicio de sesión de ChatGPT cuando también haya una API key configurada, selecciónalo explícitamente:
npx @openai/codex-security scan . --auth chatgptPara exigir la API key del entorno, selecciona la autenticación mediante API key:
npx @openai/codex-security scan . --auth api-keySegún tu cuenta y repositorio, los análisis del repositorio completo también pueden requerir Trusted Access for Cyber.
Prepara un análisis
Elige un repositorio que quieras analizar y un directorio donde escribir los resultados.
REPOSITORY=/path/to/repository
SCAN_DIR=/path/outside/repository/codex-security-resultsSi omites --output-dir, Codex Security guarda los resultados en su propio directorio
persistente de estado. Los resultados pueden incluir fragmentos del código fuente y detalles de vulnerabilidades,
así que elige una ubicación privada y una política de retención adecuada.
Si no se puede escribir en el directorio de estado predeterminado, selecciona un directorio con permisos de escritura fuera del repositorio analizado:
export CODEX_SECURITY_STATE_DIR=/path/outside/repository/codex-security-stateComprueba el repositorio, el objetivo y el directorio de salida antes de iniciar un análisis:
npx @openai/codex-security scan "$REPOSITORY" --output-dir "$SCAN_DIR" --dry-runLa ejecución de prueba comprueba las entradas locales sin iniciar Codex, cargar credenciales ni examinar el intérprete de Python del plugin.
Ejecuta tu primer análisis
Ejecuta un análisis estándar y conserva sus resultados en el directorio seleccionado:
npx @openai/codex-security scan "$REPOSITORY" --output-dir "$SCAN_DIR"De forma predeterminada, la CLI escribe el progreso del análisis y su resumen de finalización en stderr. No imprime el resultado completo del análisis en stdout. Un análisis completado imprime un resumen como este:
codex-security: Findings: 2 (1 high, 1 medium). Coverage: complete.
codex-security: Elapsed: 42s.
codex-security: Report: /path/outside/repository/codex-security-results/report.md
codex-security: Results: /path/outside/repository/codex-security-resultsEl uso de tokens y el costo estimado aparecen cuando están disponibles. Para imprimir el resultado completo como JSON legible por máquinas, solicita explícitamente una salida estructurada:
npx @openai/codex-security scan "$REPOSITORY" --output-dir "$SCAN_DIR" --jsonDe forma predeterminada, los análisis solo generan informes, por lo que los hallazgos permanecen disponibles para su revisión local. Cuando estés listo para ejecutar análisis en CI, quizá quieras añadir un umbral de gravedad.
Elige un modelo y un nivel de razonamiento
De forma predeterminada, los análisis usan gpt-5.6-sol con un nivel de razonamiento xhigh. Selecciona un
modelo y un nivel diferentes cuando la tarea lo requiera:
npx @openai/codex-security scan "$REPOSITORY" \
--model gpt-5.6-terra \
--effort highLos niveles admitidos son minimal, low, medium, high y xhigh.
Revisa los resultados
Abre report.md para consultar el resultado legible. El directorio del análisis también contiene los
archivos estructurados utilizados por la automatización:
codex-security-results/
├── scan-manifest.json
├── findings.json
├── coverage.json
├── report.md
├── artifacts/
└── exports/
└── results.sarif # when producedscan-manifest.jsonregistra el objetivo, el alcance, el productor y los artefactos sellados.findings.jsonregistra la gravedad, la confianza, las ubicaciones, las pruebas y la corrección de cada hallazgo.coverage.jsonregistra las superficies revisadas, las exclusiones, el trabajo aplazado, las preguntas abiertas y la exhaustividad de la cobertura.
La cobertura puede ser complete, partial o unknown. Lee todas las áreas aplazadas o
preguntas abiertas antes de tratar el análisis como evidencia de una revisión.
La referencia de la CLI describe
el contrato completo de los artefactos y la salida.
Elige el siguiente análisis
Usa un análisis de ruta cuando un repositorio contenga servicios o paquetes separados:
npx @openai/codex-security scan "$REPOSITORY" \
--path services/billing \
--path packages/authRevisa los cambios confirmados entre la revisión base y HEAD:
npx @openai/codex-security scan "$REPOSITORY" --diff origin/main --head HEADRevisa los cambios preparados y no preparados con respecto a HEAD:
npx @openai/codex-security scan "$REPOSITORY" --working-tree --base HEADLos análisis de diferencias y del árbol de trabajo esperan que el argumento del repositorio sea la raíz del árbol de trabajo de Git. Obtén las revisiones seleccionadas antes de iniciar un análisis de diferencias.
Usa el modo profundo cuando un repositorio o una ruta necesiten una revisión más amplia:
npx @openai/codex-security scan "$REPOSITORY" --mode deepEl modo profundo admite objetivos de repositorio y de ruta, pero no análisis de diferencias ni del árbol de trabajo.
Añade contexto de arquitectura y seguridad
Proporciona documentos de arquitectura, modelos de amenazas o políticas de seguridad como contexto del análisis. Esto ayuda a Codex Security a evaluar los hallazgos según el funcionamiento real de tu sistema:
npx @openai/codex-security scan "$REPOSITORY" \
--knowledge-base /path/to/architecture.md \
--knowledge-base /path/to/security-policiesEstablece un presupuesto de análisis
Usa --max-cost para detener un análisis cuando el costo estimado del modelo supere un límite
en USD:
npx @openai/codex-security scan "$REPOSITORY" --max-cost 5Las solicitudes que ya estén en curso pueden finalizar por encima del límite. Codex Security conserva los resultados disponibles cuando se detiene un análisis.
Analiza los cambios antes de cada confirmación
Instala una comprobación de seguridad previa a la confirmación de Git en tu repositorio:
npx @openai/codex-security install-hookLa comprobación analiza los cambios preparados y no preparados antes de cada confirmación. Bloquea los hallazgos de gravedad alta y los errores del análisis sin reemplazar ningún script previo a la confirmación existente.
Analiza repositorios en bloque
Inicia sesión en GitHub antes de detectar repositorios:
gh auth loginDetecta y selecciona repositorios de tu cuenta u organización de GitHub:
npx @openai/codex-security bulk-scanEl flujo interactivo excluye los repositorios archivados y las bifurcaciones. Te pide que confirmes los repositorios seleccionados antes de analizarlos.
Para analizar una lista de repositorios preparada, proporciona un CSV y un directorio de salida:
npx @openai/codex-security bulk-scan repositories.csv \
--output-dir /path/outside/repositories/security-scans \
--workers 4Ejecuta de nuevo el mismo comando para reanudar un análisis en bloque existente. Los
repositorios completados cuyos artefactos de resultados estén intactos no se vuelven a analizar. Añade
--max-attempts 3 cuando quieras volver a intentar errores temporales del repositorio o del análisis.
Para la detección en GitHub, la preparación del CSV, los resultados de campañas y la configuración de Docker, consulta Ejecutar análisis de seguridad en bloque.
Ejecuta análisis en bloque en Docker
Si tu acceso incluye la imagen de Docker de Codex Security, usa la configuración reforzada de Compose y el perfil de seguridad suministrados en un host de Docker con Linux. El host debe admitir la creación de espacios de nombres de usuario sin privilegios. Proporciona un CSV de repositorios, conserva los resultados y el estado de inicio de sesión en directorios montados persistentes y proporciona las credenciales mediante tu entorno o un gestor de secretos:
docker compose run --rm codex-security \
bulk-scan /input/repositories.csv \
--output-dir /output \
--workers 4El contenedor ejecuta análisis en bloque sin solicitudes interactivas. Usa la CLI fuera de Docker cuando
quieras detectar repositorios de forma interactiva. Para repositorios privados,
proporciona GH_TOKEN o GITHUB_TOKEN mediante tu entorno o un gestor de
secretos. Los requisitos de inicio de sesión, incluido el acceso a la cuenta y al repositorio,
también se aplican a los análisis en contenedores.
Vuelve a consultar un análisis guardado
Enumera los análisis guardados de tu repositorio:
npx @openai/codex-security scans list "$REPOSITORY"Copia un ID de análisis de los resultados para inspeccionar sus hallazgos y su configuración:
npx @openai/codex-security scans show SCAN_IDPara marcar un hallazgo revisado como falso positivo, explica por qué no corresponde:
npx @openai/codex-security findings false-positive FINDING_OCCURRENCE_ID \
--reason "The route already checks permissions"Los análisis posteriores tienen en cuenta esa explicación, pero aun así vuelven a comprobar el código actual.
Ejecuta el mismo análisis en la copia de trabajo actual con su configuración original:
npx @openai/codex-security scans rerun SCAN_IDPara comparar dos análisis, primero relaciona los hallazgos que compartan la misma causa raíz:
npx @openai/codex-security scans match PREVIOUS_SCAN_ID CURRENT_SCAN_IDDespués, comprueba qué hallazgos son nuevos, persisten, se han reabierto, se han resuelto o son desconocidos:
npx @openai/codex-security scans compare PREVIOUS_SCAN_ID CURRENT_SCAN_IDPara conocer el formato CSV del análisis en bloque, los filtros del historial de análisis y las opciones de los comandos, consulta la referencia de la CLI.
Continúa con el flujo de trabajo que se ajuste a tu objetivo:
- Ejecutar análisis de seguridad en bloque para detectar repositorios de GitHub o analizar un inventario CSV fijado.
- Leer las preguntas frecuentes de la CLI para obtener respuestas sobre el historial de análisis, los comentarios sobre falsos positivos, la cobertura y la verificación de correcciones.
- Ejecutar análisis en CI para revisar solicitudes de incorporación de cambios, conservar los resultados y establecer una política de gravedad.
- Usar la referencia de la CLI para consultar cada opción, formato de salida, artefacto y código de salida.
- Integrar el SDK de TypeScript para ejecutar análisis desde una aplicación o herramienta de desarrollo.