LOOP 每日工作循环:专注模式
August 21, 2026 · View on GitHub
当前状态:
部分实现(注意力引擎、待办/日历/工作台、晨报/晚回顾 Skill 已在;专注会话、通知瀑布、消化清单尚未实现) 基线:工作树2026-08-21(2026-08-21 修订:砍掉四源聚合「今日」仪表盘与独立「稍后处理」清单,见 §12 取舍记录) 平台:桌面端与网页版;托盘角标与系统级联动仅桌面端
1. 目标
把 GTD 与注意力保护整合成一个每日工作循环,而不是两组散落的功能点。 GTD 的组织层由现有待办/日历/工作台承担,本规格不新建聚合仪表盘,只补循环上缺失的三环:
| 环 | 子能力 | 回答的问题 |
|---|---|---|
| 入口闸门 | 专注模式 | 现在什么可以打断我?(动作型,一级入口) |
| 规则层 | 通知瀑布 | 默认什么可以打断我?(配置型,设置页) |
| 批处理 | 消化清单 | 被挡下的消息在哪里等我集中处理?(有积累才出现) |
用户的一天因此成为闭环:白天消息到来,瀑布决定打断还是攒下;专注时段不被打断; 结束消化卡把攒下的消息引进消化清单集中处理;需要跟进的当场转成待办; 消息来源的待办在你回复后自动消解,不留手动清理的尾巴。
本规格是蓝图 §4.3a 与 §1.1(双支柱)的现行落地依据;历史设计与本规格冲突时,以本规格为准。
2. 范围
包含
- 专注模式:一级入口发起专注会话,期间通知按规则聚合或静默、在线状态自动切换,结束后给出消化卡片;
- 通知瀑布:全局默认 → 会话三档 → 免打扰时段 → 穿透白名单的显式规则链,设置页实时给出可读结论;
- 消化清单:专注/聚合攒下的消息的批处理界面(跳回原消息、转待办、标记已读);
- 消息来源待办的自动消解:检测到用户已回复来源消息后,自动建议完成;
- 注意力度量:专注/聚合挡下的打断次数对用户可见(复用现有 baseline/dogfood 度量基建);
- 晨报/晚间回顾一等化(v5):定时生成与展示,不再需要用户主动触发管家 Skill。
不包含
- 四源聚合「今日」仪表盘:自用/小团队量级下与侧栏未读、待办到期视图、日历页重复(见 §12);
- 独立的「稍后处理」清单:GTD 反对多个收件箱;轻量捕获由「转待办 + 自动消解」承担;
- 强制番茄钟语义(25/50/90 分钟只是预设时长,不做锁屏、强制休息等行为干预);
- 任何 Rocket.Chat 服务端改动(沿用架构决策:纯客户端实现);
- 跨设备同步专注会话状态(会话是当下这台设备的状态)。
3. 入口与前置条件
- 专注模式:导航栏/头像旁的「专注」按钮为一级入口;设置 → 通知里只保留规则配置。
- 消化清单:专注结束的消化卡片直接进入;有未消化积累时在导航/消息区出现入口,清空后入口消失。
- 通知瀑布:设置 → 通知,按瀑布层级组织。
- 消息待办自动消解:无独立入口,在待办列表与消息条目上自然呈现。
- 晨报/晚间回顾(v5):需要可用的 AI 运行时,不可用时降级(见 §9)。
4. 主流程
- 白天:消息到来,通知瀑布决定打断还是攒下;看到需要跟进的,右键「转待办」(AI 预填标题/截止日)。
- 回复了某条已转待办的消息后,对应待办自动建议完成,用户确认或它按规则自动勾掉。
- 专注:点「专注」,选时长(25/50/90 分钟或手动结束);期间通知聚合或静默,状态自动切为忙碌;紧急穿透规则照常生效;界面有安静的倒计时指示。
(v1 不改状态消息:
RcUser读不到现有 statusText,改了无法可靠还原——能读后写回再补上。) - 结束:倒计时到或手动结束,状态恢复,弹出消化卡片「攒了 N 条消息 / M 个会话 / K 条 @我」,进入消化清单。
- 消化:在清单里逐条跳回、转待办或标记已读;清空后清单入口消失。
- 晚间(v5):晚间回顾列出未回应的 @、未动的到期待办,一键顺延或标完成。
5. 状态与交互
- 专注:未开始 / 进行中(剩余时间、可提前结束、可延长)/ 结束消化卡 / 进行中收到穿透消息(正常弹出并计数)。
- 消化清单:无积累时不出现入口(不占导航、不显示空态页面);有积累时显示条数;清空即隐。
- 通知瀑布:每个层级可独立配置,顶部实时结论句(「按当前设置:XX 类消息会打断你」);二元「免打扰」映射为会话三档中的「静默」档,存量设置无损迁移。
- 消息待办消解:回复检测命中时给一次性确认(「这条待办的事你已经回了,勾掉?」),不静默勾掉。
6. 平台与依赖
| 场景 | 当前状态 | 行为 |
|---|---|---|
| 桌面端 | 部分实现 | 全部能力;专注期间停任务栏角标闪烁 |
| 网页版 | 部分实现 | 专注与聚合基于浏览器通知生效;无托盘/系统级联动 |
7. 数据与同步
- 通知瀑布与会话三档:Rocket.Chat 用户偏好自定义键(
rcx前缀,经 DDPsaveUserPreferences),随账号跨设备同步;本机镜像兜底沿用现有偏好基建。 - 专注会话与注意力度量:本机存储(沿用
rcx-notification-aggregation-v1存储键族,账号隔离),不同步。 - 消化清单:本机存储、账号隔离;来源是攒桶数据,不做跨设备同步。
- 消息待办关联:沿用待办现有的消息 ID 链接(
mid),自动消解只新增「回复检测 + 完成建议」,不改待办数据模型。
8. 权限与安全
- 纯客户端能力,不新增服务端权限面;关键词穿透只做本地文本匹配,不上送内容。
- 专注期间自动改在线状态属于用户显式动作的结果,结束时必须恢复进入前的状态。
- 自动消解只「建议完成」,最终确认权在用户;不产生对服务端的写操作。
9. 失败与降级
- 无可用 AI 运行时:v5 的晨报/回顾缺席,其余环节(专注、瀑布、消化清单、待办消解)全部为确定性逻辑,不受影响。
- 偏好写回失败:沿用现有「本机生效 + 镜像兜底 + 下次登录收敛」语义,界面给出可见错误而非静默。
- 专注会话期间应用重启:会话按「已结束」处理,不恢复倒计时,攒桶数据保留并可在消化清单查看。
- 回复检测失败(消息加载不全等):不给出完成建议,待办保持原样——宁缺勿滥。
10. 验收标准
LOOP-AC-01:专注会话从开始到结束:通知被聚合、状态自动切换并恢复、消化卡片计数与实际攒桶一致。LOOP-AC-02:通知瀑布四层规则可独立配置,实时结论句与实际通知行为一致;存量免打扰设置无损迁移为三档。LOOP-AC-03:穿透白名单(@我/私聊/关键词)在专注与日常两种状态下都按配置生效。LOOP-AC-04:专注/聚合攒下的消息完整进入消化清单;可跳回、转待办、标记已读;清空后入口消失。LOOP-AC-05:消息来源的待办在用户回复来源消息后收到完成建议;未回复不误建议。LOOP-AC-06:注意力度量对用户可见(本次专注/本周挡下的打断数),数据只来自真实通知路由记录。
11. 实现与测试证据
已存在的地基:
- 通知路由与攒桶引擎:
lib/notificationAggregation.ts;自动化:scripts/regressions/notification-aggregation.test.ts - 注意力度量(baseline/dogfood、降噪率):同上文库;设置入口:
pages/SettingsPage.tsx禅模式区 - 晨报/晚间回顾 Skill:
butler/skills/core/morning-brief/、evening-review/ - 消息→待办转化与待办的消息链接:
stores/todos.ts、components/TodoDialog.tsx - 穿透规则判定:
routeNotification(含关键词表 紧急/urgent/P0)
v1 已落地(专注模式 MVP):
- 会话状态机与统计:
stores/focus.ts;自动化:scripts/regressions/focus-mode.test.ts - 一级入口与专注弹窗:
components/NavRail.tsx、components/FocusDialog.tsx - 结束消化卡片:
components/FocusDigestCard.tsx(挂载于pages/MainPage.tsx) - 通知路由接入:
stores/chat.tsnotifyIfNeeded(专注期间强制聚合规则、停任务栏闪烁、统计记账); 路由顺序由notification-sound.test.ts锁定
新增模块的验收证据随实现补入追踪索引。
12. 已知差距与目标
分期路线(每期都可独立交付、独立验收):
- v1 · 专注模式 MVP(已交付,2026-08-21):一级入口 + 会话状态机 + 复用聚合引擎 + 状态自动切换/恢复;覆盖
LOOP-AC-01主链。 - v2 · 消化卡与消化清单:结束消化卡、批处理界面、度量可见;覆盖
LOOP-AC-04、LOOP-AC-06。 - v3 · 通知瀑布重组:会话三档 + 免打扰时段 + 穿透白名单收敛进瀑布,设置页实时结论句;覆盖
LOOP-AC-02、LOOP-AC-03。 - v4 · 消息待办自动消解:回复检测 + 完成建议;覆盖
LOOP-AC-05。 - v5 · 晨报/晚回顾一等化:定时生成与展示(当前为管家 Skill,需用户主动触发);依赖 AI 运行时,故排在最后。
取舍记录(2026-08-21)
- 砍掉四源聚合「今日」仪表盘:@我 有消息区、待办有到期视图、日程有日历页、ADO 有工作台, 自用/小团队量级下聚合视图与现有一跳可达的模块重复;蓝图 §4.3a 真正值钱的部分是 AI 晨报/晚回顾,保留在 v5。若日后信息量增长到「逐个模块翻一遍」成为负担,可重启。
- 砍掉独立「稍后处理」清单:与待办形成功能重复,且 GTD 反对多个收件箱; 其独有价值(回复后自动离开清单)并入待办的自动消解(v4)。