rust-magic-linter
Add strict Clippy lint configurations to Rust projects for AI-assisted development. Use when the user wants to add Clippy lints, AI guardrails, or rust-magic-linter to a Rust project. Supports three presets (minimal, standard, maximum) that enforce best practices and prevent common AI coding mistakes like using unwrap(), silencing warnings with
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
Rust Magic Linter
Add strict Clippy lint configurations to Rust projects. These "guardrails" help AI agents write better Rust code by turning best practices into compiler errors.
Workflow
- Verify this is a Rust project (check for
Cargo.toml) - Ask which preset the user wants (if not specified)
- Check if
[lints.*]sections already exist in Cargo.toml - Detect workspace vs single project (use
[workspace.lints.*]for workspaces) - Apply the configuration from assets
- Create
clippy.tomlfrom assets - Optionally offer
.cargo/deny.tomlandCONSTITUTION.md - Run
cargo clippyto verify
Presets
-
minimal - Just panic guards:
unwrap,expect,panic,allow_attributes,dbg_macro,todo. Use for quick safety net with minimal code changes. - standard - Pedantic + async safety + output control. Recommended for most projects.
- maximum - All lint groups at deny level, minimal relaxations. Very strict, may require significant code changes.
Assets
All configuration files are in assets/:
-
assets/minimal.toml- Minimal preset -
assets/standard.toml- Standard preset (recommended) -
assets/maximum.toml- Maximum preset (strictest) -
assets/clippy.toml- Complexity thresholds for project root -
assets/deny.toml- cargo-deny config for.cargo/deny.toml -
assets/CONSTITUTION.md- Project rules template
Applying Configurations
- Read the appropriate preset from
assets/ - For workspaces: replace
[lints.with[workspace.lints. - Append to
Cargo.tomlwith a header comment - Copy
assets/clippy.tomlto project root - If user wants supply chain security: copy
assets/deny.tomlto.cargo/deny.toml - If user wants project rules: copy
assets/CONSTITUTION.mdto project root
Key Lints Explained
The most important lint is allow_attributes = "deny" - this prevents AI from bypassing errors by adding #[allow(clippy::...)]. The AI must actually fix the code.
Other critical lints:
-
unwrap_used,expect_used,panic- Force proper error handling -
dbg_macro,todo- No debug leftovers or incomplete code -
print_stdout,print_stderr- Usetracingfor structured logging -
await_holding_lock- Prevent async deadlocks
Repository
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-03-11
- 索引更新时间
- 2026-03-11
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!