원클릭으로
evaluate-rust-performance
Evaluate project performance with focus on Rust and CLI-specific patterns
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Evaluate project performance with focus on Rust and CLI-specific patterns
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Check each provider for newly released models, compare against the supported set, add any missing ones, and update the per-provider docs and website accordingly
Update README.md, CLAUDE.md, the docs/ tree (ARCH.md, INSTALL.md, USAGE.md, CONFIG.md, PROVIDERS.md, TOOLS.md, EXTENSIONS.md, CODING_AGENT.md, SERVER.md), and the website (website/index.html, website/terminal.html, website/server.html, website/desktop.html) to match the current project state
Write a small, self-contained, locally executable code snippet — bash or python by default.
Connect a Model Context Protocol server to aictl by adding an entry to ~/.aictl/mcp.json. Walks the user through command, args, env, and timeout, then merges the new server into the existing config without disturbing other entries.
Add a lifecycle hook to ~/.aictl/hooks.json. Walks the user through choosing the right event, matcher, command, and timeout, then merges the new entry into the existing config without disturbing other hooks.
Review staged/unstaged changes for correctness, security, and style.
| name | evaluate-rust-performance |
| description | Evaluate project performance with focus on Rust and CLI-specific patterns |
| allowed-tools | Bash, Read, Glob, Grep, Write |
Audit the codebase for performance issues, inefficient patterns, and CLI responsiveness problems. Produce a concise report with findings and actionable recommendations.
Run each command via the Bash tool and capture output:
cargo build --release 2>&1
ls -lh target/release/$(basename $(pwd)) 2>/dev/null || ls -lh target/release/*.exe 2>/dev/null || echo "binary not found"
time cargo build --release 2>&1
Record binary size and build time.
Use Grep and Read to find allocation-heavy patterns:
.clone() -- flag clones in hot paths or loops where a borrow would suffice..to_string(), .to_owned() -- flag unnecessary conversions from &str to String.format! in loops -- flag repeated allocations that could be pre-allocated.String::new() followed by repeated push_str -- suggest using format! or pre-allocated capacity.Vec::new() in loops without with_capacity -- flag when the size is known or estimable.collect() into intermediate collections that are immediately iterated again.Use Grep and Read to examine string usage:
String parameters where &str would work.String where the caller always borrows the result.+ operator -- suggest format! or push_str.String::from or .into() conversions at call sites.Use Grep and Read to examine async patterns:
tokio::spawn, .await, async fn -- verify async is used appropriately..await calls that could run concurrently with join! or try_join!.std::fs, std::thread::sleep, heavy computation without spawn_blocking.Arc/Mutex where simpler ownership would work.tokio::sync::Mutex vs std::sync::Mutex misuse.Use Grep and Read to examine I/O patterns:
reqwest usage -- check for connection reuse (shared Client vs per-request Client::new()).read_to_string on large files without size checks.Use Grep and Read to examine subprocess handling:
Command::new, tokio::process::Command -- check for efficient usage.Use Grep and Read to check for inefficient patterns:
iter().find, iter().position, contains) on large collections -- suggest HashMap/HashSet.regex::Regex::new inside loops -- should be compiled once and reused.Use Grep and Read to check for bloat:
#[derive(Debug)] on large types that don't need it in release builds.strip is configured in release profile for smaller binaries.Use Grep and Read to check startup performance:
Print a structured report with these sections:
## Build Metrics
binary size, build time, release profile settings
## Allocations & Cloning
findings with file:line references
## String Handling
findings with file:line references
## Async & Concurrency
findings with file:line references
## I/O & Network
findings with file:line references
## Process Execution
findings with file:line references
## Data Structures & Algorithms
findings with file:line references
## Binary Size
dependency weight, feature flags, optimization settings
## Startup & Responsiveness
findings with file:line references
## Summary
overall performance assessment: score out of 10,
critical issues (measurable impact), warnings (likely impact),
suggestions (marginal improvement)
Use impact labels for each finding: CRITICAL, HIGH, MEDIUM, LOW, INFO.
After printing the report, save it to the .claude/reports/performance/ directory: