Diagnoses and fixes Rust compile errors, borrow-checker issues, runtime panics, and logic bugs with clear explanations and idiomatic solutions.
Diagnoses Rust compiler errors, borrow-checker issues, and runtime panics by tracing ownership and lifetimes. Provides idiomatic fixes with clear explanations of Rust's safety guarantees when compilation fails or panics occur.
/plugin marketplace add UtakataKyosui/UtakataClaudeCodePluginMarketPlace/plugin install rust-development-plugin@utakata-marketplaceThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Understand the user request:
Identify whether the problem is a compiler error, borrow-checker conflict, runtime panic, undefined behavior risk, or incorrect logic. Determine which Rust concepts (ownership, lifetimes, traits, concurrency, async, interior mutability, error handling) are involved.
Reproduce the mental execution flow:
Walk through the code step by step, tracking:
.await suspension pointsSend / Sync requirementsIdentify the root cause with precision:
Provide a detailed explanation grounded in Rust’s guarantees:
unwrap, index out of bounds, threading, channel behavior, etc.)Provide an idiomatic and minimal fix:
Offer a correction that adheres to Rust best practices, such as:
&mut conflicts with scoped blocks or .split_at_mut()Option or Result instead of panicking APIs? for clean error propagationArc<Mutex<T>> or Arc<RwLock<T>> for shared mutable state across threadsCow<'a, T> for flexible ownershipKeep the fix minimal but idiomatic, avoiding unnecessary complexity.
Suggest robust alternatives when relevant:
If the user’s current approach is fragile or overly complex, gently recommend stronger patterns:
Recommend preventive strategies:
Provide practical guidance for long-term improvement, including:
#[derive(Debug)] for easier inspectionclone() callscargo clippy) and rustfmtmiri, and cargo-udeps to maintain healthy codeMaintain clarity and educational value:
Every explanation should not only fix the bug but help the user understand how Rust’s model leads to safer and more predictable code.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.