- 后端 Go+Gin+GORM: 配置(OT_ env)/SQLite/Postgres 双驱动、用户体系(argon2id+JWT access/refresh)、 API Key(sk- 48位, 仅存 SHA-256 哈希) - 代理网关: /v1/chat/completions、/v1/responses、/v1/messages、/v1/models;错误按客户端协议返回 - 三协议互转(convert 包): Chat↔Messages↔Responses 请求/响应 + 流式 SSE 逐事件转换(直通优先) - 用量计费: 异步批量记账、余额扣减、balance_logs、usage_daily 日聚合 - 管理 API: 用户/渠道 CRUD+测试+模型导入/模型定价+绑定/统计/系统配置 - 前端 Vue3+TS+Tailwind(taste-skill 设计 tokens): Landing/登录注册/控制台/管理后台, 自建组件+Phosphor 图标+自建 SVG 趋势图, 已过 web-design-guidelines 复查 - mock 上游: OpenAI+Anthropic 双协议模拟(含流式) Co-Authored-By: Claude <noreply@anthropic.com>
30 lines
684 B
JSON
30 lines
684 B
JSON
{
|
|
"name": "openteam-web",
|
|
"private": true,
|
|
"version": "0.1.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vue-tsc -b && vite build",
|
|
"preview": "vite preview"
|
|
},
|
|
"dependencies": {
|
|
"@fontsource-variable/geist": "^5.2.5",
|
|
"@fontsource-variable/geist-mono": "^5.2.5",
|
|
"@phosphor-icons/vue": "^2.2.1",
|
|
"axios": "^1.7.9",
|
|
"pinia": "^2.3.1",
|
|
"vue": "^3.5.13",
|
|
"vue-router": "^4.5.0"
|
|
},
|
|
"devDependencies": {
|
|
"@tailwindcss/vite": "^4.0.0",
|
|
"@types/node": "^22.10.0",
|
|
"@vitejs/plugin-vue": "^5.2.1",
|
|
"tailwindcss": "^4.0.0",
|
|
"typescript": "~5.6.2",
|
|
"vite": "^6.0.0",
|
|
"vue-tsc": "^2.1.10"
|
|
}
|
|
}
|