You are a Rust project architecture expert specializing in scaffolding production-ready Rust applications. Generate complete project structures with cargo tooling, proper module organization, testing
49
37%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/systems-programming-rust-project/SKILL.mdQuality
Discovery
32%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description is truncated mid-sentence, which immediately undermines its effectiveness. While it identifies the domain (Rust project scaffolding) and mentions some relevant capabilities, it completely lacks a 'Use when...' clause and uses a role-play framing ('You are a Rust project architecture expert') rather than a third-person functional description, which is inappropriate for a skill description meant to aid selection.
Suggestions
Add an explicit 'Use when...' clause with trigger terms like 'new Rust project', 'scaffold Rust app', 'Cargo.toml setup', 'Rust workspace', 'create crate'.
Rewrite in third person voice (e.g., 'Scaffolds production-ready Rust applications with...') instead of the current 'You are...' role-play framing.
Complete the truncated sentence and list specific concrete actions such as 'generates Cargo.toml, sets up workspace layouts, configures CI pipelines, creates module hierarchies, and adds test scaffolding'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (Rust project architecture) and some actions (scaffolding, generate project structures, cargo tooling, module organization, testing), but the description is truncated and doesn't fully enumerate concrete actions like a score-3 would. | 2 / 3 |
Completeness | The description addresses 'what' (scaffolding Rust projects) but completely lacks a 'Use when...' clause or any explicit trigger guidance for when Claude should select this skill. Per the rubric, a missing 'Use when...' clause caps completeness at 2, and the description is also truncated mid-sentence, further reducing quality. | 1 / 3 |
Trigger Term Quality | Includes relevant keywords like 'Rust', 'cargo', 'project structures', 'module organization', and 'testing', but misses common user variations like 'new Rust project', 'Cargo.toml', 'workspace', 'crate', or 'rust boilerplate'. Also uses second-person framing ('You are') which is atypical. | 2 / 3 |
Distinctiveness Conflict Risk | The focus on Rust project scaffolding is somewhat specific, but 'project structures', 'testing', and 'module organization' are broad enough to overlap with general code generation or other language-specific scaffolding skills. | 2 / 3 |
Total | 7 / 12 Passed |
Implementation
42%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides highly actionable, executable Rust scaffolding code across multiple project types, which is its primary strength. However, it is extremely verbose and monolithic — inlining complete scaffolding for 5 project types when most of this is standard Rust knowledge. The lack of validation checkpoints after scaffolding and the absence of progressive disclosure (no split into sub-files) significantly weaken the skill's effectiveness as a context-window-efficient reference.
Suggestions
Split each project type (binary, library, workspace, web API) into separate referenced files and keep SKILL.md as a concise routing overview with only the analysis step and quick-start inline.
Remove explanatory sections Claude already knows (e.g., 'Use this skill when', 'Context' paragraph, generic Limitations boilerplate) to reduce token usage by ~30%.
Add explicit validation checkpoints after scaffolding: 'Run `cargo check` to verify the generated project compiles' and 'Run `cargo test` to confirm test infrastructure works'.
Focus inline content on non-obvious decisions (e.g., when to use workspace vs single crate, which error handling pattern to choose) rather than standard boilerplate code.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose at ~300+ lines. Includes boilerplate sections like 'Use this skill when' / 'Do not use this skill when' that add no value. Provides full scaffolding for 5 different project types (binary, library, workspace, web API, WASM mentioned but not shown) when most of this is standard Rust knowledge Claude already possesses. The entire skill could be condensed to key architectural decisions and non-obvious patterns. | 1 / 3 |
Actionability | Provides fully executable, copy-paste ready code examples including complete Cargo.toml files, main.rs, cli.rs, error.rs, and Axum web server setup. All code is real Rust with proper imports and structure, not pseudocode. | 3 / 3 |
Workflow Clarity | Steps are numbered (1-7) and sequenced logically from analysis through project generation to tool configuration. However, there are no validation checkpoints — no 'cargo check' or 'cargo test' verification steps after scaffolding, no feedback loops for error recovery. For a scaffolding task that generates multiple files, a validation step is important. | 2 / 3 |
Progressive Disclosure | Monolithic wall of content with all five project types fully inlined. This would benefit enormously from splitting each project type into separate reference files (e.g., BINARY.md, LIBRARY.md, WEB_API.md) with the main skill providing a concise overview and routing. No external references are used at all. | 1 / 3 |
Total | 7 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
bae2be5
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.