skill-install について
skill-installは、Claudeの利用者がGitHubリポジトリからスキルを導入するためのスキルです。候補の一覧表示とセキュリティスキャンを行い、その結果に応じてインストールを進めます。
主な機能
- 01GitHubリポジトリURLの解析
- 02リポジトリ内スキルの一覧と選択
- 03インストール前のセキュリティスキャン
- 04結果に応じた確認または拒否
- 05承認済みスキルのClaude用ディレクトリへの書き込み
活用シーン
- 01GitHubリポジトリからスキルを選んで導入
- 02悪意あるコマンドや認証情報へのアクセスを確認
- 03セキュリティ警告を踏まえた導入可否の判断
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ stellarlinkco/ myclaude --skill skill-installインストール後、Claude Code で/skill-installを入力して読み込まれたか確認します。
同梱ファイルreferences/security_scan_prompt.md
詳細
スキルのインストール
概要
GitHub リポジトリから Claude スキルをインストールします。組み込みのセキュリティスキャンにより、悪意のあるコード、バックドア、脆弱性から保護します。
使用するタイミング
次の場合に、このスキルを使用します。
- ユーザーが GitHub リポジトリの URL を提示し、スキルのインストールを希望している
- 「GitHub からスキルをインストールして」と依頼された
- リポジトリ内のスキルを閲覧して選択したいと希望している
- Claude 環境に新しいスキルを追加する必要がある
ワークフロー
ステップ 1:GitHub URL を解析する
ユーザーから GitHub リポジトリの URL を受け取ります。URL は skills/ ディレクトリを含むリポジトリを指している必要があります。
対応する URL 形式:
https://github.com/user/repohttps://github.com/user/repo/tree/main/skillshttps://github.com/user/repo/tree/branch-name/skills
以下を抽出します。
- リポジトリの所有者
- リポジトリ名
- ブランチ(指定がなければ
main)
ステップ 2:スキル一覧を取得する
WebFetch ツールを使用して、GitHub からスキルディレクトリの一覧を取得します。
GitHub API のエンドポイントパターン:
https://api.github.com/repos/{owner}/{repo}/contents/skills?ref={branch}
レスポンスを解析して、以下を抽出します。
- スキルディレクトリ名
- 各スキルは
SKILL.mdファイルを含むサブディレクトリである必要があります
ステップ 3:スキルをユーザーに提示する
AskUserQuestion ツールを使用して、インストールするスキルをユーザーに選択してもらいます。
複数選択を許可するため、multiSelect: true を設定します。
各スキルについて、以下を提示します。
- スキル名(ディレクトリ名)
- 簡単な説明(
SKILL.mdのフロントマターに記載がある場合)
ステップ 4:スキルの内容を取得する
選択された各スキルについて、スキルディレクトリ内のすべてのファイルを取得します。
- スキルディレクトリのファイルツリーを取得します
- すべてのファイル(SKILL.md、scripts/、references/、assets/)をダウンロードします
- セキュリティ分析のために、スキルの内容全体を保存します
GitHub API には WebFetch を使用します。
https://api.github.com/repos/{owner}/{repo}/contents/skills/{skill_name}?ref={branch}
各ファイルについて、次の方法で生のコンテンツを取得します。
https://raw.githubusercontent.com/{owner}/{repo}/{branch}/skills/{skill_name}/{file_path}
ステップ 5:セキュリティスキャン
重要: インストール前に、各スキルのセキュリティを徹底的に分析してください。
references/security_scan_prompt.md からセキュリティスキャンのプロンプトテンプレートを読み込み、スキルの内容の分析に適用します。
以下を調査します。
- 悪意のあるコマンド実行 - eval、exec、shell=True を指定した subprocess
- バックドアの検出 - 難読化されたコード、不審なネットワークリクエスト
- 認証情報の窃取 -
/.ssh、/.aws、環境変数へのアクセス - 不正なネットワークアクセス - 不審なドメインへの外部リクエスト
- ファイルシステムの悪用 - 破壊的な操作、不正な書き込み
- 権限昇格 - sudo の試行、システムの変更
- サプライチェーン攻撃 - 不審なパッケージのインストール
以下を含めて、セキュリティ分析を出力します。
- セキュリティステータス:SAFE / WARNING / DANGEROUS
- リスクレベル:LOW / MEDIUM / HIGH / CRITICAL
- ファイルの場所と深刻度を含む詳細な調査結果
- 推奨:APPROVE / APPROVE_WITH_WARNINGS / REJECT
ステップ 6:ユーザーの判断
セキュリティスキャンの結果に基づいて対応します。
SAFE(APPROVE)の場合:
- そのままインストールに進みます
WARNING(APPROVE_WITH_WARNINGS)の場合:
- セキュリティ上の警告をユーザーに表示します
- AskUserQuestion を使用して、次のように確認します:「セキュリティ上の警告が検出されました。インストールを続行しますか?」
- 選択肢:「はい、インストールする」/「いいえ、このスキルをスキップする」
DANGEROUS(REJECT)の場合:
- 重大なセキュリティ上の問題を表示します
- インストールを拒否します
- スキルが危険な理由を説明します
- 深刻度が CRITICAL の問題について、上書きする選択肢を提示しないでください
ステップ 7:スキルをインストールする
承認されたスキルを ~/.claude/skills/ にインストールします。
- スキルディレクトリを作成します:
~/.claude/skills/{skill_name}/ - ディレクトリ構造を維持して、すべてのスキルファイルを書き込みます
- 適切なファイル権限を設定します(スクリプトには実行権限を付与)
- SKILL.md が存在し、有効なフロントマターを含んでいることを確認します
Write ツールを使用してファイルを作成します。
ステップ 8:確認
インストール後、以下の概要を提示します。
- 正常にインストールされたスキルの一覧
- スキップされたスキルの一覧(該当する場合)とその理由
- 場所:
~/.claude/skills/ - 次の手順:「スキルを使用できるようになりました。Claude を再起動するか、そのままスキルを使用してください。」
使用例
ユーザー: 「https://github.com/example/claude-skills からスキルをインストールして」
アシスタント:
- リポジトリからスキルのリストを取得します
- 利用可能なスキルを提示します:「skill-a」、「skill-b」、「skill-c」
- ユーザーが「skill-a」と「skill-b」を選択します
- 各スキルのセキュリティスキャンを実行します
- skill-a:安全 — インストールを続行します
- skill-b:警告(HTTP リクエストを送信)— ユーザーに確認を求めます
- 承認されたスキルを ~/.claude/skills/ にインストールします
- 「インストールに成功しました:skill-a、skill-b」と確認します
セキュリティに関する注意事項
- セキュリティスキャンを省略しないでください — インストール前に必ずスキルを分析します
- 慎重に判断してください — 判断に迷った場合は警告としてフラグを立て、ユーザーに判断を委ねます
- 重大な問題はブロック対象です — 重大度が CRITICAL の検出事項は上書きできません
- 透明性を確保してください — セキュリティスキャンで見つかった内容を必ずユーザーに提示します
- サンドボックス化 — スキルは Claude の権限で実行されることをユーザーに注意喚起します
リソース
references/security_scan_prompt.md
以下を含む、詳細なセキュリティ分析プロンプトのテンプレートです。
- 確認すべきセキュリティカテゴリの完全なリスト
- 出力形式の要件
- 安全、疑わしい、危険なスキルの分析例
- 承認/却下の推奨に関する判断基準
包括的な分析を確実に行うため、セキュリティスキャンの実行時にこのファイルを読み込みます。