GitHub Actions Queue Latency Audit
v1.0.0Audit GitHub Actions queue wait hotspots from run/job JSON so CI bottlenecks are visible before they stall merges.
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/description match the included script and fixtures. Required binaries (bash, python3) are appropriate for a shell wrapper that runs an embedded Python parser. No unrelated credentials, config paths, or strange binaries are requested.
Instruction Scope
SKILL.md shows examples using the 'gh' CLI to export run JSON, but the skill does not declare 'gh' as a required binary — this is a minor mismatch (the use of 'gh' is optional/example-only). The runtime instructions and script operate only on local JSON files (glob), apply user-provided regex filters, and emit text/JSON; they do not read unrelated system files or transmit data to external endpoints.
Install Mechanism
Instruction-only skill with no install spec and a single script file; nothing is downloaded or written during installation.
Credentials
No required environment variables or credentials. The script reads only the provided RUN_GLOB and other optional input environment variables; it does not access secret-named env vars or external service keys.
Persistence & Privilege
The skill does not request permanent presence (always:false) and does not modify other skills or system-wide agent settings. It runs as a local script on invocation.
Assessment
This skill parses local GitHub Actions run JSON files and produces human-readable or JSON reports — it does not require or exfiltrate credentials. Note: the README examples suggest using the 'gh' CLI to create the JSON exports; install/authenticate gh if you wish to follow those examples. Before running, ensure the artifacts/github-actions/*.json files (or whatever RUN_GLOB you set) are trusted — the script will read and print fields like repository names and job URLs, and you may choose to run it in a sandbox/container if you prefer. If you enable FAIL_ON_CRITICAL=1, the script will exit non-zero on critical findings which may fail CI jobs that invoke it.Like a lobster shell, security has layers — review code before you run it.
Runtime requirements
Binsbash, python3
latest
GitHub Actions Queue Latency Audit
Use this skill to quantify where workflows are waiting in queue before jobs start.
What this skill does
- Reads one or more GitHub Actions run JSON exports (from
gh run view --json ...) - Computes per-job queue wait (
startedAt - createdAt) and runtime duration (completedAt - startedAt) - Groups repeated jobs by repository + workflow + job name
- Ranks hotspots by worst queue wait and average queue wait
- Flags warning/critical queue waits with configurable thresholds
- Emits output as human-readable text or machine-readable JSON
Inputs
Optional:
RUN_GLOB(default:artifacts/github-actions/*.json)TOP_N(default:20)OUTPUT_FORMAT(textorjson, default:text)QUEUE_WARN_SECONDS(default:120)QUEUE_CRITICAL_SECONDS(default:300)FAIL_ON_CRITICAL(0or1, default:0) — exit non-zero when any job instance hits/exceeds critical queue waitWORKFLOW_MATCH(regex, optional)WORKFLOW_EXCLUDE(regex, optional)JOB_MATCH(regex, optional)JOB_EXCLUDE(regex, optional)REPO_MATCH(regex, optional)REPO_EXCLUDE(regex, optional)
Collect run JSON
gh run view <run-id> --json databaseId,workflowName,headBranch,headSha,url,repository,jobs \
> artifacts/github-actions/run-<run-id>.json
Run
Text report:
RUN_GLOB='artifacts/github-actions/*.json' \
TOP_N=15 \
QUEUE_WARN_SECONDS=180 \
QUEUE_CRITICAL_SECONDS=420 \
bash skills/github-actions-queue-latency-audit/scripts/queue-latency-audit.sh
JSON output for dashboards:
RUN_GLOB='artifacts/github-actions/*.json' \
OUTPUT_FORMAT=json \
FAIL_ON_CRITICAL=1 \
bash skills/github-actions-queue-latency-audit/scripts/queue-latency-audit.sh
Filter to one repo/workflow family:
RUN_GLOB='artifacts/github-actions/*.json' \
REPO_MATCH='^flowcreatebot/' \
WORKFLOW_MATCH='(CI|Build|Test)' \
bash skills/github-actions-queue-latency-audit/scripts/queue-latency-audit.sh
Run with bundled fixtures:
RUN_GLOB='skills/github-actions-queue-latency-audit/fixtures/*.json' \
bash skills/github-actions-queue-latency-audit/scripts/queue-latency-audit.sh
Output contract
- Exit
0in reporting mode (default) - Exit
1ifFAIL_ON_CRITICAL=1and at least one job instance has queue wait>= QUEUE_CRITICAL_SECONDS - In
textmode: prints summary + top queue hotspots - In
jsonmode: prints summary + grouped hotspot records + raw offending instances
Comments
Loading comments...
