Claude Code skill for a Rust constructor builder generated by bon
Generate a named Rust construction interface from the constructor signature and check required members through the type system.
中文Install in Claude Code
Work in the 0xMiden/protocol Rust workspace with Claude Code and use its pinned bon 3 dependency. Check that the crate declaring the new type depends on bon.
- Review `.claude/skills/use-bon-builder/SKILL.md` and its requirements at the pinned GitHub commit.
- Create `.claude/skills/use-bon-builder/` in your project and save the reviewed file as `.claude/skills/use-bon-builder/SKILL.md`.
- Start Claude Code from that project's root, then select `/use-bon-builder` in the slash menu.
Example task
Define a label format with a required label, three optional settings, and wrapping disabled by default. Generate the builder from the signature with bon.
`LabelFormat` · `label: String` · `width: Option<u16>` · `color: Option<String>` · `prefix: Option<String>` · `wrap: bool`What to check
`LabelFormat::builder().label("Trail").build()` produces `wrap = false`. Calling the finishing method without `label` fails to compile.
Original SKILL.md on GitHub · Updated
Frequently asked question
How can callers pass a string literal directly?
Apply `#[builder(into)]` to the String parameter. Check the required member and defaults by compiling representative calls in the local workspace.