CtrlK
BlogDocsLog inGet started
Tessl Logo

m03-mutability

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, 可变性, 内部可变性, 借用冲突

Install with Tessl CLI

npx tessl i github:actionbook/rust-skills --skill m03-mutability
What are skills?

82

Does it follow best practices?

Validation for skill structure

SKILL.md
Review
Evals

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 discoverable. However, it lacks concrete action verbs describing what the skill actually does (diagnose, fix, explain, refactor) and reads more like a keyword list than a complete skill description.

Suggestions

Add concrete actions at the start describing what the skill does, e.g., 'Diagnoses and fixes Rust mutability and borrowing errors' before the trigger list.

Restructure to follow the pattern: '[What it does]. Use when [triggers]' rather than leading with 'CRITICAL: Use for'.

DimensionReasoningScore

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 'what does this do' - it lists triggers without explaining what actions the skill performs.

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 decision-making around Rust mutability patterns. Its strength lies in the clear decision tables and trace-up/trace-down navigation. The main weakness is the lack of executable code examples - while the conceptual guidance is excellent, adding concrete code snippets would make it more immediately actionable.

Suggestions

Add minimal executable code examples for each interior mutability type (Cell, RefCell, Mutex) showing basic usage patterns

Include a concrete before/after code example for at least one common error (e.g., E0502 borrow conflict resolution)

DimensionReasoningScore

Conciseness

Extremely lean and efficient. Uses tables and compact notation throughout. No unnecessary explanations of concepts Claude already knows - assumes competence with Rust fundamentals while providing precise decision guidance.

3 / 3

Actionability

Provides clear decision tables and error mappings, but lacks executable code examples. The guidance is conceptual rather than copy-paste ready - no actual Rust code snippets showing Cell/RefCell/Mutex usage patterns.

2 / 3

Workflow Clarity

Clear decision trees with 'Trace Up' and 'Trace Down' sections providing explicit navigation paths. The 'Thinking Prompt' offers a structured 3-step process for evaluating mutability needs before implementation.

3 / 3

Progressive Disclosure

Well-organized with clear sections and tables. References to related skills (m02-resource, m07-concurrency, etc.) are one level deep and clearly signaled. Content is appropriately structured for a reference skill.

3 / 3

Total

11

/

12

Passed

Validation

75%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation12 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

description_trigger_hint

Description may be missing an explicit 'when to use' trigger hint (e.g., 'Use when...')

Warning

metadata_version

'metadata' field is not a dictionary

Warning

license_field

'license' field is missing

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

12

/

16

Passed

Reviewed

Table of Contents

Is this your skill?

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.