复用你已在浏览器里登录的网页会话,把各家网页聊天端包装成标准的 OpenAI / Anthropic 接口。可插拔适配器、自动回退、Web 管理面板,全部跑在本机。
不是聚合各家官方 API,而是「web2api」:让已登录的网页会话替你发请求。
从「接一个站点」到「管一堆站点」,都在同一个地方。
通过 ego lite 已登录的页面发起同源请求,网关不读取、不落盘任何 Cookie。用户只需在浏览器里登录一次。
新增网页端通常只改配置:首页地址、聊天接口、请求体形态、增量文本路径。协议特殊时加一个 JS 文件即可。
ego 会话 / HTTP 直连 / 本地模型并列,统一归一化成标准事件,再输出 OpenAI 或 Anthropic 格式。
模型别名指向有序候选链;连接阶段失败自动切换,连续失败触发冷却熔断,已开始输出则锁定上游。
SSE、NDJSON、一次性 JSON、纯文本四种上游格式都能解析,逐块转成标准 chat.completion.chunk。
适配器开关与配置、凭证录入、路由链编辑、实时日志、在线流式测试、各工具接入片段一键复制。
零运行时依赖,不需要 npm install,也不需要构建。
# 1. 启动(Node.js 20+)
node src/server.js
# 2. 打开面板
http://127.0.0.1:20128/
# 3. 试一条请求(开箱自带 echo 适配器,无需任何账号)
curl http://127.0.0.1:20128/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{"model":"auto","messages":[{"role":"user","content":"你好"}],"stream":true}'
# 自检
npm test # 14 项端到端冒烟测试
npm run probe:ego # 检测浏览器会话
Base URL:http://127.0.0.1:20128/v1
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /v1/models | 模型列表与路由别名 |
| POST | /v1/chat/completions | OpenAI 兼容,支持流式 |
| POST | /v1/messages | Anthropic 兼容,支持流式事件 |
| GET | /api/status | 运行时统计、健康度、会话状态 |
| GET/PUT | /api/providers | 适配器清单与热更新配置 |
| POST | /api/ego/probe | 检测浏览器登录态 |