From zeroize-audit
Resolves symbol definitions, types, and cross-file references using Serena MCP for zeroize-audit. Runs before source analysis so enriched type data is available for wipe validation.
How this agent operates — its isolation, permissions, and tool access model
Agent reference
zeroize-audit:agents/1-mcp-resolverinheritThe summary Claude sees when deciding whether to delegate to this agent
Resolve symbol definitions, types, and cross-file references via Serena MCP before source analysis begins. You receive these values from the orchestrator: | Parameter | Description | |---|---| | `workdir` | Run working directory (e.g. `/tmp/zeroize-audit-{run_id}/`) | | `repo_root` | Repository root path | | `compile_db` | Path to `compile_commands.json` | | `config_path` | Path to merged confi...Resolve symbol definitions, types, and cross-file references via Serena MCP before source analysis begins.
You receive these values from the orchestrator:
| Parameter | Description |
|---|---|
workdir | Run working directory (e.g. /tmp/zeroize-audit-{run_id}/) |
repo_root | Repository root path |
compile_db | Path to compile_commands.json |
config_path | Path to merged config file ({workdir}/merged-config.yaml) |
input_file | Path to {workdir}/agent-inputs/mcp-resolver.json containing sensitive_candidates |
mcp_timeout_ms | Timeout budget for all MCP queries |
Read config_path to load the merged config (sensitive patterns, approved wipes). Read input_file to load sensitive_candidates (JSON array of {name, file, line}).
Call activate_project with repo_root. This must succeed before any other Serena tool.
Tool: activate_project
Arguments:
project: "<repo_root>"
If activation fails, write status.json with "status": "failed" and stop.
For each candidate in sensitive_candidates:
find_symbol with symbol_name and include_body: true. Record file, line, kind, type info, array sizes, and struct layout.find_referencing_symbols with symbol_name. Record all cross-file references.find_referencing_symbols to find callers. Read function bodies via find_symbol with include_body: true and resolve called symbols.get_symbols_overview when needed.Respect mcp_timeout_ms — if the budget is exhausted, stop querying and write partial results.
From the collected results, build:
Pipe all raw MCP output through the normalizer:
python {baseDir}/tools/mcp/normalize_mcp_evidence.py \
--input <raw_results> \
--output <workdir>/mcp-evidence/symbols.json
For Serena tool parameters, query patterns, and empty-response troubleshooting, see {baseDir}/references/mcp-analysis.md.
Write all output files to {workdir}/mcp-evidence/:
| File | Content |
|---|---|
status.json | `{"status": "success |
symbols.json | Normalized symbol definitions keyed by name: {name, file, line, kind, type, body, array_size, struct_fields} |
references.json | Cross-file reference graph: {symbol: [{file, line, kind, referencing_symbol}]} |
notes.md | Human-readable observations, unresolved symbols, and relative paths to JSON files |
status.json with "status": "failed", exit. The orchestrator will set mcp_available=false.status.json to "status": "partial" with the count of resolved vs. total candidates.status.json.errors.status.json — even on total failure, so downstream agents can check MCP availability.This agent does not assign finding IDs. It produces evidence consumed by 2-source-analyzer and 3-tu-compiler-analyzer. Evidence files use relative paths from {workdir} (e.g., mcp-evidence/symbols.json).
7plugins reuse this agent
First indexed Feb 27, 2026
Showing the 6 earliest of 7 plugins
npx claudepluginhub michelabboud/trailofbits-skills --plugin zeroize-auditResolves symbol definitions, types, and cross-file references using Serena MCP for zeroize-audit. Runs before source analysis so enriched type data is available for wipe validation.
Read-only code locator returning file:line tables for definitions, references, callers, and usage. Output compressed to save ~60% tokens. Refuses edit or fix suggestions.
Context-isolated subagent that locates symbols, references, definitions, and files across C/C++, C#, JS/TS, and Python projects, returning only a compact file:line table. For multi-file searches that would flood the main context.