AB
AiBoss
project

jev-chat-jarvis-mac - 在 macOS 上实时解读聊天消息意图与风险的悬浮窗助手

jev-chat-jarvis-mac 是 jev-chat 维护的 macOS 聊天辅助工具,通过窗口截图 OCR 或系统文本接口读取聊天内容,在悬浮窗中给出意图分类、风险分级与候选回复。项目采用 MIT 许可,仅支持 Apple Silicon Mac 与 macOS 13 及以上,最新版本为 v0.6.2。

jev-chat-jarvis-mac 是一个面向 macOS 的聊天辅助工具:当聊天应用里弹出一条新消息,它会在悬浮窗中给出这条消息的意图分类、风险等级与行动建议,并生成若干条候选回复供用户选择。据项目自述,它的设计原则是「纯只读、无侵入」——不注入聊天应用、不做 hook、不解密聊天数据库,只是通过读取屏幕内容配合本地模型做判断。它适合希望在回复前先看清对方意图、评估沟通风险,又不想把聊天记录交给第三方服务的 macOS 用户。

维护者与状态

项目由 jev-chat 维护,仓库创建于 2026-09-21,最后提交时间为 2026-10-11。最新 release 为 v0.6.2,发布于 2026-09-29。截至 2026-10-11,仓库获得 478 个星标。许可证为 MIT。

主要能力

以下能力均来自项目自述,尚未经过独立验证:

  • 意图与风险判断:项目称可做 8 类意图的零样本分类,在 22 条中文回归口径上为 86.4%;风险按 0–9 分级并给出行动建议,由本地模型一次前向输出全分布。
  • 候选回复生成:内置 14 种话术并发生成,包含恋爱向的「狗头军师」三件套(稳健 / 会撩 / 抽离);每种话术的候选数可在 1—5 条之间配置,默认 2 条。候选先上屏,再由本地模型排序后原位重排,切换话术会按当前消息重新生成。
  • 窗口层级控制:状态栏菜单中的「固定在最前面」可即时切换悬浮窗是否盖在其他窗口之上,默认开启。
  • 响应速度:项目称消息出现后判断与生成同时起跑,在 M1 Pro 上出意图约 1.5 秒、出候选约 1.5–2 秒,并注明这是机制推算口径,以日志实测为准。
  • 正文与引用识别:截图识别路径下,自动与手动校准共用同一套气泡分类规则,区分正文、昵称与固定公告,引用作为所属消息的背景处理,避免被当成另一条待回复消息。
  • YOLO 检测框:可选调试功能,通过 JEV_BOXES=1 启动即开,也可在菜单栏切换,用于显示消息归属、引用状态与 OCR 置信度。

面板采用 macOS 原生浅色磨砂材质,顶部显示当前聊天、分析状态与正在处理的消息,中间依次显示意图、识别率、风险等级与行动建议,底部按话术分组展示候选回复。每条候选左侧显示本地排序概率,右侧提供「复制」与「填入」两个操作,发送始终由用户在聊天应用里手动完成。

使用入口

仓库地址:jev-chat-jarvis-mac。

据项目说明,使用方式分为两类。只想直接使用的话,从 Releases 下载 .app,解压后拖入「应用程序」,第一次需右键选择「打开」,因为项目未做公证,双击会被 Gatekeeper 拦截。若弹窗提示「已损坏,无法打开」,项目建议在终端清除隔离属性:

sudo xattr -r -d com.apple.quarantine /Applications/jev-jarvis.app

首次启动需按提示授予「屏幕录制」权限并退出重开;使用「填入」功能还需「辅助功能」权限。从源码运行时,项目给出的入口是 ./start.command,并提供分层自测命令,例如 uv run python src/perception.py 用于感知层、uv run python src/judge.py "这个需求你今天跟一下" 用于单条消息判断、uv run python src/judge_zh_test.py 用于 22 条中文意图回归。

配置方面,项目称判断层与生成层的密钥都可以不填:判断层不填时首次启动会引导选择在线判断或下载约 3.8 GB 的离线模型;生成层打包版内置共享 key。全部配置集中在一个 env 文件中,路径为 $XDG_CONFIG_HOME/jev-jarvis/env,未设置该变量时为 ~/.config/jev-jarvis/env,文件权限设为 600。项目也提供可视化配置窗口,可从悬浮窗右上角齿轮图标或菜单栏进入。

许可与限制

项目采用 MIT 许可证。

据项目说明,已知限制包括:

  • 硬件与系统:仅支持 Apple Silicon(M 系列)Mac,要求 macOS 13 及以上;不支持 Intel Mac,也不建议通过 Rosetta 运行,启动时会检测并给出中文提示。
  • 权限依赖:截图识别路径需要屏幕录制权限,填入功能另需辅助功能权限;仅使用系统文本接口路径的应用不需要屏幕录制权限。
  • 识别边界:项目明确说明这不是通用视觉理解模型,图片、复杂主题和特殊昵称仍可能识别不全;自动识别可处理本次验证的宽侧栏布局,但不代表所有分栏宽度、全屏和独立聊天窗都已适配。
  • 手动校准:拖动内部列表、改变输入区高度或切换带公告的聊天后,项目建议主动重新校准,当前不保证自动识别这些内部布局变化;两个区域尚未确认时不允许填入,但可以使用复制。
  • 模型选择:项目提醒不要使用 thinking 模型,因为思考会吃光 max_tokens 导致候选为 0 条。
  • 数据流向:会话历史与背景仅保存在本机,但推理时会发送给当前选择的模型服务及配置的中转,服务方的留存政策由其决定。

以上能力描述、性能数字与使用细节均来自项目自述,本站未实际运行验证,具体表现请以仓库文档与自身实测为准。