Install the "audit-recon" agent skill from https://github.com/ccashwell/evm-cortex/tree/main/skills/audit-recon into .claude/skills/audit-recon/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "audit-recon", 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.
Type 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.
skills CLI
$ npx skills add ccashwell/evm-cortex --skill audit-recon -a codex
Project install goes to .agents/skills/; add -g for ~/.codex/skills/.
Install the "audit-recon" agent skill from https://github.com/ccashwell/evm-cortex/tree/main/skills/audit-recon into .agents/skills/audit-recon/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "audit-recon", 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.
skills CLI
$ npx skills add ccashwell/evm-cortex --skill audit-recon -a cursor
Project install goes to .agents/skills/; add -g for ~/.cursor/skills/.
Install the "audit-recon" agent skill from https://github.com/ccashwell/evm-cortex/tree/main/skills/audit-recon into .cursor/skills/audit-recon/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "audit-recon", 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.
--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
skills CLI
$ npx skills add ccashwell/evm-cortex --skill audit-recon -a gemini-cli
Project install goes to .agents/skills/; add -g for ~/.gemini/skills/.
Install the "audit-recon" agent skill from https://github.com/ccashwell/evm-cortex/tree/main/skills/audit-recon into .gemini/skills/audit-recon/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "audit-recon", 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.
Installs 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).
skills CLI
$ npx skills add ccashwell/evm-cortex --skill audit-recon -a github-copilot
Project install goes to .agents/skills/; add -g for ~/.copilot/skills/.
Install the "audit-recon" agent skill from https://github.com/ccashwell/evm-cortex/tree/main/skills/audit-recon into .github/skills/audit-recon/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "audit-recon", 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.
skills CLI
$ npx skills add ccashwell/evm-cortex --skill audit-recon -a opencode
OpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
Install the "audit-recon" agent skill from https://github.com/ccashwell/evm-cortex/tree/main/skills/audit-recon into .opencode/skills/audit-recon/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "audit-recon", 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.
Facts
Skill name
audit-recon
GitHub stars
131
Token cost
~1.5k tokens
SKILL.md length
217 words
Files
1
Skills in repo
89
Repo updated
First seen
Licence
MIT
At a glance
A skill your agent uses when performing initial audit reconnaissance.
Works in 7 steps: Automated Tools First → Dependency Review → Architecture Mapping → …
Performing initial audit reconnaissance
SKILL.md covers Phase Overview, Step 1: Automated Tools First, Step 2: Dependency Review and Step 3: Architecture Mapping, plus 6 more sections
Reaches github.com
What it does
Audit Recon is an agent skill from ccashwell/evm-cortex. Use when performing initial audit reconnaissance. Covers automated tooling, dependency review, architecture mapping, entry point identification, trust boundary mapping, external call enumeration, and access control analysis.
Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Backend & APIs, covering Authorization and RBAC. The repository describes itself as: Ethereum protocol engineering squad for AI coding assistants. The licence is MIT.
When your agent uses it
Performing initial audit reconnaissance
Tasks that involve Authorization and RBAC
Example prompts
“/audit-recon”
Workflow steps
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit f8f3301. It shows what the files ask for, not the result of running them.
Tool permissions
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.
Runs code
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown and bash).
From the folder's file list and the shell code blocks in SKILL.md.
Network
Hosts in commands or code, which the agent is likely to contact:
github.com
From URLs in SKILL.md, links to its own repository left out.
Credentials
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Context cost
Audit Recon loads about 1.5k tokens when it runs. Until then it costs about 59 tokens; SKILL.md has 217 words of instructions outside code blocks.
Always· name and description, kept in context so the agent knows when to use it
~59
When it runs· the whole SKILL.md, loaded when a task matches
~1.5k
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.
Safety
Auto-check passed
The automated check found no risky patterns in SKILL.md.
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); files beside SKILL.md are not scanned.
Download SKILL.mdSave it as .claude/skills/audit-recon/SKILL.md (or your agent's skills folder).
name
audit-recon
description
Use when performing initial audit reconnaissance. Covers automated tooling, dependency review, architecture mapping, entry point identification, trust boundary mapping, external call enumeration, and access control analysis.
Audit Reconnaissance
Phase Overview
Recon is the first phase of a security audit. The goal is to build a mental model of the system before diving into code. Spend 10-20% of total audit time here.
Step 1: Automated Tools First
Run automated scanners to identify low-hanging fruit and build familiarity:
# Call graph
slither . --print call-graph
# Function summary (visibility, modifiers, state changes)
slither . --print function-summary
# Inheritance graph
slither . --print inheritance-graph
# Variables read/written per function
slither . --print vars-and-auth
Step 2: Dependency Review
bash
# List all dependencies and versions
forge tree
# Check for known vulnerabilities
# Cross-reference OpenZeppelin version against security advisories
# https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories
Key questions:
Are dependencies pinned to specific commits/versions?
Any modified/forked dependencies?
Solidity compiler version — known compiler bugs?
Step 3: Architecture Mapping
Build this map by reading code, starting from entry points:
markdown
## Contract Map
### Core
- Vault.sol (512 SLOC) — main entry point
- Inherits: ERC4626, Ownable, ReentrancyGuard, Pausable
- External calls: Strategy, Oracle, USDC
- State: deposits, withdrawals, share pricing
### Periphery
- Strategy.sol (189 SLOC) — yield deployment
- External calls: Aave Pool, USDC
- Called by: Vault (only)
### Libraries
- MathLib.sol (45 SLOC) — fixed-point math
- Pure functions, no state
Step 4: Entry Point Identification
Map every external and public function with their access control:
markdown
## Entry Points
| Contract | Function | Access | State Changes | Risk |
|----------|----------|--------|---------------|------|
| Vault | deposit(uint256,address) | Anyone | balances, totalSupply | Medium |
| Vault | withdraw(uint256,address,address) | Owner/approved | balances, totalSupply | High |
| Vault | setStrategy(address) | Owner only | strategy | Critical |
| Vault | pause() | Owner only | paused flag | Low |
| Strategy | harvest() | Keeper only | deployed amount | Medium |
| Strategy | emergencyWithdraw() | Owner only | all state | Critical |
Step 5: Trust Boundary Mapping
markdown
## Trust Boundaries
### Fully Trusted
- Owner multisig (can change parameters, pause, upgrade strategy)
- Timelock controller (executes governance decisions)
### Semi-Trusted
- Keeper bot (can trigger harvest, but cannot steal funds)
- Oracle feeds (Chainlink — trusted but can go stale)
### Untrusted
- End users (deposit/withdraw — fully adversarial)
- External protocols (Aave — could be exploited)
- Token contracts (USDC — could blacklist)
### Attack Surfaces by Trust Level
1. Untrusted user -> Vault: reentrancy, share manipulation, front-running
2. Stale oracle -> Vault: incorrect valuations, over-borrowing
3. Compromised keeper -> Strategy: timing attacks on harvest
4. External protocol exploit -> Strategy: loss of deployed funds
Step 6: External Call Mapping
Every external call is a potential vulnerability vector:
markdown
## External Calls
| Source | Target | Function | Untrusted? | Risk |
|--------|--------|----------|------------|------|
| Vault | USDC | transferFrom | No (known) | Low |
| Vault | Strategy | deploy | No (owned) | Low |
| Strategy | Aave Pool | supply | Semi | Medium |
| Strategy | Aave Pool | withdraw | Semi | Medium |
| Oracle | Chainlink | latestRoundData | Semi | Medium |
Step 7: Access Control Enumeration
bash
# Use Slither to enumerate access controls
slither . --print vars-and-auth
# Manually verify:
# 1. Every onlyOwner function is truly admin-only
# 2. No function missing access control that modifies state
# 3. Initializer functions protected against re-initialization
# 4. Constructor sets correct initial values
Recon Report Template
markdown
# Audit Recon Report — [Protocol Name]
## Summary
- **Total SLOC**: X
- **Contracts in scope**: Y
- **External dependencies**: Z
- **Compiler**: solc X.Y.Z
## Architecture Diagram
[Mermaid or text diagram]
## Entry Points (sorted by risk)
[Table from Step 4]
## External Calls
[Table from Step 6]
## Trust Boundaries
[From Step 5]
## Automated Tool Findings
- Slither: X high, Y medium, Z low (after triage)
- Aderyn: X findings
## Initial Leads for Depth Analysis
1. [Finding/area that needs deeper review]
2. [Suspicious pattern identified]
3. [Complex logic requiring manual review]
Checklist
Slither run with findings triaged (true/false positive)
Aderyn run reviewed
Dependency versions checked against known vulnerabilities
All entry points mapped with access controls
External calls enumerated and risk-assessed
Trust boundaries documented
Architecture diagram created
Initial depth-analysis leads identified
Recon report completed before moving to breadth scan
Audit Recon 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.
Implements device posture assessment as a zero trust access control by integrating endpoint health signals from CrowdStrike ZTA, Microsoft Intune, and Jamf into conditional access policies that…
Drive a federal system through the NIST Risk Management Framework (SP 800-37 Rev 2) to an Authorization to Operate (ATO): Prepare, Categorize (FIPS 199), Select a control baseline (FIPS 200 / SP…
Threat-model product features, APIs, data flows, secrets, permissions, supply-chain changes, auth boundaries, and risky code paths before or during implementation.
A skill your agent uses when the user asks "who has access", "audit permissions", "check user roles", "list API keys", "review access controls", "rotate API keys", "create API key", "delete expired…
Test deterministic authorization around AI tool discovery, selection, canonical arguments, credentials, tenants, destinations, approvals, delegation, retries, and effects.
A skill your agent uses when performing initial audit reconnaissance. Audit Recon is an agent skill from ccashwell/evm-cortex. Use when performing initial audit reconnaissance.
When should I use Audit Recon?
Audit Recon fits situations like: performing initial audit reconnaissance; tasks that involve Authorization and RBAC.
How do I install Audit Recon in Claude Code?
Run `npx skills add ccashwell/evm-cortex --skill audit-recon -a claude-code`. Or copy the skill folder (skills/audit-recon in ccashwell/evm-cortex) into .claude/skills/audit-recon in your project. Claude Code loads it when a task matches its description.
How do I install Audit Recon in Codex?
Run `npx skills add ccashwell/evm-cortex --skill audit-recon -a codex`. Or copy the skill folder (skills/audit-recon in ccashwell/evm-cortex) into .agents/skills/audit-recon in your project. Codex loads it when a task matches its description.
Can I use Audit Recon in Cursor, Gemini CLI or GitHub Copilot?
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ccashwell/evm-cortex --skill audit-recon -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/audit-recon, .gemini/skills/audit-recon, .github/skills/audit-recon and .opencode/skills/audit-recon in your project.
What does Audit Recon need to run?
SKILL.md names no scripts, command-line tools or credentials: Audit Recon is instructions for the agent only.
Does Audit Recon access the network?
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Is Audit Recon safe to install?
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
What licence does Audit Recon use?
Audit Recon is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
How many tokens does Audit Recon use?
About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
What are the alternatives to Audit Recon?
Skills that share tags, products or a category with Audit Recon: Implementing Device Posture Assessment In Zero Trust (mukul975/Anthropic-Cybersecurity-Skills, 34k stars), Executing Nist Rmf Authorization To Operate (mukul975/Anthropic-Cybersecurity-Skills, 34k stars), Sec Check (waynesutton/markdown-site, 628 stars) and Security Threat Model (majiayu000/spellbook, 287 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Who maintains Audit Recon?
ccashwell (a GitHub user) maintains it in ccashwell/evm-cortex, which has 131 GitHub stars. The repository holds 89 skills in this directory. The repository was last updated on September 30, 2026.
Source: ccashwell/evm-cortex on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.