rust-router

Version: 2.0.0 | Last Updated: 2026-01-17

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "rust-router" with this command: npx skills add rustfs/rustfs/rustfs-rustfs-rust-router

Rust Question Router

Version: 2.0.0 | Last Updated: 2026-01-17

New in v2.0: Meta-Cognition Routing - Three-layer cognitive model for deeper answers

Meta-Cognition Framework

Core Principle

Don't answer directly. Trace through the cognitive layers first.

Layer 3: Domain Constraints (WHY) ├── Business rules, regulatory requirements ├── domain-fintech, domain-web, domain-cli, etc. └── "Why is it designed this way?"

Layer 2: Design Choices (WHAT) ├── Architecture patterns, DDD concepts ├── m09-m15 skills └── "What pattern should I use?"

Layer 1: Language Mechanics (HOW) ├── Ownership, borrowing, lifetimes, traits ├── m01-m07 skills └── "How do I implement this in Rust?"

Routing by Entry Point

User Signal Entry Layer Direction First Skill

E0xxx error Layer 1 Trace UP ↑ m01-m07

Compile error Layer 1 Trace UP ↑ Error table below

"How to design..." Layer 2 Check L3, then DOWN ↓ m09-domain

"Building [domain] app" Layer 3 Trace DOWN ↓ domain-*

"Best practice..." Layer 2 Both directions m09-m15

Performance issue Layer 1 → 2 UP then DOWN m10-performance

CRITICAL: Dual-Skill Loading

When domain keywords are present, you MUST load BOTH skills:

Domain Keywords L1 Skill L3 Skill

Web API, HTTP, axum, handler m07-concurrency domain-web

交易, 支付, trading, payment m01-ownership domain-fintech

CLI, terminal, clap m07-concurrency domain-cli

kubernetes, grpc, microservice m07-concurrency domain-cloud-native

embedded, no_std, MCU m02-resource domain-embedded

Example: "Web API 报错 Rc cannot be sent"

  • Load: m07-concurrency (L1 - Send/Sync error)

  • Load: domain-web (L3 - Web state management)

  • Answer must include both layers

Trace Examples

User: "My trading system reports E0382"

  1. Entry: Layer 1 (E0382 = ownership error)
  2. Load: m01-ownership skill
  3. Trace UP: What design led to this?
  4. Check: domain-fintech (trading = immutable audit data)
  5. Answer: Don't clone, use Arc<T> for shared immutable data

User: "How should I handle user authentication?"

  1. Entry: Layer 2 (design question)
  2. Trace UP to Layer 3: domain-web constraints
  3. Load: domain-web skill (security, stateless HTTP)
  4. Trace DOWN: m06-error-handling, m07-concurrency
  5. Answer: JWT with proper error types, async handlers

INSTRUCTIONS FOR CLAUDE

Default Project Settings (When Creating Rust Code)

When creating new Rust projects or Cargo.toml files, ALWAYS use:

[package] edition = "2024" # ALWAYS use latest stable edition rust-version = "1.85"

[lints.rust] unsafe_code = "warn"

[lints.clippy] all = "warn" pedantic = "warn"

Rules:

  • ALWAYS use edition = "2024" (not 2021 or earlier)

  • Include rust-version for MSRV clarity

  • Enable clippy lints by default

  • DO NOT use WebSearch for Rust questions - use skills and agents

Meta-Cognition Routing Process

Identify Entry Layer

  • E0xxx errors → Layer 1

  • Design questions → Layer 2

  • Domain-specific → Layer 3

Load Appropriate Skill

  • Read the skill file for context

  • Note the "Trace Up" and "Trace Down" sections

Trace Through Layers

  • Don't stop at surface-level fix

  • Ask "Why?" to trace up

  • Ask "How?" to trace down

Answer with Context

  • Include the reasoning chain

  • Reference which layers/skills informed the answer

When User Requests Intent Analysis

User may say: "analyze this question" / "what type of problem is this" / "analyze intent"

Execute these steps:

  • Extract Keywords - Identify Rust concepts, error codes, crate names

  • Identify Entry Layer - Which cognitive layer is this?

  • Map to Skills - Which m0x/m1x/domain skills apply?

  • Report Analysis - Tell user the layers and suggested trace

  • Invoke Skill - Load and apply the matched skill

Layer 1 Skills (Language Mechanics)

Pattern Category Route To

move, borrow, lifetime, E0382, E0597 m01 m01-ownership

Box, Rc, Arc, RefCell, Cell m02 m02-resource

mut, interior mutability, E0499, E0502, E0596 m03 m03-mutability

generic, trait, inline, monomorphization m04 m04-zero-cost

type state, phantom, newtype m05 m05-type-driven

Result, Error, panic, ?, anyhow, thiserror m06 m06-error-handling

Send, Sync, thread, async, channel m07 m07-concurrency

unsafe, FFI, extern, raw pointer, transmute

unsafe-checker

Layer 2 Skills (Design Choices)

Pattern Category Route To

domain model, business logic m09 m09-domain

performance, optimization, benchmark m10 m10-performance

integration, interop, bindings m11 m11-ecosystem

resource lifecycle, RAII, Drop m12 m12-lifecycle

domain error, recovery strategy m13 m13-domain-error

mental model, how to think m14 m14-mental-model

anti-pattern, common mistake, pitfall m15 m15-anti-pattern

Layer 3 Skills (Domain Constraints)

Domain Keywords Route To

fintech, trading, decimal, currency domain-fintech

ml, tensor, model, inference domain-ml

kubernetes, docker, grpc, microservice domain-cloud-native

embedded, sensor, mqtt, iot domain-iot

web server, HTTP, REST, axum, actix domain-web

CLI, command line, clap, terminal domain-cli

no_std, microcontroller, firmware domain-embedded

Error Code Routing

Error Code Layer Route To Common Cause

E0382 L1 m01-ownership Use of moved value

E0597 L1 m01-ownership Lifetime too short

E0506 L1 m01-ownership Cannot assign to borrowed

E0507 L1 m01-ownership Cannot move out of borrowed

E0515 L1 m01-ownership Return local reference

E0716 L1 m01-ownership Temporary value dropped

E0106 L1 m01-ownership Missing lifetime specifier

E0596 L1 m03-mutability Cannot borrow as mutable

E0499 L1 m03-mutability Multiple mutable borrows

E0502 L1 m03-mutability Borrow conflict

E0277 L1 m04/m07 Trait bound not satisfied

E0308 L1 m04-zero-cost Type mismatch

E0599 L1 m04-zero-cost No method found

E0038 L1 m04-zero-cost Trait not object-safe

E0433 L1 m11-ecosystem Cannot find crate/module

Unsafe-Specific Routing

For detailed unsafe rules, route to unsafe-checker skill:

Pattern Route To

unsafe code review, SAFETY comment unsafe-checker

FFI, extern "C", C interop, libc unsafe-checker

raw pointer, *mut, *const, NonNull unsafe-checker

transmute, union, repr(C) unsafe-checker

MaybeUninit, uninitialized memory unsafe-checker

panic safety, double-free unsafe-checker

Send impl, Sync impl, manual auto-traits unsafe-checker

Functional Routing Table

Pattern Route To Action

latest version, what's new rust-learner Use agents

API, docs, documentation docs-researcher Use agent

Cargo.toml, dependencies dynamic-skills Suggest /sync-crate-skills

code style, naming, clippy coding-guidelines Read skill

unsafe code, FFI unsafe-checker Read skill

code review os-checker Suggest /rust-review

Priority Order

  • Identify cognitive layer (L1/L2/L3)

  • Load entry skill (m0x/m1x/domain)

  • Trace through layers (UP or DOWN)

  • Cross-reference skills as indicated in "Trace" sections

  • Answer with reasoning chain

Skill File Paths

Meta-Cognition Framework

_meta/reasoning-framework.md # How to trace through layers _meta/layer-definitions.md # Layer definitions _meta/externalization.md # Cognitive externalization _meta/error-protocol.md # 3-Strike escalation rule _meta/hooks-patterns.md # Automatic triggers

Layer 1 Skills (Language Mechanics)

skills/m01-ownership/SKILL.md skills/m02-resource/SKILL.md skills/m03-mutability/SKILL.md skills/m04-zero-cost/SKILL.md skills/m05-type-driven/SKILL.md skills/m06-error-handling/SKILL.md skills/m07-concurrency/SKILL.md

Layer 2 Skills (Design Choices)

skills/m09-domain/SKILL.md skills/m10-performance/SKILL.md skills/m11-ecosystem/SKILL.md skills/m12-lifecycle/SKILL.md skills/m13-domain-error/SKILL.md skills/m14-mental-model/SKILL.md skills/m15-anti-pattern/SKILL.md

Layer 3 Skills (Domain Constraints)

skills/domain-fintech/SKILL.md skills/domain-ml/SKILL.md skills/domain-cloud-native/SKILL.md skills/domain-iot/SKILL.md skills/domain-web/SKILL.md skills/domain-cli/SKILL.md skills/domain-embedded/SKILL.md

OS-Checker Integration

For code review and security auditing:

Use Case Command Tools

Daily check /rust-review

clippy

Security audit /audit security

cargo audit, geiger

Unsafe audit /audit safety

miri, rudra

Concurrency audit /audit concurrency

lockbud

Full audit /audit full

all os-checker tools

Workflow Example with Meta-Cognition

User: "Why am I getting E0382 in my trading system?"

Analysis:

  1. Entry: Layer 1 (E0382 = ownership/move error)
  2. Load: m01-ownership skill
  3. Context: "trading system" → domain-fintech

Trace UP ↑:

  • E0382 in trading context
  • Check domain-fintech: "immutable audit records"
  • Finding: Trading data should be shared, not moved

Response: "E0382 indicates a value was moved when still needed. In a trading system (domain-fintech), transaction records should be immutable and shareable for audit purposes.

Instead of cloning, consider:

  • Arc<TradeRecord> for shared immutable access
  • This aligns with financial audit requirements

See: m01-ownership (Trace Up section), domain-fintech (Audit Requirements)"

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

rust-router

No summary provided by upstream source.

Repository SourceNeeds Review
General

rust-router

No summary provided by upstream source.

Repository SourceNeeds Review
General

coding-guidelines

No summary provided by upstream source.

Repository SourceNeeds Review
General

m05-type-driven

No summary provided by upstream source.

Repository SourceNeeds Review