对 AgnesCode 进行逆向分析,研究其认证协议和 AI 通信协议,为构建 AI 中转代理 提供底层技术支撑。
所有分析文档已发布为在线文档站:
👉 https://vibe-coding-labs.github.io/AgnesCodeReverseEngineer/
支持全文搜索、页面导航、代码高亮,阅读体验更佳。
| 文档 | 内容 |
|---|---|
| 逆向分析总览 | 架构、技术栈、授权登录、反向代理入口 |
| 交付总结 | 交付成果概览、已验证项 |
| 认证与授权 | OAuth2、API Key、Token 生命周期 |
| OAuth & Deep Link | OAuth 授权流程、Deep Link 协议 |
| ACP WebSocket | JSON-RPC 2.0 消息格式、连接方法 |
| Agnes BFF API | 远程 REST API 端点、认证、错误处理 |
| agnest HTTP API | 本地后端、进程管理、路由 |
| AI 提供商协议 | 15+ 提供商配置、模型路由、MCP |
| IPC 协议 | Electron Renderer ↔ Main Process IPC |
| 工程化参考手册 | 完整认证 + AI 调用 + 模型定价 |
| 协议深度分析 | ACP 协议、认证流程、API 全集 |
| 完成度评估 | 分析完成度、盲区评估 |
JWT Token (登录 platform 获取)
→ POST /api/v1/user/issue-authorization-code (签发授权码)
→ POST /api/v1/code/auth/exchange-code (交换 OAuth Token)
→ POST /v1/chat/completions (调用 AI)
通过 GET /v1/models 动态获取,共 7 个模型:
| 模型 | 提供商 | 免费/付费 | 输入上限 | 输出上限 |
|---|---|---|---|---|
| agnes-2.0-flash | agnes | 免费 | 512K | 65K |
| agnes-2.5-flash 🧪 | agnes | 免费 | 512K | 65K |
| glm-5.2 | 智谱 AI | 会员 | 1M | 131K |
| deepseek-v4-pro | deepseek | 会员 | 1M | 393K |
| gemini-3.5-flash | 会员 | 1M | 65K | |
| gpt-5.5 | openai | 会员 | 10M | 131K |
| claude-opus-4-8 | anthropic | 会员 | 1M | 131K |
| 脚本 | 功能 |
|---|---|
agnes_sdk.py |
完整 SDK — 认证 + AI 调用 + 流式 + 模型列表 + 额度 |
auth_flow_test.py |
认证流程测试 |
acp_client.py |
ACP 客户端 SDK |
acp_proxy.py |
反向代理服务器 |
exchange_token.py |
Token 交换工具 |
# 安装依赖
pip install httpx
# 设置 JWT Token
export AGNES_JWT_TOKEN="你的JWT Token"
# 使用 SDK
python3 -c "
from agnes_sdk import AgnesClient
import os
client = AgnesClient(jwt_token=os.environ['AGNES_JWT_TOKEN'])
client.authenticate()
models = client.list_models()
for m in models:
print(f'{\"✅\" if not m.is_member_only else \"🔒\"} {m.id}')
resp = client.chat([{'role':'user','content':'你好'}])
print(resp.content)
"欢迎提交 Issue 或 Pull Request。详见 CONTRIBUTING.md 和 CODE_OF_CONDUCT.md。
Apache 2.0 © 2026 vibe-coding-labs