Jev 聊天助手:安卓上替你判断怎么回消息

Jev 聊天助手是一个用 Kotlin 写的 Android 无障碍应用,读屏取当前对话,调模型判断对方意图并起草候选回复,只填输入框不自动发送。本文讲清它支持哪些平台、三路接口怎么配、模型密钥与费用怎么算,以及微信截图和悬浮窗那几类已知问题的现状。

Jev 聊天助手(仓库名 jev-chat/jev-chat-jarvis)是一个装在 Android 手机上的聊天辅助应用。它借助系统的无障碍服务读取当前聊天窗口里正在显示的内容,把对话发给你自己配置的大模型服务,分析完再在聊天界面上方弹出半透明悬浮窗,给出判断结论和几条候选回复。

Jev 聊天助手是用 Kotlin 写的 Android 无障碍应用,读取屏幕上正在显示的对话,让模型判断对方意图并起草候选回复,只填入输入框、从不自动发送。

它跟通用聊天机器人的差别在流程。通用做法是切出聊天软件、把内容复制到 AI 里、拿到结果再复制回来。这个项目把这几步放回聊天窗口内完成,写入用 ACTION_SET_TEXT,失败退回剪贴板粘贴,发送键始终由用户自己按。仓库用 MIT 许可证开源,主要语言 Kotlin(占 67.2%),截至 2026-09-26 有 6497 个 star、1129 个 fork、25 个开放 issue。

Jev 聊天助手在聊天界面上方展示的半透明悬浮窗,含危险等级与三条候选回复

它解决的是什么问题

没有这类工具时,手机上回一条拿不准的消息有两条路。一条是自己读对方的话、斟酌怎么回;另一条是切到通用 AI 应用,把聊天内容复制过去,等它给结果,再把结果复制回输入框。前者花时间,后者要来回切屏,长对话里复制还容易漏掉上下文。

Jev 聊天助手的做法是把读取、判断、起草、回填都放在聊天界面里。触发分析后,判断模型一次给出对方真实意图、危险等级(1–9)、对方想要什么、该不该马上回、最佳动作,README 标称约 1 秒返回并带把握度。生成模型据此起草 3 条候选回复,判断模型再按合适程度排序。整个过程不 hook、不改包、不调用聊天软件的接口或账号体系,只用无障碍服务读屏幕上正在显示的内容。

采集层按「一个 App 一个适配器」组织,服务按前台包名分发。新增一个聊天软件只需要实现一个几十行的适配器,判断、候选、悬浮窗和填入逻辑全部复用。微信 Android 版已全面下架,仓库不再采集或处理微信内容。

典型使用场景

  • 在 QQ 群里同时应对多条消息、又不想打太极的人。QQ 群聊场景在 9.3.50 版本上做过真机验证,读消息、判断、生成候选、填入输入框整条链路跑通。
  • 用 X(Twitter)私信谈事的人。私信链路的真机验证版本是 12.25,目前只验证过中文界面,英文界面和群聊私信未验证。
  • 在飞书 / Lark 里处理工作消息的人。飞书正文是自绘控件,无障碍树里没有文字,1.3 起改为对每个气泡矩形做 ML Kit 离线 OCR,并按已读状态区分我方与对方。
  • 要维护客户关系、希望回复口径一致的人。本地知识库和联系人档案会在分析时自动带上命中的笔记与这个人的历史消息。
  • 用其它未适配 App 的人(微信除外)。可以在悬浮窗菜单里手动点「截屏识别一次」,整屏 OCR 后同样能出分析,只是不区分我方和对方,全部当作对方所说并在面板标注。

几个常见疑问

它会替我发消息吗?

不会。程序只把选中的回复填进输入框,发送键由你自己点。转账、红包、收款一律不碰。这条写在 README 的常见问题里,也是这个项目在 Issue 里被反复确认的一点。

需要 root 或 Xposed 吗?会不会封号?

不需要 root,也不用装任何模块。它不修改聊天软件的安装包、不注入进程、不调用对方 App 的接口或账号体系,只读系统无障碍服务暴露出来的界面内容,工作方式跟读屏软件一样。

我的聊天记录会被上传吗?

触发分析时,当前聊天文字以及你启用的联系人备注、知识库命中内容和历史记录,会发送到你在设置里配置的模型接口。项目作者不运营中转服务器,也不会收到这些内容;截图在本机 OCR,不上传图片、不需要 Google 服务。历史记录默认关闭,开启后仅保存在手机 App 私有目录。

主要功能

  • 判断与候选回复。判断模型一次给出对方真实意图、危险等级(1–9)、对方要什么、该不该马上回、最佳动作,约 1 秒返回;生成模型起草 3 条口语化候选,判断模型按最合适排序并给出占比。悬浮窗里点一下即可复制或填入。
  • 接口三路可配。设置里的「接口」分三张卡:判断接口、回复接口、视觉接口。地址、密钥、模型分别可填,每张卡有独立的一键连通测试。只有一把密钥也能用,回复与视觉留空会自动继承判断接口的配置。
  • 内置预设。判断接口内置 OpenRouter、博查 Jev、TypeSafe 直连、Vercel、OpenCode Zen、DeepSeek 官方、通义兼容等预设。从旧版本升级时,原来的密钥会一次性迁移到新的三卡结构。
  • 知识库与联系人。笔记支持标题 / 内容 / 标签 / 常驻,常驻笔记每次都带,其它笔记要标签或标题出现在会话标题或最近 6 条消息里才带,最多 5 条;联系人支持姓名 / 别名 / 关系 / 备注,会话标题匹配姓名或任一别名时生效,会自动忽略群名尾部人数、首尾空白和大小写差异。悬浮窗气泡长按可把当前会话一键存为联系人。设置里有「清空知识库与历史」一键删除。
  • 采集与 OCR 兜底。无障碍树里没有正文时,对支持的聊天 App 自动截屏并用 ML Kit 中文离线模型识别。截屏有限频和失败退避,不会每秒连拍,识别时会躲开自己的悬浮窗。
  • 适配新 App 的接口。在 capture/ChatAppAdapter.kt 实现 ChatAppAdapter(pkg 是包名,extract(root, res) 返回标题与消息列表),再在 capture/ChatCaptureService.kt 的 adapters 加一行即可。
  • 会话与触发控制。支持会话白名单,可选自动或手动触发分析;悬浮窗可拖动、透明度可调,前台保活以减少被系统杀后台。

安装与最短示例

仓库里有签好名的 release 包,包名是 apk/jev-assistant-v1.4-release.apk,要求 Android 11 及以上,且只支持 ARM64(arm64-v8a)。

adb install -r apk/jev-assistant-v1.4-release.apk

装好后打开 App,进设置里的「接口」填密钥。最简单的方式是只填「判断接口」一栏的 OpenRouter API Key,回复与视觉留空会自动继承这把密钥。接着按主页向导开三项权限:无障碍(读取当前支持的聊天界面)、悬浮窗或「显示在其他应用上层」(展示分析)、自启动加省电无限制(小米 / HyperOS 必做,否则后台被冻结读不到消息)。

装过 debug 包的要先卸载再装 release,两者签名不同,卸载会清掉密钥和设置。升级到 1.3 及以上版本后,需要把无障碍开关关掉再打开一次,截屏能力才会生效。

想自己构建,环境要求是 JDK 17 加 Android SDK(platform 35 / build-tools 35)。

./gradlew assembleDebug      # app/build/outputs/apk/debug/app-debug.apk
./gradlew assembleRelease    # 需要仓库外的签名 properties,路径由 JEV_KEYSTORE_PROPS 指定

关键参数

  • 判断接口「博查 Jev」预设:服务地址 https://jev.bocha.cn,模型 bocha-jev-v1,页面显示官方地址并支持一键复制,当前限时免费。
  • 判断接口「Vercel」预设:地址 https://ai-gateway.vercel.sh/typesafe,模型 typesafe-ai/jev,密钥用 Vercel AI Gateway 的 key。
  • 判断接口「OpenCode Zen」预设:地址 https://opencode.ai/zen,模型 jev-1.13,输出免费、输入 $0.042/M,一次判断约 1000 输入 token;想全免费可手动改成 jev-1.13-free(限时,功能受限)。
  • 判断接口协议:博查 Jev、TypeSafe 直连与 Vercel 一致,都是下面这个请求格式。
POST /v1/systemone
{model, state, questions}
  • 默认回复模型是 deepseek/deepseek-chat-v3.1,国内 Gemini / OpenAI 会被区域限制。
  • 聊天历史默认关闭,开启后每次分析带上最近 N 条,N 默认 30,并会自动去掉屏幕上已经显示过的部分。
  • 知识库最多带 5 条命中笔记,常驻笔记不受这个上限约束。

结果在哪里看

主要输出是聊天界面上方的悬浮窗。面板里显示危险等级、对方真实意图和排好序的 3 条候选回复,顶部还有一行「知识库 N 条 · 历史 M 条」,用来确认这次分析到底带进了哪些背景信息。

点选候选后,文字会出现在聊天软件的输入框里,是否发送由你决定。自己构建的话,调试包产物在 app/build/outputs/apk/debug/app-debug.apk,release 产物在对应的 release 目录,签名路径由环境变量 JEV_KEYSTORE_PROPS 指定。程序本身的运行日志仓库里没有说明。

实际使用中的坑

Issue 列表里最集中的一类问题是微信相关的截屏异常。有用户反馈装上之后微信截不了图,卸载 Jev 也没恢复;另一条 Samsung 机型的记录更具体,怀疑微信部分页面被持续触发 FLAG_SECURE 或启用了安全 Surface,卸载 Jev、重启手机、进安全模式都不能恢复,最后重装微信才解决。这两条目前标记为已解决。需要说明的是,微信 Android 版已全面下架,这些记录对应的是下架之前的版本。

另一类是悬浮窗在微信里唤不出来。有 realme 7.0 系统的用户反映刚装能用,过一晚微信悬浮窗就没了,QQ 和飞书正常,卸载重装也没用,这条仍是待解决状态。HarmonyOS 4.2.0 上也有类似记录:悬浮窗多次关闭打开后,在微信中无法唤出,但在番茄小说等应用里正常,点开悬浮窗带进微信后按钮无响应。国产 ROM 的后台冻结是这类现象的共同背景,小米 / HyperOS 用户需要额外开自启动和省电无限制。

判断模型渠道断供过一次。有用户报告 OpenRouter 上配置好的 TypeSafe Jev 模型无法使用,TypeSafe 停止注册,没有判断模型程序就跑不起来。这条已解决,后续版本加入了博查 Jev、Vercel、OpenCode Zen 等预设渠道。目前的待解决问题里还有一条接口报错:在「判断接口」里选「自定义」模式、填 Vercel AI Gateway 的 Base URL 和 API Key 后,点「测试判断」返回 HTTP 400,提示 questions type 无效。

还有一条属于设计层面的疑问而非 bug。有 Issue 直接问「llm 自己就能回复,为什么要 Jev 来多插一脚」,认为多一层判断不会提升速度和准确度。这条有 21 条评论、12 个 reactions,是仓库里讨论最多的一个话题,目前仍是待解决状态。项目的回答写在 README 里:判断模型先把对方的真实意图、危险等级和最佳动作定下来,生成模型再据此起草,提示词要求回复必须与知识库一致、不编造知识库没有的事实。

同类项目对比

同样是 Android 无障碍读屏加模型辅助,几个项目的定位差别不小。下面这张表里的两个是站点核验过的同功能项目。

项目适合谁部署方式主要限制什么情况下选它更合适项目地址
Jev 聊天助手在手机上高频处理 QQ 群聊、X 私信、飞书消息,希望先出判断再落笔的人侧载 APK,Android 11+,仅 arm64-v8a只覆盖 QQ / X / 飞书与手动 OCR;微信 Android 已下架;模型调用要自备 API Key 并按用量向服务商付费;X 英文界面与 QQ 一对一未真机验证需要多平台适配、带知识库与联系人档案、并且要判断层和候选排序时Jev 聊天助手
Leon-kennedy-god/cat-apk只在手机 QQ 上活动,想要固定套路的文本改写,不需要判断层的人仓库没有说明未逐一核实需求集中在 QQ 的文本改写,不打算配置多路模型接口时Leon-kennedy-god/cat-apk
tangyuan1129/chat-aside想要极简决策界面,只要「挑一句」或「只看局面自己写」,不需要知识库和联系人档案的人仓库没有说明基于 Jev 聊天助手二次开发,项目规模小(★1),独立维护能力未逐一核实;默认只填入输入框,连点两下才发送只想在聊天界面上挂一个轻量候选面板、不介意多一次点击时tangyuan1129/chat-aside

这两点决定了什么情况下不该选 Jev 聊天助手。它需要你自备模型密钥并承担调用费用,配置项也多,判断、回复、视觉三张接口卡,加上知识库、联系人和历史开关,首次上手成本明显高于只做文本改写的 cat-apk;Android 11 加 arm64-v8a 的门槛也把一部分老设备挡在外面。你的需求只在 QQ 上做固定句式改写、又不想碰 API Key 的话,cat-apk 更省事;觉得整套配置太重、只想要一个候选面板,chat-aside 的模式更直接。

合规边界

这个项目要读屏幕上的聊天内容,还要把文字和启用的背景信息发送到你配置的模型服务商,用之前需要想清楚边界。它只适合用在你自己的设备上,处理你本人有权查看的对话;未经对方知情就把他人聊天内容交给第三方模型,可能触及个人信息保护相关的法律要求。Issue 里也有人提出希望对接法律法规,担心即便没有 hook 或侵入、法律解释上仍有风险,这条目前待解决。误用除了法律风险,还可能触发聊天平台的风控,请自行评估后再装。

内容核验说明

Jev 的价值在于把读屏、判断意图、起草候选回复压进一个悬浮窗,判断与生成分两条接口线,密钥和模型都由自己填。文中整理了三路接口配置、安装步骤,也列出仓库 Issue 里仍未解决的坑,微信适配、渠道失效和 Vercel 报错这几项能省掉装完再摸索的时间。适合用 Android 手机、愿意自己配 API Key 的人;

Star、Fork、开放 Issue 等仓库指标来自公开页面。QQ 9.3.50 与 X 12.25 的真机验证、约 1 秒返回、默认历史 30 条、知识库上限 5 条、OpenCode Zen 价格与 token 用量,均由原作者公开披露,诀.com未独立验证。Issue 的已解决/待解决状态为抓取时标记,会随时间变化。

项目来源与说明

开源项目:jev-chat(jev-chat)

本文由诀.com 编辑基于该项目的公开信息独立撰写,属原创解读,不是对项目文档的翻译或转载;文中提到的功能与参数以官方仓库为准,代码与文档版权归原作者所有。

查看项目仓库