Azure Pipelines Log Downloader
ansible/ansible
Downloads Azure Pipelines CI logs for an Ansible pull request or build so the agent can analyze test failures, after asking you first.
Inspect, analyze, troubleshoot, or review Codacy findings and local analyzer/API helpers.
$ npx skills add netdata/netdata --skill triage-codacy -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install netdata/netdata triage-codacy --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/netdata/netdata.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/triage-codacy .claude/skills/triage-codacy && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "triage-codacy" agent skill from https://github.com/netdata/netdata/tree/master/.agents/skills/triage-codacy into .claude/skills/triage-codacy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-codacy", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/netdata/netdata/tree/master/.agents/skills/triage-codacyType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add netdata/netdata --skill triage-codacy -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install netdata/netdata triage-codacy --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdata/netdata.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/triage-codacy .agents/skills/triage-codacy && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "triage-codacy" agent skill from https://github.com/netdata/netdata/tree/master/.agents/skills/triage-codacy into .agents/skills/triage-codacy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-codacy", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add netdata/netdata --skill triage-codacy -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install netdata/netdata triage-codacy --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdata/netdata.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/triage-codacy .cursor/skills/triage-codacy && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "triage-codacy" agent skill from https://github.com/netdata/netdata/tree/master/.agents/skills/triage-codacy into .cursor/skills/triage-codacy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-codacy", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/netdata/netdata.git --path .agents/skills/triage-codacy--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add netdata/netdata --skill triage-codacy -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install netdata/netdata triage-codacy --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdata/netdata.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/triage-codacy .gemini/skills/triage-codacy && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "triage-codacy" agent skill from https://github.com/netdata/netdata/tree/master/.agents/skills/triage-codacy into .gemini/skills/triage-codacy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-codacy", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install netdata/netdata triage-codacyInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add netdata/netdata --skill triage-codacy -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/netdata/netdata.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/triage-codacy .github/skills/triage-codacy && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "triage-codacy" agent skill from https://github.com/netdata/netdata/tree/master/.agents/skills/triage-codacy into .github/skills/triage-codacy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-codacy", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add netdata/netdata --skill triage-codacy -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install netdata/netdata triage-codacy --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/netdata/netdata.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/triage-codacy .opencode/skills/triage-codacy && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "triage-codacy" agent skill from https://github.com/netdata/netdata/tree/master/.agents/skills/triage-codacy into .opencode/skills/triage-codacy/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "triage-codacy", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
triage-codacyInspect, analyze, troubleshoot, or review Codacy findings and local analyzer/API helpers.
Triage Codacy is an agent skill from netdata/netdata. Inspect, analyze, troubleshoot, or review Codacy findings and local analyzer/API helpers. Use for Codacy CI failures, codacy-analysis-cli, PR issue queries, and markdownlint findings. Supplied evidence and source review need no credentials; live queries and local analysis are separate routes. Writes require user authorization.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 12 other files, including scripts (for example `how-tos/INDEX.md`, `how-tos/fetch-large-pr-issue-list.md` and `how-tos/handle-malformed-local-json.md`).
It sits in DevOps & Cloud, covering Failing and flaky tests. The repository describes itself as: The fastest path to AI-powered full stack observability, even for lean teams. The licence is GPL-3.0.
Read from SKILL.md and the folder at commit 2c378f0. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 3 files in scripts/ (Shell and Python), which the agent can run.
Shell commands in SKILL.md call:
curlpython3From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.codacy.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
CODACY_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Triage Codacy loads about 2.2k tokens when it runs. Until then it costs about 86 tokens; SKILL.md has 1,022 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
`scripts/analyze-local.sh`; no token or `.env` needed; select the relevant tool/scope |nly (`analyze-local.sh` does not source `.env`): `CODACY_CLI_VERSION=1.2.3 analyze-local.sh` pins the docker image tag;ept `CODACY_CLI_VERSION` live in `<repo>/.env` (gitignored). See `<repo>/.agents/ENV.md` for setup (wherewrappers, run the offline self-test (no `.env` or token setup):Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from netdata/netdata at commit 2c378f0, republished under its GPL-3.0 licence (© netdata). 1,022 words, ~2,241 tokens.
.claude/skills/triage-codacy/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.Use the operation and available evidence to choose a route:
| Task | Route |
|---|---|
| Review supplied findings or helper changes | Inspect that evidence and affected helper contracts; no credentials, API fetch or analyzer run solely because this skill loaded |
| Run local analysis | scripts/analyze-local.sh; no token or .env needed; select the relevant tool/scope |
| Fetch current PR issues | scripts/pr-issues.sh; configured token required by this script; preserve the response and its commit provenance |
| Diagnose a known CLI/API problem | Select the relevant recipe from ./how-tos/INDEX.md |
| Validate wrapper changes | Run the offline self-test and python3 -B .agents/skills/triage-codacy/tests/test_helpers.py |
Loading this skill does not authorize fixes, pushes, remote issue transitions or analysis-policy changes.
This skill is the fourth in the static-analysis triage family in this repo:
triage-coverity/, triage-sonarqube/, triage-codeql/, triage-codacy/ share one shape and one set of conventions;
each keeps its own .local/audits/<dir>/ (root AGENTS.md, Local-Only Working Directory).
Capture timing and authorization for operational discoveries follow AGENTS.md#knowledge-capture.
Examples worth capturing:
AGENTS.md#knowledge-capture governs this catalog. Authorized Codacy recipes live under how-tos/ and are listed in
./how-tos/INDEX.md.
In scope:
codacy-analysis-cli (auto-detects local binary, falls back to docker).The following need a user-authorized task and applicable project tracking. A GitHub issue or SOW alone is not permission to perform them:
| Key | Required for |
|---|---|
CODACY_TOKEN | Account API token, header api-token: <value>. Required by pr-issues.sh and any wrapper that calls _codacyaudit_run. NOT required by analyze-local.sh (the CLI runs anonymously). |
CODACY_HOST | Defaults to https://api.codacy.com. Override only if Codacy moves the API host. |
CODACY_PROVIDER | Defaults to gh (GitHub). |
CODACY_CLI_VERSION | Optional, not a secret, and read from the process environment only (analyze-local.sh does not source .env): CODACY_CLI_VERSION=1.2.3 analyze-local.sh pins the docker image tag; defaults to latest. |
CODACY_ORG | Defaults to netdata. |
CODACY_REPO | Defaults to netdata. |
All values except CODACY_CLI_VERSION live in <repo>/.env (gitignored). See <repo>/.agents/ENV.md for setup (where
each value comes from, sample formats, common mistakes).
| Script | Purpose |
|---|---|
_lib.sh | Helpers (codacyaudit_* prefix). Token-safe; ships codacyaudit_selftest_no_token_leak. |
analyze-local.sh | Run codacy-analysis-cli locally; auto-pick local-binary or docker; write JSON dump under .local/audits/codacy/. |
pr-issues.sh | Fetch all Codacy issues for a PR via the v3 API; cluster summary on stdout; full JSON dump on disk. |
$ .agents/skills/triage-codacy/scripts/analyze-local.sh
[analyze-local] runner=docker format=json dir=<repo>
[analyze-local] wrote 0 finding(s) to <repo>/.local/audits/codacy/local-<ts>.jsonFor an authorized push, use local analysis to catch relevant findings early. Zero findings establishes only the completed local run's result: CLI versions, selected tools/files and server-side configuration can differ. Check the remote gate for the current head before claiming it is green. Verify findings before applying authorized fixes.
Failed analyses are not clean trees: when the dump is not JSON, is JSON of the
wrong shape (not a findings array, an {issues: [...]} object, or a SARIF runs
document), or the CLI exits non-zero with zero findings, the script exits 4 and
keeps the CLI's stderr in <dump>.log. Treat exit 4 as "no
evidence", not as green. If GitHub check-run annotations are empty too, use
pr-issues.sh with CODACY_TOKEN; without that token, record the evidence gap
and re-check after the next push.
One common local cause is gitignored generated output with restrictive file
permissions. For example, if local scratch output under .local/ contains files
not readable by the Docker container, Codacy logs Could not read file messages
and the saved .json dump is plain text. Fix or move the local generated output
before trusting local analyzer output. Preserve unrelated files and permissions when correcting the local cause.
A public Codacy v3 endpoint has exposed PR details without a token when GitHub annotations were empty. Availability is service-dependent; an authorization failure or unavailable response is an evidence gap, not an empty issue list:
curl -fsS \
"https://api.codacy.com/api/v3/analysis/organizations/gh/netdata/repositories/netdata/pull-requests/<PR>/issues?limit=100"Filter for .data[] | select(.deltaType == "Added") to inspect added issues, then verify relevance against the
current head and gate; this filter alone does not establish which findings block it. Treat commitInfo fields as sensitive operational
metadata; do not copy names or email addresses into committed artifacts.
Operational gotcha: Codacy's PR issue API can lag behind the GitHub check-run
after a new push. If pr-issues.sh still reports findings but the Codacy
check-run for the current head SHA is green, inspect .commitIssue.commitInfo.sha
in the dump. Reverify older findings against the current source and current-head gate. An older anchor alone does
not prove a finding is stale or resolved; the same defect may still exist.
To restrict to a single tool (matches what Codacy reported on a CI run):
.agents/skills/triage-codacy/scripts/analyze-local.sh --tool markdownlint$ .agents/skills/triage-codacy/scripts/pr-issues.sh 22423
[pr-issues] fetching issues for PR #22423 ...
[pr-issues] wrote 0 issue(s) to <repo>/.local/audits/codacy/pr-22423-<ts>.json
No issues on PR #22423.For a PR with findings, the script emits a clustered TSV summary. Default grouping is --by pattern; switch to --by tool, --by severity, --by file, or --by category for other angles. The JSON dump under .local/audits/codacy/ carries the full issue payload for follow-up jq queries.
Operational note: large Codacy PR issue arrays must be passed to jq via a
temporary file and --slurpfile, not --argjson, because shell argument-size
limits can fail before jq starts.
This skill follows <repo>/.agents/sensitive-data-discipline.md:
<repo>/src/...).CODACY_TOKEN: NEVER literal in any committed file; ALWAYS via ${CODACY_TOKEN} and the _lib.sh wrappers.<repo>/.local/audits/codacy/..agents/skills/triage-coverity/ -- Coverity Scan (same triage shape)..agents/skills/triage-sonarqube/ -- SonarCloud (same triage shape)..agents/skills/triage-codeql/ -- GitHub Code Scanning / CodeQL (same triage shape).After changing wrappers, run the offline self-test (no .env or token setup):
$ source .agents/skills/triage-codacy/scripts/_lib.sh
$ codacyaudit_selftest_no_token_leak
PASS: codacyaudit_selftest_no_token_leakThe self-test uses synthetic configuration and an in-process transport in a subshell. It drives every public HTTP wrapper, checks success and both output streams, and preserves caller state. The focused tests also cover failure status and reflected-secret suppression. This checks local wrapper behavior, not live authentication or service compatibility. Successful API bodies are forwarded unchanged and may contain private data; review before sharing.
© netdata, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 9 other files (scripts) in .agents/skills/triage-codacy of netdata/netdata.
Open the folder on GitHubat commit 2c378f0
Triage Codacy next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Triage Codacy this skillnetdata/netdata | 81k | — | ~2.2k | Automated safety check: Notes | GPL-3.0 | |
| Azure Pipelines Log Downloaderansible/ansible | 71k | — | ~825 | Automated safety check: Pass | GPL-3.0 | |
| CI Failure Triage and RepairChachamaru127/claude-code-harness | 3.2k | 1 repos | ~1.1k | Automated safety check: Notes | MIT | |
| CI Watchdoglatitude-dev/latitude-llm | 4.7k | — | ~1.6k | Automated safety check: Pass | MIT | |
| Megatron-LM CI Failure TriageNVIDIA/Megatron-LM | 18k | — | ~1.6k | Automated safety check: Pass | Apache-2.0 | |
| CI Triagefair-acc/gnuradio4 | 115 | — | ~548 | Automated safety check: Pass | LGPL-3.0 |
ansible/ansible
Downloads Azure Pipelines CI logs for an Ansible pull request or build so the agent can analyze test failures, after asking you first.
Chachamaru127/claude-code-harness
Diagnoses failing CI pipelines and tests, deciding first whether the test or the implementation is at fault, and hands hard cases to a dedicated fixer subagent.
latitude-dev/latitude-llm
Continuously monitor GitHub PR CI checks and automatically fix failures until all checks pass.
NVIDIA/Megatron-LM
Investigates a failing GitHub Actions run or job for Megatron-LM, finds the root cause plus the PR and test author involved, and files a structured bug issue.
fair-acc/gnuradio4
Fetch and classify a failed GitHub Actions job for this repo — distinguish out-of-memory kills, six-hour timeouts, configure errors and genuine test failures, and identify what was in flight.
n1m21n/Infinite
Diagnose a failed GitHub Actions run (Windows MSVC crash, Linux clang/sanitizer, link errors) from the logs in one pass, and fix every candidate at once instead of one CI round-trip at a time.
netdata/netdata
Use only when the user explicitly asks to build, run, preview, inspect, or validate learn.netdata.cloud locally using the contents of a PR or documentation branch before merge.
netdata/netdata
Inspect Netdata-org source checkouts under NETDATAREPOSDIR, or set up and synchronize that mirror when requested.
netdata/netdata
Investigate Netdata crashes, panics and fatals from agent-events captures or authorized fleet queries.
netdata/netdata
Inspect or review Coverity Scan defects and saved CID bundles; fetch live findings or apply verified triage decisions when requested.
netdata/netdata
Inspect, review, or apply authorized triage decisions to SonarCloud issues and security hotspots; also review the Sonar helpers.
netdata/netdata
Create, review or validate Netdata Prometheus chart profiles, exporter dashboard design, collection policy and stock semantic proofs.
Categories
Inspect, analyze, troubleshoot, or review Codacy findings and local analyzer/API helpers. Triage Codacy is an agent skill from netdata/netdata. Inspect, analyze, troubleshoot, or review Codacy findings and local analyzer/API helpers.
Triage Codacy fits situations like: codacy CI failures; codacy-analysis-cli; PR issue queries; markdownlint findings.
Run `npx skills add netdata/netdata --skill triage-codacy -a claude-code`. Or copy the skill folder (.agents/skills/triage-codacy in netdata/netdata) into .claude/skills/triage-codacy in your project. Claude Code loads it when a task matches its description.
Run `npx skills add netdata/netdata --skill triage-codacy -a codex`. Or copy the skill folder (.agents/skills/triage-codacy in netdata/netdata) into .agents/skills/triage-codacy in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add netdata/netdata --skill triage-codacy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/triage-codacy, .gemini/skills/triage-codacy, .github/skills/triage-codacy and .opencode/skills/triage-codacy in your project.
Going by SKILL.md and its folder, Triage Codacy needs a shell and Python for the scripts in its folder, the command-line tools its instructions call (curl and python3) and credentials named CODACY_TOKEN. Our summary lists: Python 3; A Bash shell; Docker; A credential in CODACY_TOKEN.
SKILL.md names 1 domain. In commands or code: api.codacy.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Triage Codacy is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Triage Codacy: Azure Pipelines Log Downloader (ansible/ansible, 71k stars), CI Failure Triage and Repair (Chachamaru127/claude-code-harness, 3.2k stars), CI Watchdog (latitude-dev/latitude-llm, 4.7k stars) and Megatron-LM CI Failure Triage (NVIDIA/Megatron-LM, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
netdata (a GitHub organization) maintains it in netdata/netdata, which has 80,838 GitHub stars. The repository holds 27 skills in this directory. The repository was last updated on October 8, 2026.
Source: netdata/netdata on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.