Releases
v2.3.0
Compare
Sorry, something went wrong.
No results found
[v2.3.0] - 2026-04-22
✨ 新功能
订阅 URI 新增 TUIC / AnyTLS 支持(#47 ) - 订阅编辑页的“节点链接 / YAML”模式新增 tuic:// 与 anytls:// 解析能力;手动粘贴 URI 列表和从订阅正文提取节点时,都会按 sing-box 官方 outbound 结构生成对应节点
🔧 优化改进
设置页分组重构 - 设置页改为分段 Tab 导航,将基础偏好、内核管理、网络与高级配置、更新备份、关于信息按使用场景归类;同时拆分原有大页面为多个设置组件,降低单页信息密度并保留原有弹窗与运行态保存行为
URI 解析字段适配官方文档 - tuic 节点补齐 congestion_control、udp_relay_mode、udp_over_stream、zero_rtt_handshake、heartbeat、network 等常用参数映射;anytls 节点补齐 idle_session_check_interval、idle_session_timeout、min_idle_session,并统一写入标准 tls.server_name / tls.insecure / tls.alpn
订阅入口提示同步更新 - 多语言文案中的 URI 支持说明补充 tuic://、anytls://,避免界面仍显示旧的协议支持范围
TUN 排除路由地址前端配置(#49 ) - 设置页新增 route_exclude_address 多行 CIDR 输入,保存前会先拦截明显无效的条目;留空时不写入该字段,继续使用后端/内核默认行为
启动诊断链路结构化 - 内核状态快照新增 startup_diagnosis 与 readiness,保留原有兼容字段的同时,把启动前校验、启动后探针、自动管理与守护失败统一到同一套诊断结构里,避免继续只看到笼统的“启动失败”
首页/日志页失败排查入口补齐 - 首页会直接展示最近一次启动诊断摘要与建议动作;日志页也会补充独立的启动诊断区块,即使 relay 日志尚未建立,也能查看最近一次失败详情
启动状态同步口径统一 - kernel-error 与 kernel-status-changed 现在分别承载结构化失败诊断与 readiness 信息,前端改由 KernelStore 统一接管这两类状态,减少首页、托盘和日志页之间的提示漂移
🐛 问题修复
GUI 拉起内核长时间运行断网修复 - 修复应用启动 sing-box 时 stderr 被管道化但未持续读取,日志输出累积后可能阻塞内核进程的问题;同时将内核日志固定写入工作目录 sing-box.log、修复事件中继提前结束,避免手动运行稳定但 GUI 拉起一段时间后连接失效
自启动托盘图标状态回填修复 - 开机自启并隐藏到托盘时,后端会在启动恢复与内核自动管理后主动刷新托盘运行态;系统代理/TUN 已开启时无需先打开主界面,托盘图标和菜单状态即可立即正确着色与回显
内核启动失败提示可读性修复(#42 ) - kernel-error 事件现在会附带结构化启动诊断,KernelStore 统一接管失败事实;托盘与首页不再只能依赖 lastError 字符串,/version 400、配置缺失/无效、权限问题等常见失败路径会保留更明确的分类和上下文
启动重试残留旧错误修复(#42 ) - 新一次启动会重置上一轮失败诊断,成功拉起后也会及时清空旧错误;像 relay 启动失败、前台自动管理重试、sudo/权限类启动失败这类边缘路径,现在也会尽量同步到统一诊断状态,避免页面继续挂着过期失败信息
You can’t perform that action at this time.