v2.2.13
最新Latest重点更新Copy Anchor LinkHighlightsCopy Anchor Link
- 工单新增独立的负责人,与受理人分离 — 工单现在同时记录负责人(承担跟进责任的人类成员)与受理人(实际执行的一方,可以是智能体)。负责人可在创建对话框、工单侧栏、列表、看板卡片与右键菜单中指定,并可通过新增的「我负责的」范围筛选。负责人会自动订阅相关工单,在被指派时收到站内通知,并纳入到期提醒(
#1277、#1284、#1288、#1303、#1335)。Tickets now have a dedicated owner, separate from the assignee — A ticket carries an owner (a human member accountable for the work) alongside the assignee (whoever actually executes it, including an agent). The owner is selectable in the create dialog, the ticket sidebar, the list view, the board card and the context menu, and it is filterable through a new "owned" scope. Owners are auto-subscribed to their tickets, are notified in the inbox when ownership is assigned, and are included in due-date reminders (#1277,#1284,#1288,#1303,#1335). - 工作区 SSH 命令策略可拦截并审计高风险命令 — 每个工作区都具备命令策略,在解析凭据、建立连接之前先行评估。平台内置不可修改的系统规则,用户可自行添加规则组,每条被拦截的命令都会记录执行者与发起该命令的智能体任务。策略可在「设置 → SSH 策略」中管理,也可用命令行管理;
mopheus ssh exec --dry-run可在不连接的情况下打印将要执行的远端命令(#1230)。Workspace SSH command policies block and audit risky commands — Every workspace gets a command policy that is evaluated before credentials are resolved or a connection is opened. Immutable system rules ship with the platform, users add their own rule groups, and every blocked command is recorded with the actor and the agent task that attempted it. Policies are managed from Settings → SSH Policy and from the CLI, andmopheus ssh exec --dry-runprints the planned remote command without connecting (#1230). - WhatsApp 成为正式渠道,支持两种接入方式 — WhatsApp 既可通过二维码绑定为联动设备,也可接入 Meta WhatsApp Business Cloud API。绑定按安装实例隔离并加密存储,用户在手机上远程退出登录时,安装会被自动吊销(
#1243、#1245)。WhatsApp becomes a first-class channel, in two modes — WhatsApp can be paired as a linked device via QR code or connected through the Meta WhatsApp Business Cloud API. Pairing is per-installation and encrypted at rest, and a remote logout on the phone automatically revokes the installation (#1243,#1245). - 用量看板变得可执行,
mopheus usage将其带到终端 — 用量页提供每日趋势图、可识别令牌激增与效率提升的洞察雷达,以及可直接跳转任务记录的高消耗任务排行。命令行通过mopheus usage summary、top-tasks、agent、daily提供同样的数据(#1283、#1295、#1316)。The usage dashboard becomes actionable, andmopheus usagebrings it to the terminal — The Usage page shows a daily trend chart, an insights radar that flags token surges and efficiency wins, and a leaderboard of the most expensive tasks with direct links into their transcripts. The same data is available from the CLI throughmopheus usage summary,top-tasks,agentanddaily(#1283,#1295,#1316). - 资产成为一等公民清单,并接入真实凭据 — 工作区级资产清单覆盖全部应用,支持按名称、别名、IP 与主机名搜索,并提供行内筛选与列排序。资产除 SSH 密钥与密码外还可保存外部凭据引用,
redis-cli、mongosh等数据库工具可经配置的 SSH 跳板路径在目标资产上执行,密钥不出现在命令行参数中(#1267、235e29e5、f12a7db4、3436d1f0)。Assets become a first-class inventory with real credentials — A workspace-level asset list spans every application with search across names, aliases, IPs and hostnames, inline filters and sortable columns. Assets can hold external credential references in addition to SSH keys and passwords, and database tools such asredis-cliandmongoshrun against an asset through the configured SSH jump path without exposing secrets on the command line (#1267,235e29e5,f12a7db4,3436d1f0). - 智能体任务支持处理结论与受控重试 — 任务可记录处理结论,写明问题所在与记录人,并提供
allowRetry开关彻底关闭重试入口。已派生过重试任务的任务会返回409 AGENT_TASK_ALREADY_RETRIED,不再静默重复执行(#1255、#1254、#1253、#1257)。Agent tasks gain durable notes and controlled retries — An agent task can carry a resolution note recording what went wrong and who wrote it, plus an explicitallowRetryswitch that disables the retry action entirely. A task that already spawned a retry is refused with409 AGENT_TASK_ALREADY_RETRIEDinstead of silently duplicating work (#1255,#1254,#1253,#1257).
新增Copy Anchor LinkAddedCopy Anchor Link
- 工单负责人字段:详情选择器、列表列、看板卡片、右键菜单子项、站内通知、自动订阅、到期提醒,以及「我负责的」范围(
#1277、#1284、#1288、#1303、#1335)。Ticket owner field: per-ticket picker, list column, board card, context-menu submenu, inbox notification, auto-subscription, due-date reminder, and a dedicated "owned" My Tickets scope (#1277,#1284,#1288,#1303,#1335). - 工作区 SSH 命令策略:规则组、用户规则、不可修改的系统规则、权限范围、审计记录、Web 管理页面、命令行管理命令,以及不连接主机的静态策略测试(
#1230)。Workspace SSH command policies: rule groups, user rules, immutable system rules, RBAC scopes, audit records, Web management screens, CLI management commands, and a static policy test that never connects to a host (#1230). mopheus ssh exec --script将本地脚本上传到远端目录执行并在结束后清理;--dry-run可在不连接的情况下打印将要执行的命令。mopheus ssh exec --scriptuploads a local script to a remote directory, executes it there and removes the remote copy afterwards;--dry-runprints the planned command without connecting.- WhatsApp 双模式渠道集成:联动设备二维码绑定与 Meta WhatsApp Business Cloud API,含回调签名校验与媒体下载大小限制(
#1243)。WhatsApp channel integration in dual mode: linked-device QR pairing and the Meta WhatsApp Business Cloud API, with webhook signature verification and media download limits (#1243). - 用量看板重设计:每日趋势图、激增与效率洞察、高消耗任务排行、智能体下钻;新增
mopheus usage命令族,支持表格与 JSON 输出(#1283)。Usage dashboard redesign with a daily trend chart, surge and efficiency insights, an expensive-task leaderboard and an agent drill-down; newmopheus usageCLI suite with tabular and JSON output (#1283). - 智能体任务处理结论与
allowRetry开关,命令行与界面均可见(#1255)。Agent task resolution notes with anallowRetrytoggle, surfaced in the CLI and the task UI (#1255). - 管理端可观测性:管理列表接口分页,并新增运行时、每日趋势与守卫事件接口(
#1229)。Admin observability: paginated admin list endpoints plus runtime, daily-trend and guard-event endpoints (#1229). - 工作区级全局资产清单:视图切换、可深链的 URL 状态、多字段搜索、行内筛选与列排序(
#1267)。Workspace-level global asset list view with a view switcher, deep-linkable URL state, multi-field search, inline filters and column sorting (#1267). - 资产外部凭据引用、凭据连接链查看,以及仅返回已批准引用与 SSH 密钥名的凭据列表,不会回显任何密钥(
235e29e5)。External asset credential references, credential connection-chain inspection, and a credential list that returns only approved references and SSH key names — never secrets (235e29e5). - 基于资产的数据库工具:
mopheus tool redis-cli与mopheus tool mongosh解析工作区资产并经配置的 SSH 跳板路径执行(3436d1f0、f12a7db4)。Asset-backed database tools:mopheus tool redis-cliandmopheus tool mongoshresolve a workspace asset and run the shell over the configured SSH jump path (3436d1f0,f12a7db4). - 数据库可建模为运行在主机之上,数据库实例在拓扑中呈现,RAC 资产在拓扑布局中分组(
0787a139、7c745976、723a6e1f)。Databases can be modeled as running on hosts, database instances are shown in topology, and RAC assets are grouped in topology layouts (0787a139,7c745976,723a6e1f). - 服务条款与隐私政策页面,并在登录与注册页提供本地化的提示链接(
#1332)。Terms of Service and Privacy Policy pages, with localized notice links on the login and registration pages (#1332). - 内置飞书命令行配置技能,跨轮次完成设备授权,并将配置与密钥库文件加密上传到用户配置(
#1306)。A built-in Feishu CLI setup skill that drives device authorization across turns and uploads configuration and keychain files to the user's profile in encrypted form (#1306). mopheus-security-scan技能,覆盖静态分析、依赖扫描、PoC 验证与信任边界参考(1b203be5)。Amopheus-security-scanskill covering static analysis, dependency scanning, proof-of-concept verification and trust-boundary references (1b203be5).- 智能体任务运行时版本快照:任务启动时记录 provider CLI 版本、守护进程版本与 Git commit,并在任务记录中展示(
#1300)。Agent task runtime version snapshots: the provider CLI version, daemon version and Git commit are recorded when a task starts and shown in the transcript (#1300). - 阻塞中智能体任务的实时负载诊断,直接给出确定性的阻塞原因(
#1236)。Live workload diagnostics for blocked agent tasks, stating deterministic blockers directly (#1236). - 作业列表筛选与「即将运行」预览,可推演后续调度时点并标记并发热点(
#1292、3153c971)。Job list filters and an "Upcoming Runs" preview that projects the next scheduled slots and flags concurrency hotspots (#1292,3153c971). - 智能体 MCP 可视化编辑器,提供列表与 JSON 视图,可编辑 STDIO 与 HTTP 服务配置(
822ff94b)。An MCP visual editor for agents with list and JSON views and editable STDIO and HTTP server configurations (822ff94b). - 守护进程技能缓存同步,技能正文只下发一次并在多个任务间复用(
1267e3d6)。Daemon skill cache synchronization, so assigned skill bodies are delivered once and reused across tasks (1267e3d6). - 工单评论中的「引用选中内容」操作,将选中文字以 Markdown 引用形式追加到回复框(
#1329)。A quote-selection action in ticket comments that appends the selected text as a Markdown blockquote into the reply composer (#1329). - 工单描述与评论中可用
#提及 IT 资产,悬停可预览并可点击跳转(#1269)。#mentions of IT assets in ticket descriptions and comments, with a hover preview and click-to-navigate (#1269). - 智能体记录中的子智能体泳道:可按子智能体筛选,并以可折叠泳道展示各自执行(
#1232)。Subagent transcript lanes: the agent transcript can be filtered per subagent, each with a collapsible execution swimlane (#1232). - 附件引用管理:删除前列出引用关系,被编辑移除的引用标记为已删除(
#1264)。Attachment reference management: referenced attachments are listed before deletion and references removed by an edit are marked as deleted (#1264). - 部署密码加密:启动时生成随机密码,明文保存在权限受限的密钥文件中,环境文件仅保留编码值(
dbbc705d)。Deployment password encryption: passwords are generated at startup, the plaintext copy is kept in a restricted secret file, and the environment file holds only the encoded value (dbbc705d). - 聊天主动建单偏好;默认情况下聊天智能体只作答,不主动创建工单(
#1268)。A chat proactive ticket creation preference; by default a chat agent answers without creating tickets (#1268). - 工单描述的变更对比,在工单历史与看板动态中按需加载(
e79bf09d)。Ticket description activity diffs, rendered lazily in ticket history and dashboard activity (e79bf09d). - 看板支持拖拽多张工单,整批移动到目标泳道(
#1289)。Multi-ticket drag on the Kanban board moves the whole selection to the target swimlane (#1289). - 后台 Bash 运行出现在智能体记录中,工具记录可展示命令与编辑内容(
8f2cc09f、3f7e84f6)。Background Bash runs appear in the agent transcript, and agent tool transcript details render command and edit payloads (8f2cc09f,3f7e84f6). - 浮动聊天窗偏好、作业触发的显式时区列,以及作业列表搜索框(
5c05974a、cb38a68c、3153c971)。A floating chat panel preference, an explicit time zone column for job triggers, and a job list search field (5c05974a,cb38a68c,3153c971). - 认领载荷压缩与去重,并在守护进程支持技能缓存时跳过工作区技能正文(
8b82c25d、0f2dfce2、253b75fc)。Claim payload compression and deduplication, and workspace skill bodies are skipped when the daemon supports the skill cache (8b82c25d,0f2dfce2,253b75fc).
变更Copy Anchor LinkChangedCopy Anchor Link
- 智能体运行时提示词会说明当前所处的沙箱布局,使智能体理解冗长的 tmpfs 挂载清单与有意留空的同级目录,不再试图「修复」隔离环境(
#1338)。The agent runtime prompt explains the sandbox layout it runs under, so agents understand the long tmpfs mount list and the intentional empty sibling directories and stop trying to repair the isolation (#1338). - 智能体任务与运行时的生命周期事件在守护进程、WebSocket 与作业触发侧保持一致:
completed与failed仅在真正的终态转换时触发,幂等重放不再重复触发作业(#1321)。Agent task and runtime lifecycle events are aligned across the daemon, the WebSocket hub and job triggers:completedandfailedfire only on a real terminal transition, and idempotent replays no longer re-trigger jobs (#1321). - 智能体任务悬浮入口改为按内容自适应的弹出窗口,锚定在浮动按钮上,取代整屏侧边抽屉(
#1271)。The agent task FAB opens an adaptive-height popover anchored to the floating button instead of a full-height side sheet (#1271). - 管理命令行工具输出真实的运行时与存储统计,此前丢弃响应的写入类子命令也会打印结果(
#1226)。The admin CLI reports real runtime and storage statistics and prints output for write subcommands that previously discarded their response (#1226). - 作业页显示明确的触发时区,并移除「即将运行」卡片中重复的并发提示(
cb38a68c)。The Jobs page shows explicit trigger time zones and removes the redundant concurrency banner from the upcoming-runs card (cb38a68c). - 记忆检索作用域更严格:
asset_id与profile_id等价处理,别名键在写入时归一化,绑定到资产、用户、项目、作业或智能体的记忆不再泄漏到无关任务上下文(#1251)。Memory retrieval is strictly scoped:asset_idandprofile_idare treated as equivalent, alias keys are normalized on write, and a memory bound to an asset, user, project, job or agent no longer leaks into unrelated task contexts (#1251). - 智能体提示词不再暗示每次任务都要写入记忆;例行任务默认只读(
62e2a9f0)。Agent prompts no longer imply that every task should end with a memory write; routine tasks are read-only by default (62e2a9f0). - 追踪 Antigravity 后台命令,任务只在所有分离命令真正结束后才结算(
#1334)。Antigravity background commands are tracked so a task settles only after every detached command has actually finished (#1334). - 升级 Go 与前端依赖版本(
5deede55、3f127b64)。The Go and frontend dependency sets are refreshed (5deede55,3f127b64).
安全Copy Anchor LinkSecurityCopy Anchor Link
- 浏览器 WebSocket 订阅限制在调用方有权限的房间内,中继控制范围与浏览器通知范围分离(
6a054401)。Browser WebSocket subscriptions are restricted to authorized rooms, and relay control scopes are separated from browser notification scopes (6a054401). - 修改本地密码会吊销此前签发的会话:密码版本写入 JWT 并在每次认证时校验(
#1307)。Changing a local password revokes previously issued sessions; a password version is embedded in the JWT and checked on every authentication (#1307). - 聊天来源的智能体任务详情对非会话参与者做脱敏处理(
#1304)。Chat-originated agent task details are redacted for viewers who are not participants in the associated chat session (#1304). - SSH 命令在解析凭据、建立连接之前按工作区策略评估,被拦截的命令记录执行者与智能体任务(
#1230)。SSH commands are evaluated against the workspace policy before credentials are resolved or a connection is opened, and blocked commands are recorded with the actor and agent task (#1230). - 资产凭据列表仅返回已批准的外部凭据引用与 SSH 密钥名,不会回显任何密钥(
235e29e5)。Asset credential listings return only approved external credential references and SSH key names; secrets are never echoed (235e29e5). - 部署密码在启动时生成并保存在权限受限的密钥文件中,环境文件只保留编码值(
dbbc705d)。Deployment passwords are generated at startup and stored in restricted secret files, with only the encoded value kept in the environment file (dbbc705d).
修复Copy Anchor LinkFixedCopy Anchor Link
mopheus ticket assign --unassign报告成功但实际未清空受理人;ticket update与ticket batch-update新增统一的--clear-assignee,传入空的--assignee-id或--owner-id现在表示显式清空而非静默无效(#1294、#1301)。mopheus ticket assign --unassignreported success without clearing anything;ticket updateandticket batch-updategained a unified--clear-assigneeflag, and an empty--assignee-idor--owner-idis now an explicit clear rather than a silent no-op (#1294,#1301).- 看板卡片描述预览把智能体生成的描述渲染成只剩标点的乱码;行内代码现在只做解包而不删除(
#1330)。Board card description previews rendered agent-generated descriptions as punctuation-only garbage; inline code is now unwrapped instead of deleted (#1330). - 事件数千条的任务会让智能体记录对话框卡顿;事件列表改为虚拟滚动,时间线泳道做记忆化(
#1227)。Agent transcript dialogs stalled on tasks with thousands of events; the event list is now virtualized and timeline lanes are memoized (#1227). - Antigravity 任务在长时间后台命令仍在运行时就被判定完成,导致命令被杀且丢失完成唤醒(
#1334)。Antigravity tasks were settled as complete while a long background command was still running, killing the command and losing the completion wake-up (#1334). - 守护进程在连续心跳失败后暂停任务认领与维护请求,并在连接恢复后自动恢复;认领重试采用有界超时并上报上次失败原因(
211d14d5、d57467c2、9a92d39b)。Daemon task claims and maintenance requests are paused after repeated heartbeat failures and resume when connectivity returns; claim retries use bounded timeouts and report the previous failure reason (211d14d5,d57467c2,9a92d39b). - 评论编辑器的
#与@建议浮层因在 React 提交前捕获按键处理逻辑而失效(#1325)。The comment editor's#and@suggestion popups lost their key handling because it was captured before the React commit (#1325). - 流式增量用量此前被记为
unknown;现已按模型跟踪并恢复(#1295)。Usage model attribution was recorded asunknownfor streaming deltas; it is now tracked and recovered per model (#1295). - Claude 与 Pi 的上下文溢出现在都能被正确识别(
38d0ff11、7c146a77)。Context overflow is classified for both Claude and Pi (38d0ff11,7c146a77). - 夜间构建曾间歇性失败,原因是
next typegen触发了对生成文档索引的非原子重写(#1259)。The nightly build failed intermittently becausenext typegenstarted a non-atomic rewrite of the generated docs index (#1259). - 交互式评论组件在工单已关闭时不再过早失效(
#1231)。Interactive comment widgets no longer expire prematurely when posted on a ticket that is already closed (#1231). - Redis 现在拒绝远程交互式会话(
911715f4)。Redis now rejects remote interactive sessions (911715f4). - 工单更新后附件查询会失效刷新(
#1279)。Attachment queries are invalidated when a ticket is updated (#1279). - 在创建工单对话框中清空受理人或负责人后,选择会被正确保留,不再在下次打开时恢复为上一次的值(
#1317、#1303)。Clearing the assignee or owner in the create-ticket dialog now persists instead of the previous actor being silently restored (#1317,#1303). - 浏览器不再把已保存的密码自动填入掩码的环境变量行(
#1248)。The browser no longer autofills a saved password into masked environment variable rows (#1248). - 站内通知正文不再出现 UTF-8 乱码,超长标题会被安全截断(
#1340)。Inbox notification bodies no longer suffer UTF-8 corruption, and long titles are truncated safely (#1340).
破坏性变更Copy Anchor LinkBreaking ChangesCopy Anchor Link
- 资产 ID 仅允许
^[a-zA-Z0-9][a-zA-Z0-9_.:-]*$。斜杠等非法字符会被接口与命令行拒绝,同时有迁移脚本归一化历史斜杠形式的 ID。请将清单中的斜杠形式资产 ID 改为冒号形式(host:node-1)(#1305)。Asset IDs are restricted to^[a-zA-Z0-9][a-zA-Z0-9_.:-]*$. Slash and other illegal characters are rejected by the API and the CLI, and a migration normalizes legacy slash-form IDs. Update manifests that use slash-form asset IDs to the colon form (host:node-1) (#1305). mopheus ticket assign --unassign与mopheus ticket batch-update --unassign现为统一--clear-assignee的隐藏别名。既有脚本仍可运行,但帮助信息中的主推参数名已变更(#1301)。mopheus ticket assign --unassignandmopheus ticket batch-update --unassignare now hidden aliases of the unified--clear-assigneeflag. Existing scripts keep working, but the advertised flag name changed (#1301).mopheus ssh exec --script不再把脚本通过标准输入送入远端 shell。脚本会先上传到--remote-path(默认/tmp)再执行,结束后清理,且不允许以根目录作为目标(026a80af)。mopheus ssh exec --scriptno longer pipes the script into a remote shell. The script is uploaded to--remote-path(default/tmp), executed there, and removed afterwards; the root directory is rejected as a destination (026a80af).POSTGRES_PASSWORD与ADMIN_PASSWORD不再向环境文件写入默认值。它们在首次启动时生成,明文写入权限受限的secrets/文件,环境文件仅保留编码值(dbbc705d)。POSTGRES_PASSWORDandADMIN_PASSWORDare no longer written with default values into the environment file. They are generated on first startup, the plaintext copy is written to the restrictedsecrets/files, and the environment file keeps only the encoded value (dbbc705d).- 资产凭据将外部凭据引用从资产属性迁移到凭据记录本身。仍在资产属性中声明
credential_ref的清单会被自动迁移(f12a7db4)。Asset credentials moved external credential references out of the asset attributes and into the credential rows. Manifests that still declarecredential_refas an asset attribute are migrated automatically (f12a7db4).
升级说明Copy Anchor LinkUpgrade NotesCopy Anchor Link
- 升级后请检查各工作区的 SSH 策略。新工作区默认启用策略,且策略在每次 SSH 连接前评估;此前依赖不受限远端命令的工作区,应在智能体运行前补充显式规则组或放宽系统规则(
#1230)。Review the SSH policy for each workspace after upgrading. Policies are enabled by default for new workspaces and are evaluated before every SSH connection, so a workspace that relied on unrestricted remote commands should add an explicit rule group or relax the system rules before agents run (#1230). - 自托管部署升级后,请先执行一次
mopheus.sh start-server(或up),再从secrets/admin_password读取生成的管理员密码。环境文件中只有编码值(dbbc705d)。After upgrading a self-hosted deployment, runmopheus.sh start-server(orup) once and read the generated administrator password fromsecrets/admin_password. The environment file contains only the encoded value (dbbc705d). - 重新应用清单前,请把其中的斜杠形式资产 ID 改为冒号形式(
#1305)。Convert any slash-form asset IDs in manifests and configuration to the colon form before re-applying them (#1305). - 部署密码加密改动会将
secrets/加入忽略列表。请确保该目录不会进入包含明文凭据的备份(dbbc705d)。The deployment password encryption change addssecrets/to the ignore list. Exclude the directory from backups you do not want to contain plaintext credentials (dbbc705d).
