Resources
1Install
npx skillscat add busirocket/agents-skills/busirocket-rust Install via the SkillsCat registry.
About this skill
The skill enforces Rust language and module standards, requiring one public symbol per file, separating SQL and prompt files, and structuring code into services, utils, and models. It solves maintainability and consistency issues in Rust codebases. Use it when writing or refactoring Rust projects that need strict organization and separation of concerns.
SKILL.md
Rust Standards
Strict, reusable standards for Rust codebases (libraries, CLIs, or backend
services).
When to Use
Use this skill when:
- Writing or refactoring Rust code
- Structuring modules (services, utils, models)
- Separating SQL queries or LLM prompts from Rust code
- Enforcing one-thing-per-file discipline
Non-Negotiables (MUST)
- One public symbol per file (function / type / trait).
- No inline SQL strings in
.rsfiles; use dedicated SQL files withinclude_str!()(e.g.sql/<area>/Xxx.sql). - No inline LLM/AI prompts in
.rsfiles; use dedicated prompt files withinclude_str!()(e.g.prompts/<area>/Xxx.prompt). - Handlers (HTTP, commands, etc.) must be thin: validate, call service, return.
Module Layout
src/services/: external boundaries (IO, DB, network).src/utils/: pure logic (no IO).src/models/: domain types (one type per file).- No "misc" modules like
helpers.rsorcommon.rs.
Rules
Language & Style
rust-language-style- Language & style (English-only, struct/enum, error
types)
One Thing Per File
rust-one-thing-per-file- One thing per file (STRICT)rust-module-manifests- Module manifests exception (mod.rs)
Module Layout
rust-module-layout- Module layout (STRICT) - services, utils, models
SQL Separation
rust-sql-separation- SQL separation (STRICT) - no inline SQL
Prompt Separation
rust-prompt-separation- Prompt separation (STRICT) - no inline prompts
Boundaries
rust-boundaries- Boundaries (thin handlers, validate, call service, return)
Validation
rust-validation- Validation (run checks after changes)
Related Skills
busirocket-core-conventions- General file structure principlesbusirocket-tauri- Tauri-specific layout and commands (when building desktop
apps)
How to Use
Read individual rule files for detailed explanations and code examples:
rules/rust-one-thing-per-file.md
rules/rust-sql-separation.md
rules/rust-module-layout.mdEach rule file contains:
- Brief explanation of why it matters
- Code examples (correct and incorrect patterns)
- Additional context and best practices