dofastted/vm2api
# vm2api 学习卡
一、一句话定位
将 Claude 的 Setup Token 转化为原生 Console API(非 OAuth)的代理/网关,通过在虚拟机中运行 Claude Code 原生 subagent 实现零提示词注入的拟真调用。
二、核心技术/架构亮点
- 凭证转换:Setup Token → Console API,使上游视你为官方 Console 客户端,彻底规避提示词注入。
- 原生 subagent:槽内运行官方 Claude Code subagent,每槽最大 20 路并发,无需第三方假客户端。
- 虚拟机拟真:每槽一台独立容器或真实虚拟机,全量遥测、物理指纹模拟(仍在完善),使 Claude 认为是一台独立电脑。
- 控制面清洗:Node.js 控制面处理协议清洗、调度、管理台;Rust 内核做推理 hop,Go 透明网关处理出口。
- 出口灵活:每槽可配远程 SOCKS5 或宿主机本地 NAT 出口。
三、适用场景与目标用户
- 需要高并发、低延迟访问 Claude 模型,且不愿依赖 OAuth 令牌流转的开发者。
- 对提示词注入零容忍,希望用官方身份(Console)直连 Claude 的后端工程师。
- 自建 Claude 代理池、多路复用、成本优化或规避异常检测的团队/个人。
四、可动手动作
- clone 并本地部署(推荐 Docker Compose):
`git clone https://github.com/dofastted/vm2api.git /opt/vm2api`
配置 `.env`,下载 release 二进制到 `bin/`,`docker compose up -d --build`
- 调用测试:
`curl -H "Authorization: Bearer $VM2API_API_KEY" -d '{"model":"claude-sonnet-5","messages":[{"role":"user","content":"hello"}]}' http://127.0.0.1:8787/v1/messages`
- 借鉴思路:官方通道模拟层设计、凭证形态转换绕过安全检测、Rust+Node 混合架构。
五、学习优先级
P1(排期) – 项目复杂、需硬件环境(Docker/虚拟机、出口 SOCKS5),但思路独特,适合深入后按需部署。⌂