configure-coverage について
configure-coverage は、Vitest、Jest、pytest、Rust プロジェクトのコードカバレッジ設定を確認・構成するスキルです。開発者がしきい値やレポートを監査し、設定を適用して標準を記録できます。
主な機能
- 01テストとカバレッジ設定の検出
- 02しきい値とレポーターの設定
- 03CI/CD 向けカバレッジ連携
- 04プロジェクトの準拠状況の監査
- 05プロジェクト標準への設定記録
活用シーン
- 01変更を加えずカバレッジ設定を確認
- 02カスタムしきい値の設定
- 03プロジェクトのカバレッジレポート構成
- 04プロジェクト内の設定状況の確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill configure-coverageインストール後、Claude Code で/configure-coverageを入力して読み込まれたか確認します。
同梱ファイルREFERENCE.md
詳細
/configure:coverage
テストフレームワークのコードカバレッジのしきい値とレポートを確認・設定します。
このスキルを使用するタイミング
| このスキルを使用する場合... | 別の方法を使用する場合... |
|---|---|
| Vitest、Jest、pytest、Rust のカバレッジしきい値を設定する | カバレッジ付きでテストを実行する(/test:coverage) |
| カバレッジレポーター(text、JSON、HTML、lcov)を設定する | テストフレームワーク自体を設定する(/configure:tests) |
| CI/CD に Codecov または Coveralls の連携を追加する | テストの失敗を分析する(test-runner エージェント) |
| プロジェクト全体でカバレッジ設定への準拠を監査する | 個々のテストケースを作成する |
| カバレッジしきい値のパーセンテージを調整する | 一般的な CI/CD ワークフローを設定する(/configure:workflows) |
コンテキスト
- プロジェクトルート:!
pwd - パッケージファイル:!
find . -maxdepth 1 \( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' \) - Vitest 設定:!
find . -maxdepth 1 -name 'vitest.config.*' - Jest 設定:!
find . -maxdepth 1 -name 'jest.config.*' - カバレッジディレクトリ:!
find . -maxdepth 1 -type d -name 'coverage' - Codecov 設定:!
find . -maxdepth 1 \( -name 'codecov.yml' -o -name '.codecov.yml' \) - プロジェクト標準:!
find . -maxdepth 1 -name '.project-standards.yaml'
パラメーター
コマンド引数から解析します。
--check-only:変更せずに準拠状況を報告します(CI/CD モード)--fix:確認を求めずに修正を自動適用します--threshold <percentage>:カバレッジのしきい値を設定します(デフォルト:80)
デフォルトのしきい値:80%(行、分岐、関数、ステートメント)
サポート対象のフレームワーク:
- Vitest:
@vitest/coverage-v8または@vitest/coverage-istanbul - Jest:
--coverageによる組み込みカバレッジ - pytest:
pytest-covプラグイン - Rust:
cargo-llvm-covまたはcargo-tarpaulin
実行
このコードカバレッジ準拠チェックを実行します。
Step 1:テストフレームワークとカバレッジ設定を検出する
フレームワークを示す項目を確認します。
| 項目 | フレームワーク | カバレッジツール |
|---|---|---|
カバレッジ設定を含む vitest.config.* | Vitest | @vitest/coverage-v8 |
カバレッジ設定を含む jest.config.* | Jest | 組み込み |
pyproject.toml の [tool.coverage] | pytest | pytest-cov |
カバレッジ設定を含む .cargo/config.toml | Rust | cargo-llvm-cov |
設定前に WebSearch または WebFetch を使用して、カバレッジツールの最新バージョンを確認します。
Step 2:現在のカバレッジ状況を分析する
検出されたフレームワークについて、設定の完全性を確認します。
Vitest:
- カバレッジプロバイダーが設定されている(
v8またはistanbul) - カバレッジレポーターが設定されている(
text、json、html、lcov) - 行、関数、分岐、ステートメントのしきい値が設定されている
- 除外項目が設定されている(node_modules、dist、tests、設定ファイル)
- 出力ディレクトリが指定されている
Jest:
-
collectCoverageが有効になっている -
coverageProviderが設定されている(v8またはbabel) -
collectCoverageFromのパターンが設定されている -
coverageThresholdsが設定されている -
coverageReportersが設定されている
pytest:
-
pytest-covがインストールされている -
[tool.coverage.run]セクションがある -
[tool.coverage.report]セクションがある - カバレッジしきい値が設定されている(
--cov-fail-under)
Rust(cargo-llvm-cov):
-
cargo-llvm-covがインストールされている - ワークスペースにカバレッジ設定がある
- HTML/LCOV 出力が設定されている
Step 3:準拠レポートを生成する
書式を整えた準拠レポートを出力します。
Code Coverage Compliance Report
================================
Project: [name]
Framework: [Vitest 2.x | pytest 8.x | cargo-llvm-cov 0.6.x]
Coverage Configuration:
Provider @vitest/coverage-v8 [CONFIGURED | MISSING]
Reporters text, json, html, lcov [ALL | PARTIAL]
Output directory coverage/ [CONFIGURED | DEFAULT]
Exclusions node_modules, dist, tests [CONFIGURED | INCOMPLETE]
Thresholds:
Lines 80% [PASS | LOW | NOT SET]
Branches 80% [PASS | LOW | NOT SET]
Functions 80% [PASS | LOW | NOT SET]
Statements 80% [PASS | LOW | NOT SET]
CI/CD Integration:
Coverage upload codecov/coveralls [CONFIGURED | MISSING]
Artifact upload coverage reports [CONFIGURED | MISSING]
Overall: [X issues found]
--check-only が指定されている場合は、ここで終了します。
Step 4:カバレッジを設定する(--fix が指定された場合、またはユーザーが確認した場合)
検出されたフレームワークに基づいて、カバレッジ設定を適用します。REFERENCE.md のテンプレートを使用します。
- カバレッジプロバイダーをインストールする(例:
@vitest/coverage-v8、pytest-cov) - 設定ファイルを更新する(しきい値、レポーター、除外項目)
- スクリプトを追加する(package.json または pyproject.toml)
- CI/CD を設定する(Codecov へのアップロードとアーティファクトの保存)
Step 5:標準の追跡を更新する
.project-standards.yaml を更新します。
standards_version: "2025.1"
last_configured: "[timestamp]"
components:
coverage: "2025.1"
coverage_threshold: 80
coverage_provider: "[v8|istanbul|pytest-cov|llvm-cov]"
coverage_reporters: ["text", "json", "html", "lcov"]
coverage_ci: "codecov"
ステップ 6:最終レポートを出力する
適用した変更、追加したスクリプト、カバレッジを確認する次のステップの概要を出力します。
詳細な設定テンプレートについては、REFERENCE.md を参照してください。
エージェント向けの最適化
| コンテキスト | コマンド |
|---|---|
| コンプライアンスの簡易チェック | /configure:coverage --check-only |
| すべての問題を自動修正 | /configure:coverage --fix |
| カスタムしきい値 | /configure:coverage --fix --threshold 90 |
| カバレッジ設定が存在するか確認 | find . -maxdepth 1 -name 'vitest.config.*' -o -name 'jest.config.*' 2>/dev/null |
| カバレッジディレクトリを確認 | test -d coverage && echo "EXISTS" |
フラグ
| フラグ | 説明 |
|---|---|
--check-only | 修正を提案せずにステータスをレポートします |
--fix | 確認を求めずにすべての修正を自動適用します |
--threshold <percentage> | カバレッジのしきい値を設定します(デフォルト:80) |
例
# Check compliance and offer fixes
/configure:coverage
# Check only, no modifications
/configure:coverage --check-only
# Auto-fix with custom threshold
/configure:coverage --fix --threshold 90
エラー処理
- テストフレームワークが検出されない場合:最初に
/configure:testsを実行するよう提案します - カバレッジプロバイダーが見つからない場合:インストールを提案します
- しきい値が無効な場合:0 未満または 100 を超える値を拒否します
- CI トークンが見つからない場合:Codecov/Coveralls の設定について警告します
関連項目
/configure:tests- テストフレームワークを設定します/test:coverage- カバレッジを測定しながらテストを実行します/configure:all- すべてのコンプライアンスチェックを実行します- Codecov のドキュメント:https://docs.codecov.com
- pytest-cov のドキュメント:https://pytest-cov.readthedocs.io
コメント
Markdown 対応