mcpField
U
umbraco-skill-validator

umbraco-skill-validator

github.com/umbracoテスト・品質27378 回インストール6 週間前に更新
リポジトリ

umbraco-skill-validator について

リポジトリ内の SKILL.md を検査し、リンク切れ、参照漏れ、不正なパスやインポートを確認するスキルです。決定論的な検証に加え、AI による修正案を提示し、承認後に適用する流れを備えています。

主な機能

  1. 01外部 URL と内部リンクの確認
  2. 02スキル参照とファイルパスの検証
  3. 03Umbraco とインポートパスの確認
  4. 04構造化された JSON レポート
  5. 05承認用の修正案を提示

活用シーン

  1. 01リリース前にスキルファイルを点検
  2. 02CI/CD でリンク検証を実行
  3. 03編集前に修正案を確認

インストール

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

$npx skills add https://github.com/umbraco/umbraco-cms-backoffice-skills --skill umbraco-skill-validator

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

scripts/
.gitignore
package-lock.json
package.json
validate-links.ts

詳細

スキルコンテンツバリデーター

リポジトリ内のすべての SKILL.md ファイルを検証し、壊れたリンク、存在しない参照、無効なパスを検出します。

このスキルの機能

  1. 決定論的バリデーションスクリプトを実行 - すべてのリンクを高速かつ一貫してチェック
  2. 構造化レポートを生成 - 検出されたすべての問題を含む JSON 出力
  3. 修正用サブエージェントを起動 - 問題に対する AI による修正提案
  4. 修正計画を提示 - 承認用の diff 形式の変更
  5. 承認された修正を実行 - ユーザーが承認した変更のみを適用

検証チェック

チェック種別説明
外部 URLHTTP HEAD リクエストでアクセス可能性を確認
スキル参照参照されたスキルが存在するか確認(例: umbraco-dashboard)
内部リンク相対パスが解決できるか確認(例: patterns/foo.md)
ファイルパスローカルにない場合、GitHub API 経由で Umbraco-CMS のパスを確認
インポートパス@umbraco-cms/backoffice/* インポートが有効か確認

バリデーターの実行

スラッシュコマンド経由
/validate-skills
スクリプトを直接実行(CI/CD)
cd .claude/skills/umbraco-skill-validator/scripts
npm install
npm run validate

レポート形式

スクリプトは JSON を出力し、次のようにフォーマットされます:

# Skill Validation Report

## Summary
- Skills scanned: 25
- Issues found: 3
- Auto-fixable: 2

## Issues by Skill

### `umbraco-dashboard`
| Line | Type | Issue | Status |
|------|------|-------|--------|
| 45 | Broken URL | [example-broken-url] returns 404 | :x: |

### `umbraco-tree`
| Line | Type | Issue | Status |
|------|------|-------|--------|
| 72 | Missing skill | [example-missing-skill] not found | :x: |

修正計画の形式

問題が見つかった場合、修正用サブエージェントは次を生成します:

# Fix Plan

## Fix 1: Update broken URL
**File:** plugins/.../umbraco-dashboard/SKILL.md
**Line:** 45
**Action:** Replace with current documentation URL

- [Dashboard docs][old-url]
+ [Dashboard docs][new-url]

## Approval
- [ ] Fix 1: Update broken URL
- [ ] Fix 2: ...

検出されるリンクパターン

外部 URL
https://docs.umbraco.com/...
https://github.com/umbraco/...
スキル参照
`umbraco-dashboard`
`umbraco-workspace`
内部パターンリンク
[Pattern Name](patterns/pattern-name.md)
[Example](examples/example-name/)
ファイルパス
/Umbraco-CMS/src/Umbraco.Web.UI.Client/...
src/packages/core/...
インポートパス(コードブロック内)
import { ... } from '@umbraco-cms/backoffice/notification';

ワークフローの手順

このスキルが呼び出された場合:

  1. バリデーションスクリプトを実行

    cd .claude/skills/umbraco-skill-validator/scripts
    npx tsx validate-links.ts
    
  2. JSON 出力を読み取る - stdout または validation-report.json から

  3. 上記のテンプレートを使って markdown レポートとしてフォーマット

  4. 問題が見つかった場合、skill-content-fixer エージェントを起動:

    • JSON レポートをコンテキストとして渡す
    • diff を含む修正提案をリクエストする
  5. 修正計画を提示 - AskUserQuestion でユーザーに提示

  6. 承認された修正のみを実行 - Edit ツールを使用

エッジケース

  • レート制限: スクリプトは 100ms の遅延を挟んで URL チェックをバッチ処理します
  • リダイレクト: 新しい URL の提案とともに警告として報告されます
  • Umbraco-CMS が存在しない: GitHub API にフォールバックします
  • タイムアウト: URL リクエストごとに 5 秒のタイムアウト
  • 大規模リポジトリ: ファイルを 10 件ずつのバッチで処理します

コメント