Agent Skills by ALSEL
Anthropic Claudeドキュメント⭐ リポ 12品質スコア 81/100

doc-validate

**ユニバーサルトリガー**: ドキュメント品質の検証・チェック・リントを実行します。 **フォーマット**: 「ドキュメント検証」「ドキュメントリント」「ドキュメント確認」 **リンク**: 「リンク切れ」「孤立したドキュメント」「参照エラー」 **用語**: 「用語集確認」「用語確認」「同義語」 **観点**: 「成果物確認」「状態図」「脅威モデル」 ⚡ **矛盾**: 「矛盾検出」「一貫性確認」「競合検出」 **不足**: 「カバレッジ不足」「欠落検出」「完全性確認」 **レビュー**: 「完全監査」「全体監査」「/doc:review」 トリガー: ドキュメントリント、ドキュメント検証、ドキュメント確認、リンク切れ、孤立、用語集、観点、矛盾、不足、カバレッジ、/doc:lint、/doc:links、/doc:terms、/doc:viewpoints、/doc:contradictions、/doc:gaps、/doc:review

description の原文を見る

**UNIVERSAL TRIGGER**: Validate/check/lint documentation quality. **Formatting**: "validate docs", "doc lint", "проверь документацию" **Links**: "broken links", "orphan docs", "битые ссылки" **Terms**: "check glossary", "терминология", "synonyms" **Viewpoints**: "check artifacts", "state diagrams", "threat model" ⚡ **Contradictions**: "find conflicts", "противоречия" ️ **Gaps**: "missing coverage", "пробелы", "completeness" **Review**: "full audit", "полный аудит", "/doc:review" TRIGGERS: doc lint, validate docs, проверь документацию, broken links, orphan, glossary, viewpoints, contradictions, gaps, coverage, /doc:lint, /doc:links, /doc:terms, /doc:viewpoints, /doc:contradictions, /doc:gaps, /doc:review

SKILL.md 本文

ドキュメント検証スキル

プロジェクトドキュメントの品質を自動的かつインタラクティブに検査するための /doc:* コマンドのセット。

クイックスタート

# コミット前の迅速なチェック
/doc:lint

# リンク関係グラフの検査
/doc:links

# 完全監査(すべての検査)
/doc:review

コマンド

/doc:lint — フォーマット検査

モデル: haiku(高速、低コスト) 所要時間: 100ファイルで 30秒以下

検査内容:

  • 破損した内部リンク [text](file.md)
  • ナビゲーション内の存在しないファイル
  • ネーミング規則への違反(ルートの NN_TITLE.md 形式など)
  • 空のセクション(## でコンテンツなし)
  • issueへのリンクがない TODO/FIXME
  • 必須セクションの不足

出力例:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 [LINT-001] 破損したリンク
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

 03_REQUIREMENTS.md:45
   > [アーキテクチャを参照](architecture/MISSING.md)

❌ ファイルが存在しません: architecture/MISSING.md

[f]ix  [s]kip  [i]gnore  [e]dit  [g]ithub issue  [x]plain
> _

/doc:links — リンク関係グラフ

モデル: haiku 所要時間: 100ファイルで 30秒以下

検査内容:

  • オーファンドキュメント(受け入れリンクがない)
  • デッドエンド(出力リンクがない)
  • 循環依存
  • README内のナビゲーション完全性

除外対象(orphans/dead-endsと見なされない):

  • README.md、CHANGELOG.md
  • /GLOSSARY.md、/INDEX.md
  • .docvalidate.yml で設定可能

出力例:

 ドキュメントグラフ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

ドキュメント総数: 35
リンク総数: 128

⚠️ オーファン(受け入れリンクなし):
  - research/old_analysis.md
  - data/transaction-analysis.md

⚠️ デッドエンド(出力リンクなし):
  - architecture/wallet/COMPONENTS.md

✅ README ナビゲーション: 28/35 ドキュメント(80%)

/doc:terms — 用語管理 ✅

モデル: sonnet(または基本的な検査の場合 haiku) 必須: 02_GLOSSARY.md のグロッサリ

検査内容:

  • グロッサリーの用語が一貫して使用されている
  • 禁止された同義語の検出(wallet/ウォレット/財布など)
  • グロッサリーにない新しい用語(太字で表示)
  • グロッサリーのカバレッジ(使用されている用語の%)

出力例:

 グロッサリを読み込みました: 16 用語
 禁止された同義語: 5 グループ

24 ファイルをスキャン中...

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 [TERM-001] 禁止された同義語
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

 08_KEY_SECURITY.md:82
   禁止された同義語: "wallet" → 「ウォレット」を使用してください

 グロッサリーのカバレッジ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  使用済み: 14/16 用語(87%)

/doc:viewpoints — 成果物 ✅

モデル: sonnet

viewpoint別チェック:

Viewpoint成果物優先度
DataSTATE_MACHINES.mdmust
DataDATA_FLOWS.mdshould
Business RulesBUSINESS_RULES.mdmust
SecurityTHREAT_MODEL.mdmust(暗号化向けは重要)
IntegrationEVENT_CATALOG.mdshould
TraceabilityRTM.mdshould

出力例:

## Viewpoint カバレッジ

| Viewpoint | 成果物 | ステータス | ファイル |
|-----------|--------|------------|----------|
| Data | STATE_MACHINES | ✅ | architecture/STATE_MACHINES.md |
| Data | DATA_FLOWS | ❌ | architecture/DATA_FLOWS.md |
| Security | THREAT_MODEL | ✅ | architecture/THREAT_MODEL.md |

 全体的な viewpoint カバレッジ: 3/6(50%)

 Security viewpoint が完全にカバーされていません — 暗号化システムにとって重要です!

/doc:contradictions — 矛盾検出 ✅

モデル: sonnet(ローカル分析) 所要時間: 100ファイルで 60秒以下

検査内容:

  • 矛盾する値(同じパラメータに異なる数値)
  • 相互に排他的な要件
  • 制約に矛盾するソリューション
  • 異なるドキュメント間での数値パラメータの不一致

出力例:

⚡ /doc:contradictions — 矛盾の検出

 ドキュメントからパラメータを抽出中...
   25 ファイルで 194 個のパラメータが見つかりました

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 重大な矛盾
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

 [CONTRADICTION-001] パラメータ「confirmations」に異なる値があります
    03_REQUIREMENTS.md:45 → 3
    architecture/FLOWS.md:128 → 6
   ⚠️ 差分: 100%

 [CONTRADICTION-002] パラメータ「hot_wallet_limit」に異なる値があります
    03_REQUIREMENTS.md:52 → 10%
    08_KEY_SECURITY.md:23 → 5%
   ⚠️ 差分: 100%

 合計: 8 個の重大問題、10 個の警告

/doc:gaps — 完全性 ✅

モデル: sonnet(ローカル分析) 所要時間: 100ファイルで 60秒以下

検査内容:

  • 言及されているが展開されていないトピック
  • アクセプタンスクライテリアがない要件
  • 完全な成果物説明がない実体
  • イベントカタログがない統合

出力例:

️ /doc:gaps — カバレッジ完全性の分析

 ドキュメントのギャップをスキャン中...

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 警告(注目が必要)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

 [GAP-001] 統合(69)が見つかりましたが、イベントカタログがありません
    architecture/EVENT_CATALOG.md — 存在しません
    推奨: イベントを文書化するために EVENT_CATALOG.md を作成してください

 合計: 0 個の重大問題、1 個の警告

/doc:review — 完全監査 ✅

モデル: すべて(カスケード) 所要時間: 100ファイルで 5分以下

すべての検査を最適な順序で実行します:

  1. lint + links(フェーズ 1: 基本)
  2. terms + viewpoints(フェーズ 2: セマンティック)
  3. contradictions + gaps(フェーズ 3: 詳細分析)

機能:

  • すべてのコマンド結果の集約
  • カテゴリ別の概要表
  • 前回の実行との比較
  • 優先度別の推奨事項
  • 全体品質スコア(0-100)

出力例:

╔══════════════════════════════════════════════════════════════╗
║                DOC:REVIEW 最終レポート                      ║
╚══════════════════════════════════════════════════════════════╝

┌────────────────┬──────────┬──────────┬──────────┐
│ コマンド        │  重大  │  重要  │  情報  │
├────────────────┼──────────┼──────────┼──────────┤
│ lint           │        0 │        6 │       92 │
│ links          │        0 │        0 │        0 │
│ terms          │        0 │      194 │       10 │
│ viewpoints     │        0 │        3 │        0 │
│ contradictions │        8 │       10 │        0 │
│ gaps           │        0 │        1 │        0 │
├────────────────┼──────────┼──────────┼──────────┤
│ 合計           │        8 │      214 │      102 │
└────────────────┴──────────┴──────────┴──────────┘

 Viewpoint カバレッジ: 3/6(50%)
 グロッサリーカバレッジ: 94%

⏱️  実行時間: 0.4 秒

 推奨事項:
  • 最初に 8 個の重大問題を修正してください
  • ⚡ 数値パラメータの矛盾を解決してください
  • Viewpoint カバレッジを増やしてください(現在 50%)

╔══════════════════════════════════════╗
║      総合スコア: 85/100(B)        ║
╚══════════════════════════════════════╝

CLI モード

# 標準モード(非インタラクティブ出力)
./doc_validate.rb lint

# インタラクティブモード(各問題でプロンプト)
./doc_validate.rb lint --interactive

# バッチモード CI/CD 向け(出力なし、終了コード付き)
./doc_validate.rb lint --batch
# 終了コード: 0=成功、1=警告、2=重大

インタラクティブモード

有効化: --interactive または -i

問題が検出された場合:

キーアクション説明
ffix自動修正を適用(利用可能な場合)
sskipスキップ、今は修正しない
iignore.docignore に追加
eedit$EDITOR でファイルを開く
xexplain問題についてさらに詳しく説明

利用可能な自動修正

問題タイプfix アクション
broken_link同様のファイルのファジー検索またはリンク削除
synonym正規用語への置換
empty_section空のセクションを削除(確認付き)

エッジケース

状況動作
fix が利用不可「(fix unavailable)」を表示
Ctrl+Csession.json に進捗を保存

設定

プロジェクトルートの .docvalidate.yml ファイル:

version: 1

# グロッサリー
glossary:
  file: "02_GLOSSARY.md"
  forbidden_synonyms:
    - ["ウォレット", "wallet", "財布"]
    - ["トランザクション", "tx", "送金"]

# 検査の範囲
scope:
  strict:
    - "*.md"
    - "architecture/**/*.md"
  relaxed:
    - "research/**/*.md"
    trigger: on_change
  ignore:
    - "claudedocs/**"

# orphan/dead-end の除外
link_exceptions:
  not_orphans:
    - "README.md"
    - "CHANGELOG.md"
    - "**/GLOSSARY.md"

# ネーミング規則
formatting:
  root_naming: "^[0-9]{2}_[A-Z_]+\\.md$"

データモデル

.docvalidate/.docignore — 無視される問題

フォーマット: JSON Lines

{"id": "LINT-001", "file": "research/old.md", "reason": "アーカイブ済み", "created": "2025-01-30"}

.docvalidate/history.json — メトリクス履歴

{
  "runs": [{
    "timestamp": "2025-01-30T10:30:00Z",
    "metrics": {"critical": 2, "warning": 5, "info": 8}
  }]
}

エラーハンドリング

AI のフォールバックチェーン

opus(利用不可) → sonnet → haiku → native(AI なし)

オフラインモード

--offline または ネットワーク接続がない場合:

  • /doc:lint — 完全に機能
  • /doc:links — 完全に機能
  • ⚠️ /doc:terms — forbidden_synonyms のみ
  • /doc:contradictions — 利用不可
  • /doc:gaps — 利用不可

問題の優先度

優先度カテゴリ
重大contradictions、gaps、missing_threat_model
重要duplicates、terms、missing_state_diagrams
情報broken_links、formatting、orphans

現在のバージョン(v1.1.0)の制限

機能ステータス備考
インタラクティブモードf/s/i/e/x が動作
バッチモード + 終了コードCI/CD 向け
自動修正broken_link、synonym、empty_section
Mermaid グラフ❌ ロードマップリンクグラフの可視化
セッション復旧❌ ロードマップCtrl+C 後の再開
ユニットテスト❌ ロードマップカバレッジ 0%

関連ドキュメント

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
dapi
リポジトリ
dapi/claude-code-marketplace
ライセンス
MIT
最終更新
2026/4/22

Source: https://github.com/dapi/claude-code-marketplace / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: dapi · dapi/claude-code-marketplace · ライセンス: MIT