trailmark — Claude Code skill: what it does, how to install
Builds and inspects multi-language code graphs to trace taint propagation, map attack surfaces, and prioritize security audits.
npx skills add trailofbits/skills --skill trailmark -a claude-codeWhat trailmark does
Trailmark turns source code and binaries into a directed graph connecting functions, classes, and calls. It tracks taint propagation, privilege boundaries, and blast radius across polyglot repositories. The analysis is strictly static. It will not capture runtime behaviour.
Installing the skill alone is not enough, because the underlying CLI must be present via uv tool install trailmark. A tool install provides the binary without exposing the library to Python; running scripts requires uv run --with trailmark python -. Graph edge slicing and binary augmentation need version 0.4.0 or newer, while SQL schema parsing and .trailmark/links.toml links arrive in 0.5.0.
What it helps with
- trace call paths from untrusted input to sensitive internal functions
- map attack surfaces and enumerate entry points across polyglot codebases
- measure blast radius and complexity hotspots for audit triage
- augment code graphs with findings from SARIF or weAudit
Example prompts for the agent
- Map all call paths from public API endpoints to sensitive database queries.
- Identify complexity hotspots and tainted paths before starting the code audit.
- Import our SARIF security findings and overlay them onto the project call graph.
How to install trailmark
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill trailmark -a claude-code2Manually: put the files in place
~/.claude/skills/trailmark/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/trailmark/
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill trailmark -a codex2Manually: put the files in place
.agents/skills/trailmark/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill trailmark -a cursor2Manually: put the files in place
.cursor/skills/trailmark/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install trailofbits/skills trailmark2Manually: put the files in place
.github/skills/trailmark/SKILL.md1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill trailmark -a gemini-cli2Platform CLI
gemini skills install https://github.com/trailofbits/skills --path plugins/trailmark/skills/trailmarkManually: put the files in place
.devin/skills/trailmark/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add trailofbits/skills --skill trailmark -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set35
The whole set →Similar
Questions about trailmark
How do I install trailmark in Claude Code?
Run npx skills add trailofbits/skills --skill trailmark -a claude-code. You also need the analyzer CLI installed on your system via uv tool install trailmark.
What does trailmark do?
It parses source code and binaries into directed graphs to trace attack paths, entry points, and taint propagation. The skill also computes blast radius and links multi-language components.
Why does Python fail to import trailmark after installation?
A CLI install via uv tool install only installs the binary and does not expose the Python package. Execute Python snippets using uv run --with trailmark python -.