TestModelAlive 是一个 Tauri 桌面应用,用于管理 Codex / Claude / OpenCode / DeepSeek Harness 兼容 API 端点,并通过本机 CLI 工具测试已保存模型是否可用。
应用支持中英双语界面,默认中文。
- 主页:填写模型 API 信息,拉取模型列表,保存 API 和对应的模型。
- 模型测试页:为测活生成临时配置文件,按需替换 Codex / Claude / OpenCode / DeepSeek Harness 配置,再使用替换后的配置进行测活。
测活指测试模型是否可用。测试时会向模型发送指定提示词,并根据命令输出中是否包含成功关键词判断模型是否通过。
- 填写端点名称、类型、URL 和 API Key。
- 点击“拉取模型”,确认模型列表后勾选需要保存的模型。
- 点击“保存端点”,在“已保存端点”中选择、加载、复制或删除端点。
- 在主页选择一个已保存端点,点击“测试”进入模型测试页;页面会展示端点类型、URL 和脱敏后的 API Key。
- 先确认要测试的模型列表,可重新“拉取模型”、保存模型,也可使用全选、全不选、反选快速调整范围。
- 按需设置超时时间;Claude 端点可勾选“模型后追加 1M 上下文 [1m]”测试长上下文模型名。
- 点击“测试设置”可修改测试提示词和成功关键词;提示词必须要求模型输出该关键词,系统会用它判断测试是否通过。
- 点击“开始测试”测试当前端点,或点击“测试当前配置”验证本机 CLI 现有配置;测试过程中可停止,并通过结果区和日志区查看状态、耗时、错误输出。测试通过后再按需应用到 Codex、Claude、OpenCode 或 DeepSeek Harness。
测试模型是否可用:
替换 CLI 配置:
- 前端:TypeScript + Vite,源码在
frontend/。 - 桌面运行时:Tauri 2 + Rust,源码在
src-tauri/。 - 旧版 Python/PyQt 文件保留在
lagacy/。
- Node.js 和 npm。
- Rust stable toolchain。
- 当前平台所需的 Tauri 系统依赖。
- 根据测试类型安装本机 CLI:
- Codex 端点需要
codex。 - Claude 端点需要
claude。 - OpenCode 端点需要
opencode。 - DeepSeek Harness 端点需要
dsh,可通过npm install -g @deepseek-ai/dsh安装。
- Codex 端点需要
应用会在 PATH 和常见安装位置中查找 CLI,包括 Windows 的 npm 全局路径和 macOS 的 Homebrew 路径。
安装依赖:
npm install启动 Tauri 开发模式:
npm run tauri dev只构建前端:
npm run build构建桌面应用:
npm run tauri build运行时数据保存在用户目录下:
~/.TestModelAlive/
Windows 下对应:
%USERPROFILE%\.TestModelAlive\
目录内主要文件包括:
settings.json:已保存端点、模型列表、测试设置和 CLI 配置还原基线。cli-config-apply-history.json:CLI 配置应用历史。claude-settings.json:测试 Claude CLI 时生成的临时 settings 文件,每次测试会直接覆盖,保留用于排查问题。codex-home/:测试 Codex CLI 时使用的独立 Codex home。opencode-home/:测试 OpenCode CLI 时使用的独立 home。dsh-home/:测试 DeepSeek Harness 时使用的隔离DSH_HOME。cli-config-backups/:应用或还原真实 CLI 配置前生成的备份。
模型测试通过本机 CLI 执行:
- Codex 测试使用独立
CODEX_HOME,路径为~/.TestModelAlive/codex-home。 - Claude 测试使用
~/.TestModelAlive/claude-settings.json作为 settings 文件。 - OpenCode 测试使用独立 home,路径为
~/.TestModelAlive/opencode-home。 - DeepSeek Harness 测试使用隔离
DSH_HOME,路径为~/.TestModelAlive/dsh-home,通过dsh --profile headless运行;API Key 仅作为子进程环境变量注入。
测试弹窗会实时显示 CLI 输出。后端不会再把测试日志镜像输出到终端。
成功判定可配置:
- 设置测试提示词。
- 设置成功匹配关键词。
- 提示词必须明确包含成功关键词,并要求模型输出它。
- 命令输出中包含成功关键词时,模型会被标记为可用。
- 在 DeepSeek Harness 类型端点中选择一个或多个模型后,可点击“应用到 DeepSeek Harness”,并选择其中一个默认模型。
- 应用会合并 DSH 的
settings.yaml和.credentials.yaml,路径为DSH_HOME(如已设置)或默认的~/.dsh/。 - DeepSeek Harness 凭据使用可读的
TMA_DSH_<端点名称>_API_KEY引用。 - 在 macOS 和 Linux 上,应用会以仅当前用户可读写的
0600权限写入.credentials.yaml,以满足 DSH 的凭据安全要求。 deepseek-v4-flash和deepseek-v4-pro默认与其他模型一起写入 OpenAI 兼容的tma-<端点名称>provider。llm-pi-ai尚未适配第三方端点的 DeepSeek 模型;要使用它们作为默认模型,需在应用选项中勾选“拆分 DeepSeek V4 模型到 llm-deepseek”,将它们写入原生llm-deepseek配置,并使用deepseek-official作为agent-default-modelprovider。未勾选时,DeepSeek V4 模型不能作为默认模型。- 拆分会覆盖
llm-deepseek中已有的 DeepSeek 官方配置。 - 拆分时可选择最大输出:官方端点默认
384000,第三方端点可选131072。隔离测活固定使用131072,不读取已有 DSH 配置。 - 模型测试页提供“恢复官方配置”,会清除顶层
llm-deepseek和默认模型覆盖项,恢复 DSH 内置官方配置;“删除本 Provider”移除当前端点的tma-<端点名称>provider、默认模型引用及对应 API Key 凭据。 - 会复用内嵌的模型上下文和最大输出值,
llm-pi-ai模型还会转换 OpenCode 推理档位,未知模型保留 DSH 默认能力。 - 模型元数据内嵌在应用的
src-tauri/src/model_metadata.json,不会写入~/.TestModelAlive/settings.json;启动时会自动移除旧的opencode_model_variants字段。 - DeepSeek Harness 目前处于开发预览阶段,配置格式可能会有破坏性变更;升级 DSH 后请先执行一次“测试当前配置”。
- Windows 支持
.cmd/.batCLI shim,并通过taskkill /T /F终止进程树。 - macOS 和 Linux 会额外查找
/usr/local/bin、/opt/homebrew/bin、~/.local/bin等常见 CLI 路径。 - Tauri 跨平台打包可能需要对应平台的 SDK、资源编译器或系统依赖,仅安装 Rust target 不一定足够。
API Key 会以明文形式保存在 ~/.TestModelAlive/settings.json,应用到本机 CLI 后也会写入对应 CLI 配置。
不要提交或公开运行时数据文件。相关本地数据文件已加入 .gitignore。


