Claude
Cursor
Skill
rust-polyglot-conventions
Rust conventions for a core that backs multiple language bindings: stable-edition tooling, typed Result errors with no panics in library paths, rustdoc with error docs, isolated unsafe, Send futures, FFI-friendly DTOs, and single-source version syncing. Load when writing or revie
Virus-scanned
Reviewed automatically before listing.
Download
goldziher-ai-rulez-internal_builtins_universal_polyglot-bindings_skills_rust-polyglot-conventions-ca967ad.zip · 0 KB
Install
skills CLI
npx skills add https://github.com/Goldziher/ai-rulez/tree/main/internal/builtins/universal/polyglot-bindings/skills/rust-polyglot-conventions
Claude Code
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install goldziher-ai-rulez@llmmart
Git
git clone https://github.com/Goldziher/ai-rulez.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole goldziher/ai-rulez collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
- Use the current stable Rust edition,
cargo fmt, andclippy -D warningsfor Rust core and binding crates. - Library code returns
Result<T, E>with typed errors. Do notunwrap, panic, or exit in library paths. - Public APIs have rustdoc, error documentation, and examples that use
?instead ofunwrap. - Unsafe code has
SAFETYcomments and should be isolated behind small, tested abstractions. - Async public futures are
Sendwhere host runtimes may move them across threads. - Public DTOs that cross binding boundaries are FFI-friendly or have explicit binding-safe equivalents.
- Keep binding-safe DTOs separate from integration-specific request and response types.
- Avoid Rust-only API shapes that cannot be represented naturally in target languages.
- Use one source of truth for version numbers and sync binding manifests from it during release.
Files (ai-rulez)
-
SKILL.md 1.2 KB
--- name: rust-polyglot-conventions description: "Rust conventions for a core that backs multiple language bindings: stable-edition tooling, typed Result errors with no panics in library paths, rustdoc with error docs, isolated unsafe, Send futures, FFI-friendly DTOs, and single-source version syncing. Load when writing or reviewing a Rust core exposed through polyglot bindings." --- - Use the current stable Rust edition, `cargo fmt`, and `clippy -D warnings` for Rust core and binding crates. - Library code returns `Result<T, E>` with typed errors. Do not `unwrap`, panic, or exit in library paths. - Public APIs have rustdoc, error documentation, and examples that use `?` instead of `unwrap`. - Unsafe code has `SAFETY` comments and should be isolated behind small, tested abstractions. - Async public futures are `Send` where host runtimes may move them across threads. - Public DTOs that cross binding boundaries are FFI-friendly or have explicit binding-safe equivalents. - Keep binding-safe DTOs separate from integration-specific request and response types. - Avoid Rust-only API shapes that cannot be represented naturally in target languages. - Use one source of truth for version numbers and sync binding manifests from it during release.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.