feat: add deepseek-v4-pro/flash + config check logic to trapi-config skill
This commit is contained in:
@@ -21,6 +21,42 @@ description: |
|
|||||||
2. 如用户未提供 API Key,**立即停止**并要求提供;不可继续执行
|
2. 如用户未提供 API Key,**立即停止**并要求提供;不可继续执行
|
||||||
3. OpenClaw 必须已安装并运行
|
3. OpenClaw 必须已安装并运行
|
||||||
|
|
||||||
|
## 步骤 0:检查已有配置
|
||||||
|
|
||||||
|
**在执行任何配置操作前,必须先检查当前 OpenClaw 配置中是否已有 trapi provider 或部分模型/别名。** 避免重复配置,只补齐缺失部分。
|
||||||
|
|
||||||
|
### 检查流程
|
||||||
|
|
||||||
|
1. 使用 `gateway config.get` 获取当前 `models.providers.trapi` 配置
|
||||||
|
2. 使用 `gateway config.get` 获取当前 `agents.defaults.models` 中的 trapi 别名
|
||||||
|
3. 对比下表,列出三列状态:
|
||||||
|
|
||||||
|
| 模型 | 别名 | Provider 已有 | 别名已有 |
|
||||||
|
|------|------|:---:|:---:|
|
||||||
|
| GLM-5-Turbo | glm5t | ✅/❌ | ✅/❌ |
|
||||||
|
| GLM-5.1 | glm51 | ✅/❌ | ✅/❌ |
|
||||||
|
| GLM-4.5-Air | glm45a | ✅/❌ | ✅/❌ |
|
||||||
|
| MiniMax-M2 | mxm2 | ✅/❌ | ✅/❌ |
|
||||||
|
| MiniMax-M2.7 | mxm27 | ✅/❌ | ✅/❌ |
|
||||||
|
| K2.6-code-preview | kimi | ✅/❌ | ✅/❌ |
|
||||||
|
| deepseek-v4-pro | dsv4p | ✅/❌ | ✅/❌ |
|
||||||
|
| deepseek-v4-flash | dsv4f | ✅/❌ | ✅/❌ |
|
||||||
|
| gpt-5.5 | gpt55 | ✅/❌ | ✅/❌ |
|
||||||
|
|
||||||
|
### 检查结果处理
|
||||||
|
|
||||||
|
- **全部已有**(Provider + 所有模型 + 所有别名):告知用户已完整配置,无需操作
|
||||||
|
- **Provider 已有,部分模型缺失**:只 patch 缺失的模型,不覆盖已有配置
|
||||||
|
- **Provider 缺失**:按步骤 1-6 完整配置
|
||||||
|
- **模型已有但别名缺失**:只 patch 缺失的别名
|
||||||
|
- **API Key 需要更新**:即使用户提供了新 Key,也要先确认旧 Key 是否仍有效
|
||||||
|
|
||||||
|
### 操作原则
|
||||||
|
|
||||||
|
1. **绝不覆盖已有配置** — `config.patch` 是合并操作,但新模型如果 ID 与已有不同则追加
|
||||||
|
2. **只补齐缺失部分** — 精确对比已有 vs 缺失,只 patch 差集
|
||||||
|
3. **向用户展示补齐方案** — 明确列出将要添加/跳过的内容,等用户确认后再执行
|
||||||
|
|
||||||
## 步骤 1:要求 API Key
|
## 步骤 1:要求 API Key
|
||||||
|
|
||||||
进行任何配置前,先向用户索要 `trapi` API Key。接受形式:
|
进行任何配置前,先向用户索要 `trapi` API Key。接受形式:
|
||||||
@@ -62,6 +98,26 @@ description: |
|
|||||||
"contextWindow": 200000,
|
"contextWindow": 200000,
|
||||||
"maxTokens": 64000
|
"maxTokens": 64000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "GLM-4.5-Air",
|
||||||
|
"name": "GLM-4.5-Air (Transiglobal)",
|
||||||
|
"api": "anthropic-messages",
|
||||||
|
"reasoning": false,
|
||||||
|
"input": ["text"],
|
||||||
|
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
|
||||||
|
"contextWindow": 200000,
|
||||||
|
"maxTokens": 64000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "MiniMax-M2",
|
||||||
|
"name": "MiniMax-M2 (Transiglobal)",
|
||||||
|
"api": "anthropic-messages",
|
||||||
|
"reasoning": false,
|
||||||
|
"input": ["text"],
|
||||||
|
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
|
||||||
|
"contextWindow": 200000,
|
||||||
|
"maxTokens": 64000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "MiniMax-M2.7",
|
"id": "MiniMax-M2.7",
|
||||||
"name": "MiniMax-M2.7 (Transiglobal)",
|
"name": "MiniMax-M2.7 (Transiglobal)",
|
||||||
@@ -81,6 +137,36 @@ description: |
|
|||||||
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
|
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
|
||||||
"contextWindow": 200000,
|
"contextWindow": 200000,
|
||||||
"maxTokens": 64000
|
"maxTokens": 64000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "deepseek-v4-pro",
|
||||||
|
"name": "DeepSeek V4 Pro (Transiglobal)",
|
||||||
|
"api": "anthropic-messages",
|
||||||
|
"reasoning": false,
|
||||||
|
"input": ["text"],
|
||||||
|
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
|
||||||
|
"contextWindow": 200000,
|
||||||
|
"maxTokens": 64000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "deepseek-v4-flash",
|
||||||
|
"name": "DeepSeek V4 Flash (Transiglobal)",
|
||||||
|
"api": "anthropic-messages",
|
||||||
|
"reasoning": false,
|
||||||
|
"input": ["text"],
|
||||||
|
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
|
||||||
|
"contextWindow": 200000,
|
||||||
|
"maxTokens": 64000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "gpt-5.5",
|
||||||
|
"name": "GPT-5.5 (Transiglobal)",
|
||||||
|
"api": "anthropic-messages",
|
||||||
|
"reasoning": false,
|
||||||
|
"input": ["text"],
|
||||||
|
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 },
|
||||||
|
"contextWindow": 200000,
|
||||||
|
"maxTokens": 64000
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -100,8 +186,13 @@ description: |
|
|||||||
"models": {
|
"models": {
|
||||||
"trapi/GLM-5-Turbo": { "alias": "glm5t" },
|
"trapi/GLM-5-Turbo": { "alias": "glm5t" },
|
||||||
"trapi/GLM-5.1": { "alias": "glm51" },
|
"trapi/GLM-5.1": { "alias": "glm51" },
|
||||||
|
"trapi/GLM-4.5-Air": { "alias": "glm45a" },
|
||||||
|
"trapi/MiniMax-M2": { "alias": "mxm2" },
|
||||||
"trapi/MiniMax-M2.7": { "alias": "mxm27" },
|
"trapi/MiniMax-M2.7": { "alias": "mxm27" },
|
||||||
"trapi/K2.6-code-preview": { "alias": "kimi" }
|
"trapi/K2.6-code-preview": { "alias": "kimi" },
|
||||||
|
"trapi/deepseek-v4-pro": { "alias": "dsv4p" },
|
||||||
|
"trapi/deepseek-v4-flash": { "alias": "dsv4f" },
|
||||||
|
"trapi/gpt-5.5": { "alias": "gpt55" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -127,8 +218,13 @@ sessions_spawn(
|
|||||||
验证顺序:
|
验证顺序:
|
||||||
1. `trapi/GLM-5-Turbo`(别名:glm5t)
|
1. `trapi/GLM-5-Turbo`(别名:glm5t)
|
||||||
2. `trapi/GLM-5.1`(别名:glm51)
|
2. `trapi/GLM-5.1`(别名:glm51)
|
||||||
3. `trapi/MiniMax-M2.7`(别名:mxm27)
|
3. `trapi/GLM-4.5-Air`(别名:glm45a)
|
||||||
4. `trapi/K2.6-code-preview`(别名:kimi)
|
4. `trapi/MiniMax-M2`(别名:mxm2)
|
||||||
|
5. `trapi/MiniMax-M2.7`(别名:mxm27)
|
||||||
|
6. `trapi/K2.6-code-preview`(别名:kimi)
|
||||||
|
7. `trapi/deepseek-v4-pro`(别名:dsv4p)
|
||||||
|
8. `trapi/deepseek-v4-flash`(别名:dsv4f)
|
||||||
|
9. `trapi/gpt-5.5`(别名:gpt55)
|
||||||
|
|
||||||
### 验证标准
|
### 验证标准
|
||||||
|
|
||||||
@@ -144,18 +240,28 @@ sessions_spawn(
|
|||||||
|------|------|------|
|
|------|------|------|
|
||||||
| GLM-5-Turbo | glm5t | ✅/❌ |
|
| GLM-5-Turbo | glm5t | ✅/❌ |
|
||||||
| GLM-5.1 | glm51 | ✅/❌ |
|
| GLM-5.1 | glm51 | ✅/❌ |
|
||||||
|
| GLM-4.5-Air | glm45a | ✅/❌ |
|
||||||
|
| MiniMax-M2 | mxm2 | ✅/❌ |
|
||||||
| MiniMax-M2.7 | mxm27 | ✅/❌ |
|
| MiniMax-M2.7 | mxm27 | ✅/❌ |
|
||||||
| K2.6-code-preview | kimi | ✅/❌ |
|
| K2.6-code-preview | kimi | ✅/❌ |
|
||||||
|
| deepseek-v4-pro | dsv4p | ✅/❌ |
|
||||||
|
| deepseek-v4-flash | dsv4f | ✅/❌ |
|
||||||
|
| gpt-5.5 | gpt55 | ✅/❌ |
|
||||||
|
|
||||||
## 步骤 6:使用指引
|
## 步骤 6:使用指引
|
||||||
|
|
||||||
配置完成并通过验证后,向用户展示快捷切换模型的使用方式:
|
配置完成并通过验证后,向用户展示快捷切换模型的使用方式:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
/glm45a → 切换到 GLM-4.5-Air(轻量)
|
||||||
/glm5t → 切换到 GLM-5-Turbo(高性价比)
|
/glm5t → 切换到 GLM-5-Turbo(高性价比)
|
||||||
/glm51 → 切换到 GLM-5.1(旗舰)
|
/glm51 → 切换到 GLM-5.1(旗舰)
|
||||||
|
/mxm2 → 切换到 MiniMax-M2
|
||||||
/mxm27 → 切换到 MiniMax-M2.7
|
/mxm27 → 切换到 MiniMax-M2.7
|
||||||
/kimi → 切换到 K2.6-code-preview(支持图片)
|
/kimi → 切换到 K2.6-code-preview(支持图片)
|
||||||
|
/dsv4p → 切换到 DeepSeek V4 Pro
|
||||||
|
/dsv4f → 切换到 DeepSeek V4 Flash(快速)
|
||||||
|
/gpt55 → 切换到 GPT-5.5
|
||||||
```
|
```
|
||||||
|
|
||||||
提示用户在对话中直接输入 `/alias` 即可快速切换模型。
|
提示用户在对话中直接输入 `/alias` 即可快速切换模型。
|
||||||
@@ -188,10 +294,15 @@ sessions_spawn(
|
|||||||
|
|
||||||
| 模型 | 别名 |
|
| 模型 | 别名 |
|
||||||
|------|------|
|
|------|------|
|
||||||
|
| GLM-4.5-Air | glm45a |
|
||||||
| GLM-5-Turbo | glm5t |
|
| GLM-5-Turbo | glm5t |
|
||||||
| GLM-5.1 | glm51 |
|
| GLM-5.1 | glm51 |
|
||||||
|
| MiniMax-M2 | mxm2 |
|
||||||
| MiniMax-M2.7 | mxm27 |
|
| MiniMax-M2.7 | mxm27 |
|
||||||
| K2.6-code-preview | kimi |
|
| K2.6-code-preview | kimi |
|
||||||
|
| deepseek-v4-pro | dsv4p |
|
||||||
|
| deepseek-v4-flash | dsv4f |
|
||||||
|
| gpt-5.5 | gpt55 |
|
||||||
|
|
||||||
### 操作流程
|
### 操作流程
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user