Model Router
Intelligent AI model routing across multiple providers for optimal cost-performance balance.
Automatically select the best model for any task based on complexity, type, and your preferences. Support for 6 major AI providers with secure API key management and interactive configuration.
🎯 What It Does
- - Analyzes tasks and classifies them by type (coding, research, creative, simple, etc.)
- Routes to optimal models from your configured providers
- Optimizes costs by using cheaper models for simple tasks
- Secures API keys with file permissions (600) and isolated storage
- Provides recommendations with confidence scoring and reasoning
🚀 Quick Start
Step 1: Run the Setup Wizard
CODEBLOCK0
The wizard will guide you through:
- 1. Provider setup - Add your API keys (Anthropic, OpenAI, Gemini, etc.)
- Task mappings - Choose which model for each task type
- Preferences - Set cost optimization level
Step 2: Use the Classifier
CODEBLOCK1
Step 3: Route Tasks with Sessions
CODEBLOCK2
📊 Supported Providers
| Provider | Models | Best For | Key Format |
|---|
| Anthropic | claude-opus-4-5, claude-sonnet-4-5, claude-haiku-4-5 | Coding, reasoning, creative | INLINECODE0 |
| OpenAI |
gpt-4o, gpt-4o-mini, o1-mini, o1-preview | Tools, deep reasoning |
sk-proj-... |
|
Gemini | gemini-2.0-flash, gemini-1.5-pro, gemini-1.5-flash | Multimodal, huge context (2M) |
AIza... |
|
Moonshot | moonshot-v1-8k/32k/128k | Chinese language |
sk-... |
|
Z.ai | glm-4.5-air, glm-4.7 | Cheapest, fast | Various |
|
GLM | glm-4-flash, glm-4-plus, glm-4-0520 | Chinese, coding |
ID.secret |
🎛️ Task Type Mappings
Default routing (customizable via wizard):
| Task Type | Default Model | Why |
|---|
| INLINECODE5 | glm-4.5-air | Fastest, cheapest for quick queries |
| INLINECODE6 |
claude-sonnet-4-5 | Excellent code understanding |
|
research | claude-sonnet-4-5 | Balanced depth and speed |
|
creative | claude-opus-4-5 | Maximum creativity |
|
math | o1-mini | Specialized reasoning |
|
vision | gemini-1.5-flash | Fast multimodal |
|
chinese | glm-4.7 | Optimized for Chinese |
|
long_context | gemini-1.5-pro | Up to 2M tokens |
💰 Cost Optimization
Aggressive Mode
Always uses the cheapest capable model:
- - Simple → glm-4.5-air (~10% cost)
- Coding → claude-haiku-4-5 (~25% cost)
- Research → claude-sonnet-4-5 (~50% cost)
Savings: 50-90% compared to always using premium models
Balanced Mode (Default)
Considers cost vs quality:
- - Simple tasks → Cheap models
- Critical tasks → Premium models
- Automatic escalation if cheap model fails
Quality Mode
Always uses the best model regardless of cost
🔒 Security
API Key Storage
CODEBLOCK3
Features:
- - File permissions restricted to owner (600)
- Isolated from version control
- Encrypted at rest (via OS filesystem encryption)
- Never logged or printed
Best Practices
- 1. Never commit
.api-keys to version control - Use environment variables for production deployments
- Rotate keys regularly via the wizard
- Audit access with INLINECODE14
📖 Usage Examples
Example 1: Cost-Optimized Workflow
CODEBLOCK4
Example 2: Progressive Escalation
CODEBLOCK5
Example 3: Parallel Processing
CODEBLOCK6
Example 4: Multimodal with Gemini
CODEBLOCK7
🛠️ Configuration Files
~/.model-router/config.json
CODEBLOCK8
~/.model-router/.api-keys
CODEBLOCK9
🔄 Version 1.1 Changes
New Features
- - ✅ Interactive setup wizard for guided configuration
- ✅ Secure API key storage with file permissions
- ✅ Task-to-model mapping customization
- ✅ Multi-provider support (6 providers)
- ✅ Cost optimization levels (aggressive/balanced/quality)
Improvements
- - ✅ Better task classification with confidence scores
- ✅ Provider-specific model recommendations
- ✅ Enhanced security with isolated storage
- ✅ Comprehensive documentation
Migration from 1.0
Run the setup wizard to reconfigure:
CODEBLOCK10
📚 Command Reference
Setup Wizard
python3 scripts/setup-wizard.py
Interactive configuration of providers, mappings, and preferences.
Task Classifier
python3 scripts/classify_task.py "your task description"
python3 scripts/classify_task.py "your task" --format json
Get model recommendation with reasoning.
List Models
python3 scripts/setup-wizard.py --list
Show all available models and their status.
🤝 Integration with Other Skills
| Skill | Integration |
|---|
| model-usage | Track cost per provider to optimize routing |
| sessions_spawn |
Primary tool for model delegation |
|
session_status | Check current model and usage |
⚡ Performance Tips
- 1. Start simple - Try cheap models first
- Batch tasks - Combine multiple simple tasks
- Use cleanup - Delete sessions after one-off tasks
- Set timeouts - Prevent runaway sub-agents
- Monitor usage - Track costs per provider
🐛 Troubleshooting
"No suitable model found"
- - Run setup wizard to configure providers
- Check API keys are valid
- Verify permissions on
.api-keys file
"Module not found"
CODEBLOCK14
Wrong model selected
- 1. Customize task mappings via wizard
- Use explicit model in INLINECODE18
- Adjust cost optimization preference
📖 Additional Resources
-
Anthropic
-
OpenAI
-
Gemini
-
Moonshot
-
Z.ai
-
GLM
- - Setup: Run INLINECODE19
- Support: Check
references/ folder for detailed guides
模型路由器
跨多个提供商的智能AI模型路由,实现最优性价比平衡。
根据任务的复杂性、类型和您的偏好,自动为任何任务选择最佳模型。支持6大AI提供商,具备安全的API密钥管理和交互式配置。
🎯 功能概述
- - 分析任务并按类型分类(编码、研究、创意、简单等)
- 路由到最优模型,从您配置的提供商中选择
- 优化成本,对简单任务使用更便宜的模型
- 保护API密钥安全,使用文件权限(600)和隔离存储
- 提供推荐,附带置信度评分和推理说明
🚀 快速开始
步骤1:运行设置向导
bash
cd skills/model-router
python3 scripts/setup-wizard.py
向导将引导您完成:
- 1. 提供商设置 - 添加您的API密钥(Anthropic、OpenAI、Gemini等)
- 任务映射 - 为每种任务类型选择模型
- 偏好设置 - 设置成本优化级别
步骤2:使用分类器
bash
获取任务模型推荐
python3 scripts/classify_task.py 构建一个React认证系统
输出:
推荐模型:claude-sonnet
置信度:85%
成本级别:中等
推理说明:匹配到2个关键词:构建,系统
步骤3:使用会话路由任务
bash
使用推荐模型生成会话
sessions_spawn --task 调试这个内存泄漏 --model claude-sonnet
使用别名快速访问
sessions_spawn --task 今天天气怎么样? --model haiku
📊 支持的提供商
| 提供商 | 模型 | 最佳用途 | 密钥格式 |
|---|
| Anthropic | claude-opus-4-5, claude-sonnet-4-5, claude-haiku-4-5 | 编码、推理、创意 | sk-ant-... |
| OpenAI |
gpt-4o, gpt-4o-mini, o1-mini, o1-preview | 工具、深度推理 | sk-proj-... |
|
Gemini | gemini-2.0-flash, gemini-1.5-pro, gemini-1.5-flash | 多模态、超长上下文(2M) | AIza... |
|
Moonshot | moonshot-v1-8k/32k/128k | 中文语言 | sk-... |
|
Z.ai | glm-4.5-air, glm-4.7 | 最便宜、快速 | 多种格式 |
|
GLM | glm-4-flash, glm-4-plus, glm-4-0520 | 中文、编码 | ID.secret |
🎛️ 任务类型映射
默认路由(可通过向导自定义):
| 任务类型 | 默认模型 | 原因 |
|---|
| 简单 | glm-4.5-air | 快速查询中最快、最便宜 |
| 编码 |
claude-sonnet-4-5 | 出色的代码理解能力 |
| 研究 | claude-sonnet-4-5 | 深度与速度的平衡 |
| 创意 | claude-opus-4-5 | 最大创造力 |
| 数学 | o1-mini | 专业推理能力 |
| 视觉 | gemini-1.5-flash | 快速多模态处理 |
| 中文 | glm-4.7 | 针对中文优化 |
| 长上下文 | gemini-1.5-pro | 高达2M tokens |
💰 成本优化
激进模式
始终使用最便宜且能胜任的模型:
- - 简单 → glm-4.5-air(约10%成本)
- 编码 → claude-haiku-4-5(约25%成本)
- 研究 → claude-sonnet-4-5(约50%成本)
节省: 与始终使用高级模型相比,可节省50-90%
平衡模式(默认)
综合考虑成本与质量:
- - 简单任务 → 便宜模型
- 关键任务 → 高级模型
- 便宜模型失败时自动升级
质量模式
始终使用最佳模型,不考虑成本
🔒 安全性
API密钥存储
~/.model-router/
├── config.json # 模型映射(chmod 600)
└── .api-keys # API密钥(chmod 600)
特性:
- - 文件权限限制为所有者(600)
- 与版本控制隔离
- 静态加密(通过操作系统文件系统加密)
- 永不记录或打印
最佳实践
- 1. 切勿提交 .api-keys 到版本控制
- 使用环境变量 进行生产部署
- 定期轮换密钥,通过向导操作
- 审计访问,使用 ls -la ~/.model-router/
📖 使用示例
示例1:成本优化工作流
bash
首先分类任务
python3 scripts/classify_task.py 从CSV中提取价格
结果:简单任务 → 使用 glm-4.5-air
sessions_spawn --task 提取价格 --model glm-4.5-air
如果需要,再用更好的模型分析
sessions_spawn --task 分析价格趋势 --model claude-sonnet
示例2:渐进式升级
bash
先尝试便宜模型(60秒超时)
sessions_spawn --task 修复这个bug --model glm-4.5-air --runTimeoutSeconds 60
如果失败,升级到高级模型
sessions_spawn --task 修复复杂架构bug --model claude-opus
示例3:并行处理
bash
使用便宜模型并行批量处理简单任务
sessions_spawn --task 总结文档A --model glm-4.5-air &
sessions_spawn --task 总结文档B --model glm-4.5-air &
sessions_spawn --task 总结文档C --model glm-4.5-air &
wait
示例4:使用Gemini进行多模态处理
bash
2M token上下文的视觉任务
sessions_spawn --task 分析这100张图片 --model gemini-1.5-pro
🛠️ 配置文件
~/.model-router/config.json
json
{
version: 1.1.0,
providers: {
anthropic: {
configured: true,
models: [claude-opus-4-5, claude-sonnet-4-5, claude-haiku-4-5]
},
openai: {
configured: true,
models: [gpt-4o, gpt-4o-mini, o1-mini, o1-preview]
}
},
task_mappings: {
simple: glm-4.5-air,
coding: claude-sonnet-4-5,
research: claude-sonnet-4-5,
creative: claude-opus-4-5
},
preferences: {
cost_optimization: balanced,
default_provider: anthropic
}
}
~/.model-router/.api-keys
bash
由设置向导生成 - 请勿手动编辑
ANTHROPIC
APIKEY=sk-ant-...
OPENAI
APIKEY=sk-proj-...
GEMINI
APIKEY=AIza...
🔄 版本1.1变更
新功能
- - ✅ 交互式设置向导,引导式配置
- ✅ 安全API密钥存储,带文件权限
- ✅ 任务到模型映射自定义
- ✅ 多提供商支持(6个提供商)
- ✅ 成本优化级别(激进/平衡/质量)
改进
- - ✅ 更好的任务分类,带置信度评分
- ✅ 提供商特定模型推荐
- ✅ 增强安全性,隔离存储
- ✅ 全面文档
从1.0迁移
运行设置向导重新配置:
bash
python3 scripts/setup-wizard.py
📚 命令参考
设置向导
bash
python3 scripts/setup-wizard.py
提供商、映射和偏好的交互式配置。
任务分类器
bash
python3 scripts/classify_task.py 您的任务描述
python3 scripts/classify_task.py 您的任务 --format json
获取带推理说明的模型推荐。
列出模型
bash
python3 scripts/setup-wizard.py --list
显示所有可用模型及其状态