Repository navigation
中文说明
- ✨ 自动升级:新增 jar 包自动升级,打通「检查 → 下载 → 热替换 → 失败回滚」接力链路,进度经 WebSocket 实时推送,设置页可直接操作。
- ✨ 界面布局:三栏宽度按视口智能钳制,窄桌面自动将侧栏抽屉化;修复虚拟列表在窗口拉伸或侧栏切换时的滚动跳顶。
- ✨ 会话管理:会话自动补建增加并发去重,删除最后一条会话后不再立刻补建空白会话。
- ✨ 子代理:修复子代理卡片启动窗口期先闪「正常结束」再跳回「运行中」;消息裁剪改为按需索引命中,长会话下不再随消息量线性扫描。
- ✨ 数据一致性:会话与消息取时统一截断至微秒精度,消除纳秒/微秒错配引发的排序与去重抖动。
- 🛠️ 版本升级:项目版本号升级至
v0.3.0。
📦 包类型说明
- base:不含 Java 环境,仅含
app.jar程序文件。适合已有 Java 25+ 环境的用户,用java -jar启动。通过 web 访问。 - bundle:内置 Java 环境和程序文件,解压后采用对应平台的 cmd/sh/command 脚本文件启动。通过 web 访问。
- desktop:可视化的桌面壳,内置 Java 环境和程序文件,解压后双击可执行文件。直接通过桌面程序或 web 都可访问。【推荐】
启动服务后,在浏览器中访问:
👉 http://localhost:9661
English
- ✨ Automatic Update: Added automatic jar updates with a check → download → hot-swap → rollback relay pipeline; progress streams over WebSocket and is driven from the Settings page.
- ✨ Layout: Column widths are clamped against the viewport, with side panels auto-collapsing into drawers on narrow desktops; fixed scroll jumping in the virtual message list when resizing or toggling panels.
- ✨ Conversation Management: De-duplicated automatic conversation creation against concurrent realtime events; deleting the last conversation no longer immediately spawns a blank one.
- ✨ SubAgent: Fixed the card briefly showing "finished normally" during its startup window before flipping back to "running"; message trimming now uses a demand-driven index instead of linear scanning in long sessions.
- ✨ Data Consistency: Timestamps are truncated to microsecond precision, eliminating ordering and de-duplication jitter from nanosecond/microsecond mismatches.
- 🛠️ Version Bump: Updated global project version to
v0.3.0.
📦 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