Release v0.2.3
中文说明
- ✨ 工具体系重构:宿主工具按命令、上下文、文件、检索、联网搜索等域拆分为独立分包,命令执行链路新增进程追踪与残留进程清理,文件编辑匹配与检索沙箱能力整体加固。
- ✨ 访问密码安全加固:访问密码改为前端摘要传输、服务端带盐摘要落盘,配置接口不再回传密码明文或摘要,仅返回是否已设置状态;历史明文密码在登录成功时透明升级。
- ✨ 连接与子进程稳定性:WebSocket 事件推送与心跳统一经发送缓冲队列,消除并发写同一连接造成的帧交错并主动摘除失效连接;修复 Git 输出中文乱码,Hook 脚本改为并发消费输出流,消除输出超限导致的伪超时。
- ✨ 工程质量与运行时收口:合入后端五层级单元与集成测试体系(引擎与宿主合计 456 例全绿),虚拟线程创建统一由
VirtualThreads入口收口。 - 🛠️ 版本升级:项目版本号升级至
v0.2.3。
📦 包类型说明
- base:不含 Java 环境,仅含
app.jar程序文件。适合已有 Java 25+ 环境的用户,用java -jar启动。通过 web 访问。 - bundle:内置 Java 环境和程序文件,解压后采用对应平台的 cmd/sh/command 脚本文件启动。通过 web 访问。
- desktop:可视化的桌面壳,内置 Java 环境和程序文件,解压后双击可执行文件。直接通过桌面程序或 web 都可访问。【推荐】
启动服务后,在浏览器中访问:
👉 http://localhost:9661
English
- ✨ Tooling Restructure: Host tools are now split into dedicated packages by domain (command, context, file, search, web search), with process tracking and leftover process cleanup added to command execution, plus hardened file-edit matching and search sandboxing.
- ✨ Access Password Security: Access passwords are now transmitted as digests and stored server-side with salted hashing; config APIs no longer return plaintext or digest values, only a "is set" flag, and legacy plaintext passwords are transparently upgraded on successful login.
- ✨ Connection & Subprocess Stability: WebSocket event pushes and heartbeats now share a single send buffer queue, eliminating frame interleaving on concurrent writes and actively dropping dead connections; Git output is decoded as UTF-8 to fix garbled Chinese, and Hook scripts consume output concurrently to eliminate false timeouts.
- ✨ Engineering Quality & Runtime Consolidation: Added a five-tier backend unit and integration test suite (456 cases across engine and host, all green), and unified virtual thread creation behind the
VirtualThreadsentry point. - 🛠️ Version Bump: Updated global project version to
v0.2.3.
📦 Package Types
- base: No Java runtime included — only the
app.jarfile. For users who already have Java 25+ installed; launch withjava -jarand access via the web. - bundle: Ships with a bundled Java runtime and the app file. Unzip and launch via the script for your platform (
cmd/sh/command); access via the web. - desktop: Visual desktop shell with a bundled Java runtime and the app file. Unzip and double-click the executable; access directly from the desktop app or the web. [Recommended]
After starting the service, open your browser and navigate to:
👉 http://localhost:9661