rewrite-rs

31 mods across 1 repository, 1 stars between them.

rewrite-rs

01

rewrite-rs/skills

Plugin Claude Code

Rust agent skills from rewrite-rs, as an installable Claude Code plugin.

1 15d ago A tokens not measured original BSD-3-Clause

rewrite-rs-skills

02

rewrite-rs/skills

Plugin Claude Code

The most comprehensive agent skill set for real Rust: ownership over clone and unwrap, errors and APIs that survive review, async and unsafe done right, plus disciplined porting into Rust.

1 15d ago A tokens not measured original BSD-3-Clause

skills CLAUDE.md

03

rewrite-rs/skills

Instructions file

Claude Code instructions for rewrite-rs/skills, covering claude.md, 1. buckets, 2. prose-dominant with verification, 3. config precedence and 4. one porting language per session.

1 15d ago A 1,050 tokens original BSD-3-Clause

rust-ffi

04

rewrite-rs/skills

Skill Claude CodeCodex

Design an FFI boundary meant to last — a thin translation layer with the logic in core crates, no panic across the boundary, explicit ownership on every pointer, repr(transparent) newtypes, and unsafe extern in edition 2024. Use when designing or reviewing a Rust FFI surface, when exposing a Rust library to another…

1 15d ago A 93 tokens original BSD-3-Clause

rust-macros

05

rewrite-rs/skills

Skill Claude CodeCodex

Write a macro only when a function, a trait, or a generic cannot do the job — then by-example before proc-macro, with hygiene, a private helper module, and spanned compile errors instead of panics. Use when writing or reviewing macrorules! or a proc macro, when a derive or attribute macro is being added, when macro…

1 15d ago A 97 tokens original BSD-3-Clause

rust-serde

06

rewrite-rs/skills

Skill Claude CodeCodex

Serde as the boundary where untrusted input becomes a domain type — renameall, default, skipserializingif, flatten, the four enum representations, denyunknownfields, and tryfrom validation. Use when deriving Serialize or Deserialize, when choosing an enum wire representation, when a JSON or YAML shape does not match…

1 15d ago A 82 tokens original BSD-3-Clause

rust-supply-chain

07

rewrite-rs/skills

Skill Claude CodeCodex

Audit a Rust dependency tree — advisories, licences, banned and duplicate crates, and unmaintained dependencies — and turn each finding into a decision. Use when checking whether dependencies are safe to ship, when cargo audit or cargo deny reports something, when adding a dependency to a project with a licence…

1 15d ago A 90 tokens original BSD-3-Clause

setup-rust-ci

08

rewrite-rs/skills

Skill Claude CodeCodex

Write a GitHub Actions workflow for a Rust repo — format, clippy at the configured level, tests, and an MSRV job, derived from the posture the repo already recorded.

1 15d ago A 42 tokens original BSD-3-Clause

rewrite-rs/skills

Skill Claude CodeCodex

Set up fast pre-commit hooks for a Rust repo — format and lint the staged changes only, with CI left as the real gate.

1 15d ago A 35 tokens original BSD-3-Clause

port-from-c

10

rewrite-rs/skills

Skill Claude CodeCodex

Port C into Rust — recovering the ownership, lifetime, nullability, and length that C never recorded, mapping pointers to references and slices, tag-plus-union to enums, return codes and errno to Result, and linking Rust into the existing build with bindgen and cbindgen. Use when porting, rewriting, or migrating C, a…

1 15d ago A 127 tokens original BSD-3-Clause

port-from-cpp

11

rewrite-rs/skills

Skill Claude CodeCodex

Port C++ into Rust — RAII and smart pointers onto ownership, templates onto generics and traits, exceptions onto Result, the STL onto Rust collections, and the traps (move semantics, implicit conversions, undefined behaviour, iterator invalidation). Use when porting, rewriting, or migrating C++, a C++ library, or a…

1 15d ago A 119 tokens original BSD-3-Clause

port-from-go

12

rewrite-rs/skills

Skill Claude CodeCodex

Port Go into Rust — goroutines and channels onto tasks and async, interfaces onto traits, error values onto Result, and the value-semantics traps (zero values, integer wraparound, slice aliasing, nil). Use when porting, rewriting, or migrating Go, Golang, a Go service, or a Go CLI into Rust, when replacing a Go…

1 15d ago A 100 tokens original BSD-3-Clause

port-from-java

13

rewrite-rs/skills

Skill Claude CodeCodex

Port Java into Rust — class hierarchies onto enums and composition, exceptions onto Result, collections and streams onto Rust equivalents, and the traps (UTF-16 strings, silent integer wraparound, null, equals/hashCode contracts). Use when porting, rewriting, or migrating Java, a JVM service, a Spring or Jakarta…

1 15d ago A 105 tokens original BSD-3-Clause

port-from-python

14

rewrite-rs/skills

Skill Claude CodeCodex

Port Python into Rust — construct mapping, the semantic traps (integer width, floor division, str versus bytes, exceptions to Result), and the seam, which is a process boundary for a standalone replacement and PyO3 when Python keeps calling the code. Use when porting, rewriting, or migrating Python, CPython, Django…

1 15d ago A 117 tokens original BSD-3-Clause

rewrite-rs/skills

Skill Claude CodeCodex

Port TypeScript or JavaScript into Rust — construct mapping against runtime semantics, the traps (every number is an f64, two kinds of absent, structural typing, regex feature gaps), and the napi-rs and wasm-bindgen boundaries. Use when porting, rewriting, or migrating TypeScript, JavaScript, Node, Deno, Bun, Express…

1 15d ago A 117 tokens original BSD-3-Clause

port-to-rust

16

rewrite-rs/skills

Skill Claude CodeCodex

Run a port into Rust without losing behaviour — define the parity contract, sequence the phases, migrate incrementally behind a stable boundary, and prove parity differentially. Use when moving, porting, rewriting, or migrating an existing codebase into Rust from any language, when deciding how to sequence or scope a…

1 15d ago A 94 tokens original BSD-3-Clause

async-rust

17

rewrite-rs/skills

Skill Claude CodeCodex

Write correct async Rust — runtime choice, Send and Sync bounds, cancellation safety, blocking work inside async contexts, and shared state across tasks. Use when writing or reviewing async code, when a future is held across an await point, when the user hits a Send bound error on a spawned task, when a runtime stalls…

1 15d ago A 87 tokens original BSD-3-Clause

idiomatic-rust

18

rewrite-rs/skills

Skill Claude CodeCodex

Write Rust that reads like Rust — iterator pipelines over index loops, From/Into over ad-hoc converters, derives over hand-written impls, newtypes over bare primitives. Use when writing new Rust, when reviewing Rust that reads like a translation from another language, or when the user asks how to make Rust code more…

1 15d ago A 75 tokens original BSD-3-Clause

ownership-not-clone

19

rewrite-rs/skills

Skill Claude CodeCodex

Use ownership and borrowing instead of reaching for clone, Rc, RefCell, or Arc > to silence the borrow checker. Every clone must be explainable. Use when code clones to make an error go away, when a borrow-checker fight is being resolved by copying data, when reviewing Rust dense with .clone() or Rc >, or when the…

1 15d ago A 89 tokens original BSD-3-Clause

rust-api-design

20

rewrite-rs/skills

Skill Claude CodeCodex

Design a Rust public API — trait design, generics versus dyn, sealed traits, what is exported, and which changes break semver. Use when designing or reviewing a crate public surface, when choosing between a generic parameter and a trait object, when adding a trait method or enum variant to a released crate, or when…

1 15d ago A 79 tokens original BSD-3-Clause

rust-concurrency

21

rewrite-rs/skills

Skill Claude CodeCodex

Pick the concurrency model from the workload shape — rayon for data parallelism, scoped threads for borrowed stack data, channels for handoff, shared state last — and use the weakest correct atomic ordering. Use when writing or reviewing threaded Rust, when Mutex, RwLock, atomics, or manual Send/Sync appear, when a…

1 15d ago A 90 tokens original BSD-3-Clause

rust-docs

22

rewrite-rs/skills

Skill Claude CodeCodex

Doc comments as API contract — a one-line first sentence, module-level docs, Examples, Errors, Panics and Safety sections, doctests that actually run, and intra-doc links. Use when writing or reviewing rustdoc comments, when a public item is undocumented, when doctests are marked ignore or fail, when magic values…

1 15d ago A 84 tokens original BSD-3-Clause

rust-errors

23

rewrite-rs/skills

Skill Claude CodeCodex

Design Rust error types and panic policy — Result over unwrap, thiserror for libraries, anyhow for binaries, context that survives the call stack. Use when code calls unwrap or expect outside tests, when designing or refactoring an error enum, when choosing between thiserror and anyhow, or when the user asks how…

1 15d ago A 71 tokens original BSD-3-Clause

rust-observability

24

rewrite-rs/skills

Skill Claude CodeCodex

Logs are structured events with named fields, not formatted strings — tracing over log over println!, spans for async context, error chains logged once, and never a secret in a field. Use when adding or reviewing logging, tracing, or metrics in Rust, when println! or string-interpolated log messages appear, when a…

1 15d ago A 85 tokens original BSD-3-Clause