rust-code-quality について
Rust 開発者向けのコード品質レビュー用スキルです。構成、エラー処理、非同期処理、テスト、ドキュメントを確認し、項目別のレポートにまとめます。
主な機能
- 01ファイル規模とモジュール構成を確認
- 02エラー処理と unwrap の使用をレビュー
- 03非同期パターンを調査
- 04テストとドキュメントを評価
活用シーン
- 01Rust プロジェクトのコード品質レビュー
- 02本番コード内の unwrap 使用箇所の確認
- 03テストカバレッジと公開 API 文書の不足を特定
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ d-o-hub/ rust-self-learning-memory --skill rust-code-qualityインストール後、Claude Code で/rust-code-qualityを入力して読み込まれたか確認します。
同梱ファイルquality-dimensions.md
詳細
Rust コード品質レビュー
ベストプラクティスに照らして、Rust コードの品質を体系的にレビューします。
品質の評価軸
| 評価軸 | 注目点 | ツール |
|---|---|---|
| 構成 | ファイルは500行未満、モジュール階層 | find . -name "*.rs" |
| エラー処理 | カスタムエラー、Result、unwrapを使わない | rg "unwrap|Result<" |
| 非同期パターン | async fn、spawn_blocking、ブロッキングなし | rg "async fn|spawn_blocking" |
| テスト | カバレッジ90%超、統合テスト | cargo tarpaulin |
| ドキュメント | 公開APIを100%ドキュメント化 | cargo doc --no-deps |
分析コマンド
# Project structure
find . -name "*.rs" -not -path "*/target/*" -exec wc -l {} + | sort -rn
# Error handling
rg "unwrap\(\)" --glob "!*/tests/*" --glob "*.rs"
# Async patterns
rg "async fn|spawn_blocking|tokio::" --glob "*.rs"
# Testing
cargo test --all
cargo tarpaulin --out Html
# Linting
./scripts/code-quality.sh fmt
./scripts/code-quality.sh clippy --workspace
cargo audit
出力形式
# Rust Code Quality Report
## Summary
- **Score**: X/100
- **Critical Issues**: N
- **Warnings**: M
## By Dimension
- Structure: X/10 - [Status]
- Error Handling: X/10 - [Status]
- Async Patterns: X/10 - [Status]
- Testing: X/10 - [Status]
- Documentation: X/10 - [Status]
## Critical Issues
1. [Issue] - File:line
- Fix: [Recommendation]
## Action Items
### High Priority
- [ ] Fix critical issues
### Medium Priority
- [ ] Address warnings
ベストプラクティスのチェックリスト
✓ ファイルは500行未満 ✓ 明確なモジュール階層 ✓ カスタムError enum ✓ 失敗する可能性のある操作にはResult ✓ 本番環境でunwrap()を使わない ✓ IO操作にはasync fn ✓ CPU負荷の高い処理にはspawn_blocking ✓ テストカバレッジ90%超 ✓ 公開APIをドキュメント化
コメント
Markdown 対応