Skills Explorer Add Skills

trailmark-finding-triage

An agent skill by trailofbits, from trailofbits/skills. Tags: analysis, security, trailmark, triage.

What it does

Performs graph-assisted triage of a single security finding, SARIF result, weAudit annotation, suspicious function, or report excerpt using Trailmark reachability, entrypoint paths, taint, privilege-boundary, blast-radius, caller/callee, and neighborhood evidence. Use when deciding whether one candidate issue is reachable, prioritizing a finding before PoC work, preparing evidence for exploit validation, or checking whether a static-analysis result is actionable.

Install

With the skills CLI, which installs into Claude Code, Codex, Cursor and other agents:

npx skills add trailofbits/skills --skill trailmark-finding-triage

Or copy the skill folder into Claude Code's skills directory by hand (~/.claude/skills for every project, or .claude/skills inside one):

git clone --depth 1 https://github.com/trailofbits/skills
cp -r skills/plugins/trailmark/skills/trailmark-finding-triage ~/.claude/skills/trailmark-finding-triage

Safety box score

Grade B, low risk: 21 of 100 risk points, rated 2026-10-19. The grade rates what the skill and its scripts can reach on the machine of whoever installs it, across eight categories from shell execution to secrets access. How the score works.

This skill is a local Trailmark-based triage wrapper: it reads a target codebase, builds a graph, and emits an evidence packet. The main risks are that it pulls in an external `trailmark` package at runtime and can write an output file wherever you point `--out`; it does not request secrets or elevated privileges.

Category levels, from 0 (none) to 3 (high)
CategoryLevelWhy
Code & shell execution1 (low)It ships an executable analyzer script (`scripts/evidence_packet.py`) that runs `QueryEngine.from_directory(...)` and `engine.preanalysis()` on a target tree, but it does not execute arbitrary shell commands or mutate the system.
Network access2 (moderate)The script declares `dependencies = ["trailmark>=0.5,<0.6"]`, so first run can fetch Trailmark from PyPI via `uv`, and the test harness also invokes `uv ... --with trailmark>=0.5,<0.6`.
Filesystem reach1 (low)`scripts/evidence_packet.py` writes JSON with `args.out.write_text(text + "\n")`, so it can create or overwrite a user-chosen file path, but it does not delete or edit project/system files.
Secrets & credentials0 (none)No file or command touches token stores, keychains, browser sessions, `.env` files, or CLI credentials.
Privilege & persistence0 (none)There is no sudo, service registration, shell startup editing, or OS/git configuration change in the shipped files.
Instruction hijack surface0 (none)The skill text contains analysis guidance only; it does not instruct the agent to ignore rules, hide actions, or follow remote instructions.
Irreversible actions0 (none)The workflow only triages a finding and emits a verdict; it does not push, deploy, pay, book, send messages, or delete anything.
Transparency2 (moderate)The core analysis engine is an external dependency (`trailmark>=0.5,<0.6`) not shipped in this repo, and the test file includes dynamic `pickle.loads(...)` and `eval(...)` paths that a reviewer cannot fully inspect from the skill alone.

Before installing

Rated 2026-10-19 by an automated review of 8 files from the skill's repository.

Source

Repository
trailofbits/skills (all skills from this repository)
Path
plugins/trailmark/skills/trailmark-finding-triage/SKILL.md
Branch
main
Collection
trailmark
Updated
2026-09-19