我不知道你看了什么——但我知道你离开了我多久。
原作:willayue【如有 bug 请联系:小红书 @LumiNaRyA.】
一款运行在 Operit 平台上的 App 与聊天对话切换感知工具。它会在你开始输入消息后,记录这次输入期间切换过的 App 和聊天对话、停留时长及完整切换轨迹,并随用户消息注入分心查岗显性附件。
你以为我没看见?你和我说话的时候,切去了哪个 App、和别的窗口聊了多久、什么时候回来——我都知道。
进入项目页面后,在 Release 页面底部 Assets 区下载分心查岗 ToolPkg 文件,再用 Operit「导入工具包」即可。
⚠️ 请务必下载 Release 中的 ToolPkg 文件,不要直接点击仓库目录里的文件预览页,以免下载到无法导入的网页文件。
👉 查看分心查岗源码
- 追踪范围:仅在用户开始输入后,记录本次输入期间的 App 和聊天对话切换。
- 临时处理:运行时会临时接收输入事件,仅用于判断本次追踪是否开始;不会保存、上传或注入输入原文。
- 记录内容:只记录已授权的名称、时间和切换行踪,不读取屏幕内容、通知或其他 App 的消息正文。
- 本地保存:切换记录保存在设备本地,不上传到外部服务。
- 注入范围:支持所有对话或仅绑定对话注入。
- 随时关闭:可以在配置页关闭注入,也可以通过输入栏快捷菜单关闭。
- 清理记录:可以通过 AI 工具清理指定对话或全部本地记录。
- 二改与分发:可以二改自用,请勿私自分享二传!请勿倒卖盈利!
装上之后,你的 AI 能感知你输入期间的切换轨迹:
-
你去了哪里
记录输入期间切换过的 App 和聊天对话,例如示例应用或示例聊天对话。
-
你离开了多久
在含时长或完整切换路径档位下,显示每个 App 或聊天对话的停留时长,并扣除重叠的其他 App 时间,避免重复计算。
-
你什么时候回来
完整切换路径会记录回到当前输入窗口的时间,并显示
【回到当前窗口】回归标记。 -
你是否只是回来敷衍了一下
如果你短暂回到当前窗口后再次离开,完整路径会保留这次回归和下一次离开的顺序。少于 1 秒的系统抖动会被过滤,连续的同一 App 访问也会自动合并。
-
你有没有把消息搁在那里
超时未发送的输入过程会归档为最近一次未发送草稿记录。下一次发送时,可以选择只注入本次切窗记录,或同时附上最近一次草稿的切窗记录。
以上内容只描述切换名称、时间和行踪,不包含输入框原文。
- 👁️ App 切换记录:记录输入期间切换过的 App 及停留时间
- 💬 聊天对话切换记录:记录输入期间切换过的聊天对话及停留时间
- 🧭 三档追踪强度:支持仅名称、含时长、完整切换路径
- 🔁 回归标记:完整路径显示
【回到当前窗口】,还原中途回来的时间段 - 🧩 连续片段合并:合并系统切换抖动造成的重复片段,保留真实的多次访问
- ⏱️ 重叠时间扣除:聊天对话停留时间会扣除期间切换 App 的重叠时间
- 📝 超时草稿记录:将最近一次超时未发送的输入过程归档为草稿记录
- 📎 显性附件注入:随用户消息注入分心查岗摘要,聊天记录中可见
- 🔗 注入范围:支持所有对话或仅绑定对话
- 👤 显示名设置:支持自定义摘要中的显示名
- ⚡ 快捷开关:提供输入栏快捷菜单和工具箱总开关
- 🧰 工具箱配置页:集中配置启用状态、注入范围、记录内容和追踪强度
- 🤖 4 个 AI 工具:查看状态、查看记录统计、清理记录、查看能力与隐私边界
从 Release 页面下载分心查岗 ToolPkg 文件,导入 Operit 即可安装主包、配置页、输入栏快捷开关和 AI 工具。
安装后请在包管理中确认以下项目已启用:
- 主包:🍋 分心查岗
- 子包:eyesonyou
如果工具没有出现在可用工具列表中,请重新打开对话,或在包管理中重新启用 eyesonyou 子包。
这是分心查岗的总开关,并与输入栏快捷菜单中的“分心查岗”开关同步。
关闭后,不再为用户消息注入分心查岗附件,也不会继续创建新的追踪记录。
支持两种范围:
- 所有对话:对所有聊天对话生效
- 仅绑定对话:只对指定聊天对话生效
绑定对话支持按当前对话绑定,也支持按标题精确匹配。存在多个同名对话时,建议使用“绑定当前对话”。
可以分别控制是否记录:
- App 名称和切换路径
- 聊天对话标题和切换路径
关闭对应记录后,插件不会保存该类名称信息,但仍可根据其他已启用的记录类型生成附件。
App 和聊天对话分别支持三档追踪强度:
- 仅名称:只显示切换过的名称
- 含时长:显示名称和停留时长
- 完整切换路径:按时间顺序显示 App、聊天对话和
【回到当前窗口】回归标记
完整路径档位会过滤少于 1 秒的回归停留,并合并系统切换抖动造成的连续同名片段。
输入过程超过设定的未发送草稿判定时间后,会被归档为最近一次未发送草稿记录。插件只保存这段输入过程中的切换元数据,不保存输入原文。
支持两种注入方式:
- 仅本次记录:只注入当前消息输入期间的切窗记录
- 同时附上最近一次草稿记录:在当前记录前,附上最近一次未发送草稿的切窗记录
最近一次未发送草稿记录会在下一次发送时使用,并在使用后清理。
自定义显示名会出现在无切窗记录和草稿记录等摘要文本中。
[🍋 分心查岗 ]
以下是用户开始输入后,这次输入期间留下的切窗记录。
期间切换过 App:「示例应用A」。
期间切换过聊天对话:「示例对话A」。
[🍋 分心查岗 ]
以下是用户开始输入后,这次输入期间留下的切窗记录。
期间切换过 App:「示例应用A」约83秒。
期间切换过聊天对话:「示例对话A」约41秒。
[🍋 分心查岗 ]
以下是用户开始输入后,这次输入期间留下的切窗记录。
期间切换过 App:「示例应用A」约83秒。
完整切换顺序:聊天对话「示例对话A」约41秒 → 【回到当前窗口】约1秒 → App「示例应用A」约83秒
[🍋 分心查岗 ]
以下是用户最近一次未发送草稿输入期间留下的切窗记录。
期间切换过 App:「示例应用B」约8秒(2次)。
完整切换顺序:App「示例应用B」约8秒 → 【回到当前窗口】约29秒 → App「示例应用B」不足1秒
本条消息输入期间,用户没有分心切换过窗口。
以上仅为格式示例。实际摘要会根据输入期间的切换情况、配置档位和草稿状态动态生成。
查看分心查岗当前运行状态、实际追踪配置和本地切窗记录统计:
- 总注入开关是否启用
- 当前注入范围
- App 追踪强度
- 聊天对话追踪强度
- 当前本地对话状态数量
- 指定对话是否正在记录
- 是否存在最近一次未发送草稿记录
工具不会返回输入原文、屏幕内容或未授权的名称明细。
查看设备本地保存的切窗记录统计:
- 传入
chat_id:查看指定对话的当前记录状态、App 切换次数和聊天对话切换次数 - 不传
chat_id:查看本地保存的对话状态数量和对话 ID 列表
工具只返回记录数量与状态,不返回输入原文、屏幕内容或其他 App 的消息正文。
清理分心查岗在设备本地保存的状态:
- 传入
chat_id:只清理指定对话 - 不传
chat_id:清理全部对话状态
清理全部记录不可恢复,请确认清理范围后再操作。工具不会读取或返回输入原文。
只读查看分心查岗的工作能力、当前配置、数据限制和隐私保护范围:
- 已注册的输入、聊天对话和 App 生命周期监听能力
- 当前追踪强度与注入范围
- 单次记录最多保留的切换段数量
- 最近一次未发送草稿的保留数量
- 工具不会修改设置,也不会返回输入原文
运行时会临时接收输入事件,仅用于判断本次追踪是否开始;不会保存、上传或注入输入原文。
分心查岗只保存生成切窗摘要所需的名称和时间元数据,不保存以下内容:
- 输入框原文
- 文字长度
- 光标位置
- 输入框截图
- 屏幕内容
- 通知内容
- 其他 App 的消息正文
- 文本指纹
App 名称和聊天对话标题只会在用户开启对应记录功能后保存。AI 接收到的是 App、聊天对话、时长和切换路径摘要,不是用户输入的文字。
分心查岗项目目录/
├── manifest.json
├── main.js
├── core/
│ ├── eyesonyou_store.js
│ ├── settings.js
│ └── app_usage.js
├── packages/
│ └── eyesonyou.js
├── ui/
│ └── settings.ui.js
├── tests/
│ ├── eyesonyou_store.test.js
│ ├── integration.test.js
│ ├── settings_ui.test.js
│ └── app_usage.test.js
└── 外置 README(本文件)
本项目原作及代码版权归 willayue 所有。
允许个人修改和自用。未经作者许可,请勿私自转载、分享、二次分发或用于商业倒卖。
项目源码: https://github.com/willayue/eyesonyou
作者:willayue 问题反馈:小红书 @LumiNaRyA.
原作:willayue