auto-skill-loader について
auto-skill-loaderは、エージェントのセッション開始時に承認済みスキルを読み込むMCPサーバーです。ローカルのスキルディレクトリを参照し、MiniMaxの画像分析とウェブ検索のプロキシツールも提供します。
主な機能
- 01セッション開始時のスキル自動読み込み
- 02設定による承認済みスキルの管理
- 03スキルの前提条件チェック
- 04MiniMax画像分析のプロキシ
- 05MiniMaxウェブ検索のプロキシ
活用シーン
- 01選択したスキルをセッション開始時に読み込む
- 02スキルと依存関係を確認する
- 03OpenCodeでプロキシ経由のMiniMaxツールを使う
MCP 対応
MCPサーバーは`skills://active`と`skills://config`でスキル内容と設定を公開し、スキル管理ツールも提供します。MiniMaxの画像分析とウェブ検索のプロキシツールも備えています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
auto-skill-loader
セッション開始時に自動読み込みされる、永続的なスキルライブラリを AI エージェントに提供します。
OpenCode の画像に関する注意: OpenCode では、画像を貼り付けても実際のファイルパスがまだ公開されないため、エージェントにはファイル名が表示されます。回避策として、画像を貼り付ける代わりに実際のファイルパスをエージェントに渡してください。スキルは想定どおりセッション開始時に自動読み込みされます。
mcp-name: io.github.divitkashyap/auto-skill-loader
仕組み
- 自動読み込みするスキルを
~/.config/auto-skill-loader/config.yamlで設定します - MCP サーバーが スキルディレクトリからスキルファイルを読み込み、
skills://active経由で公開します - セッション開始時に エージェントが
skills://activeを読み込み、承認済みのスキルがすべて自動注入されます - 明示的なトリガーは不要です — エージェントはすでにスキルを把握しています
理由
主な問題は、OpenCode ではスキルが自動読み込みされず、エージェントが明示的にスキルを呼び出すか、信頼性の低いあいまい検索に頼る必要があることです。auto-skill-loader は、セッション開始時に読み込まれる MCP リソースとしてスキルライブラリを公開することで、この問題を解決します。確実に動作し、推測は不要です。
さらに: プロキシツールを使うと、OpenCode で壊れている MiniMax のビジョンツールおよびウェブ検索ツール用の MCP stdio トランスポートも回避できます。
インストール
オプション 1:uvx(推奨 — インストール不要)
uvx auto-skill-loader
オプション 2:pip
pip install auto-skill-loader
auto-skill-loader
オプション 3:ソースからビルド
git clone https://github.com/divitkashyap/auto-skill-loader.git
cd auto-skill-loader
pip install -e .
auto-skill-loader
設定
OpenCode
~/.config/opencode/opencode.json に追加します。
{
"mcp": {
"auto-skill-loader": {
"type": "local",
"command": ["uvx", "auto-skill-loader"],
"enabled": true
}
}
}
Claude Code
注意: Claude Code では、add-json を使って特定の JSON 形式を指定する必要があります。
claude mcp add-json -s user auto-skill-loader '{"type":"stdio","command":"/FULL/PATH/TO/python","args":["-m","server"],"env":{"MINIMAX_TOKEN_PLAN_KEY":"sk-cp-YOUR-KEY-HERE"}}'
/FULL/PATH/TO/python を Python のパスに置き換えてください(例:/Users/YOU/auto-skill-loader/.venv/bin/python)。
または、uvx を使用します(初回実行時にネットワーク接続が必要です)。
claude mcp add -s user --transport stdio -e MINIMAX_TOKEN_PLAN_KEY=sk-cp-YOUR-KEY auto-skill-loader -- uvx auto-skill-loader
テスト済み環境
| ホスト | スキル自動読み込み | ビジョンプロキシ | 画像の貼り付け | 備考 |
|---|---|---|---|---|
| Claude Code(macOS) | ✅ | ❌ 不要 | ✅ | 代わりに minimax-token-plan MCP を直接使用してください |
| OpenCode(macOS) | ✅ | ✅ 動作します | ❌ 動作しません | 貼り付けずにファイルパスを渡してください |
両方のホストでスキルの自動読み込みが動作することを確認済みです。 ビジョンプロキシは OpenCode で壊れている stdio トランスポートを回避しますが、画像をパスに変換して貼り付ける機能は OpenCode の別個のレンダリング問題であり、ファイルパスを使う必要があります。
その他の MCP 対応ホスト(Cursor、Zed など)でも同じ設定で動作するはずです。貢献を歓迎します。
プラットフォームの違いと既知の問題
画像入力:OpenCode と Claude Code
どちらのホストでも auto-skill-loader のビジョンツールを使用できますが、画像入力の動作は異なります。
| ホスト | 画像の渡し方 | 推奨ワークフロー |
|---|---|---|
| Claude Code | 画像が自動的に URL にアップロードされ、ツールには URL が渡されます | 画像を直接貼り付けます ✅ 動作します |
| OpenCode | インライン画像は視覚的に表示されますが、ツールに実際のパスが渡されない場合があります | 貼り付けずにファイルパスを渡してください |
OpenCode に関する注意: OpenCode に画像を貼り付けると、インラインで表示されても、エージェントには実際のファイルシステムパスではなく、ファイル名の文字列(例:logo.png)として認識される場合があります。これは OpenCode で知られているレンダリング上の動作です。
OpenCode の回避策: 貼り付ける代わりに、実際のファイルパスをエージェントに渡してください。
analyze this image: /path/to/your/image.png
エージェントは OpenCode でローカルファイルに直接アクセスできます。画像がクリップボードにしかない場合、エージェントは最初に /tmp/ に取り出すことができます。
監視している項目
以下の OpenCode の問題を継続的に追跡しています。
- インライン画像のレンダリング(貼り付けた画像の実際のパスがツールに公開されない)
- ローカルサーバー向け MCP stdio トランスポート(プロキシツールで回避しています)
- 再起動後のスキルのセッション永続性
OpenCode でインライン画像のパスに関する修正がリリースされた場合、このドキュメントとビジョン分析スキルを更新し、画像を直接貼り付けるワークフローに対応します。OpenCode の変更履歴とリリースノートを監視しています。最新情報はこのリポジトリで確認してください。
その他の既知の問題
| 問題 | 重大度 | 回避策 |
|---|---|---|
| OpenCode のインライン画像がパスではなくファイル名として表示される | 中 — 貼り付けのワークフローに影響します | 代わりにファイルパスを使用します |
| Claude Code の認証競合(ANTHROPIC_AUTH_TOKEN と管理対象キー) | 低 — 表示上の警告です | 無害なので無視できます |
| 最初の画像認識呼び出しに 3~5 秒かかることがあります(uvx のダウンロード) | 低 — 初回のみです | 以降の呼び出しは約 200 ms です |
セットアップ
- スキルディレクトリを作成します(既存のスキルへのシンボリックリンクを作成します)。
mkdir -p ~/.config/auto-skill-loader
ln -sf ~/.config/opencode/skills ~/.config/auto-skill-loader/skills
~/.config/auto-skill-loader/config.yamlを編集します。
active_skills:
- vision-analysis
- context-maintainer
- markdown-mcp
skills_dir: ~/.config/auto-skill-loader/skills
- エージェントを再起動します。セッション開始時に、一覧にあるすべてのスキルが自動的に読み込まれます。
ツール
| ツール | 機能 |
|---|---|
list_skills | skills_dir 内で利用可能なすべてのスキルを、説明とともに一覧表示します |
activate_skill | スキルを承認済みリストに追加します(config.yaml に保存されます) |
deactivate_skill | スキルを承認済みリストから削除します |
get_skill_info | 特定のスキルの詳細を取得します |
get_active_skills | 現在アクティブなスキル名を一覧表示します |
suggest_skills | アクティブなスキルがない場合、使い始めるための一般的なスキルを提案します |
check_prerequisites | スキルの依存関係(MCP ツール、API キー、環境変数)を検証します |
ボーナス:MiniMax の画像認識とウェブ検索プロキシ
auto-skill-loader は、動作する stdio トランスポートを備え、minimax-coding-plan-mcp にプロキシする 2 つのツールも公開します。
| ツール | 機能 |
|---|---|
minimax_understand_image | 画像(最大 20MB の JPEG、PNG、GIF、WebP)を分析します |
minimax_web_search | MiniMax を使用してウェブ検索します |
注記: 画像認識には、現在 mmx-cli の使用が推奨されています。MiniMax VLM への直接 REST 呼び出しで、MCP トランスポートの問題がなく、URL もネイティブに処理できます。これらのプロキシツールは、スキルの読み込みと画像認識の両方に統一された MCP インターフェースを使いたい場合に便利です。
OpenCode の MCP バグ
OpenCode 組み込みの minimax-coding-plan-mcp MCP 統合(minimax-token-plan)を設定すると、understand_image ツールは次のエラーで失敗します。
API Error: login fail: Please carry the API secret key in the 'Authorization' field
これは、次の場合でも発生します。
- ✅
MINIMAX_API_KEY/MINIMAX_TOKEN_PLAN_KEYが正しく設定されている - ✅ API キーが有効である(同じキーで直接 API を呼び出すと正常に動作します)
- ✅ Token Plan の画像認識クォータに残量がある
根本原因: OpenCode のローカル MCP サーバー向け stdio トランスポートは、MCP プロトコルを壊す方法でメッセージを送信します。JSON-RPC メッセージ間で適切に flush せず、一括書き込みしている可能性があります。順次書き込みと flush() を使った直接のサブプロセステストでは、問題なく動作します。
修正方法: auto-skill-loader のプロキシツールは、適切な順次 stdio 通信を使用し、OpenCode の壊れたトランスポートレイヤーを回避します。
セットアップ
- MiniMax Token Plan キーを
~/.config/opencode/.envに設定します。
MINIMAX_TOKEN_PLAN_KEY=sk-cp-your-key-here
- auto-skill-loader を
~/.config/opencode/opencode.jsonに追加します。
{
"mcp": {
"auto-skill-loader": {
"type": "local",
"command": ["/path/to/venv/bin/python", "-m", "server"],
"enabled": true
}
}
}
-
重要: opencode.json に
minimax-coding-plan-mcpを直接設定している場合(minimax-token-planエントリ)、削除するか無効にしてください。その壊れた stdio トランスポートによって「login fail」エラーが発生します。auto-skill-loader のプロキシツールが完全に置き換えます。 -
OpenCode を再起動し、次のコマンドで確認します:
/ask Do you have auto-skill-loader_minimax_understand_image available?
診断
セットアップ後に「login fail」エラーが表示される場合:
- 壊れた minimax MCP を無効にします —
"minimax-token-plan": { "enabled": false }になっていることを確認するか、エントリを完全に削除します - OpenCode を完全に再起動します — MCP サーバーはセッションごとに再起動されます
- 次のコマンドで確認します:
/ask Call minimax_understand_image with image_source="/any/real/image.png" and prompt="test"
リソース
| リソース | 機能 |
|---|---|
skills://active | 承認済みのすべてのスキルの内容を連結したものです — ホストがセッション初期化時に読み込みます |
skills://config | 現在の config.yaml の内容です |
セキュリティ
- ユーザーが制御 —
config.yamlに記載されたスキルのみが読み込まれます - ネットワーク経由の取得なし — すべてローカルです
- プロンプトインジェクションなし — スキルはユーザー自身が設定したディレクトリにあります
リポジトリ構成
auto-skill-loader/
├── src/
│ └── server.py # MCP server (Python stdlib + mcp package)
├── pyproject.toml # Package config
├── README.md # This file
├── SKILL.md # For agent onboarding
└── LICENSE # MIT
必要条件
- Python 3.9+
mcpパッケージ(pip install mcp)pyyamlパッケージ(pip install pyyaml)
または、uvx auto-skill-loader を使うと依存関係が自動的に取得されます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。