m01-ownership

Diagnose Rust ownership and lifetime errors with structured prompts and design guidance.

1|2|Updated Oct 10, 2025
One-click install
npx skills add https://github.com/dojoengine/torii-core --skill m01-ownership-dojoengine
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: m01-ownership
Source: https://github.com/dojoengine/torii-core/tree/main/.agents/skills/m01-ownership
Command: npx skills add https://github.com/dojoengine/torii-core --skill m01-ownership-dojoengine

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps developers diagnose and fix Rust ownership and lifetime errors, translating compiler hints into actionable design decisions and robust patterns.

Core Features & Use Cases

  • Structured reasoning prompts to determine who owns data, when it lives, and how it is borrowed or moved.
  • Trace Up and Trace Down guidance linking compiler errors to design levels and implementation details.
  • Quick-reference patterns, anti-patterns, and best practices for ownership, borrowing, and lifetimes across Rust projects.
  • Error-code mapping and pragmatic strategies for debugging and safe API design.

Quick Start

Describe your ownership error to get a step-by-step diagnosis and recommended fixes.

Frequently Asked Questions about m01-ownership

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix Rust ownership errors like E0382 and E0507?

Fixing Rust ownership errors like E0382 and E0507 requires analyzing who owns the data and how it is moved. This Skill provides step-by-step diagnosis and design-focused guidance, translating compiler hints into actionable fixes and robust borrowing patterns.

What is the best way to resolve Rust borrow checker lifetime errors?

The best way to resolve Rust lifetime errors is to trace data lifetimes against design-level constraints. This Skill delivers structured prompts and quick-reference patterns to diagnose error codes like E0597 and E0106, enforcing safe lifetimes across your codebase.

Why does Rust throw E0597 when borrowing a reference that does not live long enough?

Rust throws E0597 when a borrowed reference outlives its underlying data, breaking lifetime guarantees. This Skill helps diagnose lifetime errors by providing traceable steps and design-focused guidance to align reference lifespans with safe ownership rules.

How do I prevent move errors when designing safe Rust APIs?

Preventing move errors during Rust API design involves applying anti-patterns and best practices for safe ownership. This Skill provides structured reasoning prompts and quick-reference patterns to enforce safe borrowing and movement rules across your projects.

Can I get step-by-step guidance for diagnosing Rust error code E0716?

Yes, you can get step-by-step guidance for diagnosing Rust error code E0716. This Skill maps specific compiler error codes to pragmatic debugging strategies, providing traceable steps and design-focused recommendations to resolve temporary value lifetime issues.