Skip to content

Releases: HNGM-HP/opencode-bridge

v2.9.58-beta2

31 Mar 06:15

Choose a tag to compare

v2.9.58

31 Mar 10:19
b42958c

Choose a tag to compare

1. Windows 启动优化 (src/admin/admin-server.ts)

  • OpenCode 启动改用 VBS 脚本静默启动,避免弹出 cmd 窗口
  • 临时 VBS 脚本路径:%TEMP%\opencode-start.vbs

2. 进程管理增强 (src/admin/index.ts)

  • 启动时自动检测并终止所有旧的 Bridge 进程
  • 防止多实例并行运行导致的消息接收失败

3. Electron 单实例处理 (electron/main.ts)

  • 检测到重复启动时弹出对话框提示用户
  • 提供"强制终止旧进程并启动"选项
  • 启动时自动打开管理面板(开发模式和生产模式统一)

4. 登录逻辑修复 (web/src/router/index.ts)

  • 修复密码重置后旧 token 未清除导致 410 错误的问题
  • 新增 hasPassword 状态检查
  • 密码已重置时自动清除 token 并跳转登录页

What's Changed

Full Changelog: v2.9.57...v2.9.58

v2.9.57

30 Mar 14:48
668340d

Choose a tag to compare

核心更新:优化windows/Mac内存占用降低50%,修复了部分BUG

  1. 后端管理服务 (src/admin/admin-server.ts)
    密码重置场景:密码为空但请求携带旧 token 时返回 410 状态码
    新增 /opencode/start 参数:visual (true=可视化启动, false=后台启动)
    可视化模式执行 opencode web,后台模式执行 opencode serve

  2. Web 前端 API (web/src/api/index.ts)
    新增 410 响应拦截器:密码重置后清除 admin_token 并跳转到设置密码页
    configApi.startOpenCode() 新增 visual 参数

  3. 设置视图 (web/src/views/Settings.vue)
    启动按钮新增下拉选择:可视化启动 / 后台启动
    默认启动模式为"后台启动"

What's Changed

Full Changelog: v2.9.56...v2.9.57

v2.9.56

30 Mar 04:48
01f74cc

Choose a tag to compare

详细变更

  1. Electron 主进程 (electron/main.ts)
    停止服务后加载提示页面
    显示"服务已停止"状态和重试按钮
    引导用户通过托盘菜单重启服务

  2. 后端管理路由 (src/admin/routes/admin.ts)
    /admin/restart 从异步改为同步模式
    等待 bridgeManager.restart() 完成后再返回响应
    成功时返回新进程 PID
    失败时返回 500 错误和错误信息

  3. Web 前端 API (web/src/api/index.ts)
    configApi.restart() 返回值类型细化
    返回 { ok: boolean; pid?: number; message: string }

  4. 登录视图 (web/src/views/Login.vue)
    增加网络错误处理
    服务未启动时显示明确提示:"服务未启动,请通过托盘菜单启动服务后重试"

  5. 设置视图 (web/src/views/Settings.vue)
    重启按钮增加成功/失败反馈
    成功后显示弹窗和新进程 PID
    失败时显示具体错误原因
    详细变更

  6. 增加"启动服务"菜单项 - 托盘右键菜单新增"启动服务"选项,调用 startBackend()

What's Changed

  • Beta by @HNGM-HP in #35
  • 1、停止服务时隐藏窗口 - stopBackend() 函数中调用 mainWindow?.hide() 替代原有的加载提示页面逻辑 by @HNGM-HP in #36

Full Changelog: v2.9.55...v2.9.56

v2.9.55

30 Mar 02:21
c822e98

Choose a tag to compare

v2.9.52 → v2.9.55 更新总结
核心更新
新增 Electron 桌面应用支持(Windows/macOS/Linux)

新增功能:
Electron 主进程入口 + 预加载脚本
electron-builder 打包配置(NSIS 安装器、DMG、AppImage)
单实例锁 + 托盘图标
应用图标(PNG/ICO)

Bug 修复:
空白页面问题修复
Admin Server 启动顺序(先于 OpenCode 连接)
electron-builder 自动发布禁用(改用 release job)
Linux 打包配置修复
artifact 上传冲突(排除 yml 文件)

依赖更新:
添加 @grammyjs/types 类型定义
添加缺失的类型定义依赖

What's Changed

Full Changelog: v2.9.53...v2.9.55

v2.9.53

29 Mar 13:47
9a98bd1

Choose a tag to compare

v2.9.2 → v2.9.3 更新总结

核心更新

类别 | 更新内容 -- | -- 桌面应用 | 新增 Electron 桌面应用支持(Windows/macOS/Linux) 打包优化 | 程序主体打包处理,免受环境依赖困扰 CI/CD | 完善 GitHub Actions 工作流,自动构建发布

详细变更

新增功能:

  • Electron 主进程入口 + 预加载脚本
Read more

v2.9.53-beta.14

27 Mar 15:43

Choose a tag to compare

编译了安装包,windows用户强烈建议下载exe,可以远离各种因为环境导致的安装问题

New Contributors

Full Changelog: v2.9.3-beta...v2.9.53-beta.14

v2.9.52

26 Mar 03:58
2a8cdfe

Choose a tag to compare

[2.9.52-beta] - 2026-03-26
Added
占位卡片功能 - 在流式输出前发送"思考中..."占位卡片,避免首屏空白等待
新增 ensureThinkingPlaceholder 方法
群聊/私聊链路完整支持
完整的测试覆盖
Fixed
部署脚本引导命令 - 移除 guide 命令,改为直接运行脚本进入交互菜单

更新 README.md / README-en.md 部署文档
更新 assets/docs/deployment.md / deployment-en.md
pnpm 未安装导致构建失败 - 部署脚本自动检测并安装 pnpm

新增 ensurePnpm() 函数
在 build:web 前自动执行
systemd 服务安装权限问题 - 修复 sudo 执行时文件权限混乱问题

优先以 SUDO_USER 身份完成部署
避免 node_modules 被 root 用户创建
文档
更新部署指南,移除过时的 guide 命令说明

New Contributors

Full Changelog: v2.9.51...v2.9.52

v2.9.51

24 Mar 05:02
a1b635e

Choose a tag to compare

发行说明:v2.9.51

发布日期: 2026-03-24


概述

v2.9.51 是一个功能增强版本,主要新增了钉钉平台支持,并增加了配置导入/导出功能,同时进行了多项 Bug 修复和架构优化。


核心特性

1. 钉钉平台支持

新增对钉钉企业平台的完整支持:

能力 状态
文本交互 ✅ 完整支持
卡片消息 ✅ 完整支持
Stream 模式 ✅ 完整支持
多账号管理 ✅ 完整支持

新增文件

  • src/handlers/dingtalk.ts - 钉钉消息处理器
  • src/platform/adapters/dingtalk/ - 钉钉适配器目录
    • dingtalk-adapter.ts - 平台适配器
    • dingtalk-card.ts - 卡片消息构建器
    • dingtalk-connection.ts - 连接管理
    • dingtalk-ids.ts - ID 工具函数
    • dingtalk-sender.ts - 消息发送器
    • dingtalk-types.ts - TypeScript 类型定义

配置项

DINGTALK_ENABLED=true
DINGTALK_ACCOUNT_ID=你的账号 ID
DINGTALK_CLIENT_ID=你的客户端 ID
DINGTALK_CLIENT_SECRET=你的客户端密钥

2. 配置导入/导出功能

新增 Web 管理面板配置导入/导出功能:

  • 导出配置:将当前配置导出为 JSON 文件
  • 导入配置:从 JSON 文件导入配置
  • 批量部署:支持多服务器配置快速同步

涉及文件

  • src/admin/admin-server.ts - 新增导入/导出 API 端点
  • src/store/config-store.ts - 配置存储层支持
  • web/src/api/index.ts - 前端 API 封装
  • web/src/components/ConfigActionBar.vue - 前端操作栏组件

Bug 修复

问题 状态
QQ 适配器连接稳定性 ✅ 已修复
WhatsApp 适配器连接逻辑 ✅ 已修复
平台注册中心逻辑 ✅ 已修复

架构优化

优化项 行为变化 状态
镜像脚本重构 新增 scripts/setup-mirror.mjs
配置模块增强 支持配置导入/导出
平台注册中心 支持动态注册
QQ 适配器 优化连接逻辑
WhatsApp 适配器 优化连接逻辑

主要涉及文件

src/
├── admin/
│   └── admin-server.ts           # 新增配置导入/导出 API
├── config/
│   ├── migrator.ts               # 配置迁移增强
│   └── platform.ts               # 平台配置增强
├── handlers/
│   ├── dingtalk.ts               # 新增:钉钉消息处理
│   └── platform-command.handler.ts
├── platform/
│   ├── adapters/
│   │   ├── dingtalk/             # 新增:钉钉适配器目录
│   │   │   ├── dingtalk-adapter.ts
│   │   │   ├── dingtalk-card.ts
│   │   │   ├── dingtalk-connection.ts
│   │   │   ├── dingtalk-ids.ts
│   │   │   ├── dingtalk-sender.ts
│   │   │   └── dingtalk-types.ts
│   │   ├── qq-adapter.ts         # 优化
│   │   └── whatsapp-adapter.ts   # 优化
│   ├── registry.ts               # 平台注册中心
│   └── types.ts                  # 平台类型定义
└── store/
    └── config-store.ts           # 配置存储增强

web/
├── src/api/index.ts              # 新增钉钉 API
└── src/views/Platforms.vue       # 平台配置页面增强

assets/docs/
├── dingtalk-config.md            # 新增:钉钉配置指南
└── dingtalk-config-en.md         # 新增:钉钉配置指南 (英文)

scripts/
└── setup-mirror.mjs              # 新增:镜像源设置脚本

升级指南

升级步骤

# 1. 停止服务
npm run stop

# 2. 拉取最新代码或更新 NPM 包
git pull origin beta
#
npm install opencode-bridge@2.9.51

# 3. 安装依赖
npm install

# 4. 重启服务
npm run start

配置钉钉平台

  1. 访问 http://localhost:4098 进入配置面板
  2. 在「平台配置」中找到钉钉
  3. 填写钉钉应用凭证:
    • 账号 ID (AccountId)
    • 客户端 ID (ClientId)
    • 客户端密钥 (ClientSecret)
  4. 保存并重启服务

注意事项

  1. 钉钉应用类型:必须创建「企业内部应用」
  2. 消息接收模式:必须选择「Stream 模式」
  3. 管理员权限:需要钉钉企业管理员权限
  4. 配置导入/导出:导出的配置文件包含敏感信息,请妥善保管

统计

指标 数值
新增平台 1 (钉钉)
新增文件 9 (钉钉适配器 + 文档)
修改文件 10+
新增 API 2 (配置导入/导出)
代码行数 +3,776 / -3,171

版本历史

阶段 版本 主要贡献
起点 v2.9.3-beta Web 可视化配置中心发布
功能扩展 v2.9.4-beta 架构优化与可靠性增强
多平台扩展 v2.9.5 新增 5 个平台支持
当前 v2.9.51 钉钉平台支持与配置导入/导出

What's Changed

Full Changelog: v2.9.5...v2.9.51

v2.9.5

23 Mar 14:24

Choose a tag to compare

发行说明:v2.9.5

发布日期: 2026-03-23


概述

v2.9.5 是一个重大功能扩展版本,主要新增了对五个额外即时通讯平台的支持,并进行了全面的架构优化和 Bug 修复。


核心特性

1. 多平台支持扩展

新增支持以下平台:

平台 状态 核心能力
企业微信 (WeCom) ✅ 完整支持 文本交互、消息收发
Telegram ✅ 完整支持 文本交互、Inline 键盘
QQ (OneBot) ✅ 完整支持 文本交互、群聊支持
WhatsApp ✅ 完整支持 文本交互、媒体消息
个人微信 (Weixin) ✅ 完整支持 扫码登录、文本交互

2. 平台能力对齐

  • 全平台能力对齐飞书 baseline
  • 统一平台抽象层 (PlatformSender)
  • 支持按平台启用/禁用控制

功能增强

命令系统完善

  • 完善微信命令支持
  • 完善 Telegram 命令支持
  • 统一多平台命令语法

可靠性与稳定性

修复项 说明
企业微信消息接收 修复企业微信接入收不到消息 BUG
个人微信稳定性 修复个人微信相关 BUG
模型配置 修复指定默认模型首次会话报错

配置管理

  • 飞书能力独立开关,匹配后端配置
  • 修复 npm run manage:bridge 无法停止 web 后台 BUG

Bug 修复

Windows 兼容性

问题 状态
Windows 后台运行 BUG ✅ 已修复
Windows 后台终止问题 ✅ 已修复
国内安装报错 ✅ 已修复
时区自动判断镜像 ✅ 已实现

显示与文档

问题 状态
WEB 展示效果优化 ✅ 已完成
显示问题修复 ✅ 已完成
文档补充 ✅ 已完成

架构优化

优化项 行为变化 状态
密码比较长度泄露 更安全,行为不变
目录查询失败静默 仅增加日志,行为不变
卡片动作错误处理 返回错误提示而非静默
setImmediate 错误处理 失败时通知用户
发送文件指令歧义 更精确匹配
会话清理时间复杂度 性能优化
子进程僵尸进程 增加清理逻辑
定时器清理时机 更健壮
连接失败错误处理 统一错误格式
临时文件清理 启动时清理残留
流状态管理器封装 重构,API 不变
API 路由抽取 重构,端点不变
会话存储反向索引 性能优化
配置模块拆分 重构,导出不变
主入口文件拆分 重构,功能不变
日志格式统一 已符合规范

主要涉及文件

src/platform/adapters/
├── wecom-adapter.ts        # 企业微信适配器
├── telegram-adapter.ts     # Telegram 适配器
├── qq-adapter.ts           # QQ 适配器
├── whatsapp-adapter.ts     # WhatsApp 适配器
└── weixin-adapter.ts       # 个人微信适配器

src/handlers/
├── wecom.ts                # 企业微信消息处理
├── telegram.ts             # Telegram 消息处理
└── discord.ts              # Discord 消息处理

src/utils/
├── text-builder.ts         # 统一文本构建器
└── logger.ts               # 日志工具

升级指南

升级步骤

# 1. 拉取最新代码
git pull origin beta

# 2. 安装依赖
npm install

# 3. 构建 Web 前端 (如有变更)
cd web && pnpm install && pnpm build

# 4. 重启服务
npm run start

配置新平台

  1. 访问 http://localhost:4098 进入配置面板
  2. 在「平台配置」中配置对应平台凭据
  3. 在「核心路由」中启用对应平台

注意事项

  1. 平台凭据: 新增平台需在对应平台申请开发者凭据
  2. 国内镜像: 系统会根据时区自动判断是否使用国内镜像源
  3. Windows 用户: 已修复多项 Windows 兼容性问题

统计

指标 数值
新增平台 5 (WeCom, Telegram, QQ, WhatsApp, Weixin)
新增文件 10+
修改文件 30+
架构优化 16 项

版本历史

v2.9.3-beta → v2.9.5 变更总览

阶段 版本 主要贡献
起点 v2.9.3-beta Web 可视化配置中心发布
功能扩展 v2.9.4-beta 架构优化与可靠性增强
当前 v2.9.5 多平台支持扩展与架构优化

Full Changelog: v2.9.1...v2.9.5