# Workflow: スキルを監査する **今すぐこれらのリファレンスファイルを読んでください:** 1. references/recommended-structure.md 2. references/skill-structure.md 3. references/use-xml-tags.md ## ステップ1: 利用可能なスキルをリストする **AskUserQuestionを使用しないでください** - 多くのスキルがあるかもしれません。 チャット内でスキルを番号付きリストとして列挙します: ```bash ls ~/.claude/skills/ ``` 次のように表示します: ``` 利用可能なスキル: 1. create-agent-skills 2. build-macos-apps 3. manage-stripe ... ``` 「どのスキルを監査しますか?(番号または名前を入力してください)」と尋ねます。 ## ステップ2: スキルを読む ユーザーが選択した後、完全なスキル構造を読みます: ```bash # メインファイルを読む cat ~/.claude/skills/{skill-name}/SKILL.md # ワークフローとリファレンスを確認 ls ~/.claude/skills/{skill-name}/ ls ~/.claude/skills/{skill-name}/workflows/ 2>/dev/null ls ~/.claude/skills/{skill-name}/references/ 2>/dev/null ``` ## ステップ3: 監査チェックリストを実行する 各基準に対して評価します: ### YAMLフロントマター - [ ] `name:`フィールドがある(小文字-ハイフン区切り) - [ ] 名前がディレクトリ名と一致する - [ ] `description:`フィールドがある - [ ] 説明が何をするかといつ使用するかを説明している - [ ] 説明が三人称である(「...whenを使用する」) ### 構造 - [ ] SKILL.mdが500行未満 - [ ] 純粋XML構造(本文にMarkdown見出し#がない) - [ ] すべてのXMLタグが適切に閉じられている - [ ] 必須タグがある: objective または essential_principles - [ ] success_criteriaがある ### ルーターパターン(複雑なスキルの場合) - [ ] 基本原則がSKILL.md内にインラインである(別ファイルにない) - [ ] インテーク質問がある - [ ] ルーティングテーブルがある - [ ] 参照されているすべてのワークフローファイルが存在する - [ ] 参照されているすべてのリファレンスファイルが存在する ### ワークフロー(存在する場合) - [ ] 各ワークフローにrequired_readingセクションがある - [ ] 各ワークフローにprocessセクションがある - [ ] 各ワークフローにsuccess_criteriaセクションがある - [ ] required_readingの参照が存在する ### コンテンツ品質 - [ ] 原則が実行可能である(曖昧な理念ではない) - [ ] ステップが具体的である(「それをやる」ではない) - [ ] 成功基準が検証可能である - [ ] ファイル間で冗長なコンテンツがない ## ステップ4: レポートを生成する 所見を次のように表示します: ``` ## 監査レポート: {skill-name} ### ✅ 合格 - [合格項目のリスト] ### ⚠️ 発見された問題 1. **[問題名]**: [説明] → 修正: [具体的なアクション] 2. **[問題名]**: [説明] → 修正: [具体的なアクション] ### 📊 スコア: X/Y 基準合格 ``` ## ステップ5: 修正を提案する 問題が見つかった場合、尋ねます: 「これらの問題を修正しますか?」 オプション: 1. **すべて修正** - すべての推奨修正を適用 2. **1つずつ修正** - 適用前に各修正をレビュー 3. **レポートのみ** - 変更不要 修正する場合: - 各変更を実施 - 各変更後にファイルの有効性を確認 - 何が修正されたかを報告 ## フラグすべき一般的なアンチパターン **スキップ可能な原則**: 基本原則がインラインではなく別ファイルにある **モノリシックなスキル**: 500行を超える単一ファイル **関心事の混合**: 手順と知識が同じファイルにある **曖昧なステップ**: 「エラーを適切に処理する」 **テスト不可能な基準**: 「ユーザーが満足している」 **本文内のMarkdown見出し**: XMLタグの代わりに#を使用 **ルーティングなし**: インテーク/ルーティングがない複雑なスキル **壊れた参照**: 言及されているが存在しないファイル **冗長なコンテンツ**: 同じ情報が複数の場所にある 監査は以下が完了したときに完了です: - [ ] スキルが完全に読み取られ、分析された - [ ] すべてのチェックリスト項目が評価された - [ ] レポートがユーザーに提示された - [ ] 修正が適用された(要求された場合) - [ ] ユーザーがスキルの状態を明確に把握している