mcpField
C
code-quality

code-quality

github.com/d-o-hubテスト・品質1342 回インストール1 日前に更新
リポジトリ

code-quality について

Rust 開発者向けのコード品質スキルです。クリーンコードの原則と実用的な品質ゲートを組み合わせ、フォーマット、Lint、セキュリティ監査、カバレッジ、ドキュメント、依存関係を扱います。

主な機能

  1. 01フォーマットと Clippy のチェック
  2. 02セキュリティと依存関係の監査
  3. 03カバレッジとドキュメントの目標
  4. 04Rust のエラー処理と非同期処理の指針
  5. 05クリーンコードの原則とアンチパターン

活用シーン

  1. 01Rust ワークスペースの品質ゲート設定
  2. 02Rust コードの保守性に関する問題のレビュー
  3. 03依存関係の利用状況と重複の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/d-o-hub/rust-self-learning-memory --skill code-quality

インストール後、Claude Code で/code-qualityを入力して読み込まれたか確認します。

同梱ファイルquality-dimensions.md

詳細

コード品質

Rust コードの品質とクリーンコード開発のための統一スキルです。

クイックコマンド

./scripts/code-quality.sh fmt                    # Format check
./scripts/code-quality.sh clippy --workspace     # Lint with clippy
./scripts/code-quality.sh audit                  # Security audit
./scripts/code-quality.sh check                  # Run all quality gates
./scripts/quality-gates.sh                       # Full gates (coverage 90%)

品質ゲート

チェックコマンド目標
フォーマット./scripts/code-quality.sh fmt100% 準拠
リント./scripts/code-quality.sh clippy --workspace警告ゼロ
監査cargo audit既知の脆弱性がないこと
カバレッジcargo llvm-cov --html>=90%
ドキュメントcargo doc --no-depsすべての公開 API

Rust 品質の各側面

側面着眼点
構造ファイルは500 LOC未満、明確なモジュール構成
エラー処理カスタム Error、Result、? 演算子(unwrap は使わない)
非同期処理CPU 処理には spawn_blocking を使用し、非同期処理内でブロックしない
テスト>=90% のカバレッジ、AAA パターン、cargo nextest と doctests
セキュリティパラメーター化 SQL、環境変数、ハードコードされたシークレットを使わない

クリーンコードの原則

SOLID:単一責任、オープン・クローズド、リスコフの置換、インターフェース分離、依存性逆転

DRY/KISS/YAGNI:共通コードを抽出し、シンプルな解決策を選び、今必要なものを構築する

アンチパターン

問題対策
clone の過剰な使用借用または Arc を使用する
不要な unwrap? 演算子を使用する
深いネストメソッドを抽出する
大きな関数分割する(<50 LOC)
デッドロック.await の前にロックを解放する

依存関係の監視

cargo tree -d | grep -cE "^[a-z]"   # Count duplicates (target: <100)
cargo machete && cargo shear       # Find unused deps

コードレビューの出力形式

# Code Quality Report
Score: X/100 | Critical Issues: N | Warnings: M
- Structure: [Status] | Error Handling: [Status] | Testing: [Status]
1. [Issue] - File:line - Fix: [Recommendation]

参考資料

quality-dimensions.md、ADR-036(依存関係の重複排除)、ADR-032(ディスク容量)

コメント