Skip to content

Latest commit

 

History

History
1455 lines (938 loc) · 85.3 KB

File metadata and controls

1455 lines (938 loc) · 85.3 KB

Release Log

v0.9.9

正式版发布——从 v0.9.9-rc.0rc.1rc.2 三轮验证后提升稳定版。功能与修复详见下方 v0.9.9-rc.0 条目,并包含 rc.1 / rc.2 的增量修复:

  • CI 修复 — LLM provider 测试 500(isProviderDisabled 漏可选链);office PDF 测试在无中文字体环境跳过;mac vite build OOM(NODE_OPTIONS=--max-old-space-size=8192,根治 macOS 打包失败)
  • 知识库修复 — 删除最后一条知识库路径后自动清理对应交付物;删除最后路径后跳过同步,避免后端报错
  • 引导体系 — 引导状态服务端持久化(preferences.guideHidden),新用户可见引导、老用户永久不被打扰,覆盖 Google / GitHub / Email / 本地账户 / 会话恢复全部登录方式

v0.9.9-rc.0

Features

  • 知识库(Knowledge Base) — 绑定本地目录自动扫描同步;搜索范围扩展 source / knowledge_root / content;产出物页数据来源筛选;Agent 新增 knowledge_search / knowledge_read / knowledge_list 工具(T1-T7 全链路落地)
  • Office 预览与生成 — 统一 Office 预览组件(pdf/docx/xlsx 内联 + 回退),修复 Electron 35 下 PDF 预览崩溃(pdfjs polyfill + Worker Blob wrapper);Agent 新增 office_generate 工具(docx/xlsx/pptx/pdf);知识库路径支持系统目录选择器(浏览…)
  • per-agent 默认模型 — 每个 agent 可单独配置默认模型 + agent 自检工具 + 设置页按 agent 分组管理
  • 可观测性(OB-1/2/3) — 概览页把「思考中」展开为可读运行阶段;agent 列表派生运行 phase + 阻塞依赖标题;疑似卡死定位(心跳停滞 / 依赖已死明确提示);无任务「处理中」脏状态自动兜底
  • 稳定性加固(SS-1/2/3) — provider 超时 / 熔断加固(单 provider 故障隔离);前端流式 / 轮询死循环防护 + 断连自动重连;服务进程崩溃归因与自愈(崩溃日志 / 内存水位 / 启动看门狗自拉起)
  • 内置浏览器开关 — 动态路由 / 配置持久化 / 设置页 UI 重构
  • LLM 重试 / 退避参数可配置化(FD-2)— config/env 覆盖,Python 默认
  • 定时任务可靠性 — agent 离线时不投递 + 卡死 in_progress 自动回收
  • UI 优化 — 依赖图中未完成需求强制显示其所有任务;工具分组修复(不再漏进「其他」);任务操作 / 模型测试报错国际化 + 友好提示;概览页移除缓存命中率与 CU 指标;GFM autolink 吞掉 URL 后跟随的中文 / 全角字符修复

Onboarding 全面修复

  • 引导状态从浏览器 localStorage 升级为服务端持久化preferences.guideHidden),三种登录方式全覆盖:Google / GitHub / Email(Hub 登录)、本地 init / 首登、会话恢复
  • 新用户:全屏向导 + 概览引导清单接力显示——向导完成后清单接棒,引导不再丢失
  • 老用户:登录 / 恢复会话即标记已引导,换浏览器、清缓存都不会再被打扰
  • 全屏向导与引导清单解耦:向导中途退出 / 清缓存后,清单仍照常显示

Bug Fixes

  • A2A recipient liveness 使用运行时状态而非花名册;wake_recipient / reply_in_session 支持
  • stop 后重连流写进上一轮气泡导致聊天错序
  • spawn_subagents 并发版默认工具集
  • DeepSeek 文本化工具调用泄漏 + 流式工具标签泄漏防护 + PDF/office/deliverable 边界修复
  • failed-blocker 级联失败防死锁 + create/update blocker 校验 + google/ollama 流逐 chunk 重置超时
  • 终端点击路径前校验文件存在,拼接错误 / 已删除路径不再打开预览
  • 知识库绑定后同步全部路径(而非仅新路径);删除路径增加确认弹窗后重新同步
  • mailbox 严格状态项保护 + 丢失执行自愈,杜绝任务卡死 in_progress
  • profilePage 徽标 i18n key 路径修复;未分组 agent 在 per-agent 模型设置中优先归组

Refactor / Docs

  • 动态 context 移出 system 移至 volatile tail,提升 prompt-cache 命中率
  • context-os 压缩阈值延迟至 75% / WARN 对齐 80%
  • 临时隐藏编程工具集成(过度工程评估)
  • 反馈对照表归档交付物,删除三份临时文档

Stats

  • 63 commits, 152 files changed

v0.9.8

Features & Improvements

  • 分享格式白名单门禁 — 交付物分享只允许 markdown/html,提交前最后防线拦截非白名单格式(含服务端 / 客户端双源清单,测试 5 例覆盖缺省兜底/放行/拒绝非文本/拒绝大写)
  • UI 优化 — 头像浮窗显示可用积分(配额+赠送+购买-已用);全局滚动条统一为 5px 细样式;任务页左上角侧栏开关按钮;输入框打字时 Shift+Enter 换行提示(Enter 发送);删除无人引用的废弃组件 ChatInput

Bug Fixes

  • context window / max output 回退值过小 — 简化修复:宏旗舰模型(如 Claude 1M / GPT-5.x 1.1M)不再被低估约 8 倍;refreshProviderLiveModels 从 OpenAI 兼容网关 /v1/models 探测真实 context_window/context_length/max_model_len/max_context_lengthmax_output_tokens,不再硬编码 0 → 避免本地/网关模型因窗口误判导致的上下文打包异常

Stats

  • 3 commits, 16 files changed

v0.9.7-rc.1

Bug Fixes

  • 模型测试支持指定模型 — 设置页测试前可选择待测模型(此前固定用默认模型,无法验证目标模型);测试接口回显实际被测模型
  • Ollama 本地模型可发现、可使用 — 设置页 Ollama provider 卡片内集成本地检测(/api/tags 实时列出本地模型),可直接选用本地模型;此前 Ollama 只显示内置/云模型,本地模型既不出现也无法指定
  • 新 provider 进入模型选择器 — team chat 右下角与设置页的模型选择器现可列出新增 provider 与 Ollama 本地模型(此前仅 markus 可选)
  • 本地模型 context window 探测 — 通过 /api/show 读取本地模型真实上下文长度,避免使用错误的默认值
  • context window / max output 缺失不再报错 — 未知模型回退到安全默认值(128k/32k)并告警,而非直接抛错中断(覆盖各种 provider、各种模型场景)

v0.9.7-rc.0

Features

  • 技能生态兼容适配器 — 外部技能 import/export(核心攻坚点),打通技能生态互操作
  • 交付物分享到 Hub — 产出物页一键分享(按钮 + 状态徽标 + 列表标识);分享时自动上传引用媒体并替换路径(markdown/html),保留媒体引用语法
  • 交付物页聊天对齐 Team Chat — 输入对齐 + 按 agent 隔离主会话 + reattach 续接 + Cmd+B/L 快捷键
  • Agent 会话历史 recall — storage/core 新增 session query 工具
  • OpenRouter 支持 — 统一 OpenAI 兼容 provider 核心,OpenAIProvider 补全 OpenRouter

Bug Fixes

  • UI 卡顿与模型跳变 — 新建对话模型跳变 + 概览→团队切换卡顿
  • Team chat 附件 — image/file attachments 持久化到 ~/.markus,注入 path anchor,对齐 multimodal 工具
  • 流式 thinking 重复与消息错序 — 修复 web-ui 流式输出问题
  • Deliverables 快捷键失效 — Cmd+B/L 被全局监听器抢占与 L0 焦点吞键
  • Hub 分享状态不同步 — 右侧栏分享按钮状态轮询回写本地 DB;对齐 Hub 真实契约(share_reason 拒绝原因字段)
  • Missing context_window — 通过 normalized catalog matching 修复
  • 设置页模型路由首访「先空后填」 — 选项加载顺序修复

Refactor

  • Prompt L0 收敛 — 去重/消歧/补强:blocked_by 心智模型 + 生命周期状态机 + 对话 vs 任务指针 + Manager 引擎收窄;scheduled 创建语法指针化;Available Skills 改 Agent 视角
  • OpenAI 兼容 provider 统一 — 核心逻辑合并,OpenAIProvider 补全 OpenRouter
  • HANDBOOK 化 — SHARED.md → HANDBOOK.md,绝对路径注入 prompt

License & Docs

  • AGPL-3.0 → Apache-2.0 + 商业扩展双授权(LICENSE-COMMERCIAL.md)
  • README 门面重写 — 60 秒惊艳 + 组织治理 + 生态兼容声明 + 案例区(中英双语)
  • 社区基建 — CONTRIBUTING 全面完善 + CoC + 开发指南 + 社区入口

v0.9.6

Bug Fixes

  • Prompt 分层与协作契约 — Conversation-first 聊天场景、player-coach Manager 文案、knowledge ##### 归一化、Team Status stopped 提示、Learning Habits 截断;补充 “How Your Prompt Is Composed”
  • 任务会话工具作用域 — 执行/评审等 work-context 工具不得 sticky 进自由聊天;task_submit_review 不再看板猜唯一 in_progress,须 ALS/activeTasks 或显式 task_id
  • Human chat 期间 defer heartbeat — 避免对话中被心跳抢上下文
  • DELETE JSON body 预读 — 带 body 的 DELETE 在 route 入口预读并缓存,避免先 await handle*Routes 时 body 事件丢失
  • macOS arm64 DMG — electron-builder 改用 APFS(修复 macOS 26 runner 上 HFS+ 打包损坏);Publish 增加 hdiutil verify + 挂载/架构冒烟

v0.9.6-rc.4

Bug Fixes

  • macOS DMG CI cleanup — 冒烟挂载成功后 traprm -rf 只读卷会在 set -e 下把 job 打成失败;改为先 detach 卷目录再清理,且 cleanup 永不非零退出

v0.9.6-rc.3

DMG 本体与架构校验已通过;Publish 在 EXIT trap cleanup 误失败。请用 v0.9.6-rc.4

Bug Fixes

  • macOS DMG CI 冒烟 — 挂载校验改用 -mountroot(卷名含空格时 awk $NF 会截断路径);每个 matrix job 只打一个 arch,避免 arm64 job 顺带打出 x64 DMG

v0.9.6-rc.2

arm64 DMG 已改为 APFS 且 hdiutil verify 通过,但 Publish 冒烟挂载脚本因路径解析失败;请用 v0.9.6-rc.3

Bug Fixes

  • macOS arm64 DMG 损坏 — electron-builder DMG 改用 APFS(避开 macOS 26 Tahoe runner 上 HFS+ 打包损坏);Publish 流水线对产物跑 hdiutil verify + 挂载冒烟 + 架构校验,坏包直接 fail

v0.9.6-rc.1

Bug Fixes

  • DELETE JSON body 预读 — 带 body 的 DELETE 在 route 入口预读并缓存,避免先 await handle*Routes 时测试/客户端 body 事件丢失
  • CI 测试 — converse 不再断言空 Task Board stub;api-server mock 支持晚注册的 body listener,并等待响应真正结束

v0.9.6-rc.0

npm next 曾短暂发布;桌面/CI 未完整通过。请用 v0.9.6-rc.1

Bug Fixes

  • Prompt 分层与协作契约 — Conversation-first 聊天场景、player-coach Manager 文案、knowledge ##### 归一化、Team Status stopped 提示、Learning Habits 截断;补充 “How Your Prompt Is Composed”
  • 任务会话工具作用域 — 执行/评审等 work-context 工具不得 sticky 进自由聊天;task_submit_review 不再看板猜唯一 in_progress,须 ALS/activeTasks 或显式 task_id
  • Human chat 期间 defer heartbeat — 避免对话中被心跳抢上下文

v0.9.5

npm latest 曾误发此版本(桌面构建已取消)。请优先使用本 RC / 后续正式版;稳定桌面包以 GitHub Release 为准。

Bug Fixes

  • Prompt 分层与协作契约 — Conversation-first 聊天场景、player-coach Manager 文案、knowledge ##### 归一化、Team Status stopped 提示、Learning Habits 截断;补充 “How Your Prompt Is Composed”
  • 任务会话工具作用域 — 执行/评审等 work-context 工具不得 sticky 进自由聊天;task_submit_review 不再看板猜唯一 in_progress,须 ALS/activeTasks 或显式 task_id
  • Human chat 期间 defer heartbeat — 避免对话中被心跳抢上下文

v0.9.4

Bug Fixes

  • Prompt truncate — 修复提示词截断导致协作规则与能力说明丢失的问题

v0.9.3

Bug Fixes

  • Windows 安装/升级 — 唯一安装路径:跳过会半删目录的旧卸载器;离开 INSTDIR 后杀进程、清空目录、直接 7z 解压并校验 Markus.exe;始终重建快捷方式;跳过已有 Authenticode 的 helper 二次签名;启动时自动修复缺失 .lnk
  • 升级下载链接 — 客户端更新提示 / 菜单 / CLI / MAS 文案改为 https://markus.global/#download(首页下载区)

v0.9.3-rc.7

Bug Fixes

  • 重新发版 — rc.6 的 npm 包已发布成功,但 Publish 流水线因「不可覆盖已发布版本」失败,导致 Windows/mac/linux 桌面构建被跳过;同内容重打 tag 以产出安装包

v0.9.3-rc.6

Bug Fixes

  • Windows 安装路径彻底收敛 — 删除层层 RC 字符串补丁史;patch-nsis-templates.mjs 改为按宏名正则替换(可幂等)。唯一安装路径:离开 INSTDIR → 杀进程 → 清空目录 → 直接 7z 解压 → 校验 Markus.exe → 写快捷方式。禁止 Rename/CopyFiles/「无法关闭」弹窗

v0.9.3-rc.5

Bug Fixes

  • Windows 安装丢 Markus.exe(rc.4 回归) — 根因是解压前 Rename $INSTDIR 时进程 CWD 跟随改名,文件解压进 __markus_old 后被 RMDir 删掉。改为先 SetOutPath $PLUGINSDIR 再删除旧目录并直接解压,解压后强制校验 Markus.exe

v0.9.3-rc.4

Bug Fixes

  • 升级无需手动删目录 — 安装器解压前自动把旧 $INSTDIR 挪到 __markus_old 再装入新文件并清理;坏掉的旧安装不用用户手动删除

v0.9.3-rc.3

Bug Fixes

  • Windows 安装「无法关闭」彻底拆除rc.1 弹窗来自解压阶段 stock CopyFiles(不是 Markus 进程检测)。改为 直接 7z 解压到 $INSTDIR,删除 CopyFiles/重试/误导弹窗整条路径;并排除 win32-arm64 的 node-pty ConPTY 文件

v0.9.3-rc.2

Bug Fixes

  • Windows「无法关闭」误报 — 根因是解压时 CopyFiles 失败后 stock 用同一句 $(appCannotBeClosed) 弹窗(并非 Markus 仍在运行)。改为强制 7z 覆盖解压且不再弹窗;并清理 OpenConsole/winpty-agent 等会锁文件的 helper

v0.9.3-rc.1

Bug Fixes

  • Windows 签名 — 跳过已有 Authenticode 的第三方 exe(node-pty OpenConsole.exe),避免 ssign「file already has a signature」导致 Windows 构建失败

v0.9.3-rc.0

Bug Fixes

  • Windows 升级安装 — 跳过会半删安装目录的旧卸载器;--keep-shortcuts 时不再误删桌面/开始菜单快捷方式;卸载失败 continue 时清零 $R0;缺 Markus.exe 直接 Abort;启动时若快捷方式缺失则自动修复
  • 升级下载链接 — 客户端更新提示 / 菜单 / CLI / MAS 文案改为 https://markus.global/#download(首页下载区),避免落到 Hub SPA browse

v0.9.2

Bug Fixes

  • CN 模型默认 heal — 地理过滤后粘性 routingDefaultModel(如 Claude Opus)不再留在聊天 chip;自动回落到 Hub 目录内可用模型并写回配置
  • Hub 额度进度条 — Overview / Settings 使用 creditsBudgetCu(已用 + 剩余),烧过后的 M+B+P 面额不再把总额错显示成缩水值

v0.9.0

Markus Cloud / Hub 额度与计费体验落地;认知增强与统一 A2A 消息;聊天会话 buffer 状态机重构;飞书主会话同步与 Agent DM 确认死循环防护;搜索优先级与 Team Chat 菜单体验优化。

New Features

  • Markus Cloud / Hub Credits — MarkusProvider、用量与额度展示、Cloud 计费与 Hub credits UX;billing 相关 CLI / 桌面链路
  • 认知增强与统一 A2A — 认知架构增强、Agent DM 频道协作流、统一 A2A 消息路径
  • Conversation buffer 状态机 — 抽取会话缓冲状态机,修复聊天竞态与流式重连边界
  • Hub recommended routing — Hub 推荐路由与模型目录 / 路由能力增强
  • Team Chat 菜单优化 — 「移动到」可搜索折叠、组织秘书保护、文案改为「移出团队」
  • 飞书原生发图feishu_send_image / feishu_send_message,支持本地图片上传发送

Bug Fixes

  • 飞书主会话同步 — 飞书用户消息落入组织秘书主会话;Team Chat 实时展示用户与助手双边消息
  • Agent DM 确认死循环 — 拦截复合「收到/保持待命」与误转发「回复说」粘贴回 DM,收紧 DM 链深度
  • 搜索优先级 — Hub 已连接且有余额时优先 Markus 搜索,否则 BYOK
  • 任务与通知稳定性 — 任务状态实时更新、deliberation / notify 上下文、triage 完整性
  • 性能与前端 — Prompt cache 友好与 Tier 3 token 成本优化;web-ui 路由拆分、共享缓存、轮询去重

v0.9.0-rc.2

  • 图片预览 — 大图(webp/png 等)改走 stream,不再被 2MB base64 上限误判为无法预览
  • Team Chat 历史加载 — 修复空 buffer 跳过 DB 拉取;进入会话显示 loading,加载后展示消息
  • Mailbox 幽灵条目 — 修复 background_exec 完成回调广播到所有 Agent;过期 callback_result 自动清理;drop 幂等
  • 注意力空闲卡死 — 修复 dequeueAsync lost-wakeup;idle 且有队列时 watchdog nudge;UI 不再显示「等待新邮件」
  • 引用回复 / 重复继续 — 引用内容不写入用户气泡;发送去重与 Resume 按钮可见性修正

v0.9.0-rc.3

  • CI / typecheck@markus/core 补充 @markus/comms project reference,修复干净环境下 feishu.ts 找不到模块
  • Lint — embedded browser / browserUrl 的 eqeqeq、prefer-const 修复

v0.9.0-rc.4

  • Hub → Markus 安装深链 — 支持 markus://install?id=&type=;冷启动保留 pending URL,打开 Explore 并高亮目标条目
  • Explore 安装引导 — DeepLinkBanner + Hub 单项拉取合并进列表,避免目标不在首页结果时无反馈
  • StrictMode / 路由 — 修复 install 状态被二次 init 清空;保留 query 并重试导航,保证 banner 可见

v0.9.0-rc.5

  • Hub 安装版本戳 — 安装时把 Hub 资产 version 写入本地 manifest,避免默认 1.0.0 导致安装后误显示「升级」
  • Agent hub_installdownloadAndInstall 同步写入 version / hub source,与 UI 安装行为对齐

v0.9.0-rc.6

  • Windows markus:// 协议 — NSIS 安装写入 HKCU URL protocol;启动时强制重新注册,修复系统浏览器登录后无法回跳桌面端
  • 桌面 Hub 登录轮询 — 打开浏览器后立即轮询;窗口 focus / 可见时立刻再查,避免后台定时器节流导致切回应用仍不完成登录
  • 能力分配无工厂默认 — Hub 未推荐的多模态槽位保持空;失效 assignment 自动清理,不再误显示假「已选推荐」

v0.9.0-rc.7

  • Windows 安装体验 — NSIS 升级时 taskkill 强制结束 Markus;allowElevation: false;生成 icon.ico 保证桌面快捷方式品牌图标
  • 首启稳定性 — 未拿到单实例锁不跑 whenReady;API listen await + health 重试;before-quit 2s 超时强制退出
  • Hub 登录 UX(需已部署 Hub) — 成功页替换表单、禁止自动 markus://、验证防双点/重发;Login「已在浏览器打开」+ 取消等待
  • 登录后 Cloud AI 就绪hub-login 内 await OpenRouter sync + 推荐路由;能力分配在 catalog 未就绪时不 persist 清空

v0.9.0-rc.8

  • 重新发版 — rc.7 的 Publish 因 Windows job 长时间 waiting 未完成制品;含 telemetry 测试中 runtime logger ENOENT 修复后重打 tag 触发发布

v0.9.0-rc.9

  • Post-task Distillation — 任务 completed 后走 scenario: distillation(不再误用 Dream);注入 Learning Habits;允许 package_install(§8.3 impact/HITL);失败任务不蒸馏
  • Memory / knowledge.md — 搜索改为关键词 OR 匹配,并覆盖 curated 段落;语义命中时合并 curated 结果
  • 通用关键词搜索task_list、SkillHub / skill loader / 模板搜索共用 tokenizeSearchQuery,避免整句 substring 漏检
  • notify_user UX — 通知栏点击打开 Chat 时不提前 mark-read(保留「知道了」卡片);剥离 segment 中的 notify_context 泄漏;虚拟列表 getItemKey + 按 createdAt 插入,修复气泡重叠

v0.9.0-rc.10

  • Windows 安装快捷方式 — NSIS 强制创建桌面与开始菜单 Markus.lnkcreateDesktopShortcut: always
  • Windows 菜单栏 — 隐藏原生「文件/编辑/视图…」菜单栏,保留快捷键
  • Windows Markdown 本地图 — 正确识别 C:\ / C:/ / file:///C:/ 路径并经 /api/files/image 渲染;生图 markdown 改用正斜杠

v0.9.0-rc.11

  • Windows 安装误报「正在运行」 — 覆盖 electron-builder 进程检测(PowerShell/tasklist 误判),安装时只做精确 taskkill,不再弹窗中止
  • Windows 安装目录空洞 — 自定义 NSIS 脚本改名为 markus-installer.nsh,避免遮蔽官方 installer.nsh(否则 installApplicationFiles 不执行)
  • Windows 快捷方式SetShellVarContext current 强制写当前用户桌面与开始菜单;注册 App Paths;关闭 elevate helper

v0.9.0-rc.12

  • Windows 升级弹窗「无法关闭」 — 根因是旧版静默卸载失败 5 次后父安装器复用同一文案;安装前强杀安装目录进程,并清除旧 UninstallString 跳过坏卸载器(Electron 覆盖安装)
  • Windows 桌面快捷方式 — 去掉错误的 menuCategory: falseCreateShortCut + PowerShell GetFolderPath('Desktop') 双通道强制创建

v0.9.0-rc.13

  • Windows 安装弹窗(硬修) — 打包前直接 patch electron-builder NSIS 模板:进程检测只 taskkill 不弹窗;旧卸载失败 5 次后静默继续覆盖安装
  • Windows 桌面快捷方式(硬修) — 应用首次启动时用 PowerShell 强制创建桌面/开始菜单快捷方式(不依赖 NSIS)

Stats

  • 290 files changed, +36,540 / −12,148 lines

v0.8.5

飞书流式消息与审批路由全面升级;Coding Tools 集成(Claude Code / Codex / Cursor);交付物页面 UX 大改版;Prompt 工程全面重构;代码块语法高亮与 Mermaid/PlantUML 图表渲染;GPT-5.6 模型目录;多项调度与流式稳定性修复。

New Features

  • 飞书流式卡片与审批路由 — 飞书适配器支持流式文本卡片、消息合并处理、审批路由分发、完整预设配置;MCP 启动优化与凭据自动注入
  • Coding Tools 集成 — 新增 Claude Code / Codex / Cursor 外部 AI 工具连接,Settings UI 简化,权限模式与检测可靠性修复
  • 交付物页面 UX 大改版 — 过滤器、分组折叠、移动端适配全面优化
  • 代码块增强 — 语法高亮、Mermaid/PlantUML 图表渲染、代码块折叠/展开、编辑 textarea 自动伸缩
  • Markdown 前端优化 — i18n 模式切换、排版改进、HTML 选区支持
  • GPT-5.6 系列模型 — OpenAI Provider 目录新增 GPT-5.6 系列模型
  • Prompt 工程全面重构 — 子任务契约强制执行、提示策略优化
  • package_install 支持 team_id — 安装包时可指定目标团队

Bug Fixes

  • 修复飞书 MCP 凭据传递 — 使用 reuseGlobal 传递真实凭据,存在飞书凭据时自动注入 feishu-lark server
  • 修复流式状态丢失 — 解决流式输出跨会话活动污染与状态丢失问题
  • 修复定时任务调度停滞 — 任务完成时重新计算 nextRunAt,修复 cron 调度停滞
  • 修复幽灵重试循环 — 指数退避、tasksSubmittedForReview 清理、blocked 状态守卫
  • 修复任务取消后调度未暂停 — 取消任务时正确暂停调度,修复 FSM 违规与 stagger 竞态
  • 修复 MCP 连接竞态 — MCP 连接竞态条件、记忆上限、逐项取消按钮、权限错误提示

Stats

  • 62 files changed, +8,500 / −2,100 lines

v0.8.4

Electron 桌面应用全平台发布(macOS ARM/Intel、Windows、Linux);分发策略重构(macOS/Windows 以桌面端为主、npm 为辅,Linux 保留服务器二进制);模型路由 UI 优化;Agent 完成标记修复;CI 流水线精简。

New Features

  • Electron 桌面应用 — 全新 packages/desktop,支持 macOS (ARM + Intel) / Windows / Linux;启动闪屏 i18n、系统托盘、OAuth 弹窗、文件下载处理、单实例与端口冲突检测、自动更新
  • 智能模型路由 — 动态提供商 schema 发现、多模态模型自动检测、区域提供商拆分、模型目录补充文件 (SiliconFlow/ZAI/MiniMax 等)
  • 首次配置 Provider 自动设置默认模型 — 添加 LLM Provider 时,若尚无默认模型则自动设置
  • Community 计划 — Free 计划更名为 Community,提升 Agent 和团队数量上限
  • 科技前沿智库团队模板 — 首页引导创建科技前沿分析智库(Elon Musk / Steve Jobs / Sam Altman / Jensen Huang)
  • 一键桌面端构建脚本scripts/build-desktop.sh 完整编译所有包并打包 Electron 应用

Bug Fixes

  • 修复 Electron 静态文件路径 — esbuild 打包后 __dirname 指向 dist/,导致 model-catalog 数据、templates、version、chrome-dialog-clicker 脚本路径全部失效;统一改为多路径探测 + asarUnpack
  • 修复 Chrome 扩展下载 404build.mjs 自动执行 pack.mjs 生成 zip;添加到 asarUnpack;扩展搜索路径覆盖 Electron 打包环境
  • 修复 Windows "打开"按钮无效execSync + explorer 引号问题改为 spawn 参数数组
  • 修复模型能力过滤image_recognition 错误映射到 ['chat'] 导致 DeepSeek 等文本模型出现在图像识别列表;改为要求 vision capability
  • 修复 completion marker 误判<think> 块内出现 <<HANDLE_COMPLETE>> 导致 Agent 提前终止;新增 hasCompletionMarker() 剥离思考块后再检测
  • 修复 Desktop EADDRINUSE — 启动前探测已有服务,版本不同则优雅关闭旧进程
  • 修复 Desktop OAuth 弹窗被拦截setWindowOpenHandler 扩展 /auth/connect 路径
  • 修复 Desktop templates ENOTDIR — ASAR 内路径无法 lstat,改用 app.asar.unpacked
  • 修复 Windows getPids TypeErrornetstat | findstr 无结果时 split 空指针,改用 PowerShell
  • 修复 CI draft release 冲突softprops/action-gh-release@v2 已知并发 bug,升级到 @v3
  • 修复跨平台 shell 执行process.env.PATH 使用 node:path.delimitercmd.exe /c 替代 sh -c;深链协议 Windows 注册
  • 修复 CI 测试失败submitForReview 参数增加、api-server-deep 异步竞态
  • 修复 Desktop 闪屏与通知 — 启动闪屏 i18n、通知精简仅关键事件
  • 修复暗色主题与 traffic light — 冷中性暗色主题、macOS 窗口交通灯动态定位
  • 修复飞书 dirname 未定义 — Lark adapter __dirname 引用修复

Improvements

  • 分发策略重构 — macOS / Windows 不再构建独立二进制,以 Desktop App + npm 为主;Linux 保留 .deb / .tar.gzinstall.sh macOS 分支引导安装 Node.js 或 Desktop
  • CI 流水线精简 — 13 jobs → 5,17 artifacts → 7;移除 install.ps1 及所有引用
  • 移除 systray2 依赖 — CLI 不再包含系统托盘(已由 Electron 原生 Tray 取代),消除 npm install 崩溃
  • 模型路由 UI 优化 — 移除 Text 能力与默认模型的冗余设置;移除价格显示;Provider 添加后自动设置默认模型
  • 移除 OpenClaw 导入功能 — Settings 中移除不再使用的 OpenClaw 配置导入
  • Work 页面空状态改进 — 有项目无任务时显示项目卡片网格;点击进入项目详情(ProjectSettingsPanel)
  • 单测覆盖率 80%+ — 深度代码审计与测试补全

Stats

  • 326 files changed, +53,776 / −5,442 lines

v0.8.3

防止通信适配器连接失败导致服务崩溃;侧边栏设置按钮简化;登录提示可见性修复。

Bug Fixes

  • 修复通信适配器崩溃 — comm adapter(飞书/Slack/WhatsApp)连接失败时捕获异常,防止整个服务进程退出
  • 修复侧边栏设置按钮 — 简化设置入口,修复登录提示在特定条件下不可见

Stats

  • 15 files changed, +41 / −37 lines

v0.8.2

飞书集成全链路(QR 码注册、消息路由、通知转发);工作流系统(Phase 1);Codex OAuth 支持;暗色主题重设计;聊天输入与侧边栏优化。

New Features

  • 飞书集成 — 一键扫码注册飞书应用、消息路由至 Secretary、通知转发、markus.json 作为凭据唯一来源、私信回退提示
  • 工作流系统 Phase 1 — 工作流创建与运行、自动启动任务、Secretary 审批回退、搜索/mention/实体渲染集成
  • OpenAI Codex OAuth — Codex OAuth 代理与 token 刷新、Settings UI 配置
  • Hub 分享可见性 — Hub 分享状态持久化到 localStorage,新增可见性级别与组织资产标签

Bug Fixes

  • 修复 OAuth 登录竞态 — 解决 OAuth 登录过程中的竞态条件,补充缺失的 i18n key
  • 修复 License 同步与引导简化 — License 同步流程优化,Onboarding 简化
  • 修复 Markdown 实体链接 — 正确渲染被反引号包裹的实体链接
  • 修复工作流持久化与重试 — 工作流验证、持久化、重试机制加固

Improvements

  • 暗色主题重设计 — Codex 风格暖中性色调
  • 聊天输入框与侧边栏优化 — 输入框交互改进,侧边栏折叠优化,未读计数
  • 交付物页面聊天面板 — 支持上下文感知的 @mention 和选择工具栏
  • Work 页面团队分组 — Agent 筛选栏替换为团队分组视图

Stats

  • 101 files changed, +12,620 / −1,484 lines

v0.8.1

Windows 安装包修复;企业版试用期调整;UI 小改进。

Bug Fixes

  • 修复 Windows 安装包 — 安装器自动关闭占用进程,chrome:// 按钮回退方案,引导清单移除搜索步骤
  • 调整企业版试用期 — 试用期从 3 天延长至 7 天

Stats

  • 16 files changed, +56 / −45 lines

v0.8.0

企业版授权系统(Hub OAuth、组织管理与计费);License 限额看板;工具调用统计统一。

New Features

  • 企业版授权系统 — 基于 Hub OAuth 的企业授权,组织管理与计费 UI,License 激活后自动刷新,Hub 组织成员数展示
  • License 限额看板 — 统一从 Agent 指标提取工具调用计数,超限横幅提醒

Bug Fixes

  • 修复 Hub 重定向 Auth Header 丢失 — 保留 Hub 重定向时的认证头
  • 修复本地登录路径 — 恢复 Hub 连接后的本地登录入口,版本横幅改为指向网站下载

Stats

  • 48 files changed, +2,802 / −306 lines

v0.7.14

完成标记会话内续接修复;注意力重试逻辑改进;聊天滚动 UX 优化。

Bug Fixes

  • 修复完成标记重试 — 完成标记(completion marker)通过会话内续接重试,而非重新创建会话
  • 修复注意力重试逻辑 — attention controller 重试逻辑改进,避免无效重试
  • 修复聊天滚动 UX — 聊天滚动行为优化

Stats

  • 14 files changed, +144 / −52 lines

v0.7.13

修复 Windows 打开 Chrome 扩展页面的启动命令。

Bug Fixes

  • 修复 Windows Chrome 扩展页面 — 修正 Windows 上打开 chrome://extensionsstart 命令参数

Stats

  • 12 files changed, +12 / −12 lines (version bump)

v0.7.12

修复二进制构建中 node-datachannel 版本不稳定问题。

Bug Fixes

  • 固定 node-datachannel 版本 — 二进制构建中将 node-datachannel 固定为 0.12.0,避免不兼容的版本更新

Stats

  • 12 files changed, +12 / −12 lines (version bump)

v0.7.11

修复 Chrome Extension 打包脚本跨平台路径问题。

Bug Fixes

  • 修复跨平台路径解析 — Chrome Extension pack.mjs 使用 fileURLToPath 替代直接路径操作,修复 Windows 路径兼容性

Stats

  • 12 files changed, +15 / −14 lines

v0.7.10

CI 改为直接上传 release 二进制到 R2,不再走 API 中转。

Improvements

  • R2 直传 — CI 发布流程改为直接上传二进制到 Cloudflare R2,移除 API 中转环节,提升上传可靠性

Stats

  • 12 files changed, +34 / −20 lines

v0.7.9

安装脚本添加 markus.global 镜像回退,提升中国区安装体验。

Improvements

  • 安装脚本镜像回退install.shinstall.ps1 添加 markus.global 作为下载源回退,GitHub 不可达时自动切换

Stats

  • 14 files changed, +85 / −31 lines

v0.7.8

LiteLLM 模型目录集成(动态模型选择);聊天与工作台 UX 全面优化;Windows 安装包修复;SSE 断连韧性增强;执行时间线 i18n 支持。

New Features

  • LiteLLM 模型目录集成 — 集成 LiteLLM 模型目录,动态获取所有支持的模型及其元数据(定价、上下文窗口、能力标签),Settings 页支持模型搜索和选择
  • 聊天日期分隔标签 — 聊天消息按日期分组显示(今天/昨天/具体日期),支持中英双语
  • 聊天状态集中管理 — 新增 useChatStore 替代 30+ 个零散的 useState/useRef,提升 Team 页代码可维护性
  • ModelPicker 组件 — 新增模型选择器组件,支持按提供商分组、搜索过滤和快速选择

Bug Fixes

  • 修复 SSE 断连丢失用户消息human_chat 类型消息在 SSE 断连时不再被丢弃,确保用户输入始终被处理
  • 修复聊天恢复作用域混淆 — 通过 isResume 标志区分恢复和新消息,防止 mailbox 误判
  • 修复 SSE 断线检测误报 — 移除前端脆弱的 SSE 超时检测器,改为在断连时持久化已有内容
  • 修复取消流式传播 — 外部 cancelToken 正确链接到 activeStreamToken,确保取消操作即时生效
  • 修复 deliverable_update 参数名不匹配deliverable_id 修正为 id
  • 修复 Windows 安装包权限错误 — 解决 Windows 安装器权限问题、控制台窗口闪烁和托盘生命周期管理
  • 修复 install.sh 权限问题 — 移除不属于 npm 安装的 .app 创建、LaunchAgent 和 init wizard

Improvements

  • 聊天与工作台 UX 全面优化 — 消息气泡、输入框、任务面板、工具执行卡片等多处交互细节改进
  • 执行时间线 i18n — ExecutionTimeline 所有组件(聊天气泡、工具详情、审批卡片)完整国际化
  • Agent Profile 布局优化 — Agent Details 移至 Overview 标签页顶部
  • 审批通知自动已读 — 在聊天内联审批卡片中操作后自动标记通知为已读
  • Onboarding 流程改进 — LLM 检测覆盖所有提供商,首页引导清单优化

Stats

  • 62 files changed, +45,683 / −1,608 lines

v0.7.3

macOS 安装包全面修复(签名、公证、TCC、升级流程);系统托盘简化(仅"打开控制台"+"退出");新用户引导清单;CLI 精简(移除 15 个废弃命令);聊天流式健壮性改进;预览模式增强。

New Features

  • 新用户引导清单 — 首页新增分步引导(系统配置 + 探索步骤),引导用户配置 LLM、搜索引擎、浏览器自动化,并通过秘书完成首个项目、需求、招聘和团队组建
  • 消息注入 API — 新增 inject 模式,允许在 Agent 活跃处理期间追加消息并合并到当前上下文,避免创建空响应气泡
  • RC/预览版发布流程 — 新增 quick-release.sh rcpromote 命令,支持 npm @next 标签和 GitHub 预发布,CI 自动区分稳定版和预览版

Bug Fixes

  • 修复 macOS 安装包启动失败 — 重写 postinstall 脚本:JIT entitlements 重签名、端口冲突检测、/Applications/Markus.app 自动放置
  • 修复 macOS TCC 弹窗显示 "node" — 打包时将 Node.js 二进制重命名为 Markus,保留 node 符号链接兼容 node_modules
  • 修复 macOS Dock 图标持续跳动Info.plist 设置 LSUIElement=true,Markus 作为纯菜单栏应用运行
  • 修复托盘退出不终止服务killServer()launchctl bootout 卸载 LaunchAgent,再通过 lsof 查找并终止占用端口的进程
  • 修复托盘菜单状态不同步 — 改用 update-item 逐项刷新菜单状态
  • 修复 esbuild 打包 createRequire 冲突 — Banner 注入的 createRequire 重命名为 _createRequire,避免与 node-datachannel 冲突
  • 修复 node-datachannel 原生模块加载失败 — 标记为 esbuild external,改为懒加载 await import()
  • 修复取消流式后空白气泡 — 移除无内容的 Agent 消息气泡,而非显示空白
  • 修复 WS 回退广播空内容 — SSE 断连后仅在有实际内容时才通过 WebSocket 推送
  • 修复 [merged] 响应持久化 — 消息合并到活跃处理时跳过数据库持久化
  • 修复 Desktop 目录访问 TCC 弹窗 — 删除桌面快捷方式前先检查文件是否存在

Improvements

  • 系统托盘简化 — 菜单精简为"打开控制台"和"退出 Markus"两项;启动时自动开启服务并打开浏览器;托盘支持中英双语
  • CLI 精简 — 移除 15 个废弃的 admin 命令(approval、audit、builder、channel、connect、deliverable、gateway、key、project、report、requirement、review、role、settings、skill、task、team、template、user),Agent 应使用内置工具而非 CLI
  • macOS 安装包签名与公证 — CI 支持 Developer ID Application/Installer 签名、notarytool 公证、stapler 装订
  • macOS 升级流程 — 新增 preinstall 脚本:优雅停止运行中的服务和托盘,卸载 LaunchAgent,确保干净升级
  • 隐藏 default 项目名 — Work 和 Deliverables 页面不再显示名为 "default" 的项目
  • 预览模式增强 — 隐藏 attention 区域、抑制 API 调用和头像 404、中文 locale 使用英文名
  • Team 页面增强team:update 事件同步刷新群聊列表;支持 prefillMessageautoSend 导航参数
  • 交付物页面简化 — 移除手动创建表单,空状态引导用户跳转工作台

Stats

  • 46 files changed, +466 / −3,638 lines (this commit)
  • Total across all v0.7.3 RC iterations: ~100 files changed

v0.7.2

Mailbox 系统重构(健壮多 Agent 协作);首页重设计(行动导向信息架构);多搜索引擎后端(Tavily/Google/SerpAPI/Exa);MindTab 暂停/恢复/取消控制;项目工具增强;交付物 UX 改进。

New Features

  • Mailbox 系统重构 — 全面重构 mailbox 以支持健壮的多 Agent 协作,同优先级 LIFO 排序
  • 首页重设计 — 行动导向信息架构,排名弹窗增加 token 用量和可排序列
  • 多搜索引擎后端 — 新增 Tavily、Google、SerpAPI、Exa 搜索后端,丰富 web_search 选项
  • MindTab 控制按钮 — Agent Mind Tab 新增暂停/恢复/取消按钮,优先处理较新消息
  • 项目工具增强 — project tools 新增审批、统计、删除功能,移除冗余 knowledge 工具
  • 浏览器标签页关闭提醒 — Agent 会话结束时一次性提醒关闭浏览器标签页

Bug Fixes

  • 修复纯文本流式输出空白 — 流式输出完成后从 committedSegments 正确构建 segments 回退
  • 修复 beforeunload 对话框阻塞 — 主动抑制 beforeunload 弹窗,防止 Agent 导航被阻塞
  • 修复 triage 期间状态显示 — 分诊/审议期间正确显示 deciding 状态而非 idle
  • 修复交付物启动迁移时间戳 — 启动迁移不再刷新旧交付物时间戳;Agent 删除时正确迁移文件
  • 修复侧边栏/交付物/Builder UX — 侧边栏滚动条改进,交付物页面优化,Builder 布局修正,DM 通知修复

Improvements

  • DAG UI 更新 — DAG 可视化界面优化

Stats

  • 52 files changed, +3,050 / −704 lines

v0.7.1

修复流式气泡结束后空白、Team 页显示 Agent 而非 Team、亮色模式下版本横幅与 Builder 分享弹窗颜色问题;beforeunload 弹窗自动关闭防止 Agent 导航阻塞;暂停/恢复按钮移入管理下拉菜单。

Bug Fixes

  • 修复流式气泡结束后空白 — Agent 流式输出结束后消息气泡显示空白内容
  • 修复 Team 页显示 Agent 而非 Team — Team 页面错误展示 Agent 列表,Work 页审批后数据未刷新
  • 修复亮色模式版本横幅不可读 — 版本升级提示横幅在亮色模式下文字颜色修复
  • 修复 Builder 分享弹窗亮色模式 — Builder 分享弹窗硬编码深色配色,亮色模式下不可用
  • 修复 beforeunload 弹窗阻塞 Agent — 自动关闭 beforeunload 弹窗,防止 Agent 导航操作被阻塞

Improvements

  • 暂停/恢复移入管理下拉菜单 — L1 Header 中 pause/resume 按钮重构为 manage dropdown 内操作,界面更简洁

Stats

  • 10 files changed, +211 / −109 lines

v0.7.0

Hub 远程访问与 P2P 传输层;Chrome Extension 浏览器自动化套件;MCP 连接池优化与注意力系统重构;浏览器测试面板;全局搜索;首页重设计;Mailbox Agent 工具;大量测试补全与 UI 优化。

New Features

  • Hub 远程访问 — 新增 packages/remote 模块,通过 markus-hub 实现 P2P 远程访问,WebRTC 传输层支持直连与中继,CLI 启动集成远程连接管理
  • Chrome Extension 浏览器自动化 — 全新 packages/chrome-extension,支持页面管理、元素检查、表单输入、网络监控、导航控制;markus-browser-bridgemarkus-browser-mcp 工具集成;Chrome 弹窗自动点击器(chrome-dialog-clicker
  • 浏览器测试面板 — 新增 BrowserTestPanel 组件,支持在 Web UI 内直接执行和查看浏览器自动化测试
  • 全局搜索 — 新增 SearchModal 组件,支持跨 Agent、任务、需求的全局搜索
  • Mailbox Agent 工具 — 新增 mailbox-tools,Agent 可查询和管理自身邮箱队列
  • 移动端抽屉导航 — 新增 MobileDrawerMobileMenuButton 组件,优化移动端导航体验

Bug Fixes

  • 修复 Extension 队列请求过期 — Chrome Extension 请求队列新增过期机制,防止过期请求阻塞队列
  • 修复浏览器会话管理 — 页面管理器重构(page-manager),新增调试器辅助(debugger-helper),修复工具输入/检查/导航/网络模块
  • 修复通知铃铛显示 — NotificationBell 组件优化,未读计数逻辑改进

Improvements

  • MCP 连接池优化 — 注意力系统(Attention)大幅重构,新增缓存优化策略,上下文引擎增强,工具选择器改进
  • 首页重设计 — Home 页面布局重构,信息架构优化,i18n 完善
  • Settings 页面扩展 — 远程访问配置、Bocha 搜索 API Key 配置
  • Onboarding 流程优化 — 引导步骤智能跳过,API Key 来源预览
  • Team 页面增强 — 团队侧边栏交互优化,成员管理改进
  • 页面活跃检测 — 新增 usePageActive hook,优化后台页面资源消耗
  • 文档更新 — API、架构、认知架构、邮箱系统、提示工程、状态机文档全面更新

Tests

  • 新增 agent-loop / attention / cache-optimization / mailbox-lifecycle 测试套件,覆盖核心执行循环与邮箱生命周期

Stats

  • 129 files changed, +13,464 / −1,502 lines

v0.6.8

无边框 UI 大改版;Team/Agent 页面重设计;Mailbox 深度审议决策;持久 Shell 会话;MCP 自动重连与进程回收;Bocha 搜索后端;多格式交付物输出;审批按钮重构;语义重试循环检测;大量 UX 与稳定性修复。

New Features

  • 无边框 UI 改版 — 全局无边框设计语言,DAG 布局改进,动态 handle 位置
  • Agent 概览/文件编辑器/侧边栏重设计 — Agent 页面视觉重构,面板分割器优化
  • Team 页面重设计 — L2 面板布局,扁平化标签页,行内编辑,完善 i18n
  • DM 聊天统一布局 — DM 聊天采用频道式布局,输入框样式优化
  • Mailbox 深度审议决策 — mailbox 决策升级为完整审议流程,修复 notify_user 可见性与场景提示
  • 多格式交付物输出 — 支持 Markdown、HTML、JSON 等多种交付物格式
  • Bocha 搜索后端 — 新增 Bocha 搜索引擎,移除效果不佳的 Bing 搜索;搜索 API Key 可在设置中配置
  • LLM 自动降级开关 — 新增模型自动 fallback 切换控制
  • 语义重试循环检测 — 新增 sameToolBurst 检测器,捕获 Agent 语义重试死循环

Bug Fixes

  • 修复持久 Shell 会话 — Shell 会话持久化,清理工具输出中的 LLM 污染内容,修复前端 OOM
  • 修复 MCP 断连自动重连 — 工具调用发现 MCP 断连时自动重连;Agent 会话结束时回收 MCP 进程
  • 修复审批按钮逻辑 — 重构审批按钮:修复自由文本输入始终走审批通过的 bug,任务/需求增加结构化审批模式
  • 修复人工审核回调 — 防止 human review HITL 回调将已完成任务回退到 in_progress
  • 修复 notify_context 泄漏 — 聊天消息中剥离 HTML 注释,正确显示通知徽章
  • 修复 Report 页面指标 — 使用真实模型定价计算成本,移除不可靠的计费数据
  • 修复 notify/escalation 事件转发 — 正确转发事件,启动时等待健康检查后再打开浏览器
  • 修复聊天流式卡住 — 修复 thinking 状态卡死,Dashboard UX 改进,目录交付物预览
  • 修复 inline-completed 语义 — 修正内联完成项语义,补充缺失的活动日志
  • 修复亮色模式可读性 — Markdown 和表格在亮色模式下样式修复

Improvements

  • 侧边栏/通知/团队聊天列表优化 — 视觉与交互细节改进
  • 面板布局优化 — 详情面板全宽填充,滚动按钮位置调整避免遮挡发送按钮
  • 通知/审批内容展示 — 移除 Markdown 内容最大高度限制
  • 公告/规范编辑器 — 编辑器填满整个视口高度
  • Desktop 布局呼吸感 — 面板间距统一,Team L2 浮动模式,Work 标签宽度一致

Stats

  • 92 files changed, +5,246 / −1,556 lines

v0.6.7

统一安装工具体系;Package Tools 延迟绑定修复;Dashboard UX 改进(成功率修正、部署弹窗、排名、移动端导航);工具分类优化。

Refactoring

  • 统一安装工具 — 移除旧版 builder_install / builder_list,替换为统一的 package tools,所有 Agent 均可使用安装能力

Bug Fixes

  • 修复 Package Tools 不可用 — 延迟绑定 package tools 注册时机,确保在服务装配前完成注册;修复非 Manager Agent 无法访问 package tools 的问题
  • 修复 no-submit 重试竞态 — 修复任务提交重试与无提交场景的竞态条件
  • 修复 Dashboard 成功率计算 — 修正成功率统计逻辑,新增部署弹窗、Agent 排名展示,完善 i18n 翻译,优化移动端导航
  • 修复工具分类展示 — Agent Profile 工具分类分组优化,MCP Hub 工具归入 Packages & Hub 类别
  • 修复 manager-tools 测试 — 更新测试适配 PackageToolsContext 延迟绑定改动

Stats

  • 30 files changed, +947 / −553 lines

v0.6.6

Dashboard 重设计;Markdown 本地图片渲染;Midnight/Mono 主题替换;MCP 浏览器断连自动重连;定时任务与 Mailbox 执行触发保护;大量 UI 与稳定性修复。

New Features

  • Dashboard 重设计 — 全新现代布局,任务概览移至活动流上方,信息层级优化
  • Markdown 本地图片渲染 — 支持在 Markdown 消息中渲染本地图片路径
  • Midnight/Mono 主题 — 用 Midnight 调色板替换旧 dark 主题,新增 Mono(黑白)主题

Bug Fixes

  • 修复 MCP 浏览器断连 — 外部关闭浏览器标签页时 MCP 自动重连
  • 修复已归档任务出现在活动流 — Dashboard 活动流排除已归档任务
  • 修复定时任务调度 bug — 修复 cron 调度异常,改进定时任务审批 UX;修复通用 task PUT 路由拦截 /schedule 等子路径请求
  • 修复 Mailbox 执行触发被误丢弃 — 保护 execution-trigger 类型的 mailbox 项不被 triage 丢弃/延迟
  • 修复心跳空巡逻 — heartbeat idle skip 导致空巡逻记录和静默活动日志
  • 修复 Agent 遗忘 task_submit_review — 重试时注入针对性上下文提示
  • 修复 SiliconFlow 模型目录缺失 — 将 SiliconFlow 模型加入 BUILTIN_MODEL_CATALOG
  • 修复桌面快捷方式重复启动 — 服务已运行时直接打开浏览器而非再次启动
  • 修复 Builder 页面列表范围 — 仅列出 builder-artifacts 目录下的产物
  • 修复 Markdown 渲染 — 单换行符正确渲染(remark-breaks);暗色模式下列表标记、删除线等元素样式修复
  • 修复 i18n 标签 — Agent Profile Mind Tab 国际化及 memory_consolidation / requirement_action 活动标签修正

Stats

  • 39 files changed, +1,312 / −703 lines

v0.6.5

新用户初始化注册流程;非交互式启动修复;群聊可见性隔离;评论回复强制机制改进;Agent 思考活动实时指示器;LLM Key 预览。

New Features

  • 初始化注册页面 — 新增 InitialSetup 组件和 /api/auth/init/api/auth/status 端点,首次使用时展示管理员注册页面(用户名/邮箱/密码/头像上传),替代旧的默认密码登录方式
  • Secretary 新用户欢迎 — 新用户完成注册后,Secretary 自动发送引导消息帮助上手,通过 isFirstConversation 标记透传到 Mailbox
  • 评论思考活动指示器 — Work 页任务/需求评论区 Agent 思考时实时展示工具调用步骤(ActivityIndicator),替代纯 bouncing dots

Bug Fixes

  • 修复启动 stdin 阻塞quickInit 改为 nonInteractive: true,避免在 concurrently / CI / systemd 等无 TTY 环境下挂起
  • 修复群聊可见性 — 非管理员用户只能看到自己参与的群聊和团队聊天,新增 listByMember 查询
  • 修复评论不回复检测comment_response 场景改用 [NO_REPLY_NEEDED] 显式标记替代文本长度启发式判断,避免 Agent 决定不回复时被强制重试
  • 修复用户 identity 不同步 — 注册/登录后立即调用 syncHumanIdentity 同步内存用户身份,Agent 即时看到真实用户名
  • 修复 proactive message 目标用户错误notify_user 通知消息发送到正确的 targetUserId 而非默认用户
  • 修复首次 intro 消息重复发送 — 全局 Set 防护同一页面会话内重复发送自我介绍消息

Improvements

  • LLM API Key 预览 — Settings 和 Onboarding 页面显示 API Key 掩码预览(sk-ab...cd12),区分 config / env / oauth 来源
  • 角色感知 intro 消息 — Secretary 和普通 Agent 使用不同的首次对话消息,不再按语言硬编码多国文案
  • Onboarding 智能跳步 — InitialSetup 已完成 profile 信息时,Onboarding 自动跳过 Profile 步骤
  • 首登引导流程 — 登录/注册接口返回 needsOnboarding 标志,首次登录自动进入 Onboarding

Stats

  • 21 files changed, +728 / −160 lines

v0.6.4

新 Logo;聊天上下文大幅扩容;审批通知优化;Agent 记忆编辑 UX 改进;thinking 气泡及时清除。

New Features

  • 新 Logo — 替换项目 Logo,体积从 5MB 缩减至 96KB
  • 聊天历史扩容 — 群聊上下文从 20 条扩展到 80 条,Agent 工具获取上限从 30→80 条(max 200),消息截取从 500→2000 字符,Agent 获得更完整的对话上下文
  • Agent 无回复事件 — 新增 chat:agent_no_response WebSocket 事件,Agent 决定不回复时前端即时清除 thinking 气泡

Bug Fixes

  • 修复审批通知标题冗余前缀 — 移除 "Approval needed:" / "Task approval:" / "Requirement approval:" 等前缀,直接显示任务/需求标题
  • 修复审批请求中 Agent 名显示为 ID — requirement-service / task-service 中解析 Agent 显示名称替代原始 ID
  • 修复切换任务/需求时 thinking 气泡残留 — 切换 task/requirement 时重置 thinkingAgents 状态
  • 修复 Team 页 i18n key 前缀缺失page.viewProfileArrowteam:page.viewProfileArrow

Improvements

  • Agent 记忆编辑 UX — 日报/长期记忆改为常驻 textarea,脏数据时才显示保存按钮,最小高度 50vh
  • 通知铃铛增强 — NotificationBell 组件改进,工具分组覆盖 memory_delete / recall_context / recall_activity

Stats

  • 15 files changed, +175 / −67 lines

v0.6.3

中文 Agent 名兼容修复;记忆搜索语义 fallback;Agent 初始化自动创建系统文件;CLI 工具整合精简;团队聊天稳定性修复;二进制安装包签名与托盘控制器。

New Features

  • 系统托盘控制器 — 桌面快捷方式启动后在菜单栏/系统托盘显示 Markus 图标,提供 Open Web UI / Start / Stop / Quit 操作(macOS/Windows/Linux),tray 启动失败自动回退到直接启动服务器
  • Agent 初始化自动创建系统文件 — 新 Agent 启动时自动生成 MEMORY.md / HEARTBEAT.md 等系统文件,MEMORY.md 超长时自动压缩
  • 便携归档包 — 除平台原生安装包外,同时生成 .tar.gz/.zip 便携归档

Bug Fixes

  • 修复中文名 Agent 目录定位失败 — findMemberDir 改用多轮 member-to-directory 映射匹配,支持非 ASCII Agent 名
  • 修复中文名 Agent slug 生成 bug — 统一使用 kebab() + 唯一索引 fallback,避免空 slug
  • 修复 memory_search 返回 0 结果 — 语义搜索 fallback + dist 重建
  • 修复团队聊天停止按钮/会话上下文丢失/空气泡 — 三个前端交互 bug 一并修复
  • 修复被抢占任务不自动恢复 — 高优先级任务完成后,被抢占的低优先级任务自动恢复执行
  • 修复已完成/失败任务不可见 — 任务列表默认隐藏已关闭状态,但保留已完成和失败状态可见
  • 修复二进制安装包 Apple 公证失败 — codesign 扫描所有 Mach-O 文件(含 systray2 的 Go 二进制),修复权限过滤遗漏

Refactoring

  • CLI 工具整合精简 — 删除 5 个冗余 CLI skill 模板(agent-cli/cli/project-cli/skill-cli/team-cli),合并到 markus-admin-cli;新增测试覆盖

Stats

  • 43 files changed, +1,888 / −671 lines

v0.5.0

记忆系统重构(Tulving 三层认知分类);评论多模态图片支持(上传/拖拽/粘贴/预览);内置 Agent 模板大规模升级(重写 5 + 新建 5);弹窗错误 UX 优化;Hub 地址修正;文档全面对齐。

New Features

  • 评论图片上传与渲染 — CommentInput 支持图片上传、拖拽、粘贴;MarkdownMessage 支持图片懒加载、加载骨架屏、错误占位、点击全屏预览(ImagePreviewModal);新增通用 FileStorageProvider 抽象(本地存储默认,可切换 S3/GCS),POST /api/uploads 端点
  • 内置 Agent 模板升级 — 重写 5 个低质量模板(hr/finance/support/marketing/operations),从仅 ROLE.md 升级为完整套件(ROLE.md + HEARTBEAT.md + POLICIES.md + agent.json);新建 5 个实用角色模板(data-engineer、ai-engineer、architect、scrum-master、sre)

Bug Fixes

  • 修复需求状态历史 Agent 名字缺失 — updateRequirementStatus 新增 actorType 参数,修复 agent 更新状态时 changedByType 被错误记录为 'human'
  • 修复含空格名字 @mention 渲染 — 重写 @mention 渲染逻辑为全名前缀匹配策略,正确处理多词 Agent 名字
  • 修复弹窗错误 UX — 错误信息移入弹窗内联展示(非页面级 flash),服务端返回结构化错误码(task_limit_reached 等),人类创建的 pending 任务显示"取消"而非"拒绝"
  • 修复 Hub 地址指向本地开发服务器 — 默认 Hub URL 从 localhost:8059 改为 markus.global 生产地址

Refactoring

  • 记忆系统 Tulving 三层分类重构 — 基于 Tulving 认知分类重新设计记忆架构(Semantic/Episodic/Procedural),在现有 MemoryStore 上标注分类层级;新增 memory-store.test.ts(32 tests);清理废弃的 EnhancedMemorySystem + 双重存储代码
  • 文档全面对齐 — MEMORY-SYSTEM.md 全面重写(553→235 行,四层→三层);ARCHITECTURE.md / MAILBOX-SYSTEM.md / PROMPT-ENGINEERING.md / README 同步更新术语

Stats

  • 75 files changed, +4,457 / −1,456 lines

v0.4.26

模型提供商设置极简化(点击+粘贴 API Key 即用);添加智能体/新建团队弹窗支持秘书协助模式;聊天输入框自动伸缩修复;侧边栏下拉图标优化。

New Features

  • 模型提供商一键激活 — 主流提供商(Anthropic、OpenAI、Google Gemini 等)无需填写 Base URL、上下文窗口、定价或模型名称,点击提供商后粘贴 API Key 即可使用,内置模型目录自动提供所有元数据;保留"Add Provider"入口供自定义提供商
  • 添加智能体/新建团队方式选择 — 点击"添加智能体"或"新建团队"时弹出选择弹窗,用户可选择让秘书帮忙(推荐)或手动操作;下拉菜单顺序调整为:添加智能体 → 新建团队 → 添加成员 → 新建群聊

Bug Fixes

  • 修复聊天输入框不自动伸缩 — 提取 textarea 高度调整为可复用回调 + useEffect,输入框随长内容自动增高,清空或发送后自动缩回

Enhancements

  • 侧边栏下拉菜单与方式选择弹窗图标优化

Stats

  • 7 files changed, +180 / −33 lines

v0.4.25

多用户系统全面上线(RBAC、邀请流程、会话隔离);群聊成员管理与侧边栏重设计;人类用户可作为任务审阅者与 @mention 目标;Agent 思考指示器;任务/需求状态变更历史;Ollama 本地自动发现;API 安全加固;大量 UX 与稳定性修复。

New Features

  • 多用户系统(Phase 6-8) — RBAC 权限 UI、邀请注册流程、用户软删除、会话隔离、DM 隐私、审批按用户过滤(targetUserId);Onboarding 与 Login 页面重构
  • 群聊成员管理 — 群聊侧边栏重设计,支持添加/移除成员,创建者自动加入,用户名从 DB 恢复
  • 人类用户 @mention — 任务/需求评论中支持 @提及人类用户,触发通知铃铛提醒
  • 人类用户作为任务审阅者 — 支持将人类用户指定为 task reviewer
  • Agent 思考指示器 — Chat、任务、需求评论场景显示 Agent 思考动画,直到实际回复到达
  • 任务/需求状态变更历史 — 记录并展示 task 和 requirement 的每次状态转换历史
  • 任务关联活动会话 — 检测并展示与任务相关的 Agent 活动 session
  • Ollama 本地自动发现 — Settings 页自动检测本地 Ollama 服务
  • Git 审批智能跳过 — Agent 在自己的工作区内操作时跳过 git 命令审批
  • CI 测试流水线 — CI pipeline 新增 pnpm test 步骤

Bug Fixes

  • 修复多用户认证与隔离 — 修复 auth、session 隔离、DM 隐私、null user_id 迁移等多用户系统 bug
  • 修复通知铃铛 DM/群聊消息 — 支持点击导航,Agent 通知目标精准化,邀请按钮清理
  • 修复停止流式时 6 秒延迟 — 用户在 team chat 中停止 Agent 流式输出时消除阻塞延迟
  • 修复 Agent 瞬态错误显示为持久错误 — 短暂错误以可恢复警告展示而非永久 error 状态
  • 修复通知声音重播 — 侧边栏折叠/展开不再重放通知音效
  • 修复人类创建任务初始状态 — 人类创建的任务正确以 pending 状态开始
  • 修复需求详情面板关闭 — approve/reject 操作后保持面板打开
  • 修复通知自动已读 — 对任务/需求执行操作时自动标记相关通知为已读
  • 修复 Deliverables URL 处理 — URL 类型交付物正确处理,侧边栏简化
  • 修复执行日志内容 — 正确发送 thinking 和 text 内容到执行日志,允许工作区外只读搜索
  • 修复下拉菜单溢出与重复图标 — 任务创建 UI 中下拉溢出和重复加号图标
  • 修复 Mailbox 抢占 — 所有非 human-chat 场景可被更高优先级 mailbox 项抢占
  • 修复 Windows PowerShell 安装 — Start-Process 运行 npm 失败

API Security & Hardening

  • 405 Method Not Allowed — 不支持的 HTTP 方法返回 405 而非 404
  • Agent 名称 XSS 防护 — 创建 Agent 时清理名称防止 XSS 注入
  • POST null body → 400 — 空请求体返回 400 Bad Request
  • 缺少 Content-Type → 415 — 缺少 Content-Type 头返回 415
  • GET /api/keys 认证 — 添加 requireAuth 中间件
  • DELETE 不存在 Agent → 404 — 返回正确的 404 而非 200
  • Agent 名称长度限制 — 100 字符上限校验

Refactoring

  • 统一用户 ID 生成userId() 工具函数替代硬编码 'default' user ID
  • 用户软删除 — 用户和 Agent 删除改为软删除,支持即时刷新

Stats

  • 97 files changed, +7,668 / −1,640 lines

v0.4.24

新增 DeepSeek 一级模型支持;reasoning_content 全链路透传;中文文件名路径编码修复;LLM 路由禁用提供商感知与自动切换;通知铃铛 notify_user 修复;不可重试错误短路;测试补全。

New Features

  • DeepSeek 一级模型支持 — 新增 DeepSeek 作为一级模型提供商,Settings 页支持连接测试,MODEL_CATALOG 同步更新
  • reasoning_content 全链路透传 — DeepSeek reasoning_content 在子 Agent 工具循环和最终 assistant 回复路径中正确保留,避免推理内容丢失

Bug Fixes

  • 修复中文文件名路径编码异常publishDeliverablesToShared 中文文件名写入失败,修复路径编码处理,DRY 重构文件操作逻辑
  • 修复 LLM 路由不尊重禁用提供商 — 禁用的模型提供商仍被路由选中,现在正确跳过并自动切换默认模型
  • 修复通知铃铛不显示 notify_user 通知 — NotificationBell 组件过滤逻辑遗漏 notify_user 类型,同步修复 UI 细节
  • 修复不可重试错误仍在重试 — TaskService 对不可重试的错误(如配置错误)不再无限重试
  • 修复工具名称重复注册 — tool-selector 去重处理,避免同名工具多次注册
  • 修复 sqlite-storage 测试外键约束 — 补全测试中缺失的 agent FK 初始化

Stats

  • 29 files changed, +510 / −115 lines

v0.4.23

Web UI 完整国际化(中英双语);群聊增强(A2A 回复链、@mention、recall_context);web_search 代理与降级;LaTeX 数学渲染;Requirement 审批生命周期修复;Mailbox 与 Agent 生命周期 bug 修复。

New Features

  • Web UI 国际化(i18n) — 完整的中英双语支持,覆盖所有页面和组件(Home / Work / Team / AgentProfile / AgentBuilder / Settings / Store / Reports / Deliverables / Onboarding 等),新增 i18n 基础设施(i18next + react-i18next)和语言切换
  • 群聊增强 — A2A 回复链支持,@mention 修复,新增 recall_context 工具供 Agent 检索群聊上下文;群聊中强制任务追踪;Builder 技能增加 HEARTBEAT.md
  • LaTeX 数学渲染 — MarkdownMessage 支持 LaTeX 数学公式渲染(行内 $...$ 和块级 $$...$$

Bug Fixes

  • 修复 web_search 代理与降级 — web_search 工具支持 HTTP 代理,增加超时控制,DuckDuckGo 搜索失败时自动降级重试
  • 修复流式气泡结束后空白 — 流式输出结束后消息气泡显示空白内容,修复 SSE 事件处理
  • 修复 Requirement 审批生命周期 — 审批通过后正确触发 Agent 执行,移除需求自动完成逻辑
  • 修复 Mailbox drop 与 Agent 生命周期 — 修复 mailbox 项丢弃 bug,Agent stop/pause 生命周期正确处理,LLM 中断判断优化
  • 修复侧边栏活动标签 "Chat from undefined" — 活动标签中发送者名称缺失显示 undefined
  • 修复 Team 页 Agent 状态标签 i18n — 缺少 i18n 命名空间前缀导致状态标签显示翻译 key
  • 修复 AgentProfile 和 Work 页 TypeScript 错误

Stats

  • 86 files changed, +7,594 / −1,645 lines

v0.4.22

自演化路径增强(ROLE.md / HEARTBEAT.md);Hub 发布 CORS 修复与 API 代理;Agent 创建 roleName 可选;Store 卡片链接 Hub 详情页。

New Features

  • ROLE.md / HEARTBEAT.md 直接自演化路径 — Agent 可通过编辑 ROLE.md 和 HEARTBEAT.md 进行自我演化;新增 reloadHeartbeat() 热加载,HEARTBEAT.md 修改即时生效;降低 ROLE.md 更新门槛,单条经验即可触发;自演化技能文档同步更新决策矩阵
  • Hub 详情页链接 — Store 页面(Agents / Teams / Skills)的 Hub 卡片标题和页脚链接到 Hub 详情页(/{username}/{slug}),新标签页打开

Bug Fixes

  • 修复 Hub 发布 CORS 与鉴权失败 — 新增通用 /api/hub/* 本地代理路由,所有 Hub API 调用走服务端转发,规避 Vercel 307 重定向导致的浏览器 CORS 拦截和 Authorization header 丢失(401 根因)
  • 修复 Agent 创建自定义 ROLE.md 被模板覆盖roleName 改为可选,'custom' 表示无模板;新增 skipTemplateCopy 标志防止自定义角色文件被覆盖;健壮的成员目录查找(findMemberDir)支持多种回退策略;统一 kebab() slug 函数消除保存与安装流程间的 slug 不匹配
  • 修复 AgentBuilder 分享时误显 "Uninstalling..." — 按操作类型追踪 busy 状态,区分分享与卸载

Stats

  • 19 files changed, +353 / −115 lines

v0.4.21

Markdown 文件路径可点击预览;MarkdownMessage 拷贝菜单;多模态附件降级;markitdown 技能;审批输入修复;UI 组件优化。

New Features

  • Markdown 文件路径点击预览 — 行内代码中的文件路径自动识别,存在的文件高亮可点击:Markdown 文件弹窗预览(支持无限嵌套弹窗),其他类型在文件管理器中打开;不存在的文件显示删除线样式
  • MarkdownMessage 拷贝菜单 — 所有 Markdown 渲染区域显示拷贝按钮,支持复制 Markdown 源码、HTML (Light)、HTML (Dark) 三种格式
  • 多模态附件降级 — 不支持视觉的模型自动通过 markitdown 将图片/文档转为文本附件,支持 PDF/DOCX/XLSX/PPTX/图片等格式
  • markitdown 技能 — 新增 Agent 技能模板,可安装 markitdown 用于文档格式转换
  • Avatar 组件 — 提取独立 Avatar 组件,支持 Agent 头像与状态指示器复用

Bug Fixes

  • 修复审批输入框串联 — 多个审批卡片的自由文本输入框共享同一 state,在一个输入框打字所有输入框同步显示;改为按审批 ID 独立维护状态
  • 修复文件路径在表格中不换行 — 长文件路径在表格窄列中不断行,添加 break-all 允许任意位置换行
  • 修复文件路径图标与文字分离 — 表格中图标被挤到单独一行,用 whitespace-nowrap span 确保图标与路径首字符不分离

Enhancements

  • Sidebar 布局与样式优化
  • Onboarding 引导流程增强
  • Chat 气泡样式更新
  • Deliverables 页重构:复用 MarkdownMessage 和共享拷贝工具,移除冗余代码
  • 文档更新(CONTRIBUTING、README、GUIDE、ARCHITECTURE、REMOTE-ACCESS)

Stats

  • 38 files changed, +1,472 / −457 lines

v0.4.20

多 Agent 认知架构(CPP 四阶段管线);自演化记忆生命周期重构;notify_user/escalation 转为聊天消息;recall_activity 工具;服务端 turn-boundary 流式提交;审批持久化与 requirement 审批统一;6 项运行时 bug 修复;浏览器自动化设置。

New Features

  • 认知准备管线(CPP) — 四阶段流水线 Appraise → Retrieve → Reflect → Assemble,按刺激类型分级认知深度(D0–D3),替代机械式记忆检索,统一知识模型(单一 insight 标签 + MEMORY.md 注入)
  • recall_activity 工具 — Agent 可查询自身执行历史(活动列表、工具调用详情),支持关键字搜索和活动摘要索引
  • notify_user / escalation 转聊天消息 — 通知写入 Agent 聊天会话(非隐藏活动日志),通过 WS 广播 + 通知铃铛 + taskId 路由展示
  • 服务端 turn-boundary 流式提交 — SSE 按 turn 缓冲 thinking,在工具边界和消息结束时发出 thinking_commit / text_commit 事件,客户端分离已提交段与实时 delta
  • 浏览器自动化设置 — Settings 页新增 Browser Automation 区域(bringToFront / autoCloseTabs / remoteDebuggingPort),配置持久化到 MarkusConfig,消除 Chrome 逐次权限弹窗
  • team_update / agent_update 管理工具 — Manager 角色可动态修改团队和 Agent 配置
  • 聊天 Resume 按钮 — 最后一条 Agent 消息显示 Resume,移除末尾 assistant 输出后从断点继续 LLM 生成

Bug Fixes

  • 修复审批拒绝始终通过 — task approval callback 将 result 对象当布尔值(始终 truthy),被拒任务错误转入 in_progress
  • 修复审批重启后丢失 — 审批持久化到 SQLite,服务端重启时 fallback 直接执行状态转换
  • 修复 6 项运行时 bug — responsePromise.reject 反序列化丢失;heartbeat 误触异常完成重试循环;LLM router 429 惊群(新增 30s 短路冷却 + 并发追踪);工具循环仅警告不中断(改为强制 break);browser new_page 竞态;启动 heartbeat 突发(最小延迟 + 抖动)
  • 修复聊天 Resume — 保留已有 session context,避免重复用户消息,裁剪不完整 segments 而非丢弃整个 Agent 气泡
  • 修复活动日志污染聊天 — 隐藏 heartbeat / review / mention 等活动日志条目,保留在 Agent Profile Mind tab
  • 修复 TS 构建错误 — CLI 包 NotificationPriority 类型转换与导出

Refactoring

  • 自演化记忆重构 — 明确记忆生命周期:memories.json 为摄入缓冲、MEMORY.md 为策展知识;SOP patch 模式增量更新;MEMORY.md 硬限制(3000 字符/段、15000 总量);dream cycle 护栏(cap removes 10、merges 5)
  • Requirement 审批统一 — Agent 提出的需求进入 HITL 审批队列(approve/reject 按钮),Work 页和通知铃铛双向同步
  • 通知类型精简 — 移除 bounty_posted / agent_alert / mention 等未使用类型,移除整个 bounty 系统
  • 统一 session 压缩 — 单一策略(trigger@60、keep 30),信息密度评分驱动智能压缩

Enhancements

  • Agent 配置 inline diff:word-level 高亮 + hunk 折叠;Smart Sync LLM 合并模板变更与自定义(支持 undo)
  • 分诊优化:pre-triage 自动清理 >4h 旧信息项;mini 工具循环支持只读工具;上下文扩展到 20 条 × 2000 字符
  • 活跃 lesson 检索:按关键字匹配任务描述自动注入相关经验
  • 每 30 次工具迭代插入中段反思 nudge
  • 每段消息附带 createdAt 时间戳,ThinkingRow 显示内容预览
  • Legacy 消息迁移:启动时解析旧 XML 格式消息为 segments 结构
  • FilePathLink 组件、MarkdownMessage XML 标签清理
  • 日 token 预算强制(maxTokensPerDay)+ Agent 自动暂停
  • DEFAULT_MAX_TOOL_ITERATIONS 从 Infinity 改为 200,heartbeat 上限 30
  • 委派上下文(notes / acceptanceCriteria / deadline)透传任务创建
  • 新增 COGNITIVE-ARCHITECTURE.md 文档

Stats

  • 64 files changed, +5,247 / −1,240 lines

v0.4.19

Mailbox 可靠性与 LLM 分诊系统;新增 request_user_approval 阻塞审批工具;结构化活动日志与持久认知;执行时间线 thinking 解析修复;移动端聊天 UI 优化。

New Features

  • Mailbox 可靠性 — 完成标记系统(<<HANDLE_COMPLETE>>),异常检测自动重试(最多 2 次);原始 XML 工具调用消毒(sanitizeLLMReply);DB 新增 retry_count
  • LLM 分诊系统 — 多项邮箱队列 LLM 驱动分诊决策,同实体(相同 task/requirement)预合并;分诊推理作为持久认知(persistent cognition)注入后续所有 LLM 调用
  • request_user_approval 工具 — 替代 request_user_chat,支持自定义选项按钮、自由文本输入,阻塞等待用户响应;审批等待使用 24h 超时而非 5 分钟
  • 结构化活动日志 — 活动内容为干净摘要,metadata 携带 activityType / outcome / mailboxItemId / taskId 等,前端按类型渲染图标和分类卡片,支持点击展开和导航
  • npm 更新检查器 — CLI 启动时检查新版本(24h 缓存),健康端点同步暴露
  • Windows PowerShell 安装脚本 — 新增 install.ps1
  • 自动归档服务 — 可配置阈值的自动归档

Bug Fixes

  • 修复执行时间线 thinking 标签泄漏 — 状态化字符级解析器替代正则,跨工具调用边界正确追踪 <think> 状态,合并分散的文本片段
  • 修复移动端聊天 UI — 操作按钮(Copy/Retry/Reply)移动端默认显示;Retry/Re-ask 限制为最新 Agent 消息;重试传递 isRetry 标志,服务端裁剪失败交互避免污染 LLM 上下文
  • 修复移动端滚动自动加载历史 — 替代手动"加载更早消息"按钮,滚动到顶部自动触发,浮动加载指示器不受滚动位置影响
  • 修复活动时间线文本溢出 — 长通知内容截断显示,短内容完整展示;移除 notify_user outcome 200 字符截断限制

Enhancements

  • 人类优先优先级模型:human_chat 为唯一 p0 用户交互类型,system_event / task_comment / requirement_comment 降为 p1
  • Mailbox 恢复增强:重启时重载排队项、过期 >3d 旧项、心跳折叠与评论合并去重
  • 任务恢复优化:优先级排序启动恢复、重试抖动(±20%)避免惊群、抢占重排队延迟
  • 活动类型重分类:Chat(human_chat、a2a_message)、Comment(task_comment、requirement_comment)、Mention(mention)
  • EventBus 转发(forwardAgentEvents):agent 事件总线桥接到 manager 层
  • 评论逻辑集中到 TaskService,API Server 去重
  • 新增 getRequirement / getTaskComments Agent 工具
  • 睡眠看门狗(observational)与宽松处理超时,系统休眠后优雅恢复

Stats

  • 42 files changed, +3,043 / −731 lines

v0.4.18

紧急修复 LLM 路由错误处理崩溃与流式气泡动画跨浏览器兼容问题。

Bug Fixes

  • 修复 LLM router enrichError 崩溃 — 部分 SDK Error 子类(OpenAI、Anthropic)将 message 定义为 getter-only 属性,直接赋值导致 "Cannot set property message of which has only a getter" 崩溃;改为包装新 Error 对象
  • 修复流式气泡边框动画跨浏览器兼容 — 替换 mask-composite 方案(Windows/Chrome 下失效)为 double-background 技术(padding-box 纯色填充 + border-box conic-gradient),无需 mask 支持即可工作

Stats

  • 2 files changed, +17 / −25 lines

v0.4.17

移除 PostgreSQL 支持,全面精简存储层;新增 Main Session 活动上下文与子 Agent 执行可见性;Mailbox 恢复与通知级联抑制;团队创建 UX 与流式动画优化;用户聊天可抢占后台处理。

New Features

  • Main Session 活动上下文 — 新增 is_main 会话概念,非聊天类 mailbox 处理完成后自动注入活动摘要到主会话,Agent 跨任务执行保持叙事连续性
  • 子 Agent 执行可见性 — Work 页任务执行日志展示嵌套子 Agent 时间线,ToolDetailModal 渲染子 Agent 详情,Chat 流式路径透传 subagentLogs
  • 团队创建 UX 优化 — 创建团队后自动滚动高亮,空团队状态优化,Create Team 弹窗增加 Secretary 高级创建提示
  • 流式气泡动画 — Chat 气泡在 Agent 流式输出时显示流动渐变边框动画
  • Heartbeat 支持创建任务/需求 — heartbeat 场景下允许调用 task_createrequirement_propose

Bug Fixes

  • 修复用户聊天无法抢占后台处理handleMessage 对自发场景(heartbeat、memory_consolidation、system_event、daily_report)支持抢占,human_chat 消息在下一个 yield point 中断后台工作
  • 修复 notify_user 时序 bugsetUserNotifier 追溯推送给所有已存在 Agent,缺少 notifier 时优雅降级而非硬错误
  • 修复 discover_tools 参数混乱 — 合并 nametool_names 为单一 name 参数,消除 LLM 参数混淆导致的技能激活失败
  • 修复 Hub artifact manifest 写入错误downloadAndInstall 写入正确的类型文件名(agent.json/team.json/skill.json)而非通用 manifest.json
  • 修复 main session 排序问题getSessionsByAgentis_main DESC 排序,避免多会话 Agent 主会话被淹没
  • 修复评论内容为 undefined — task_comment/requirement_comment 增加内容校验
  • 抑制审核通知级联 — 活跃审核期间抑制 reviewer→worker/creator 的冗余通知
  • Mailbox 启动恢复 — 重启时将卡在 processing 状态的 mailbox 项标记为 dropped
  • 修复 agent_broadcast_status schema 枚举不匹配
  • 修复移动端 Profile 导航缺失 enterMobileDetail 调用

Refactoring

  • 移除 PostgreSQL/Drizzle 支持 — 删除全部 Drizzle schema、repos、migrations 和 PgVectorStore,存储层仅保留 SQLite
  • 存储类型整合 — 新增独立 types.ts,定义 TaskRow 等类型接口,移除 repo 的 [key: string]: unknown 索引签名
  • 合并 A2A 工具组structured-a2agroup-chat 合并为 a2a-extended
  • 静默状态转换 — blocked↔in_progress 转换不再触发冗余通知
  • 集中 shell 超时限制 — 统一 shell 命令超时配置

Enhancements

  • FSM 感知的 TagPicker,高亮合法状态转换
  • Mailbox 状态过滤器与 requirement_comment 类型支持
  • WebSocket task:update handler 始终刷新看板
  • 消息预览过滤未闭合 <think> 标签和工具调用 XML
  • Secretary prompt 更新团队优先创建最佳实践
  • Prompt 工程增加内置工具优先与禁止自动安装规则
  • Manager 招聘指导扩展为 CREATE/INSTALL 两阶段工作流
  • 安装脚本更新

Stats

  • 84 files changed, +1,632 / −4,911 lines

v0.4.16

修复 Agent 动态创建全链路问题(白屏崩溃→数据丢失→事件断路);修复 pause/resume 实际无效的 bug;移除 token 预算自动暂停机制;新增 heartbeat 完成任务复盘与 SOP 自动注入。

Bug Fixes

  • 修复秘书雇佣员工白屏崩溃 — LLM 调用 team_hire_agent 时可能不传 name,导致前端 toLowerCase() 崩溃;在工具层、createAgent 核心层和前端 API 层三重防御
  • 修复新建 Agent 邮箱历史为空start.ts 监听的事件名 agent:registered 与实际 emit 的 agent:created 不匹配,导致动态创建的 Agent 未接入 mailbox 持久化
  • 修复新建 Agent 重启后丢失 — 通过 team_hire_agent 创建的 Agent 未持久化到 DB,新增 agent:created 事件监听写入数据库
  • 修复新建 Agent 无法发送主动消息setUserMessageSendersetChatSessionsFetcher 仅在启动时为已有 Agent 注册,重构为事件驱动,动态 Agent 也能即时接入
  • 修复 pause/resume 实际无效pause() 只改状态标签但不停止 heartbeat、attention controller 和 memory timer,Agent 照常工作;现在真正停止/重启后台进程
  • 修复 builder_install / hub_install 缺少参数校验 — 与 team_hire_agent 同类问题,补充运行时参数验证

New Features

  • Heartbeat 完成任务复盘 — Agent heartbeat 时自动检查近期完成的任务,提取最佳实践并注入 SOP 上下文
  • 11 个事件消费者接入 WS 广播agent:removed/paused/resumed/started/stoppedtask:completed/failedsystem:pause-all/resume-all/emergency-stop/announcement 全部通过 WebSocket 推送到前端
  • 全局暂停状态 WS 同步 — 侧边栏 Pause/Resume 按钮监听 WS 事件实时同步,多客户端状态一致

Refactoring

  • 移除 token 预算自动暂停机制 — 删除 maxTokensPerDay 超限自动 pause 和午夜自动 resume 逻辑,保留 token 计数器供展示
  • 清理冗余事件 — 移除 agent:status-changed(与 stateChangeCallback 重复)和 agent:decision(与 attention:decision 重复)
  • 工作区安全策略重构 — 白名单策略替换为 deny-only 跨 Agent 隔离
  • API 路由加固 — 集中 agent-facing limits,统一前置条件校验

Stats

  • 43 files changed, +706 / −674 lines

v0.4.15

Secretary 统一建设者角色,新增分级 Git 审批机制;Task FSM 重构为声明式状态机;移除 worktree 耦合,prompt 工程全面清理;修复 dream cycle 幻觉与 UI 问题。

New Features

  • Secretary 统一建设者角色 — 合并原 builder agents 为 Secretary,集成 hiring / install / hub-tools 能力,新增 builder-service 和 hub 工具集 (#10)
  • 分级 Git 命令审批 — 实现 tiered git command approval 机制,shell_execute 支持 HITL 审批回调,ApprovalCallback 返回 { approved, comment }

Refactoring

  • Task FSM 声明式状态机 — 用声明式 transition matrix 替代散落的状态判断,引入 phased side-effect pipeline,统一任务生命周期管理
  • 合并 task_assignment 到 task_status_update — 消除独立的 task_assignment 消息类型,通过 triggerExecution 标志复用 task_status_update,修复被抢占任务的自动恢复
  • 移除 worktree 耦合 — 核心 prompt 工程与 worktree 概念解耦,TaskWorkspace.worktreePath 重命名为 repoPath
  • Prompt 工程全面审查 — 清理冗余 prompt、统一术语、优化上下文注入策略

Bug Fixes

  • 修复 dream cycle(memory_consolidation)幻觉 — 新增独立 memory_consolidation scenario,避免 sleep 周期误触 task 工具
  • 改进审批通知面板 UI
  • 修复 Work 页面切换后筛选条件丢失

Enhancements

  • 移动端 UI 优化
  • Reports / AgentBuilder / AgentProfile 页面细节改进

Stats

  • 43 files changed, +1,865 / −1,013 lines

v0.4.14

前端全面 UI 优化:统一状态颜色体系、新增 Cyberpunk/Midnight 主题、通知着色、卡片视觉重设计;修复执行日志误显 Completed 问题;清理 CLI 与仓库垃圾文件。

Enhancements

  • 统一 agent 状态配色 — 全局 working=蓝色、idle=绿色、error=红色、paused=琥珀,涉及 Home / Work / Team / AgentProfile / TeamProfile / TeamModals / ChatTeamSidebar / Reports 共 12 个文件
  • 新增 Cyberpunk & Midnight 主题useTheme.ts 扩展主题模式,index.css 新增 oklch 配色变量,Onboarding / Settings 同步更新
  • 首页团队卡片优化 — 团队描述移至名称下方,flex-wrap 适配移动端
  • Work 页负责人状态着色 — assignee 名字颜色随 agent 状态动态变化
  • 通知事件着色 — NotificationBell 按事件类型(completed/failed/alert/chat 等)显示不同颜色图标
  • Store 页图标清理 — 移除侧边栏和所有卡片中的装饰性图标,仅保留名称和副标题
  • 卡片视觉升级 — agent/team 卡片增加悬浮阴影、顶部渐变线、hover 高亮等现代效果

Bug Fixes

  • 修复 Chat 页 working 状态显示为橘色(amber)而非蓝色
  • 修复 CompactExecutionCard 在无明确完成状态时误显"✅ Completed"

Removed

  • Settings 页暂时移除 OAuth Authentication 区域
  • 清理仓库垃圾文件:concurrent-task-system-design.mdcoverage-output.txttest-heartbeat-issue.mdtest-openclaw-config.mdtemp-replace.ts

Stats

  • 21 files changed, ~400 lines net

v0.4.13

Highlights

全新邮箱系统(Mailbox)取代旧的 A2A Bus,统一 agent 间通信与用户通知;新增 CLI 管理命令(model / channel / auth / doctor),大幅提升开箱体验;启动流程加入动画进度展示。

New Features

  • Mailbox 系统 — 退役 A2ABus,所有 agent 间消息路由统一走 mailbox,新增集中式类型注册和统一 Mind Tab 展示
  • 用户通知体系 — 新增 notify_user + request_user_chat 双模式 agent-用户通信,持久化通知存储(SQLite),支持 actionable deep-link 通知
  • CLI 命令扩展 — 新增 markus modelmarkus modelsmarkus channelmarkus authmarkus doctor 命令,用于管理 LLM 提供商和通道
  • 启动动画进度 — TTY 感知的动画渲染启动进度条,启动后自动打开浏览器
  • 评论上下文协议 — agent 回复 task/requirement 评论前,强制先拉取完整状态和历史评论,避免无上下文的空泛回复
  • 通知深度链接 — 点击通知可直接跳转到对应的 task、requirement 或 chat session

Refactoring

  • 移除 ephemeral session — 统一所有 LLM 调用为持久化 session,消除 ~30 个 isEphemeral 分支判断,简化核心代码路径
  • 统一导航配置 — 集中路由配置到 routes.ts,页面重命名(Dashboard → Home, Projects → Work, Chat → Team),修复 UI 问题

Enhancements

  • Slack / 飞书 / WhatsApp adapter 富消息支持增强
  • 用户交互(human_chat / task_comment)提升为优先级 0(critical),始终抢占非用户任务
  • LLM judge prompt 展示完整 mailbox 队列,供智能决策
  • 新增共享模型定义 MODEL_CATALOG

Bug Fixes

  • 修复通知点击导航 — 支持 task、requirement、chat session 的 deep-link
  • 修复启动时空行问题:write() 丢弃渲染内容 & logger 在动画进度期间未抑制控制台输出
  • 修正 ASCII banner 拼写(MARKUS)

Stats

  • 77 files changed, +8,433 / −1,672 lines

v0.4.12

  • Minor fixes and updates

v0.4.11

  • Minor fixes and updates

v0.4.10

  • Minor fixes and updates

v0.4.9

  • Update package dependencies

v0.4.8

  • feat: use node sqlite

v0.4.7

  • Update release notes and install script