Agent 测试指南
本文档说明如何为 innate-aiswitcher 支持的各个 Agent(Claude Code、Codex CLI、OpenCode 等)配置 Provider、运行连通性测试,以及验证启动计划。
支持的 Agent 与 Adapter 对照
| Agent | Binary | Adapter | 说明 |
|---|---|---|---|
| Claude Code | claude |
claude |
生成临时 settings.json,通过 --settings 传入 |
| Codex CLI | codex |
codex |
生成临时 CODEX_HOME/config.toml + auth.json |
| Gemini CLI | gemini |
gemini |
设置 GEMINI_API_KEY + GOOGLE_GEMINI_BASE_URL |
| Kimi CLI | kimi |
openai_env |
设置 OPENAI_API_KEY + OPENAI_BASE_URL |
| Trae CLI | trae |
openai_env |
设置 OPENAI_API_KEY + OPENAI_BASE_URL |
| OpenCode | opencode |
openai_env |
设置 OPENAI_API_KEY + OPENAI_BASE_URL |
| Hermes | hermes |
openai_env |
设置 OPENAI_API_KEY + OPENAI_BASE_URL |
| OpenClaw | openclaw |
openai_env |
设置 OPENAI_API_KEY + OPENAI_BASE_URL |
注意:
test provider和test models是 Provider 级别的测试,不依赖具体 Agent。任何支持anthropic、openai_chat或openai_responses协议的 Provider 都可以被测试。
通用测试命令
1. 测试 Provider 连通性
发送一个最小请求验证 API Key 和模型是否可用:
./bin/aisw test provider <provider-slug>
可选覆盖模型:
./bin/aisw test provider <provider-slug> --model <model-name>
2. 测试模型列表
拉取 Provider 支持的模型列表:
./bin/aisw test models <provider-slug>
3. Dry Run 预览启动计划
在真正启动 Agent 前,预览生成的配置:
./bin/aisw start <agent> <profile-or-provider> --dry-run
Claude Code 测试流程
前提
- 已安装 Claude Code:
npm install -g @anthropic-ai/claude-code - Claude Code 使用 Anthropic Messages API 兼容端点
配置步骤
# 1. 添加 Provider(Anthropic 兼容模式)
./bin/aisw provider add minimax-claude \
--name "MiniMax (Claude-compatible)" \
--base-url https://api.minimaxi.com/anthropic \
--api-key-env MINIMAX_API_KEY \
--protocol anthropic \
--model MiniMax-M3 \
--endpoint messages=/v1/messages \
--endpoint models=/v1/models
# 2. 测试连通性
./bin/aisw test provider minimax-claude
# 3. 查看可用模型
./bin/aisw test models minimax-claude
# 4. 创建 Profile
./bin/aisw profile add claude-minimax \
--agent claude \
--provider minimax-claude \
--model MiniMax-M3 \
--default
# 5. Dry Run 预览
./bin/aisw start claude claude-minimax --dry-run
# 6. 实际启动
./bin/aisw start claude claude-minimax
快速路径:如果不想手动配置 Provider,可以从内置预设导入 ——
./bin/aisw provider presets列出预设,然后用 TUI / Web UI /POST /api/aisw/providers/from-preset一键导入minimax-claude。
启动原理
Claude Adapter 生成临时 settings.json:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "<api-key>",
"ANTHROPIC_API_KEY": "<api-key>",
"ANTHROPIC_BASE_URL": "https://api.minimaxi.com/anthropic",
"ANTHROPIC_MODEL": "MiniMax-M3",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "MiniMax-M3",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "MiniMax-M3",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "MiniMax-M3"
},
"skipDangerousModePermissionPrompt": true
}
skipDangerousModePermissionPrompt 始终为 true,跳过 Claude Code 自带的「enable dangerous mode?」UI 弹窗(实际权限由 --dangerously-skip-permissions 控制,由 applySkipPermissions 根据 agent.skip_permissions_arg / profile.skip_permissions 决定)。
启动命令:
claude --settings /tmp/aisw-claude-xxx.json [--dangerously-skip-permissions] [...]
Codex CLI 测试流程
前提
- 已安装 Codex CLI:
npm install -g @openai/codex - Codex 使用 OpenAI Responses API 或 Chat Completions API
配置步骤
# 1. 添加 Provider(OpenAI Responses 兼容模式)
./bin/aisw provider add minimax-codex \
--name "MiniMax (Codex-compatible)" \
--base-url https://api.minimaxi.com/v1 \
--api-key-env MINIMAX_API_KEY \
--protocol openai_responses \
--model MiniMax-M3 \
--endpoint responses=/responses \
--endpoint models=/models
# 2. 测试连通性
./bin/aisw test provider minimax-codex
# 3. 创建 Profile
./bin/aisw profile add codex-minimax \
--agent codex \
--provider minimax-codex \
--model MiniMax-M3 \
--default
# 4. Dry Run 预览
./bin/aisw start codex codex-minimax --dry-run
# 5. 实际启动
./bin/aisw start codex codex-minimax
快速路径:MiniMax 内置预设
minimax-codex已经把capabilities.codex_auth_mode = "experimental_bearer_token"配好,从预设导入即可。
启动原理
Codex Adapter 创建临时目录 CODEX_HOME,并按 capabilities.codex_auth_mode 选择认证方式:
- 默认(
requires_openai_auth):把 key 写入auth.json experimental_bearer_token:把 key 直接嵌入config.toml的experimental_bearer_token字段(适合 MiniMax / Xiaomi 等不支持标准 OpenAI OAuth 的网关)
experimental_bearer_token 模式生成的 config.toml:
model = "MiniMax-M3"
model_provider = "minimax-codex"
model_context_window = 512000
[model_providers.minimax-codex]
name = "minimax-codex"
base_url = "https://api.minimaxi.com/v1"
experimental_bearer_token = "<api-key>"
wire_api = "responses"
默认模式生成的 config.toml + auth.json:
# CODEX_HOME/config.toml
model_provider = "minimax-codex"
model = "MiniMax-M3"
[model_providers.minimax-codex]
name = "minimax-codex"
base_url = "https://api.minimaxi.com/v1"
wire_api = "chat"
requires_openai_auth = true
// CODEX_HOME/auth.json
{"OPENAI_API_KEY": "<api-key>"}
启动命令:
CODEX_HOME=/tmp/aisw-codex-xxx codex
OpenCode 测试流程
前提
- 已安装 OpenCode CLI
- OpenCode 使用 OpenAI Chat Completions API 兼容端点
配置步骤
# 1. 添加 Provider(OpenAI 兼容模式)
./bin/aisw provider add minimax-openai \
--name "MiniMax (OpenAI-compatible)" \
--base-url https://api.minimaxi.com/v1 \
--api-key-env MINIMAX_API_KEY \
--protocol openai_chat \
--model MiniMax-M3 \
--endpoint chat_completions=/chat/completions \
--endpoint models=/models
# 2. 测试连通性
./bin/aisw test provider minimax-openai
# 3. 创建 Profile
./bin/aisw profile add opencode-minimax \
--agent opencode \
--provider minimax-openai \
--model MiniMax-M3 \
--default
# 4. Dry Run 预览
./bin/aisw start opencode opencode-minimax --dry-run
# 5. 实际启动
./bin/aisw start opencode opencode-minimax
OpenCode / Kimi / Trae / Hermes / OpenClaw 都使用同一个
openai_envAdapter(仅OPENAI_API_KEY+OPENAI_BASE_URL),把--agent换成kimi、trae、hermes、openclaw即可复用同一份 Provider。
启动原理
OpenCode 使用 openai_env Adapter,设置环境变量:
OPENAI_API_KEY=<api-key>
OPENAI_BASE_URL=https://api.minimaxi.com/v1
启动命令:
OPENAI_API_KEY=<api-key> OPENAI_BASE_URL=https://api.minimaxi.com/v1 opencode
项目级配置(.aiswrc)
为不同项目绑定不同 Agent/Profile:
# 在项目目录创建 .aiswrc
cd ~/work-project
./bin/aisw init --profile claude-minimax
# 文件内容
# profile = "claude-minimax"
# agent = "claude" # 可选;与 start 时传入的 agent 不一致会报错
# 进入目录直接启动
cd ~/work-project
./bin/aisw start claude
# 自动使用 claude-minimax
跳过项目配置:
./bin/aisw start claude --ignore-project
.aiswrc 也支持直接绑定 Provider:
provider = "minimax-claude"
测试协议支持矩阵
| Provider 协议 | test provider |
test models |
支持的 Agent |
|---|---|---|---|
anthropic |
✅ 发送 /v1/messages |
✅ 发送 /v1/models |
Claude Code |
openai_chat |
✅ 发送 /chat/completions |
✅ 发送 /models |
Codex, OpenCode, Kimi, Trae |
openai_responses |
✅ 发送 /responses |
✅ 发送 /models |
Codex |
gemini_native |
❌ 未实现 | ❌ 未实现 | Gemini CLI |
故障排查
测试返回 401 Unauthorized
- 检查 API Key 是否正确设置
- 确认环境变量名与
--api-key-env一致
测试返回 404 Not Found
- 检查
base_url是否正确 - 确认 endpoint override 路径正确
Agent 启动失败
- 先运行
--dry-run查看生成的配置 - 检查 Agent binary 是否在 PATH 中:
which claude、which codex、which opencode
模型不支持
- 使用
--model覆盖默认模型 - 运行
test models查看 Provider 支持的模型列表
最后更新:2026-07-06