-
v0.5.1 Stable
released this
2026-07-14 11:04:56 +08:00 | 27 commits to main since this releaseFixed
- 修复外部身份(OAuth2)登录 / 绑定无系统日志的问题:回调成功记 200(用户名为面板账号)、失败记 401(附失败原因);此前回调为 GET 请求不经写操作日志中间件,完全无记录
Downloads
-
v0.5.0 Stable
released this
2026-07-14 09:49:28 +08:00 | 29 commits to main since this releaseAdded
- xAI 官方格式文本转语音端点
POST /ai/v1/tts:接受 xAI 官方 TTS 请求(text/language必填,voice_id、output_format{codec, sample_rate, bit_rate}、speed等),网关转换为 OpenAI 兼容形态后与/ai/v1/audio/speech走同一上游与渠道调度;model为网关扩展字段(缺省xai.grok-tts);实测output_format对象与speed透传生效,xAI SDK / 客户端可直接指向网关 - 「过滤弃用模型」开关(
GET/PUT /api/v1/ai-settings,持久化):开启后 OCI 已宣布弃用(即使未到退役日)的模型从模型列表与路由中同时排除,关闭恢复;渠道同步入库与 30 天退役提醒不受影响
Changed
- AI 网关文档更名为
docs/AI网关.md(原docs/ai-gateway.md),README 引用同步
Downloads
- xAI 官方格式文本转语音端点
-
v0.4.0 Stable
released this
2026-07-13 20:17:06 +08:00 | 30 commits to main since this releaseAdded
- 文本转语音端点
POST /ai/v1/audio/speech:OpenAI Audio Speech 兼容,直通 OCI 兼容面(模型xai.grok-tts,voice 取 xAI Grok Voice 列表ara/eve/leo/rex/sal);上游必填的language缺省时自动注入"auto",xAI 专属参数平铺透传;响应为一次性完整音频(Content-Type 透传上游,缺省 audio/mpeg),不提供流式 - 文档重排端点
POST /ai/v1/rerank:Jina / Cohere 通行协议,走 OCI typed 面(cohere.rerank-v4.0-pro/-fast),支持top_n与return_documents,results[].index指向入参documents下标 - 内容审核端点
POST /ai/v1/moderations:OpenAI moderations 外壳映射 OCI Guardrails(内容审核 / PII / 提示注入),input为字符串或字符串数组(单次至多 8 条),categories 用 OCI 原生维度overall/blocklist/prompt_injection(任一得分 ≥0.5 判flagged),PII 命中放扩展字段results[].pii(不参与 flagged;实测中文人名 / 手机号识别较弱,英文正常) - Responses 服务端工具扩展:放行 Oracle 文档化的 xAI
code_interpreter与远程mcp工具,并解除web_search/x_search仅非流式的限制——四类服务端工具非流式与流式均实测可用;code_interpreter的命名容器管理与 File Search 不提供 - 模型能力映射扩展:
TEXT_RERANK→ RERANK、TEXT_TO_AUDIO→ TTS,渠道探测 / 同步自动发现重排与语音模型入池
Changed
- AI 网关文档独立成篇
docs/ai-gateway.md(端点定位、兼容边界、已知上游限制、字段兼容矩阵——矩阵只列支持项,不支持 / 忽略项以文字简述),README 精简为概览并引用;实测披露:Responsesinput_file内容块被上游以 ZDR 形态拒绝,能力不可用 - swagger 全面修缺:135 处响应注解从泛型 map 改为具体类型(补文档用途响应结构与泛型列表外壳),AI 网关端点请求 / 响应 schema 完整可见;
json.RawMessage与联合类型统一渲染为任意 JSON 值(AnyJSON),不再误显示为 byte 数组;swag overrides 配置移至docs/.swaggo,生成命令加--overridesFile docs/.swaggo;顺带修正网页控制台会话创建响应码(200→201)与 SAML 元数据下载(改文件响应)两处注解失真
Downloads
- 文本转语音端点
-
v0.3.1 Stable
released this
2026-07-13 15:06:01 +08:00 | 31 commits to main since this releaseAdded
- AI 网关流式断流自动降级:Messages 与 Chat Completions 流式请求在客户端尚未收到任何输出时遭遇上游断流,自动降级为非流式重做,结果按标准事件 / chunk 序列一次推送,调用日志记
retries=1与降级标记。实测 OCI 兼容面对instructions与tools合计超约 64.5KB 的流式请求会静默断连(无错误事件,非流式正常,消息正文不计入),Claude Code 等大体量系统提示客户端极易触发;Responses 直通因初始事件已转发无法透明降级,日志记「上游流提前终止」;README 增补「已知上游限制:大 system 区流式断流」小节
Changed
- Messages 的
max_tokens改为可缺省:缺省或 ≤0 时按默认值 8192 放行(此前返回 400;部分客户端将该字段视为选填)
Fixed
- AI 网关流式假成功:上游 error /
response.failed事件此前被吞掉,流提前 EOF 也被伪装成正常结束,调用日志呈现 200 · 0/0 且无错误信息;现 Messages 将上游失败转为 Anthropicerror事件,三个流式端点日志均记录上游错误消息或「上游流提前终止,未返回终态事件」
Downloads
- AI 网关流式断流自动降级:Messages 与 Chat Completions 流式请求在客户端尚未收到任何输出时遭遇上游断流,自动降级为非流式重做,结果按标准事件 / chunk 序列一次推送,调用日志记
-
v0.3.0 Stable
released this
2026-07-13 12:23:18 +08:00 | 32 commits to main since this releaseAdded
- 恢复 OpenAI Chat Completions 兼容端点
/ai/v1/chat/completions:请求经 OCI Responses 接口转换转发,支持非流式与 SSE、文本与图片、function 工具调用、结构化输出、推理力度、模型白名单、缓存 token 用量和调用日志 - 代理侧批量关联租户接口
PUT /api/v1/proxies/{id}/tenants:一次调用设置关联该代理的租户全集——列表内租户改挂到本代理(含从其他代理改挂),列表外已关联的解除,事务生效并返回最新关联计数;含无效租户 ID 返回 400,代理不存在返回 404 /api/v1/about扩展运行时信息:进程启动时刻startedAt、运行秒数uptimeSeconds与资源占用resources——CPU 自启动均值(占单核百分比)、CPU 核数、goroutine 数、Go 堆内存与向系统申请内存、数据库引擎与磁盘占用(SQLite 统计主文件与 -wal / -shm;MySQL / PostgreSQL 外部库返回 -1 表示不可度量)- README 重构部署、配置、鉴权、反向代理、AI 网关与升级发布说明,并新增 Responses、Chat Completions、Embeddings、Anthropic Messages 与标准接口的字段兼容矩阵,明确直通、转换、降级、忽略和拒绝边界
Changed
- 云端关键事件通知补充操作者、来源 IP、执行结果和说明信息;支持从 OCI Audit 与 IDCS 登录事件提取成功 / 失败状态、策略描述和登录失败原因,缺失字段统一显示占位符
Removed
- 移除自定义审计告警规则及其阈值、窗口和冷却匹配能力;
/api/v1/log-events/alert-rules与/api/v1/log-events/alert-rules/{ruleId}管理接口、audit_alert通知模板不再提供,已有规则升级后不再执行
Downloads
- 恢复 OpenAI Chat Completions 兼容端点
-
v0.2.0 Stable
released this
2026-07-12 17:48:28 +08:00 | 34 commits to main since this releaseAdded
- AI 网关模型黑名单:面板集中拉黑模型,全渠道剔除(模型列表 / 路由 / 探测候选不再出现,同步不入库),移除条目并重新同步后恢复;新表
ai_model_blacklists(启动自动迁移),管理接口/api/v1/ai-blacklist - AI 密钥模型白名单:密钥可限定放行的模型列表(空 = 不限),白名单外调用 404,模型列表只返回交集
- 推理力度(effort)直通:Responses
reasoning.effort与 Anthropic Messagesoutput_config.effort原样透传上游、不做档位校验;grok-4.3 五档(none完全关闭思考)、gpt-ossminimal-high、multi-agentxhigh(控制并行 agent 数)实测生效 - xAI Grok 服务端工具:
/ai/v1/responses的tools支持{"type":"web_search"}/{"type":"x_search"}(官方 Agent Tools 格式,可与function混用,仅非流式),响应保留web_search_call输出项与引用
Changed
- AI 网关对话链路整体切换到 OCI OpenAI 兼容面(
/actions/v1/responses),typed chat 面全链路移除:/ai/v1/responses请求体原样直通(仅强制store:false),流式为上游原生事件流,gpt-oss 推理增量直达客户端;/ai/v1/messages转换为 Responses 请求直通,流式经事件桥转回标准 Anthropic 事件序列,stop_sequences/top_k等无兼容面对应物的字段改为静默忽略,思考输出不转thinking块;渠道探测改用兼容面最小请求;流式建立后绑定渠道,中断不重试不计熔断 - 后台任务「立即执行」改异步触发:接口立即返回 202,执行结果经任务日志轮询呈现;同一任务在途时重复触发返回 409「任务正在执行中」,与 cron 重叠触发静默跳过(此前同步阻塞数十秒且同一任务可并发重复执行)
- 渠道探测候选跨厂商分散(上限 8,voice 等不可对话形态排除):单一厂商在区域内全为微调基座时不再拖垮整个渠道的探测结论
- 网关调用遇「模型不可按需调用」类错误(微调基座 400 / 实体不存在 404)自动换渠道重试且不计入渠道熔断,错误信息带模型名便于加入黑名单;仅鉴权类错误才判定租户无配额
- 同名模型多条目去重优先保留非微调基座条目,降低缓存到不可调用 OCID 的概率
Removed
/ai/v1/chat/completions端点移除(404):OpenAI 官方新能力已集中到 Responses 且本面板真实流量为零,请迁移/ai/v1/responses或/ai/v1/messages- google / cohere 对话模型不再供给(OCI OpenAI 兼容面不承接,上游 400;cohere embed 向量模型不受影响),模型目录按
xai./meta./openai.厂商前缀过滤
Fixed
- 渠道「同步模型成功但探测报错不可用」:法兰克福等区域的微调基座模型占满探测候选导致的误报(探测状态与真实可用性不符的根因)
- 租户删除:告警命中清理改子查询,日志事件数万条时不再超出 SQL 绑定变量上限导致删除失败;无法解析的任务 payload 记警告跳过并保留原任务,不再永久阻断租户删除
Downloads
- AI 网关模型黑名单:面板集中拉黑模型,全渠道剔除(模型列表 / 路由 / 探测候选不再出现,同步不入库),移除条目并重新同步后恢复;新表
-
v0.1.0 Stable
released this
2026-07-10 17:38:34 +08:00 | 36 commits to main since this releaseAdded
- 通知渠道扩展:Webhook(Slack / 飞书 / 钉钉 / 企微预设)、ntfy、Bark、SMTP 邮件与 Telegram 五渠道并存,逐渠道推送互不影响,密钥加密落库
- 审计告警规则:按租户 / 事件 / 资源 / 来源 IP(CIDR in|notin)组合匹配,阈值窗口计数与冷却,命中即推送模板通知
- 撤销全部会话:
POST /auth/revoke-sessions使全部旧令牌立即失效,响应携带操作者的新令牌 - 租户暂停状态识别:测活经账户 capabilities 判定
suspended,独立于存活 / 失效展示 - 抢机成功通知补全实例明细:租户别名、区域别名、类型与配置、镜像、公网 IPv4 与 root 密码
Changed
- 敏感身份操作(修改凭据、TOTP 开关、外部身份绑定 / 解绑、密码登录开关)成功后令牌版本递增:全部旧 JWT 立即失效,响应返回新令牌无感续期(原 204 改为 200 + token)
- 管理员徽标与管理员组识别支持双候选组名(Administrators / OCI_Administrators)
- Release 流程:前端产物版本由
DASH_VERSION显式固定并做 sha256 校验,二进制附SHA256SUMS;docker-compose 示例默认只绑定127.0.0.1 - README 新增「反向代理」小节(Caddy / nginx / Traefik 示例与路由前缀清单)
Fixed
- 删除租户改为单事务清理全部关联本地数据(任务及日志、测活 / 成本快照、回传事件、告警规则、AI 渠道、Webhook 密钥),等待在途任务执行结束,迟到写入不再残留孤儿数据
Security
- 实例 root 密码收敛:实例详情默认掩码、点击查看,串口控制台不再提供「复制 root 密码」
- JWT 令牌版本机制:凭据 / TOTP / 外部身份 / 登录策略变更即失效全部旧令牌
- HTTP 入口加固:显式读写超时与优雅关闭、请求体上限(面板 1MB / AI 网关 10MB)、登录字段长度上限、登录守卫条目数有界
- 出错响应脱敏:内部错误只返回固定文案 + requestId,完整原因写服务端日志;GORM SQL 日志参数化输出,不再记录实参
Downloads
-
v0.0.1 Stable
released this
2026-07-09 19:29:45 +08:00 | 37 commits to main since this release首个版本:自托管 OCI 多租户管理面板后端。
Added
- 多租户管理:OCI API Key 配置集中管理(AES-256-GCM 加密落库)、分组、批量测活、账户画像
- 资源管理:实例、网络(VCN/子网/安全列表/IPv6)、块存储、限额与成本,多区域/多区间
- 自动化任务:抢机、测活、成本同步、AI 渠道探测四类 cron 任务,支持熔断与执行日志
- 网页控制台:串行控制台(xterm)与 VNC(noVNC),两跳 SSH 隧道
- AI 网关:OpenAI / Anthropic 兼容端点转发 OCI GenAI,号池负载均衡、熔断探测、密钥与用量日志
- 日志回传:OCI Audit 事件经 Connector Hub → Notifications HTTPS 订阅入库,一键创建链路
- 租户治理:IAM 用户/MFA/API Key、密码策略、SAML 身份提供商、通知收件人
- 登录安全:JWT + bcrypt、TOTP、OIDC/GitHub 外部登录、登录锁定、IP 限速、操作审计;Telegram 模板化通知
Downloads