ai-model-router

TotalClaw 作者 kn7bhjxh3e3b8tfpz5gnaghv3s83179v v1.0.0

智能 AI 模型路由器,可在两个配置的模型之间自动切换(本地用于简单任务,云用于复杂任务)。自动检测本地模型(Ollama、LM Studio),根据任务复杂性和隐私进行路由。当用户要求“切换模型”、“使用本地/云模型”或提及 API 密钥/密码(触发隐私模式)时使用。触发:敏感数据检测(强制本地)、“设计架构”(使用云)等复杂任务或配置请求。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw skills install shop:totalclaw:kn7bhjxh3e3b8tfpz5gnaghv3s83179v~ai-model-router
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Akn7bhjxh3e3b8tfpz5gnaghv3s83179v~ai-model-router/file -o ai-model-router.md
## 概述(中文)

智能 AI 模型路由器,可在两个配置的模型之间自动切换(本地用于简单任务,云用于复杂任务)。自动检测本地模型(Ollama、LM Studio),根据任务复杂性和隐私进行路由。当用户要求“切换模型”、“使用本地/云模型”或提及 API 密钥/密码(触发隐私模式)时使用。触发:敏感数据检测(强制本地)、“设计架构”(使用云)等复杂任务或配置请求。

## 原文

# AI Model Router

Compact, intelligent model routing that just works.

## Quick Start

```bash
# Install
npx clawhub@latest install ai-model-router

# First run - auto-detects your models
python3 skill/core/router.py "What is Python?"

# List available models
python3 skill/core/router.py --list
```

## How It Works

```
Your Request → Analyze → Select Model
                          ↓
                    Simple? → Primary (fast/cheap)
                    Complex? → Secondary (capable)
                    Private? → Primary (forced)
```

## Scoring (from model-router-premium)

| Pattern | Points |
|---------|--------|
| Microservices, architecture | +10 |
| Design, implement, optimize | +5 |
| Explain, analyze, compare | +3 |
| **Syntax, example, "what is"** | **-3** |

**Threshold: 5** (simple vs complex)

## Features

| Feature | Status |
|---------|--------|
| Auto-detect local models | ✓ (Ollama, LM Studio) |
| Cloud model registry | ✓ (7 built-in) |
| Privacy detection | ✓ (API keys, passwords) |
| Context tracking | ✓ (conversations) |
| JSON config | ✓ (optional) |
| CLI interface | ✓ |
| **Core code size** | **~200 lines** |

## CLI

```bash
# Route a task
python3 skill/core/router.py "Design a system"
python3 skill/core/router.py "What is a for loop?"

# Options
--json                    # JSON output
--force primary           # Force primary model
--list                    # List all models
--status                  # Show status
```

## Python API

```python
from skill.core.router import RouterCore

router = RouterCore()
result = router.route("Design microservices")

print(result.model_name)   # "Claude Opus 4"
print(result.reason)        # "complex_task(score=15)"
print(result.confidence)    # 0.75
```

## Configuration (Optional)

Create `~/.model-router/models.json`:

```json
{
  "primary_model": {"id": "ollama:llama3:8b"},
  "secondary_model": {"id": "anthropic:claude-opus-4"},
  "models": [...]
}
```

**Without config**: Auto-detects local + uses cloud registry.

## Privacy Protection

Automatically forces primary (local) when sensitive data detected:
- API keys (`sk-...`, `api_key`)
- Passwords (`password`, `passwd`)
- Tokens (`bearer`, `secret`)
- Emails, SSN, credit cards

## Files

- `core/router.py` - Core routing engine (~200 lines)
- `modules/detector.py` - Auto-detection (optional)
- `modules/context.py` - Context tracking (optional)

## Inspired By

- **model-router-premium**: Simple scoring logic, cost-aware routing
- **Model Router v1**: Full feature set, documentation

This version combines:
- The **simplicity** of model-router-premium (~200 lines)
- The **features** of ai-model-router (privacy, auto-detect, context)