Skip to content

Repository files navigation

Jev 聊天助手

Jev 聊天助手

装在手机上的「对话副驾」:在支持的聊天 App 里读懂对方、告诉你该怎么回,一键填进输入框,发不发由你。

Stars Forks Version Android License

官网 · 隐私政策 · 下载 APK · 历史版本 · 更新日志 · macOS 版 · Windows 版

❤️赞助商

想出现在这里?

点击折叠
博查 感谢 博查 赞助了本项目!博查是一个给 AI 用的搜索引擎,让你的 AI 应用连接世界知识,获得干净、准确、高质量的搜索结果。提供 Web Search API、Bocha Jev API 等多种联网搜索和模型服务。open.bocha.cn
小优店铺 感谢 小优店铺 赞助了本项目!小优店铺是一家数字商品与账号服务店铺,为本项目的用户提供选购渠道。点此前往。
速创猫 Vytal 感谢 速创猫 Vytal 赞助了本项目!速创猫 Vytal 是专业的 AI 视频工作流平台,提供可批量复用的视频工作流,降低内容制作门槛,服务内容创作者、培训机构及中小团队。点此前往。

截图

悬浮窗:聊天上方的 Jev 分析面板
悬浮窗:危险等级、对方真实意图、排好序的 3 条候选回复
设置页
设置页:判断 / 回复 / 视觉三路接口分别可配

为什么用它

  • 它先判断,再写字。 大多数工具直接让模型编一句回复。Jev 先用判断模型给出对方真实意图、危险等级、该不该马上回,再据此起草回复。
  • 不动你的聊天软件。 不 hook、不改包、不走任何 App 的接口或账号、不读数据库,只用系统无障碍服务读「屏幕上正在显示的对话」。
  • 发送权永远在你手里。 程序只把回复填进输入框,从不自动发送,不碰转账 / 红包 / 收款。
  • 一套内核,多平台。 QQ、X 真机跑通,飞书靠 OCR 补正文。新增一个 App 只需写一个几十行的适配器;微信 Android 版已全面下架,不再采集或处理微信内容。
  • 它认识你的人和事。 本地知识库与联系人档案,分析时自动带上命中的笔记和这个人的历史,回复不会和你的设定打架。
  • 接口自己配。 判断 / 回复 / 视觉三路分别可填。分析时,聊天文字和你启用的背景信息会发给你配置的模型服务商;作者不运营中转服务器。
  • 本机存储可控。 密钥、知识库和可选历史存 App 私有空间;截图只在本机 OCR,不上传。第三方服务商如何处理收到的内容,以其隐私政策为准。

平台支持

平台 状态 采集方式 备注
QQ Android ✅ 全链路 无障碍读节点 9.3.50 实测(群聊);1v1 按同结构推断
X / Twitter 私信 ✅ 全链路 解析 Compose 节点的 content-desc 12.25 实测,中文界面;英文界面未验
飞书 / Lark ✅ OCR 兜底(真机验证) 无障碍读气泡矩形 + ML Kit 离线 OCR 识别正文 正文自绘不在无障碍树里,1.3 起对每个气泡矩形做 OCR;我/对方按已读状态判
其它未适配 App(微信除外) ✅ 手动 悬浮窗菜单「截屏识别一次」整屏 OCR 不自动、不分我/对方(全部当作对方所说并在面板标注);微信 Android 版已全面下架
桌面端 / 网页 ⏳ 规划 截图 + OCR / 视觉 同一内核,换采集方式

本项目只读你自己设备上、你自己有权查看且当前版本支持的聊天;微信 Android 版已全面下架,不提供微信采集与分析。

快速开始

1. 装包。 仓库里有签好名的 release 包:apk/jev-assistant-v1.4-release.apk(Android 11+,仅支持 ARM64 / arm64-v8a)。各版本安装包也在 Releases。

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

2. 填密钥。 打开 App → 设置 →「接口」分三张卡:判断接口 / 回复接口 / 视觉接口。最简单只填「判断接口」一栏的 OpenRouter API Key,其余两栏留空会自动继承这把密钥就能用。想换回复模型(默认 deepseek/deepseek-chat-v3.1,国内 Gemini / OpenAI 会被区域限制)就在「回复接口」选预设(OpenRouter / DeepSeek 官方 / 通义兼容)或自填地址,每张卡都有独立的一键连通测试。

3. 开权限。 按主页向导开三项:

  • 无障碍(读取当前支持的聊天界面;升级到 1.3+ 后需要把无障碍关掉再打开一次,截屏能力才生效)
  • 悬浮窗 / 显示在其他应用上层(展示分析)
  • 自启动 + 省电无限制(小米 / HyperOS 必做,否则后台被冻结读不到消息)

装过 debug 包的要先卸载再装 release(签名不同),卸载会清掉密钥和设置。小米 / HyperOS 重装后悬浮窗权限会被重置,装完按向导再开一次。

功能

判断与候选回复

  • 判断模型一次给出:对方真实意图、危险等级(1–9)、对方要什么、该不该马上回、最佳动作。约 1 秒,带把握度。
  • 生成模型起草 3 条口语化候选,判断模型按「最合适」排序并给出占比。
  • 悬浮窗里点一下复制或填入,填入用 ACTION_SET_TEXT,失败自动退到剪贴板粘贴,任何情况下都不发送。

知识库与联系人

在设置 → 分析 →「知识库与联系人」。

  • 笔记:标题 / 内容 / 标签 / 常驻。常驻笔记每次都带;其它笔记要标签或标题出现在会话标题或最近 6 条消息里才带,最多 5 条。支持多行文本粘贴导入,空行分段,每段首行当标题。
  • 联系人:姓名 / 别名(每行一个)/ 关系 / 备注。会话标题匹配姓名或任一别名时生效,自动忽略群名尾部人数、首尾空白和大小写差异。悬浮窗气泡长按可把当前会话一键存为联系人。
  • 历史:「记录聊天历史(只存本机)」默认关闭;开启后每次分析带上最近 N 条(默认 30),并自动去掉屏幕上已经显示过的部分。
  • 清除:知识库与历史都存在 App 私有目录,设置里「清空知识库与历史」一键删除,不进日志、不进 git。具体数据类别、用途、接收方和保留方式见隐私政策。
  • 悬浮窗面板顶部会显示一行「知识库 N 条 · 历史 M 条」,方便确认到底带了什么。

接口与模型

  • 判断 / 回复 / 视觉三路的地址、密钥、模型分别可填。
  • 判断接口新增内置预设「博查 Jev」,排在选项第二(OpenRouter / 博查 Jev / TypeSafe 直连 / Vercel / OpenCode Zen / 自定义),选中后自动填好服务地址 https://jev.bocha.cn 与模型 bocha-jev-v1(协议与 TypeSafe 一致),页面上会显示官方地址并支持一键复制,当前限时免费。全新安装默认使用 OpenRouter;已经配置过判断接口的老用户不受影响,provider 和密钥都不会被改动。
  • 判断接口另有「Vercel」预设:地址 https://ai-gateway.vercel.sh/typesafe,模型 typesafe-ai/jev,密钥用 Vercel AI Gateway 的 key。协议与 TypeSafe 直连相同(POST /v1/systemone)。
  • 判断接口另有「OpenCode Zen」预设:地址 https://opencode.ai/zen,模型 jev-1.13(输出免费、输入 $0.042/M,一次判断约 1000 输入 token),密钥用 OpenCode Zen 的 key。协议与 TypeSafe 直连相同(POST /v1/systemone);想全免费可手动改成 jev-1.13-free(限时,功能受限)。
  • 内置 OpenRouter、博查 Jev、TypeSafe 直连、Vercel、OpenCode Zen、DeepSeek 官方、通义兼容预设,每张卡一键连通测试。
  • 只有一把密钥也能用:回复、视觉留空自动继承判断接口的配置。
  • 从旧版本升级时,原来那把密钥会一次性迁移到新的三卡结构。

采集与 OCR

  • 一个 App 一个适配器,服务按前台包名分发,适配器只负责把当前窗口变成「标题 + 消息列表」。
  • 无障碍树里没有正文时,对支持的聊天 App 自动截屏并用 ML Kit 中文离线模型识别,不上传图片、不需要 Google 服务。
  • 截屏有限频和失败退避,不会每秒连拍;识别时会躲开自己的悬浮窗。
  • 未适配的 App(微信除外)可在悬浮窗菜单里手动触发「截屏识别一次」。

常见问题

它会替我发消息吗?

不会。程序只把选中的回复填进输入框,发送键永远由你自己点。转账、红包、收款一律不碰。

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

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

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

触发分析时,当前聊天文字以及你启用的联系人备注、知识库命中内容和历史记录会发送到你在设置里配置的模型接口。项目作者不运营中转服务器,也不会收到这些内容;截图在本机 OCR,不会上传。历史记录默认关闭,开启后仅保存在手机 App 私有目录。第三方模型服务商可能按自己的政策处理请求内容,请在使用前查看隐私政策及所选服务商的政策。

悬浮球不见了,或者读不到消息怎么办?

多半是国产 ROM 把后台进程冻结了。先确认无障碍、悬浮窗、自启动、省电无限制四项都开着,小米 / HyperOS 尤其要开后两项。重装后悬浮窗权限会被重置,按主页向导再开一次。在聊天界面里随便点一下通常能自愈。

飞书里读不到正文?其它 App 能用吗?

飞书的消息正文是自绘控件,无障碍树里没有文字,1.3 起改为对每个气泡矩形做离线 OCR。其它未适配的 App(微信除外),可以在悬浮窗菜单里点「截屏识别一次」,整屏 OCR 后同样能分析,只是不区分我方和对方。

要花钱吗?

软件本身免费开源。模型调用走你自己的 API Key,按用量在对应服务商那边结算,项目不经手任何费用。

升级之后没反应?

把系统设置里的无障碍开关关掉再打开一次。1.3 起新增了截屏能力,服务需要重新绑定才会生效。

它怎么工作

Jev Android 对话副驾关键流程:本机读取与 OCR、发送文字到用户配置的模型接口、展示候选并由用户决定是否发送

图中展示数据边界:聊天界面读取与 OCR 在本机完成;触发分析后,文字和启用的背景信息发送到你配置的模型服务商;候选回复由你确认,应用不会代发。详见隐私政策。

  • 采集:一个 App 一个适配器,服务按前台包名分发。适配器只负责把当前窗口变成「标题 + 消息列表(谁说的、说了什么)」,下游全部通用;树里没有正文时走截屏 + 离线 OCR 兜底(限频、失败退避,不会每秒连拍)。
  • 判断:Jev 只回答选择 / 打分 / 是非,一次请求发全部题目,约 1 秒返回;命中知识库时 state 里会带 background(关系 + 联系人备注 + 命中笔记)和 history(历史消息)。
  • 回复:生成模型起草 3 条候选,Jev 排序;提示词要求回复必须与知识库一致,不编造知识库没有的事实。
  • 回填:ACTION_SET_TEXT,失败则剪贴板 + ACTION_PASTE,不发送。
适配一个新的聊天 App
  1. 在 capture/ChatAppAdapter.kt 实现 ChatAppAdapter:pkg 是包名,extract(root, res) 从无障碍树取出标题和消息列表(Msg(side, text),side 为 me / other),不在聊天窗时返回 null。
  2. 在 capture/ChatCaptureService.kt 的 adapters 加一行。
  3. 判断、候选、悬浮窗、填入都不用动。

先用 adb shell uiautomator dump 看目标 App 暴露了什么,已有三个专用适配器,另有未适配 App 的手动 OCR 入口(微信 Android 版已全面下架):

App 树的情况 适配器怎么做
QQ 节点开放,有 id 正文 id/mjn、标题 id/371,按气泡贴哪侧头像判谁说的
X Compose,无 id,text 为空 解析 content-desc 发件人:正文。时间。Read,发件人是「你」即我方
飞书 正文自绘,树里没有文字 树上拿 bubble_content_container 矩形与已读状态,OCR 每个矩形的正文

适配器返回 null 表示不在聊天窗,返回空消息列表表示在聊天窗但树里没正文——只有后者会触发 OCR 兜底。

QQ、X 全程只有一个 Activity,判「是不是聊天窗」要看树里有没有该有的节点(如输入框),不能看 Activity 名。

构建与目录结构

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 指定
  • app/ — Android 应用(Kotlin,传统 View)
    • capture/ 无障碍采集:ChatAppAdapter.kt 各 App 适配器、ChatCaptureService.kt 分发服务、前台保活、ocr/ 截屏与离线识别
    • jev/ Jev 客户端与题目集 · overlay/ 悬浮窗 · core/ 配置与数据模型(含 core/kb/ 知识库存储与上下文构建)
    • KnowledgeActivity 知识库管理页(笔记 / 联系人)
  • tools/jev/ — Jev 题目集与校准脚手架(Python)
  • docs/ — 设计与验收文档
  • apk/ — 签好名的 release 包

已知限制

  • 国产 ROM 后台冻结:小米 / HyperOS 会杀后台进程,前台保活、自启动、省电无限制都配了仍可能被杀,气泡短暂消失,在聊天里再交互一下自愈。
  • 飞书正文靠 OCR:飞书正文是自绘控件,无障碍树里只有气泡矩形,1.3 起对每个矩形做离线 OCR;我 / 对方按已读状态判断,判反时请用「存为联系人」并在备注里说明,或关掉自动分析改手动。
  • X 只按中文界面验过:分隔符 :、上午 / 下午、Read 是中文界面实测;英文界面只做了兜底,未验。
  • 群聊:按一对一分析,「对方」与关系设定对群聊不准。
  • 中文:Jev 主训练语言是英文,题目用英文、聊天内容保留中文;建议用自己的真实对话做一批标注校准(见 tools/jev/)。
  • 知识库检索是标签/标题包含匹配,不做语义检索,笔记请打好标签才能被命中。历史按「谁说 + 原文」去重,同一个人重复说同一句只记一次。
  • OCR 依赖系统放行截屏:无障碍服务要被系统允许截屏才能用,小米 / HyperOS 可能拒绝(面板会提示失败原因);受保护窗口(FLAG_SECURE)截不到。
  • OCR 只认屏幕上看得见的部分:长消息被截断的部分读不到;识别有错字。
  • 包体变大:ML Kit 中文离线模型让 APK 从约 12 MB 增至约 27 MB,且只打 arm64-v8a。
  • 微信 Android 版已全面下架:当前版本不再采集、OCR、分析或填入微信内容。

交流群 / 需求收集

如需联系,请公众号私信。 合作、赞助、反馈、进群失败、二维码过期,都走公众号私信,其它渠道不一定看得到。

公众号二维码

想听真实需求:你在哪个聊天 App 上最想要这个副驾?希望它判断什么、怎么提示、什么绝对不能碰?公众号私信直接说。

点击展开交流群二维码(都已满或已过期,进群请公众号私信要新码)
1 群
1 群
2 群
2 群
3 群
3 群
4 群
4 群
5 群
5 群
6 群
6 群
7 群
7 群
8 群
8 群
9 群
9 群

姊妹项目

同在 jev-chat 组织下:

  • Jev 聊天助手 macOS 版:消息意图识别悬浮窗,看屏 + 本地小模型判断意图和风险,再按话术生成回复候选,纯只读。
  • Jev 聊天助手 Windows 版:聊天窗口旁挂的回复辅助,窗口截图 + 本地离线 OCR,3 条候选一键填入,发送永远手动。

隐私政策见 PRIVACY.md(说明读取了什么、发给谁、存在哪里、怎么删除)。

友情链接

蓝衣剑客
蓝衣剑客
资深 AI 专家、作家,火山引擎领航 KOL、阿里云 Agent 创客、WaytoAGI 核心创作者。深耕软件开发、系统架构与项目管理,著有《豆包高效办公》《Kimi 高效办公》等畅销 AI 书籍,获京东图书 2025 年度超级新书、2025 机工创作之星;曾参与多项 AI 领域标准及国家级报告起草,为数十家世界百强企业提供企业级 AI 咨询与实施。

GitHub:@lanyijianke · 邮箱:lanyijianke@outlook.com

版权与许可

Copyright © 2026 Finderchangchang 与 jev-chat 贡献者。代码以 MIT 协议开源,另见 NOTICE。

  • 可以商用:个人和公司都可以使用、修改、再分发,或集成进自己的产品,不需要付费或事先授权。
  • 必须注明出处:分发或商用时保留 LICENSE 与 NOTICE,并在产品「关于」页、说明文档或发布页写明来源。推荐写法:基于 Jev 聊天助手(https://github.com/jev-chat/jev-chat-jarvis)二次开发。
  • 不要用「Jev 聊天助手」「jev-chat」名称或 chatjevs.com 域名暗示由原作者出品或背书。

隐私与免责声明:触发分析时,聊天文字和启用的背景信息会发送到你自行配置的第三方模型服务商;截图仅在本机 OCR。请阅读隐私政策以及所选服务商的政策,并遵守 QQ、X、飞书等软件的许可协议与当地法律法规。作者不对第三方服务商的数据处理行为或使用后果负责。

About

装在手机上的对话副驾:在 QQ / X / 飞书里读懂对方、给出候选回复、一键填入输入框,发不发由你。非侵入,只读屏幕,不 hook 不改包。

Topics

Resources

Stars

6.1k stars

Watchers

7 watching

Forks

Releases

Packages

Contributors

Languages