diff --git a/README.MD b/README.MD index e9002fd..e6c6229 100644 --- a/README.MD +++ b/README.MD @@ -52,19 +52,17 @@ flowchart LR WebUI["WebUI Static\n/admin"] end - Upstream["☁️ DeepSeek Upstream"] + DS["☁️ DeepSeek API"] - Client --> Router - Router --> OA & CA & GA - Router --> Admin - Router --> WebUI - OA --> Auth --> Pool --> DS - CA --> Auth - GA --> Auth - DS --> Pow - DS --> Tool --> Format - DS --> Upstream - Upstream --> DS + Client -- "请求" --> CORS --> Auth + Auth --> OA & CA & GA + OA & CA & GA -- "调用" --> DS + Auth --> Admin + OA & CA & GA -. "轮询选账号" .-> Pool + OA & CA & GA -. "计算 PoW" .-> PoW + OA & CA & GA -. "流式解析" .-> Stream + OA & CA & GA -. "工具调用防泄漏" .-> Sieve + DS -- "响应" --> Client ``` - **后端**:Go(`cmd/ds2api/`、`api/`、`internal/`),不依赖 Python 运行时 @@ -431,6 +429,7 @@ ds2api/ ├── cmd/ │ ├── ds2api/ # 本地 / 容器启动入口 │ └── ds2api-tests/ # 端到端测试集入口 +├── app/ # 统一 HTTP Handler 组装层(供本地与 Serverless 复用) ├── api/ │ ├── index.go # Vercel Serverless Go 入口 │ ├── chat-stream.js # Vercel Node.js 流式转发 @@ -454,7 +453,10 @@ ds2api/ │ ├── server/ # HTTP 路由与中间件(chi router) │ ├── sse/ # SSE 解析工具 │ ├── stream/ # 统一流式消费引擎 +│ ├── testsuite/ # 端到端测试框架与用例编排 +│ ├── translatorcliproxy/ # CLIProxy 桥接与流写入组件 │ ├── util/ # 通用工具函数 +│ ├── version/ # 版本解析 / 比较与 tag 规范化 │ └── webui/ # WebUI 静态文件托管与自动构建 ├── webui/ # React WebUI 源码(Vite + Tailwind) │ └── src/ diff --git a/README.en.md b/README.en.md index f5378d6..7ca9a60 100644 --- a/README.en.md +++ b/README.en.md @@ -52,19 +52,17 @@ flowchart LR WebUI["WebUI Static\n/admin"] end - Upstream["☁️ DeepSeek Upstream"] + DS["☁️ DeepSeek API"] - Client --> Router - Router --> OA & CA & GA - Router --> Admin - Router --> WebUI - OA --> Auth --> Pool --> DS - CA --> Auth - GA --> Auth - DS --> Pow - DS --> Tool --> Format - DS --> Upstream - Upstream --> DS + Client -- "Request" --> CORS --> Auth + Auth --> OA & CA & GA + OA & CA & GA -- "Call" --> DS + Auth --> Admin + OA & CA & GA -. "Rotate accounts" .-> Pool + OA & CA & GA -. "Compute PoW" .-> PoW + OA & CA & GA -. "Parse streams" .-> Stream + OA & CA & GA -. "Tool anti-leak" .-> Sieve + DS -- "Response" --> Client ``` - **Backend**: Go (`cmd/ds2api/`, `api/`, `internal/`), no Python runtime @@ -425,6 +423,7 @@ ds2api/ ├── cmd/ │ ├── ds2api/ # Local / container entrypoint │ └── ds2api-tests/ # End-to-end testsuite entrypoint +├── app/ # Unified HTTP handler assembly (shared by local + serverless) ├── api/ │ ├── index.go # Vercel Serverless Go entry │ ├── chat-stream.js # Vercel Node.js stream relay @@ -448,7 +447,10 @@ ds2api/ │ ├── server/ # HTTP routing and middleware (chi router) │ ├── sse/ # SSE parsing utilities │ ├── stream/ # Unified stream consumption engine +│ ├── testsuite/ # End-to-end testsuite framework and case orchestration +│ ├── translatorcliproxy/ # CLIProxy bridge and stream writer components │ ├── util/ # Common utilities +│ ├── version/ # Version parsing/comparison and tag normalization │ └── webui/ # WebUI static file serving and auto-build ├── webui/ # React WebUI source (Vite + Tailwind) │ └── src/ diff --git a/docs/CONTRIBUTING.en.md b/docs/CONTRIBUTING.en.md index a229969..dd8ee2c 100644 --- a/docs/CONTRIBUTING.en.md +++ b/docs/CONTRIBUTING.en.md @@ -98,6 +98,7 @@ ds2api/ ├── cmd/ │ ├── ds2api/ # Local/container entrypoint │ └── ds2api-tests/ # End-to-end testsuite entrypoint +├── app/ # Shared handler assembly (local + serverless) ├── api/ │ ├── index.go # Vercel Serverless Go entry │ ├── chat-stream.js # Vercel Node.js stream relay @@ -111,7 +112,6 @@ ds2api/ │ ├── admin/ # Admin API handlers │ ├── auth/ # Auth and JWT │ ├── claudeconv/ # Claude message conversion -│ ├── compat/ # Compatibility helpers │ ├── config/ # Config loading and hot-reload │ ├── deepseek/ # DeepSeek client, PoW WASM │ ├── js/ # Node runtime stream/compat logic @@ -121,8 +121,10 @@ ds2api/ │ ├── server/ # HTTP routing (chi router) │ ├── sse/ # SSE parsing utilities │ ├── stream/ # Unified stream consumption engine -│ ├── testsuite/ # Testsuite core logic +│ ├── testsuite/ # Testsuite framework and scenario orchestration +│ ├── translatorcliproxy/ # CLIProxy bridge and stream writer │ ├── util/ # Common utilities +│ ├── version/ # Version parsing and comparison │ └── webui/ # WebUI static hosting ├── webui/ # React WebUI source │ └── src/ diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index d5b73c3..5c55a99 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -98,6 +98,7 @@ ds2api/ ├── cmd/ │ ├── ds2api/ # 本地/容器启动入口 │ └── ds2api-tests/ # 端到端测试集入口 +├── app/ # 统一 Handler 装配(本地 + Serverless) ├── api/ │ ├── index.go # Vercel Serverless Go 入口 │ ├── chat-stream.js # Vercel Node.js 流式转发 @@ -111,7 +112,6 @@ ds2api/ │ ├── admin/ # Admin API handlers │ ├── auth/ # 鉴权与 JWT │ ├── claudeconv/ # Claude 消息格式转换 -│ ├── compat/ # 兼容性辅助 │ ├── config/ # 配置加载与热更新 │ ├── deepseek/ # DeepSeek 客户端、PoW WASM │ ├── js/ # Node 运行时流式/兼容逻辑 @@ -121,8 +121,10 @@ ds2api/ │ ├── server/ # HTTP 路由(chi router) │ ├── sse/ # SSE 解析工具 │ ├── stream/ # 统一流式消费引擎 -│ ├── testsuite/ # 测试集核心逻辑 +│ ├── testsuite/ # 测试集框架与场景编排 +│ ├── translatorcliproxy/ # CLIProxy 桥接与流式写入 │ ├── util/ # 通用工具 +│ ├── version/ # 版本解析与比较 │ └── webui/ # WebUI 静态托管 ├── webui/ # React WebUI 源码 │ └── src/