code-quality
9
总安装量
9
周安装量
#32574
全站排名
安装命令
npx skills add https://github.com/d-o-hub/rust-self-learning-memory --skill code-quality
Agent 安装分布
opencode
9
claude-code
9
github-copilot
9
codex
9
kimi-cli
9
gemini-cli
9
Skill 文档
Code Quality
Use the code-quality scripts for all operations.
Usage
# Format check (fast)
./scripts/code-quality.sh fmt
# Lint with clippy
./scripts/code-quality.sh clippy
# Security audit
./scripts/code-quality.sh audit
# Run all quality gates
./scripts/code-quality.sh check
# Auto-fix common issues
./scripts/code-quality.sh clippy --fix
Quality Gates
| Check | Command |
|---|---|
| Format | cargo fmt --all -- --check |
| Lint | cargo clippy --all -- -D warnings |
| Audit | cargo audit |
| Full | ./scripts/quality-gates.sh |
| Coverage | cargo llvm-cov --html --output-dir coverage |
| Docs | cargo doc --no-deps |
Rust Quality Dimensions
| Dimension | Focus | Check |
|---|---|---|
| Structure | Files <500 LOC, module hierarchy | find . -name "*.rs" -exec wc -l {} + |
| Error Handling | Custom Error, Result, no unwrap | rg "unwrap()" --glob "*.rs" --glob "!*/tests/*" |
| Async Patterns | async fn, spawn_blocking, no blocking | rg "async fn|spawn_blocking" --glob "*.rs" |
| Testing | >90% coverage, integration tests | cargo llvm-cov |
| Documentation | Public APIs 100% documented | cargo doc --no-deps |
Rust-Specific Anti-Patterns
- Excessive Clone: Use borrowing or Arc
- Unnecessary Unwrap: Use
?operator - Deep Nesting: Extract methods to flatten
- Large Functions: Split into smaller functions (< 50 LOC)
- Deadlocks: Release locks before
.await
Best Practices Checklist
- Files <500 LOC
- Clear module hierarchy
- Custom Error enum with Result
- No unwrap() in production code
- async fn for IO operations
- spawn_blocking for CPU work
- >90% test coverage
- Public APIs documented
- SOLID principles applied
- No code duplication (DRY)
Dependency Monitoring (ADR-036)
Track duplicate dependency count as a quality metric:
# Count duplicate dependency roots (target: < 100)
cargo tree -d | grep -cE "^[a-z]"
# Find unused dependencies
cargo install --locked cargo-machete cargo-shear
cargo machete
cargo shear
# Find unused features
cargo install --locked cargo-unused-features
cargo unused-features analyze
References
Consolidated from these former skills (preserved in _consolidated/):
rust-code-qualityâ Rust-specific quality dimensions, analysis commands, report formatclean-code-developerâ SOLID principles, refactoring techniques, anti-patterns