jpskill.com
🛠️ 開発・MCP コミュニティ

model-discovery

Fetch current model names from AI providers (Anthropic, OpenAI, Gemini, Ollama), classify them into tiers (fast/default/heavy), and detect new models. Use when needing up-to-date model IDs for API calls or when other skills reference model names.

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o model-discovery.zip https://jpskill.com/download/18034.zip && unzip -o model-discovery.zip && rm model-discovery.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/18034.zip -OutFile "$d\model-discovery.zip"; Expand-Archive "$d\model-discovery.zip" -DestinationPath $d -Force; ri "$d\model-discovery.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して model-discovery.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → model-discovery フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
3

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Model Discovery Skill

AIプロバイダーのAPIを使用して、最新のモデル名を取得します。ルーティングの決定のための階層分類(fast/default/heavy)と、新しいモデルの自動検出が含まれます。

変数

変数 デフォルト 説明
CACHE_TTL_HOURS 24 モデルリストをリフレッシュする前にキャッシュする時間(時間単位)
ENABLED_ANTHROPIC true Anthropic APIからClaudeモデルを取得するかどうか
ENABLED_OPENAI true OpenAI APIからGPTモデルを取得するかどうか
ENABLED_GEMINI true Google APIからGeminiモデルを取得するかどうか
ENABLED_OLLAMA true Ollamaからローカルモデルを取得するかどうか
OLLAMA_HOST http://localhost:11434 Ollama APIのエンドポイント
AUTO_CLASSIFY true パターンマッチングを使用して新しいモデルを自動分類するかどうか

指示

必須 - 以下のワークフローの手順を順番に実行してください。手順をスキップしないでください。

  • いずれかのスキルでモデル名を参照する前に、最新のデータが存在するかどうかを確認してください
  • 適切なモデルを選択するために、階層マッピングを使用してください(速度を重視する場合はfast、能力を重視する場合はheavy)
  • 新しいモデルを定期的にチェックし、分類してください

危険信号 - 停止して再検討してください

もしあなたが以下をしようとしているなら:

  • gpt-5.2claude-sonnet-4-5のようなモデルバージョンをハードコードする
  • 現在の可用性を確認せずに、記憶からモデル名を使用する
  • APIキーが設定されているかどうかを確認せずにAPIを呼び出す
  • プロンプトが表示されたときに、新しいモデルの分類をスキップする

停止 -> 適切なクックブックファイルを読んでください -> フェッチスクリプトを使用してください

ワークフロー

モデルの取得

  1. [ ] モデルが必要なプロバイダーを決定します
  2. [ ] キャッシュされたモデルリストが存在するかどうかを確認します: cache/models.json
  3. [ ] キャッシュが新しい場合(< CACHE_TTL_HOURSより古い場合)、キャッシュされたデータを使用します
  4. [ ] 古い/欠落している場合は、以下を実行します: uv run python scripts/fetch_models.py --force
  5. [ ] チェックポイント: 出力にAPIエラーがないことを確認します
  6. [ ] 必要に応じてモデルIDを使用します

新しいモデルの確認

  1. [ ] 以下を実行します: uv run python scripts/check_new_models.py --json
  2. [ ] 新しいモデルが見つかった場合は、出力を確認します
  3. [ ] 自動分類の場合: uv run python scripts/check_new_models.py --auto
  4. [ ] インタラクティブな分類の場合: uv run python scripts/check_new_models.py
  5. [ ] チェックポイント: すべてのモデルが階層(fast/default/heavy)に割り当てられていることを確認します

階層の推奨事項の取得

  1. [ ] 現在の階層マッピングについて、config/model_tiers.jsonを読んでください
  2. [ ] タスクの複雑さに応じて適切なモデルを使用してください:
    • fast: 単純なタスク、高いスループット、コスト重視
    • default: 汎用、バランスが取れている
    • heavy: 複雑な推論、研究、困難なタスク

モデル階層リファレンス

Anthropic Claude

階層 モデル CLI名
fast claude-haiku-4-5 haiku
default claude-sonnet-4-5 sonnet
heavy claude-opus-4-5 opus

OpenAI

階層 モデル
fast gpt-5.2-mini 速度最適化
default gpt-5.2 バランスの取れたフラッグシップ
heavy gpt-5.2-pro 最大限の能力

Codex (コーディング用): | 階層 | モデル | |------|-------| | fast | gpt-5.2-codex-mini | | default | gpt-5.2-codex | | heavy | gpt-5.2-codex-max |

Google Gemini

階層 モデル コンテキスト
fast gemini-3-flash-lite API出力を参照
default gemini-3-pro API出力を参照
heavy gemini-3-deep-think API出力を参照

Ollama (ローカル)

階層 推奨モデル
fast phi3.5:latest 小型; 高速
default llama3.2:latest バランスが取れている
heavy llama3.3:70b 大型; GPUが必要

CLIマッピング (spawn:agentスキル用)

CLIツール Fast Default Heavy
claude-code haiku sonnet opus
codex-cli gpt-5.2-codex-mini gpt-5.2-codex gpt-5.2-codex-max
gemini-cli gemini-3-flash-lite gemini-3-pro gemini-3-deep-think
cursor-cli gpt-5.2 sonnet-4.5 sonnet-4.5-thinking
opencode-cli anthropic/claude-haiku-4-5 anthropic/claude-sonnet-4-5 anthropic/claude-opus-4-5
copilot-cli claude-sonnet-4.5 claude-sonnet-4.5 claude-sonnet-4.5

クイックリファレンス

スクリプト

# すべてのモデルを取得します(キャッシュが新しい場合はキャッシュを使用します)
uv run python scripts/fetch_models.py

# APIから強制的にリフレッシュします
uv run python scripts/fetch_models.py --force

# モデルを取得し、新しいモデルを確認します
uv run python scripts/fetch_models.py --force --check-new

# 分類されていない新しいモデルを確認します(エージェント用のJSON出力)
uv run python scripts/check_new_models.py --json

# パターンを使用して新しいモデルを自動分類します
uv run python scripts/check_new_models.py --auto

# インタラクティブな分類
uv run python scripts/check_new_models.py

設定ファイル

ファイル 目的
config/model_tiers.json 静的な階層マッピングとCLIモデル名
config/known_models.json タイムスタンプ付きのすべての分類済みモデルのレジストリ
cache/models.json キャッシュされたAPIレスポンス

APIエンドポイント

プロバイダー エンドポイント 認証
Anthropic GET /v1/models x-api-key ヘッダー
OpenAI GET /v1/models ベアラートークン
Gemini GET /v1beta/models ?key= パラメータ
Ollama GET /api/tags なし

出力例

モデル取得の出力

{
  "fetched_at": "2025-12-17T05:53:25Z",
  "providers": {
    "anthropic": [{"id": "claude-opus-4-5", "name": "Claude Opus 4.5"}],
    "openai": [{"id": "gpt-5.2", "name": "gpt-5.2"}],
    "gemini": [{"id": "models/gemini-3-pro", "name": "Gemini 3 Pro"}],
    "ollama": [{"id": "phi3.5:latest", "name": "phi3.5:latest"}]
  }
}

新しいモデルの確認の出力 (--json)

{
  "timestamp": "2025-12-17T06:00:00Z",
  "has_new_models": true,
  "total_new": 2,
  "by_provider": {
    "openai": {
      "count": 2,
      "models": [
        {"id": "gpt-5.2-mini", "inferred_tier": "fast", "needs_classification": false},
        {"id": "gpt-5.2-pro", "inferred_tier": "heavy", "needs_classification": false}
      ]
    }
  }
}

統合

他のスキルは、モデルについてこのスキルを参照する必要があります

(原文はここで切り詰められています)

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Model Discovery Skill

Fetch the most recent model names from AI providers using their APIs. Includes tier classification (fast/default/heavy) for routing decisions and automatic detection of new models.

Variables

Variable Default Description
CACHE_TTL_HOURS 24 How long to cache model lists before refreshing
ENABLED_ANTHROPIC true Fetch Claude models from Anthropic API
ENABLED_OPENAI true Fetch GPT models from OpenAI API
ENABLED_GEMINI true Fetch Gemini models from Google API
ENABLED_OLLAMA true Fetch local models from Ollama
OLLAMA_HOST http://localhost:11434 Ollama API endpoint
AUTO_CLASSIFY true Auto-classify new models using pattern matching

Instructions

MANDATORY - Follow the Workflow steps below in order. Do not skip steps.

  • Before referencing model names in any skill, check if fresh data exists
  • Use tier mappings to select appropriate models (fast for speed, heavy for capability)
  • Check for new models periodically and classify them

Red Flags - STOP and Reconsider

If you're about to:

  • Hardcode a model version like gpt-5.2 or claude-sonnet-4-5
  • Use model names from memory without checking current availability
  • Call APIs without checking if API keys are configured
  • Skip new model classification when prompted

STOP -> Read the appropriate cookbook file -> Use the fetch script

Workflow

Fetching Models

  1. [ ] Determine which provider(s) you need models from
  2. [ ] Check if cached model list exists: cache/models.json
  3. [ ] If cache is fresh (< CACHE_TTL_HOURS old), use cached data
  4. [ ] If stale/missing, run: uv run python scripts/fetch_models.py --force
  5. [ ] CHECKPOINT: Verify no API errors in output
  6. [ ] Use the model IDs as needed

Checking for New Models

  1. [ ] Run: uv run python scripts/check_new_models.py --json
  2. [ ] If new models found, review the output
  3. [ ] For auto-classification: uv run python scripts/check_new_models.py --auto
  4. [ ] For interactive classification: uv run python scripts/check_new_models.py
  5. [ ] CHECKPOINT: All models assigned to tiers (fast/default/heavy)

Getting Tier Recommendations

  1. [ ] Read: config/model_tiers.json for current tier mappings
  2. [ ] Use the appropriate model for task complexity:
    • fast: Simple tasks, high throughput, cost-sensitive
    • default: General purpose, balanced
    • heavy: Complex reasoning, research, difficult tasks

Model Tier Reference

Anthropic Claude

Tier Model CLI Name
fast claude-haiku-4-5 haiku
default claude-sonnet-4-5 sonnet
heavy claude-opus-4-5 opus

OpenAI

Tier Model Notes
fast gpt-5.2-mini Speed optimized
default gpt-5.2 Balanced flagship
heavy gpt-5.2-pro Maximum capability

Codex (for coding): | Tier | Model | |------|-------| | fast | gpt-5.2-codex-mini | | default | gpt-5.2-codex | | heavy | gpt-5.2-codex-max |

Google Gemini

Tier Model Context
fast gemini-3-flash-lite See API output
default gemini-3-pro See API output
heavy gemini-3-deep-think See API output

Ollama (Local)

Tier Suggested Model Notes
fast phi3.5:latest Small; fast
default llama3.2:latest Balanced
heavy llama3.3:70b Large; requires GPU

CLI Mappings (for spawn:agent skill)

CLI Tool Fast Default Heavy
claude-code haiku sonnet opus
codex-cli gpt-5.2-codex-mini gpt-5.2-codex gpt-5.2-codex-max
gemini-cli gemini-3-flash-lite gemini-3-pro gemini-3-deep-think
cursor-cli gpt-5.2 sonnet-4.5 sonnet-4.5-thinking
opencode-cli anthropic/claude-haiku-4-5 anthropic/claude-sonnet-4-5 anthropic/claude-opus-4-5
copilot-cli claude-sonnet-4.5 claude-sonnet-4.5 claude-sonnet-4.5

Quick Reference

Scripts

# Fetch all models (uses cache if fresh)
uv run python scripts/fetch_models.py

# Force refresh from APIs
uv run python scripts/fetch_models.py --force

# Fetch and check for new models
uv run python scripts/fetch_models.py --force --check-new

# Check for new unclassified models (JSON output for agents)
uv run python scripts/check_new_models.py --json

# Auto-classify new models using patterns
uv run python scripts/check_new_models.py --auto

# Interactive classification
uv run python scripts/check_new_models.py

Config Files

File Purpose
config/model_tiers.json Static tier mappings and CLI model names
config/known_models.json Registry of all classified models with timestamps
cache/models.json Cached API responses

API Endpoints

Provider Endpoint Auth
Anthropic GET /v1/models x-api-key header
OpenAI GET /v1/models Bearer token
Gemini GET /v1beta/models ?key= param
Ollama GET /api/tags None

Output Examples

Fetch Models Output

{
  "fetched_at": "2025-12-17T05:53:25Z",
  "providers": {
    "anthropic": [{"id": "claude-opus-4-5", "name": "Claude Opus 4.5"}],
    "openai": [{"id": "gpt-5.2", "name": "gpt-5.2"}],
    "gemini": [{"id": "models/gemini-3-pro", "name": "Gemini 3 Pro"}],
    "ollama": [{"id": "phi3.5:latest", "name": "phi3.5:latest"}]
  }
}

Check New Models Output (--json)

{
  "timestamp": "2025-12-17T06:00:00Z",
  "has_new_models": true,
  "total_new": 2,
  "by_provider": {
    "openai": {
      "count": 2,
      "models": [
        {"id": "gpt-5.2-mini", "inferred_tier": "fast", "needs_classification": false},
        {"id": "gpt-5.2-pro", "inferred_tier": "heavy", "needs_classification": false}
      ]
    }
  }
}

Integration

Other skills should reference this skill for model names:

## Model Names

For current model names and tiers, use the `model-discovery` skill:
- Tiers: Read `config/model_tiers.json`
- Fresh data: Run `uv run python scripts/fetch_models.py`
- New models: Run `uv run python scripts/check_new_models.py --json`

**Do not hardcode model version numbers** - they become stale quickly.

New Model Detection

When new models are detected:

  1. The script will report them with suggested tiers based on naming patterns
  2. Models matching these patterns are auto-classified:
    • heavy: -pro, -opus, -max, thinking, deep-research
    • fast: -mini, -nano, -flash, -lite, -haiku
    • default: Base model names without modifiers
  3. Models not matching patterns require manual classification
  4. Specialty models (TTS, audio, transcribe) are auto-excluded

Agent Query for New Models

When checking for new models programmatically:

# Returns exit code 1 if new models need attention
uv run python scripts/check_new_models.py --json

# Example agent workflow
if ! uv run python scripts/check_new_models.py --json > /tmp/new_models.json 2>&1; then
    echo "New models detected - review /tmp/new_models.json"
fi

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。