github-to-skills について
github-to-skillsは、GitHubリポジトリを説明ファイルやラッパースクリプト付きのAIスキルに変換するエージェント向けスキルです。後の管理に使うソースとバージョン情報も記録します。
主な機能
- 01説明、README、コミットハッシュの取得
- 02標準的なスキルディレクトリの作成
- 03ソースとバージョン情報付きSKILL.mdの生成
- 04ツール呼び出し用ラッパースクリプトの生成
- 05記録したコミットハッシュの検証
活用シーン
- 01GitHubリポジトリの再利用可能なスキル化
- 02生成したスキルのソースとバージョンの追跡
- 03リポジトリのツールを呼び出すラッパーの作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ kkkkhazix/ khazix-skills --skill github-to-skillsインストール後、Claude Code で/github-to-skillsを入力して読み込まれたか確認します。
同梱ファイルscripts/create_github_skill.pyscripts/fetch_github_info.py
詳細
GitHub からスキルを作成
このスキルは、GitHub リポジトリを完全に機能する AI スキルに自動変換します。
主な機能
- 分析:リポジトリのメタデータ(説明、README、最新のコミットハッシュ)を取得します。
- ひな形の作成:標準化されたスキルのディレクトリ構造を作成します。
- メタデータの注入:将来の自動管理に備え、追跡元、バージョン、ハッシュを含む拡張フロントマターを使って
SKILL.mdを生成します。 - ラッパーの生成:ツールと連携するための
scripts/wrapper.py(または同様のファイル)を作成します。
使用方法
起動方法:/GitHub-to-skills <github_url> または「このリポジトリをスキルにパッケージ化して:」
必須のメタデータスキーマ
このファクトリーで作成するすべてのスキルには、SKILL.md に以下の拡張 YAML フロントマターを必ず含めてください。これは、後で skill-manager を機能させるために不可欠です。
---
name: <kebab-case-repo-name>
description: <concise-description-for-agent-triggering>
# EXTENDED METADATA (MANDATORY)
github_url: <original-repo-url>
github_hash: <latest-commit-hash-at-time-of-creation>
version: <tag-or-0.1.0>
created_at: <ISO-8601-date>
entry_point: scripts/wrapper.py # or main script
dependencies: # List main dependencies if known, e.g., ["yt-dlp", "ffmpeg"]
---
ワークフロー
- 情報の取得:エージェントはまず
scripts/fetch_github_info.pyを実行し、リポジトリから生データを取得します。 - 計画:エージェントは README を分析し、ツールの呼び出し方法(CLI 引数、Python API など)を把握します。
- 生成:エージェントは
skill-creatorのパターンを使ってSKILL.mdとラッパースクリプトを作成し、拡張メタデータが含まれていることを確認します。 - 検証:コミットハッシュが正しく取得されたことを確認します。
リソース
scripts/fetch_github_info.py:リポジトリの詳細(README、ハッシュ、タグ)をスクレイピングまたは API 経由で取得するユーティリティです。scripts/create_github_skill.py:フォルダーのひな形を作成し、初期ファイルを書き込むオーケストレーターです。
生成されるスキルのベストプラクティス
- 分離:可能であれば、生成されるスキルが独自の依存関係をインストールするようにします(例:venv 内、または
uv/pip経由)。難しい場合は、依存関係を明確に記載します。 - 段階的な情報開示:リポジトリ全体をスキルに含めないでください。必要なラッパーコードのみを含め、詳細を調べる場合は元のリポジトリを参照します。
- 冪等性:
github_hashフィールドを使うことで、将来のskill-managerはif remote_hash != local_hashを確認し、更新を開始できます。
コメント
Markdown 対応