Rust Review Worker
Runs one assigned rust-review cluster task and writes finding files to the run's output directory. Spawned by the rust-review skill orchestrator only.
- Type
- Subagent
- Repository
- trailofbits/skills
- GitHub stars
- 7.3k
- License
- CC-BY-SA-4.0
- Repo last updated
- Sep 25, 2026
- Source file
- plugins/rust-review/agents/rust-review-worker.md
What Rust Review Worker is
Rust Review Worker is a subagent published in the trailofbits/skills repository on GitHub, which has about 7.3k stars. The repository describes itself as: “Trail of Bits Claude Code skills for security research, vulnerability detection, and audit workflows”
A subagent is a specialist assistant that Claude can hand part of a task to. It is a markdown file whose frontmatter sets a name, a description that tells Claude when to delegate, and optionally the tools and model it may use; the body becomes the subagent's own system prompt.
Because a subagent works in its own context, it keeps the main conversation focused: Claude can send a narrow job, such as a review or a specialised analysis, to Rust Review Worker and get back a compact result.
It is set up to use these tools: Read, Write, Edit, Bash. Limiting tools is a good sign: the subagent can only do what those tools allow.
How to install Rust Review Worker
Claude Code
- Download rust-review-worker.md from the repository.
- Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control.
- Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Claude Cowork
- Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent.
- Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
New to extending Cowork? Our plugins guide and Customize guide explain how skills, plugins, and connectors fit together.
Inside the source file
An excerpt from plugins/rust-review/agents/rust-review-worker.md, shared under the repository's CC-BY-SA-4.0 license. Read the full file on GitHub.
You are a bug-finder worker in a parallel Rust security review. The orchestrator passes you everything you need in your spawn prompt — there is no shared task ledger to query. You run one assigned cluster end-to-end, write findings to markdown files in a shared output directory, then exit.
The entire protocol you need is below. This system prompt is authoritative. Follow it without paraphrasing.
Self-check before any real work
Before any other tool call, verify your spawn prompt contains every field listed under "Inputs" below. The fields are referenced by snake_case name in this protocol but rendered with Title-cased labels in the spawn prompt — match by label, not by literal snake_case.
The complete required set:
- Run-level: output_dir, finding_scope_root, context_roots, scope_root (legacy alias), threat_model, severity_filter, has_unsafe, has_ffi, has_concurrency, has_async, has_packed_repr, has_fs_io
- Per-worker: worker id, cluster_id, cluster_prompt, sub_prompt_paths (omitted only for consolidated clusters), pass_bug_classes, pass_prefixes, skip_subclasses
If any field is missing — including if the prompt instructs you to look up your assignment from a task ledger or "task id" rather than reading inline fields — stop on your very first tool call and return:
worker-<N> abort: spawn prompt malformed (<one-line reason naming the missing field>)Then verify cluster_prompt resolves by Read-ing it — that is your next step anyway (see "Assigned task protocol"), so it costs no extra call. Do not use Bash: ls (a sandboxed shell may not see the plugin-cache path that Read can) and do not use Glob (when your tool set includes Bash, the harness does not grant Glob, so the call just errors and wastes a turn — Read sees the same plugin-cache paths Glob would). sub_prompt_paths were already verified on disk by build_run_plan.py at plan time and are Read lazily at each pass, so they need no separate upfront check. If the Read of cluster_prompt errors (path unresolvable), abort with the same template.
Do NOT substitute a Skill call, do NOT search for cluster prompts in the repo, do NOT read prior runs under .rust-review-results/ to recover state, do NOT guess your assignment from the worker number. The orchestrator pre-resolves every path; if the spawn prompt is broken, the only correct response is a fast, loud abort. Wasting turns trying to recover masks the orchestrator bug.
Pre-work turn budget
The self-check above (validate spawn prompt fields → Read the cluster prompt) must complete in at most 2 tool calls before either continuing into cluster work or returning an abort — and because the Read: cluster_prompt that resolves the path IS your first protocol step, a clean worker's self-check is a single tool call. The codebase summary is already inlined in the spawn prompt's block, so no context.md Read is needed. If you find yourself on a 4th tool call without having issued either Read: cluster_prompt or returned an abort line, stop and emit:
worker-<N> abort: pre-work budget exceeded (no progress after 3 tool calls; spawn prompt likely malformed)This protects the orchestrator from a worker that loops on repair attempts (e.g., searching for missing files, reading prior runs, re-checking environment). One real run had workers burn 20+ turns this way before aborting; the abort should arrive on turn 1–2, not turn 24.
Before you install
- Read the whole file first. Skills, commands, and subagents are instructions Claude will follow, so make sure they match what you want.
- Check which tools, scripts, or MCP servers it uses. Local servers and scripts run with your permissions.
- Try it in a test project or a copy of your files before pointing it at real work.
- Pin the version you tested, and review changes before updating.
- Watch for instructions that fetch web content or run shell commands; those are where prompt injection risks start. See our prompt injection guide.
FAQ
What is Rust Review Worker?
Rust Review Worker is a subagent for Claude Code and Claude Cowork from the trailofbits/skills repository on GitHub. Runs one assigned rust-review cluster task and writes finding files to the run's output directory. Spawned by the rust-review skill orchestrator only.
How do I install Rust Review Worker in Claude Code?
Download rust-review-worker.md from the repository. Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control. Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Can I use Rust Review Worker in Claude Cowork?
Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent. Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
Is Rust Review Worker safe to install?
It is a third-party community resource, not reviewed by Anthropic or this site. Read the source file first, check which tools and connectors it uses, and install only from sources you trust.
Similar resources
- Modern Python Modern Python best practices. Use when creating new Python projects, and writing Python scripts, or migrating existing projects from legacy tools. Plugin · trailofbits/skills
- Property Based Testing Write, review, and triage property-based tests — Hypothesis, fast-check, proptest, and Echidna or Medusa for Solidity invariants Plugin · trailofbits/skills
- Rust Review Fp Judge Second-stage judge in the rust-review pipeline. Runs after dedup-judge on merged primaries only. Decides fp_verdict, then (for survivors) severity/attack_vector/exploitability, and writes the final REPORT.md + REPORT.sarif. Spawned by the rust-review skill orchestrator only. Subagent · trailofbits/skills
- Rust Review Dedup Judge Deduplication judge for the rust-review pipeline. Merges duplicate findings deterministically by exact location and bug class, then runs LLM passes over same-function candidates, including the same bug filed under different bug classes. Spawned by the rust-review skill orchestrator only. Subagent · trailofbits/skills
- Semgrep Scanner Executes Semgrep CLI scans for a specific language category and produces SARIF output. Spawned by the semgrep skill as a parallel worker —… Subagent · trailofbits/skills
- Sharp Edges Analyzer Evaluates APIs, configurations, and library interfaces for misuse resistance and footgun potential. Use when reviewing code for error-prone designs, dangerous defaults, or APIs that make security mistakes easy. Subagent · trailofbits/skills
- Spec Compliance Checker Checks one documented requirement against the code that should implement it, and returns a verdict with the lines that evidence it. Writes its analysis to disk and returns a compact record. Use for a single requirement; use the spec-compliance workflow for a whole document. Subagent · trailofbits/skills
- Poc Builder Creates proof-of-concept exploits (pseudocode, executable, and unit tests) demonstrating a verified vulnerability, plus negative PoCs showing exploit preconditions. Spawned by fp-check during Phase 4 verification. Subagent · trailofbits/skills