Fetching Circleci Logs

Extrae registros de trabajo de CircleCI a nivel de paso a través de la API v1.1 e imprime solo los pasos fallidos

Por NTCoding · NTCoding/claude-skillz

Funciona con configuración ★ 8.4/10

Fetching Circleci Logs — Extrae registros de trabajo de CircleCI a nivel de paso a través de la API v1.1 e imprime solo los pasos fallidos

Qué hace

Obtiene registros de trabajo de CircleCI a través de la API v1.1, recorre el árbol de pasos/acciones e imprime la salida solo para los pasos que fallaron, truncando cada uno a 2000 caracteres. Se activa cuando una verificación de CI falla en una solicitud de extracción, cuando se pega una URL de trabajo de CircleCI, o con frases como "build failed", "CI failed" o "check the build logs". Lee el token de la API de ~/.circleci/cli.yml y deriva org/repo del remoto git cuando solo se proporciona un número de trabajo.

Informe de la prueba

Configuré un endpoint simulado local de CircleCI v1.1 (un trabajo fallido con 5 pasos: 2 aprobados, 2 fallidos, 1 cancelado, con 29,673 caracteres de registro jest/tsc detrás de output_url) y ejecuté ambos enfoques contra él. La línea base (mi propio instinto: curl el trabajo y canalizar a json.tool) produjo 1,975 bytes nombrando qué pasos fallaron pero sin contener ninguna de las cuatro sondas de diagnóstico - "Expected: 19.99", "TS2345", "applyDiscount > rounds to 2dp", "1 failed, 27 passed" estaban todas ausentes; el comando verbatim de la habilidad produjo 2,362 bytes conteniendo las cuatro, habiendo omitido completamente los registros de los pasos aprobados y truncado el mensaje de 29,673 caracteres a exactamente 2000. Confirmé independientemente contra la documentación v1 de CircleCI y el material de soporte que actions[].{name,status,exit_code,failed} y el output_url pre-firmado que devuelve [{message,type,time}] son campos reales, no inventados, y su ayudante sed de git-remote resolvió correctamente los 4 formatos remotos comunes; el bloque de instalación colocó SKILL.md correctamente en un HOME temporal limpio. Observé dos brechas reales: el script no elimina los códigos de escape ANSI (volví a ejecutar con una salida jest coloreada realista y obtuve secuencias raw \x1b[1m\x1b[31m que consumían el presupuesto de 2000 caracteres), y el truncamiento toma el inicio de cada mensaje, por lo que una herramienta que imprime su resumen de error al final lo habría descartado. El veredicto es "setup" no "pass" porque el único paso que no pude ejecutar es la autenticación contra la API en vivo - necesita un token de cuenta real de CircleCI en ~/.circleci/cli.yml, por lo que todo lo anterior se mide contra un mock fiel a la forma en lugar de CircleCI de producción. Frases de activación juzgadas - DEBERÍA activarse: "The CircleCI check on my PR is red, pull the logs and tell me what broke", "https://circleci.com/gh/acme/widgets/169955 why did this fail?", "Build failed on main again, can you check the CI logs?"; NO DEBERÍA activarse: "Our .circleci/config.yml fails to validate, fix the YAML" (edición de configuración, no obtención de registros) y "The GitHub Actions workflow failed, show me the run logs" (proveedor de CI incorrecto) - cargaría/no cargaría correctamente los 5, aunque la palabra clave genérica "check the logs" de la descripción es un riesgo de falso positivo en solicitudes de registros que no son de CI.

Probado el: 2026-07-21 · Claude Code 2.x (agent harness)

Instalación

git clone --depth 1 https://github.com/NTCoding/claude-skillz.git /tmp/fetching-circleci-logs-src
mkdir -p ~/.claude/skills
cp -R /tmp/fetching-circleci-logs-src/fetching-circleci-logs ~/.claude/skills/fetching-circleci-logs
# Single-file skill (SKILL.md only) - no scripts, no deps beyond curl + python3 (both preinstalled on macOS/Linux).
#
# REQUIRED MANUAL STEP - the skill does nothing without a CircleCI API token:
#   brew install circleci && circleci setup
# or write it by hand:
#   mkdir -p ~/.circleci && printf 'host: https://circleci.com\ntoken: YOUR_TOKEN\n' > ~/.circleci/cli.yml
# Create the token at https://app.circleci.com/settings/user/tokens
#
# Plugin-marketplace alternative (this skill is registered in .claude-plugin/marketplace.json):
#   /plugin marketplace add ntcoding/claude-skillz
#   /plugin install fetching-circleci-logs@claude-skillz
#
# Usage: paste a job URL like https://circleci.com/gh/{org}/{repo}/{job_number} and ask why CI failed.

Comandos y prompts de ejemplo

  • /fetching-circleci-logsExtrae registros de trabajo de CircleCI a nivel de paso a través de la API v1.1 e imprime solo los pasos fallidos

Los skills se activan con peticiones en lenguaje natural, sin comandos que memorizar. Tras instalarlo, prompts como estos lo activan (en inglés):

  • Check why the CircleCI build failed
  • Fetch the logs for this CircleCI job URL
  • Show me the failed step in the last CI run