entry-point-analyzer — Claude Code skill: entry point analysis
Finds externally callable smart contract functions that change state and classifies their access level. Use it before an audit to map the attack surface.
npx skills add trailofbits/skills --skill entry-point-analyzer -a claude-codeWhat entry-point-analyzer does
This skill scans a smart contract codebase for externally callable functions that can change state. It sorts each entry point by access level: unrestricted, role-restricted, restricted pending review, or contract-only. The result is a structured report for audit work.
It covers Solidity, Vyper, Solana with Rust, Move, TON, and CosmWasm. Read-only code is left out, including view, pure, @view, @pure, get methods, and query handlers. For Move, reachable public fun functions are considered even when they lack entry.
For Solidity, the skill checks for Slither before manual inspection and uses its output as a starting point. Slither can miss callbacks or dynamic access checks, so its results need manual review. If Slither fails, the analysis continues manually.
What it helps with
- find state-changing contract functions
- separate unrestricted and role-restricted entry points
- identify privileged operations
- review contract-to-contract call restrictions
- map an audit attack surface
Example prompts for the agent
- Run `entry-point-analyzer` on this repository and list state-changing entry points.
- Use `entry-point-analyzer` to classify external functions by access control.
- Run `entry-point-analyzer` and review privileged contract operations.
How to install entry-point-analyzer
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill entry-point-analyzer -a claude-code2Manually: put the files in place
~/.claude/skills/entry-point-analyzer/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/entry-point-analyzer/
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill entry-point-analyzer -a codex2Manually: put the files in place
.agents/skills/entry-point-analyzer/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill entry-point-analyzer -a cursor2Manually: put the files in place
.cursor/skills/entry-point-analyzer/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install trailofbits/skills entry-point-analyzer2Manually: put the files in place
.github/skills/entry-point-analyzer/SKILL.md1Skills CLI (Vercel)
npx skills add trailofbits/skills --skill entry-point-analyzer -a gemini-cli2Platform CLI
gemini skills install https://github.com/trailofbits/skills --path plugins/entry-point-analyzer/skills/entry-point-analyzerManually: put the files in place
.devin/skills/entry-point-analyzer/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add trailofbits/skills --skill entry-point-analyzer -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set35
The whole set →Similar
Questions about entry-point-analyzer
How do I install entry-point-analyzer in Claude Code?
Run npx skills add trailofbits/skills --skill entry-point-analyzer -a claude-code, then run npx skills add trailofbits/skills --skill entry-point-analyzer -a claude-code again. The skill file is at ~/.claude/skills/entry-point-analyzer/SKILL.md.
What does entry-point-analyzer do?
It identifies externally callable smart contract functions that change state and classifies their access restrictions. It produces structured audit material around those entry points.
Does entry-point-analyzer require Slither for Solidity?
No. It uses Slither when available and falls back to manual inspection if Slither is unavailable or fails.