CRITICAL: Use for mutability issues. Triggers: E0596, E0499, E0502, cannot borrow as mutable, already borrowed as immutable, mut, &mut, interior mutability, Cell, RefCell, Mutex, RwLock, 可变性, 内部可变性, 借用冲突
82
78%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/m03-mutability/SKILL.mdQuality
Discovery
72%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This description excels at trigger term coverage with specific error codes, compiler messages, and multilingual support, making it highly distinctive. However, it lacks concrete action verbs describing what the skill actually does (diagnose, fix, explain, refactor) and would benefit from a proper 'Use when...' clause to improve completeness.
Suggestions
Add concrete action verbs describing what the skill does, e.g., 'Diagnoses and fixes Rust mutability and borrowing errors' at the start
Convert the 'Triggers:' list into a proper 'Use when...' clause, e.g., 'Use when encountering borrow checker errors or working with interior mutability patterns'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (mutability issues) and lists relevant concepts (Cell, RefCell, Mutex, RwLock, interior mutability) but doesn't describe concrete actions like 'diagnose', 'fix', or 'refactor'. | 2 / 3 |
Completeness | The 'when' is partially addressed via 'CRITICAL: Use for mutability issues' and 'Triggers:', but there's no explicit 'Use when...' clause and the 'what' (what actions the skill performs) is not described at all. | 2 / 3 |
Trigger Term Quality | Excellent coverage of natural trigger terms including error codes (E0596, E0499, E0502), exact error messages ('cannot borrow as mutable', 'already borrowed as immutable'), Rust types, and even Chinese translations (可变性, 内部可变性, 借用冲突). | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with specific Rust error codes, exact compiler messages, and specialized types (Cell, RefCell, Mutex, RwLock) that clearly carve out a niche for Rust mutability/borrowing issues. | 3 / 3 |
Total | 10 / 12 Passed |
Implementation
85%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a well-structured diagnostic skill that excels at guiding reasoning about mutability rather than just providing fixes. The decision tables and trace workflows are excellent for helping Claude ask the right questions. The main weakness is the lack of executable code examples - the skill tells you what to use but doesn't show concrete implementations.
Suggestions
Add executable code examples for each interior mutability type (Cell, RefCell, Mutex) showing common usage patterns
Include a concrete before/after code example for at least one common error (e.g., E0502 borrow conflict resolution)
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely lean and efficient. Uses tables and ASCII diagrams to convey maximum information in minimal space. No unnecessary explanations of concepts Claude already knows - assumes competence with Rust fundamentals. | 3 / 3 |
Actionability | Provides good decision tables and error mappings, but lacks executable code examples. The quick reference tables are helpful but pseudocode-like trace diagrams aren't copy-paste ready. Would benefit from concrete code snippets showing Cell/RefCell/Mutex usage. | 2 / 3 |
Workflow Clarity | Clear decision trees with 'Trace Up' and 'Trace Down' sections that guide through diagnostic workflows. The Error → Design Question table provides explicit checkpoints for reasoning through mutability issues rather than just fixing symptoms. | 3 / 3 |
Progressive Disclosure | Well-organized with clear sections progressing from core concepts to quick reference to anti-patterns. Related Skills section provides one-level-deep references to other modules. Content is appropriately structured for a skill file. | 3 / 3 |
Total | 11 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
1f4becd
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.