← all repositories
morganlinton/BeautifulRust

Teaching your coding agent to stop writing C in Rust

BeautifulRust bundles three Agent Skills that push LLM coding agents toward idiomatic Rust — plus a clippy config that keeps the rules enforced after the agent goes home.

★1.2k stars Python Coding Assistants
BeautifulRust
Collecting fresh signals — velocity needs a few days of history.
collecting data…
star history

What it does

It ships three Agent Skills in the standard format: rust-best-practices (steers the agent while it writes Rust), rust-review (audits existing code or diffs and emits a prioritized report citing the specific rule each finding breaks), and rust-port (translates C, C++, Python, Go, or JavaScript to Rust by porting the tests first). A companion clippy config enforces the machine-checkable rules in CI. Works with Claude Code, Codex, Copilot, Cursor, and Gemini CLI.

The interesting bit

The guidance is distilled from five style sources — Google’s Rust style guide, the official Rust API Guidelines, Effective Rust, Rust Design Patterns, and Microsoft’s pragmatic guidelines — with a condensed digest of each bundled so the agent can consult the original reasoning. Where the sources disagree, the skill picks a side and says why, which is more editorial spine than most style guides manage.

Key highlights

  • Review reports are three-tiered (must fix / should fix / consider) with file:line locations, the broken rule and its source, and the smallest fix.
  • The port skill designs a Rust API instead of transliterating — NULL to Option, error codes to enums, dict insertion order to an ordered collection — and produces a PORTING.md mapping old API to new.
  • Every code example in the skills compiles on stable Rust; every clippy lint is proven to fire via a check crate with one deliberate violation per lint.
  • In the author’s three-task eval, the skill passed 29 of 30 checks versus 24 of 30 without it.
  • The clippy config flags unwrap() outside tests, undocumented unsafe blocks, unexplained #[allow], bare bool parameters, and missing # Errors docs.

Caveats

  • The 29/30 vs 24/30 result is the author’s own test, not an independent benchmark — three tasks is a small sample.
  • Two lints require rust-version = "1.81" or later, since clippy disables them for older crates.
  • Claude Code doesn’t read the shared .agents/skills/ location, so it needs its own directory or the plugin route.

Verdict

If you let an agent write Rust and wince at the output, this is a cheap, well-sourced way to raise the floor — and the clippy config is useful even if you never touch the skills. If you already enforce a strict lint setup and review everything yourself, it’s mostly convenience.

Frequently asked

What is morganlinton/BeautifulRust?
BeautifulRust bundles three Agent Skills that push LLM coding agents toward idiomatic Rust — plus a clippy config that keeps the rules enforced after the agent goes home.
Is BeautifulRust open source?
Yes — morganlinton/BeautifulRust is open source, released under the MIT license.
What language is BeautifulRust written in?
morganlinton/BeautifulRust is primarily written in Python.
How popular is BeautifulRust?
morganlinton/BeautifulRust has 1.2k stars on GitHub.
Where can I find BeautifulRust?
morganlinton/BeautifulRust is on GitHub at https://github.com/morganlinton/BeautifulRust.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.