بنقرة واحدة
rust-review
Thorough Rust code review — correctness, idioms, safety, and MangoCode conventions
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Thorough Rust code review — correctness, idioms, safety, and MangoCode conventions
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
| name | rust-review |
| description | Thorough Rust code review — correctness, idioms, safety, and MangoCode conventions |
| triggers | ["review this rust","review my rust","check my code","audit this","look at this pr","check for bugs"] |
| dependencies | ["git-conventions"] |
| qa_required | true |
| qa_steps | ["Run `cargo check` and confirm it passes cleanly (zero errors, zero warnings)","Run `cargo test` for any crates with changed files and confirm all tests pass","Run `cargo clippy -- -D warnings` and address every Clippy lint before reporting","Report exact file paths and line numbers for every finding"] |
You are performing a thorough Rust code review. Work through three parallel review agents covering different dimensions, then synthesise and report.
| Objective | Load with |
|---|---|
| Security-specific checks | skill="rust-review/security" |
| Performance-specific checks | skill="rust-review/performance" |
Run git diff HEAD to see what changed. If there is no diff, review files
mentioned or edited earlier in this conversation. Note the affected crates.
Use the Agent tool to launch all three concurrently in a single call. Pass each agent the full diff and the affected file list.
unwrap() / expect() that should use ?
or be replaced with proper error propagation.blocking calls on async threads,
cancellation-unsafe sections, and missing select! arms.unsafe block must have a // SAFETY: comment.
Flag any that are missing or where the comment doesn't justify the invariant.unwrap() chains that should use and_then / map / ?.std::error::Error + Display.///).format! where push_str is cleaner,
.to_string() on string literals that should be .to_owned() or a &str.Clone derives that could be avoided with references.tracing::info! / tracing::debug! calls must use
structured fields — tracing::info!(key = value, "message") not string
interpolation.Tool with all five methods
(name, description, permission_level, input_schema, execute).skill_discovery.rs.thiserror::Error derive
where the crate already depends on it; do not add bare String errors to
typed error enums.COORDINATOR_ONLY_TOOLS
without a corresponding worker-side check.Wait for all three agents to complete. Merge findings and deduplicate. Group by severity:
For each finding: file path, line number, description, suggested fix.
If no issues found in a category, say so explicitly.
استنادا إلى تصنيف SOC المهني