Skip to content

Repository files navigation

AICheck — AI 中转站检测

跨平台桌面应用(macOS / Windows / Linux)。读取 cc-switch 的站点配置(~/.cc-switch/cc-switch.db), 批量检测各 AI 中转站是否可用、首 token 延迟,并一键把可用站切换为 cc-switch 当前站—— 切过去的配置就是刚实测通过的组合,不再有"测通了却用不了"。

Tauri 2 + SvelteKit (Svelte 5) + Rust。

安装(普通用户)

Releases 下载对应平台的安装包:

  • macOS(Apple 芯片):AICheck_x.x.x_aarch64.dmg,双击打开拖进「应用程序」
  • Windows:AICheck_x.x.x_x64-setup.exe.msi
  • Linux:.AppImage(免安装)或 .deb

包未做签名,首次打开若有安全提示: macOS 在 系统设置 → 隐私与安全性 → 拉到底点「仍要打开」; Windows 在 SmartScreen 提示里点「仍要运行」。只需一次。

Windows / Linux 支持为新增,cc-switch 进程的自动关闭/拉起在这两个平台 尚未实测,异常时请先手动关闭 cc-switch 再切换。

检测能力

  • 站点列表:读取 cc-switch 的 claude / codex 供应商,按站名合并成逻辑站
  • 批量测活:并发流式探测,读到首个内容 token 即判可用并记录延迟
  • 三接口探测:anthropic messages / openai responses / openai chat; 按模型名分桶(claude 系走 messages,gpt 等走 openai 侧,国产双栖模型两边都测),可开「全交叉」忽略分桶
  • 仅流式检测:接口流式测通后,用最快模型补发一次非流式请求; 非流式不通的站标 ⚡仅流式(有些站只有流式能正常访问)
  • 模拟真实客户端:messages 探测带 Claude Code 标识头(claude-cli UA、x-app: clianthropic-betax-stainless-*), responses/chat 探测带 Codex CLI 标识头(codex_cli_rs UA、originator)——按客户端特征放行的站不会被误判。 UA 版本号自动探测:启动时读本机 claude --version / codex --version(GUI 不继承 shell PATH, 会补查 ~/.local/bin/opt/homebrew/bin 等常见位置),读不到才用内置兜底值
  • 模型池:自定义关心模型、从站点 /models 接口发现新模型、持久化到 ~/Library/Application Support/ai-check/models.json
  • 错误清洗:把各站五花八门的报错压成一句中文(key 无效 / 额度不足 / 限流 / 无此模型…)

一键切换(核心:测通 = 切过去能用)

在「可用(按延迟)」列表点「切到这里」(两段式确认),把该站设为 cc-switch 当前站:

  • claude 侧写 ~/.claude/settings.json,codex 侧写 ~/.codex/auth.json + ~/.codex/config.toml
  • 切换前自动把 live 配置回填进原当前站(保留外部工具的改动,对齐 cc-switch 行为)
  • 原文件先备份为 *.ai-check.bak,写入采用临时文件 + rename 原子落盘
  • 配置写入方式(控制区可选,记忆选择):
    • 精准同步(默认):只把 model / wire_api 改成实测通过的组合,其余(mcp 插件、目录信任、个人偏好)一字不动
    • 完全替换:站点连接部分用标准模板重写(provider 统一 custom),个人/全局配置仍保留——适合把乱掉的站点配置"恢复出厂"
  • 自动清理 websocket 开关:写入时移除 responses_websockets_v2 / experimental_use_websocket (AICheck 验证的是 HTTP 通道;这类手工补救开关会过时,站后端一变反而让实测通过的站用不了)
  • 补配置切换:站只在 cc-switch 里配了一侧(如只有 claude)、另一侧接口实测又通的, 点「补配置切换」即用已有侧的地址 + key、按实测接口/模型生成一份配置写入 cc-switch 再切换 (codex 侧 model_provider / [model_providers.custom] / name 三处统一 custom; claude 侧生成 ANTHROPIC_BASE_URL / ANTHROPIC_AUTH_TOKEN + 实测模型的三档映射)
  • 重启 cc-switch:切换成功后可选一键重启 cc-switch(osascript 优雅退出再拉起,给它落盘机会), 让它的界面刷新到最新当前站

界面

  • 深色 / 浅色主题:默认跟随系统,顶栏按钮可在 ◐ 自动 / ☀ 浅色 / ☾ 深色 间循环,选择会记住
  • 透明标题栏与页面无缝一体;检测进度实时推送,结果按延迟排序

开发

npm install
npm run tauri dev

测试 / 构建

cd src-tauri && cargo test   # 切换端到端 + 配置生成/同步/清理 + UA 探测(沙箱 HOME,不碰真实配置)
npm run check                # svelte-check
npm run tauri build          # 打包 .app + .dmg

About

No description, website, or topics provided.

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages