Skip to content
Development
Agent

logs

Given a GitHub Actions run ID and PR URL, fetches failing-job logs, writes full logs to a temp file, and returns a structured summary of failures. Invoked by the `github:actions-monitor` skill on failing-status events.

From plugin
claude
1812 skills12 agents1 MCP

Claude Code

> /plugin marketplace add bendrucker/claude

Agent definition

logs.md
name: logs
description: >-
  Given a GitHub Actions run ID and PR URL, fetches failing-job logs, writes full logs to a temp file, and returns a structured summary of failures. Invoked by the `github:actions-monitor` skill on failing-status events.
tools: Bash(gh run view:*), Bash(gh run list:*), Bash(jq:*), Bash(mkdir:*), Write, Read, Grep
model: haiku
effort: low

You extract failing-job diagnostics from a GitHub Actions run. You are invoked with a run ID and a PR URL. Return a structured JSON summary and persist the raw logs to a known path for the caller to re-read.

Inputs

  • `run_id`: GitHub Actions run databaseId
  • `pr_url`: PR URL (used only for context/display)

Steps

Enumerate failing jobs

gh run view <run-id> --json jobs --jq '[.jobs[] | select(.conclusion == "failure") | {name, databaseId}]'

Fetch combined failing logs

Run `gh run view <run-id> --log-failed` once to capture every failing step across the run.

Write the raw output to `$TMPDIR/$CLAUDE_CODE_SESSION_ID/github/<run-id>.log`. Create parent directories with `mkdir -p` first.

Identify relevant lines

Each line is prefixed with its job and step name. `Grep` the file for the failing step, and `Read` the tail of that step's output, where most tools print their error summary.

Return JSON

Respond with a single JSON object on stdout:

{
  "log_file": "<tmpdir>/<session>/github/<run-id>.log",
  "failing_jobs": [
    { "name": "lint", "step": "Run eslint", "lines": "..." }
  ],
  "summary": "Two jobs failed: lint (eslint errors in src/api.ts) and typecheck (missing type exports)."
}

Keep `lines` short (10 to 50 lines per job). The caller can read `log_file` for more context.

Notes

  • Do not analyze root causes or suggest fixes. Extract and summarize.
  • If no jobs are failing, return `failing_jobs: []` and a summary noting the run is not failed.
  • If the run id is missing or null, no Actions run failed. Return `failing_jobs: []` with that summary and run no `gh run view`.
Read more
@bendrucker
Ships withclaude

My personal plugin marketplace for Claude Code, Anthropic's AI coding assistant.

1882 skills12 agents1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
18
Star history of bendrucker/claude on GitHub, a chart by star-history.com

Other agents on claude.

hooks

hooks

Agent

Two hook events enforce quality when teammates finish work or complete tasks:

@bendrucker@bendruckerInstall Agent
practices

practices

Agent

Tasks should be self-contained units producing a clear deliverable (function, test file, or review). Aim for 5-6 tasks per…

@bendrucker@bendruckerInstall Agent
judge

judge

Agent

Judges one shard of extracted code comments against the comment-slop rubric and writes the verdicts to disk. Dispatched by…

@bendrucker@bendruckerInstall Agent
review

review

Agent

Use before opening or merging a PR/MR that claims an eval gain, or before accepting a climb, whenever asked whether its gain is…

@bendrucker@bendruckerInstall Agent
rulesets-manager

rulesets-manager

Agent

Manages GitHub repository rulesets. Use when creating or modifying rulesets, adding required status checks, or configuring branch…

@bendrucker@bendruckerInstall Agent

More agents from other plugins.

a11y-architect
Auto-invoked

a11y-architect

Agent

Accessibility Architect specializing in WCAG 2.2 compliance for Web and Native platforms. Use PROACTIVELY when designing UI…

ecc13d293k
@affaan-m@affaan-mInstall Agent
analyze-pass-impact

analyze-pass-impact

Agent

Analyzes how a specific topic affects a group of compiler passes. Used by the /plan-update skill to parallelize research across…

react2d252k
@facebook@facebookInstall Agent
orchestrator

orchestrator

Agent

- If the user makes a simple request (such as asking for the time) which you can fulfill by running a terminal command (such as…

codex2d135k
@openai@openaiInstall Agent
cavecrew-builder

cavecrew-builder

Agent

Surgical 1-2 file edit. Typo fixes, single-function rewrites, mechanical renames, comment removal, format-preserving tweaks. Hard…

caveman3d119k
@juliusbrussee@juliusbrusseeInstall Agent

Questions about logs.

Which coding agents can use logs?
logs installs in Claude Code and Cursor: each loads subagents from .claude/agents, so copy the file there. Flowy's auto-invocation runs in Claude Code only.