Rust Skills

265 коротких правил по Rust для ИИ-агента: заимствование, ошибки, async, unsafe и производительность, с примерами плохого и хорошего кода

  • 654 ★ репозитория
  • Последний коммит
  • MIT
Скилл

Минимальный доступ

Почему такой уровень

  • Скилл состоит из текстовых правил и примеров, сам ничего не запускает и в сеть не ходит
  • Агент читает файлы вашего проекта, как и без скилла, дополнительных прав скилл не просит
Все причины и проверки

leonardomso/rust-skills

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/rust-skills

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Минимальный доступИнструмент ничего не запускает и не ходит в сеть.

  • Скилл состоит из текстовых правил и примеров, сам ничего не запускает и в сеть не ходит
  • Агент читает файлы вашего проекта, как и без скилла, дополнительных прав скилл не просит

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Rust Skills — набор из 265 правил в 26 категориях, по которому агент пишет и проверяет код на Rust (выпуск 1.96, редакция 2024). Автор исходит из того, что агенты без подсказок пишут средний код: клонируют, чтобы обойти проверку заимствований, везде вызывают `.unwrap()` и берут `Box<dyn Trait>`, где хватило бы `impl Trait`. Правила описывают, как выглядит сильный код. Каждое правило лежит в отдельном файле папки `rules/` и состоит из краткой формулы, объяснения, примера плохого кода, примера хорошего и ссылок на связанные правила. Файл SKILL.md работает как оглавление: в нем все правила в виде одной строки, сгруппированные по категориям с приоритетом от критичного до справочного. Агент читает оглавление и открывает только нужные файлы, поэтому контекст не раздувается. Вызвать скилл можно командой `/rust-skills` с вопросом: «review this function», «is my error handling idiomatic?», «is this unsafe block sound?». В README пример: функция `first_word` с `&String` и `.unwrap()` превращается в версию с `&str`, которая возвращает `Option`.

Для кого. Для разработчиков на Rust, которые отдают написание и ревью кода агенту и хотят, чтобы он следовал идиомам языка.

Подходит, если

  • Агент пишет новую функцию или модуль на Rust, и вы хотите, чтобы он брал ссылки вместо лишних `.clone()`
  • Нужно проверить, идиоматично ли обработаны ошибки: библиотека на `thiserror`, приложение на `anyhow`, оператор `?`
  • Перед слиянием надо проверить блок `unsafe`: комментарии `SAFETY:`, `Miri`, `MaybeUninit`
  • Вы проектируете публичный API библиотеки и сверяетесь с паттернами builder, newtype и sealed trait
  • Нужно уменьшить число аллокаций или ускорить горячий путь: правила про `SmallVec`, арены, LTO, PGO и SIMD

Не подходит, если

  • Проект написан не на Rust: правила целиком про этот язык, его экосистему и инструменты
  • Нужен общий ревью кода без привязки к языку: для этого в каталоге есть универсальные скиллы
  • Нужна проверка компилятором: скилл подсказывает агенту стиль, а `cargo clippy` и тесты остаются на своем месте
  • Проект застрял на старой версии Rust: правила рассчитаны на 1.96 и редакцию 2024, часть советов может не собраться

Пример запроса к агенту

/rust-skills проверь, идиоматична ли обработка ошибок в src/parser.rs и нет ли там лишних clone

Ограничения

Скилл дает агенту правила, а результат зависит от модели; сам он код не запускает. Правила рассчитаны на Rust 1.96 и редакцию 2024, примеры автор советует проверять на актуальном `stable`.

Автор указывает, что материал основан на официальной документации, книгах и разборе популярных крейтов, а тексты и примеры написаны заново. Проект не связан с командой Rust и авторами крейтов.

В README одно место называет 218 правил вместо 265: ориентируйтесь на число в SKILL.md и в оглавлении, оно совпадает с содержимым папки `rules/`.

Как отключить. Удалите папку rust-skills из каталога скиллов агента: `~/.claude/skills/rust-skills` для Claude Code или `.cursor/skills/rust-skills` в проекте для Cursor. Если ставили через `npx add-skill`, уберите скилл из каталога, куда его положила команда. Файлы AGENTS.md и .cursorrules, скачанные вручную, удалите отдельно.

Частые вопросы

Как поставить Rust Skills в Claude Code?

Выполните `npx add-skill leonardomso/rust-skills`: команда сама определяет установленных агентов и кладет скилл в нужную папку. Вручную: `git clone https://github.com/leonardomso/rust-skills.git ~/.claude/skills/rust-skills` для всех проектов или в `.claude/skills/rust-skills` для одного.

Как вызвать скилл?

Командой `/rust-skills` и вопросом, например `/rust-skills is this unsafe block sound?`. Агент загрузит оглавление и откроет только правила, относящиеся к вашему коду.

Из чего состоят правила?

Каждое правило — файл `rules/<префикс>-<имя>.md` с краткой формулой, пояснением, плохим и хорошим примером и разделом «See also». Префиксы вроде `own-`, `err-`, `async-` соответствуют категориям, поэтому при ревью async-кода агент может взять только `async-`, `conc-` и `own-`.

Какие агенты поддерживаются?

README называет Claude Code, Cursor, Windsurf, Copilot, Codex, Aider, Zed, Amp и Cline и дает ручные способы установки для каждого. Для Windsurf, Copilot и Zed вместо папки скилла скачивается SKILL.md в `.windsurf/rules/`, `.github/copilot-instructions.md` или AGENTS.md.

Чем он отличается от обычного ревью кода агентом?

Агент получает конкретный перечень правил по Rust с приоритетами: ошибки владения, обработка ошибок, память и unsafe помечены как критичные. Универсальный ревью-скилл проверяет общие вещи вроде архитектуры и безопасности, а здесь правила привязаны к идиомам языка.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы

Скилл для ревью кода по многим языкам и фреймворкам: архитектура, производительность, безопасность, антипаттерны и типичные ошибки

СкиллМинимальный доступ2,2 тыс.Звезды репозитория

Коллекция скиллов Mindrally

Claude Code Skills Collection

Более двухсот скиллов с правилами кода под фреймворки и языки, переделанных из Cursor rules в формат SKILL.md

СкиллМинимальный доступ288Звезды репозитория

Скиллы-контроли для кодовых агентов: второй проход по диффу, который ловит типичные ошибки в коде, тестах и документации от ИИ

СкиллМинимальный доступ1,3 тыс.Звезды репозитория

Личный набор автора: общие правила для агентов и десятки скиллов для GitHub, браузера, macOS, сообщений и релизов, плюс скрипт синхронизации

СкиллШирокий доступ7,4 тыс.Звезды репозитория

Два скилла для кодинг-агентов: wtf проверяет проект перед деплоем, better-codex держит агента в рамках при работе с кодом

СкиллРасширенный доступ1,4 тыс.Звезды репозитория

Коротко о README

Репозиторий открывает тезис: агенты без подсказок пишут средний Rust. Дальше идут установка одной командой, примеры запросов с `/rust-skills`, таблица из 26 категорий с числом правил и пояснение, как устроены оглавление, файлы правил и префиксы. Ручная установка расписана для десяти агентов. В конце перечислены источники: официальная документация Rust, книги о производительности и паттернах, разобранные крейты, а также формат нового правила для тех, кто хочет внести свое.

Бейдж для README

Исходный SKILL.md

---
name: rust-skills
description: >
  Comprehensive Rust coding guidelines with 265 rules across 26 categories.
  Use when writing, reviewing, or refactoring Rust code. Covers ownership,
  error handling, async patterns, concurrency, unsafe code, API design, memory
  optimization, performance, numeric safety, conversions, serde, pattern
  matching, macros, closures, observability, testing, and common anti-patterns.
  Invoke with /rust-skills.
license: MIT
metadata:
  author: leonardomso
  version: "1.5.1"
  sources:
    - Rust API Guidelines
    - Rust Performance Book
    - Rust 2024 Edition Guide
    - The Rustonomicon
    - ripgrep, tokio, serde, polars, axum, cargo codebases
---

# Rust Best Practices

Comprehensive guide for writing high-quality, idiomatic, and highly optimized Rust code. Contains 265 rules across 26 categories, prioritized by impact to guide LLMs in code generation and refactoring. Current for Rust 1.96 (2024 edition).

## When to Apply

Reference these guidelines when:
- Writing new Rust functions, structs, or modules
- Implementing error handling or async code
- Writing concurrent, parallel, or `unsafe` code
- Designing public APIs for libraries
- Reviewing code for ownership/borrowing issues
- Optimizing memory usage or reducing allocations
- Tuning performance for hot paths
- Refactoring existing Rust code

## Rule Categories by Priority

| Priority | Category | Impact | Prefix | Rules |
|----------|----------|--------|--------|-------|
| 1 | Ownership & Borrowing | CRITICAL | `own-` | 12 |
| 2 | Error Handling | CRITICAL | `err-` | 12 |
| 3 | Memory Optimization | CRITICAL | `mem-` | 17 |
| 4 | Unsafe Code | CRITICAL | `unsafe-` | 7 |

Сообщить о проблеме

Foxx AIRust Skills
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.