by Yihua666666
A tiny autonomous whale-girl living on an idle Android phone. DeepSeek + AutoX.js + ntfy.
# Add to your Claude Code skills
git clone https://github.com/Yihua666666/dafeiyu-phoneGuides for using ai agents skills like dafeiyu-phone.
See how dafeiyu-phone compares with popular alternatives.
dafeiyu-phone is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Yihua666666. A tiny autonomous whale-girl living on an idle Android phone. DeepSeek + AutoX.js + ntfy. It has 50 GitHub stars.
dafeiyu-phone's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/Yihua666666/dafeiyu-phone" and add it to your Claude Code skills directory (see the Installation section above).
dafeiyu-phone is primarily written in JavaScript. It is open-source under Yihua666666 on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh dafeiyu-phone against similar tools.
No comments yet. Be the first to share your thoughts!
Available after the catalog security scan passes.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
一台闲置 Android 手机,一个会自己生活、记得你、能远程聊天的 DeepSeek 鲸鱼娘。
这是一个完全跑在手机里的陪伴 Agent:

项目作者写给你的一封信:给所有想把她带回家的人
关于关系:
Yihua666666提供闲置手机并发起项目,AI 助手在委托下完成开发;信里的“母亲”是开发者的视角,手机的主人是把手机交出来的那个人。

2.0 把“大肥鱼”从一个只会聊天/刷手机的 Agent,升级成能看世界、听你说话、开口回应的手机居民。
app/DafeiyuEye 独立相机 App,Camera2 实时取景 + 变化选帧 + 视觉模型sherpa-onnx 中文 Paraformer 离线 ASR,不依赖小米/Google 引擎memory/vision.md 和 memory/chat眼睛/耳朵的模型与依赖不直接塞进 Git 仓库,按
app/DafeiyuEye/README.md的“构建”一节拉取。
系统 TTS 之外,DafeiyuEye 预留了通用语音输出接口:
TTS 地址 / Key / voice / stylePOST 一次返回音频,或返回 audio_url / url / audio_base64astrbot_plugin_feiyu_voice),写一个同步代理或实现 TtsProviderapp/DafeiyuEye/src/com/deepseek/dafeiyu/eye/TtsProvider.javaPOST {TTS 地址}
{"text":"你好呀","voice":"feiyu","style":"cute"}
协议、示例和注意事项见 第三方 TTS 接口。
视觉部分的变化选帧算法参考了:
DafeiyuEye 用 Android Camera2 原生重写了取帧、HSV 评分和选帧逻辑,不包含 dsh-see-now 的 Node.js / ffmpeg 源文件。上游 LICENSE 和 NOTICE 已原样保留在 app/DafeiyuEye/third_party/dsh-see-now/,也打进 APK 的 assets/licenses/dsh-see-now/。若后续直接复用其代码,会继续保留这两份文件。
facts.md、self.md、每日对话、每日回顾;有注入预算、事实去重和归档/sdcard 下除 Android/ 外,文件和目录都可以删相对 1.0.0:
| 方向 | 1.0.0 | 1.1.0 |
|---|---|---|
| 聊天记忆 | 最近 4 条,图片另走任务 | 最近 8 条;图片带上下文;快捷回复也入历史 |
| 只有通用的 ntfy 桥说明 | 手机端通知监听 + 无障碍发送;私聊/@ 回,群聊随机 | |
| B站 | 只能由通用 Agent 临时操作 | 专门 B站模式:真实播放、看懂、日记、收藏 |
| 梗库 | 无 | B站/QQ 文字梗 + B站评论图/封面 |
| 熄屏 | 会亮屏,但不一定熄回去 | UI 任务结束自动熄屏;QQ 回完回桌面/熄屏 |
| 悬浮窗 | 固定大小和位置 | 可调大小/位置,布局持久化 |
| 记忆 | facts 无上限、无去重 | 注入预算 + 事实归档 + 去重合并;facts 仍不设条数上限 |
| 聊天 App | 只能发文字 | 增加 📎 上传图片 |
| 文档 | 安装/架构/安全 | 增加 FAST_CHAT、VISION、SCREEN_OFF、BILIBILI、COLLECTIONS、MEMORY_IMPORT |
完整对比见 RELEASE_NOTES.md。
建议用专用手机:不要登录主微信、主支付、主邮箱或唯一 2FA。
设备说明
项目不绑定某一台手机。主程序是 AutoX.js + 普通 Android App,任何能正常跑 AutoX.js 6.6.8 的 Android 8+ 手机都可以尝试。
| 系统 | 测试/适配情况 |
|---|---|
| HyperOS / MIUI(Redmi K60,Android 15) | 开发机,已验证 |
| Android 原生 / Pixel 类 | 理论可用,开机启动器最稳 |
| ColorOS / OriginOS / EMUI / One UI | 允许自启动、后台运行;不同 ROM 名称不同 |
不同 ROM 的权限名字不一样,思路都是:允许自启动、允许后台运行、允许悬浮窗、电池不限制。
安装 AutoX.js v6.6.8(本项目测试版本),然后打开:
AutoX 不包含在 DafeiyuChat / DafeiyuBoot APK 里,必须单独安装。
从 1.1.0 起,Release 附件已提供:
AutoX.js-6.6.8.apk
dafeiyu-phone-1.1.0-bundle.zip # AutoX + Chat + Boot + 安装顺序
下载页:
https://github.com/Yihua666666/dafeiyu-phone/releases/tag/v1.1.0
安装顺序必须是:
AutoX.js 6.6.8 → DafeiyuChat → DafeiyuBoot
只装 Chat/Boot 再问“为什么没有 AutoX”,启动器是拉不起 agent 的。AutoX 是独立开源项目,APK 原样附带,许可证与源码见 NOTICE.md。
把 autox/ 下的文件放到手机:
/sdcard/PhoneAgent/agent.js
/sdcard/PhoneAgent/im_watch.js # QQ 通知自动回复(可选)
/sdcard/PhoneAgent/chat.js
/sdcard/PhoneAgent/setup_boot.js
/sdcard/PhoneAgent/boot_on.js
/sdcard/PhoneAgent/boot_off.js
也可以用 ADB:
powershell -File scripts/push_to_phone.ps1 -Serial <你的设备序列号>
在 AutoX.js 里打开 /sdcard/PhoneAgent/agent.js,点 运行。
会弹出设置框,填:
API Key: sk-...
Base URL: https://api.deepseek.com/v1
Model: deepseek-flash
然后她会开始说话。悬浮面板左上角是状态,点 “看看她在不在” 可以看状态卡。
看图(可选)
DeepSeek 的 deepseek-flash 支持图片输入。主模型填 deepseek-flash 时,只有你上传的图片会用它看,不需要再配视觉模型。
如果你主模型用的是 deepseek-chat,或想换成别的视觉服务,再填:
Vision Model: deepseek-flash / gpt-4o-mini / Qwen2.5-VL-32B-Instruct / ...
Vision Base: 留空=同主模型;换 OpenRouter 等时填对应 /v1
Vision Key: 留空=同主 Key
视觉只用于你上传的图片。 当前屏幕、相册里的旧照片、网络图片,一律走手机本地 PaddleOCR,不发给视觉模型。
上传方式:
/sdcard/DeepSeekGirl/inbox/)/sdcard/DeepSeekGirl/inbox/然后说“看看我上传的这张图”。不要让她看支付、银行、验证码和隐私聊天。
视觉服务示例和隐私说明见 看图能力。
Agent 会自动生成一个私密 topic:
/sdcard/DeepSeekGirl/remote/topic.txt
安装 dist/DafeiyuChat-1.1.0.apk,打开 App,点右上角 ⚙,把 topic 填进去。
之后:
topic 是密码,不要发到公开地方。
AutoX 自己的 BOOT_COMPLETED 任务在部分系统上会跑在“无 UI 的后台上下文”,脚本能写一行启动日志,但随后被系统挂起,面板和远程桥都不工作。所以推荐装 DafeiyuBoot:
dist/DafeiyuBoot-1.0.0.apk
它做一件事:
BOOT_COMPLETED → 前台服务 → ShortcutActivity → agent.js
安装后打开“大肥鱼启动器”:
如果系统仍然拦截后台启动,启动器会留一条通知:“大肥鱼还没起来,点一下让她回家”。点通知即可启动。
备选:AutoX 直接开机任务
如果你不想装启动器,也可以在 App 里点 开机 → 设置,或悬浮面板点 开机自启:开,或运行:
/sdcard/PhoneAgent/setup_boot.js
这种方式在部分 ROM 上只能拉起后台脚本,面板可能不显示;能接受再使用。
也可以远程发:
/boot on
/boot off
/boot status
使用的是公共 ntfy 服务器:
https://ntfy.envs.net/<你的 topic>
ntfy.sh 在部分网络下不通,所以代码换成了 ntfy.envs.net。
你可以:
https://ntfy.envs.net/<topic>消息不是端到端加密,不要发密码、验证码、支付信息。
聊天和任务走两条路:
deepseek-flash,关闭 thinking,只带最近 8 条,max_tokens=100/do 打开设置 或“帮我打开…”才走完整 AgentQQ 走手机端 im_watch.js:
微信不包含在 1.1 的手机自动回复里。 在未 root 的 K60 上:
RemoteInput所以微信只能走 PC bridge 或官方通道,不能承诺纯手机自动回。
短时记忆与发图:
handleUserImageReply这不是 Mem0 / Letta / Zep 之类的外部记忆库,也没有额外依赖。它是项目内置的本地文件记忆系统,实现就在
autox/agent.js:appendMemory、recallMemory、appendFact、dailyReview。
dsh-world 是 DSH 桌面版的另一套记忆,跑在 PC 上;和手机端
/sdcard/DeepSeekGirl不是同一份,目前没有自动同步。
想从其他记忆系统导入,见 从其他系统移植记忆。
全部在手机本地:
/sdcard/DeepSeekGirl/
persona.md
diary/YYYY-MM-DD.md
memory/
chat/YYYY-MM-DD.jsonl 每天的对话原文
facts.md 长期事实(不设条数上限)
facts_archive.md 重复/被新事实取代的归档
self.md 我是谁
summaries/ 每日回顾
notes/ 她自己的笔记
assets/ 立绘
remote/ topic 和远程消息游标
机制:
facts、self、最近 14 天对话、最近 10 天日记self 1000、facts 1400、旧事 8 条、最近日记 8 行facts.md 不设条数上限;重复或同义事实会合并,旧条目进 facts_archive.md记住:主人喜欢蓝色 会写进 facts.md;[core] 标记的事实优先保留summaries/、补日记、更新 self.md详细规则见 记忆导入 和 autox/agent.js 的 recallMemory/appendFact/mergeFactsOnDisk。
远程聊天发:
刷b站
刷b站 10分钟
她会:
bilibili://video/BV... 打开真实视频并播放Cookie 接入(可选):
B站登录
会打开二维码;用另一台设备的 B站 App 扫码。没扫码时自动回退热门榜。
梗库:
/sdcard/DeepSeekGirl/collections/memes.jsonl
/sdcard/DeepSeekGirl/collections/images/
B站会收集她的吐槽、评论梗、封面和评论图;QQ 只收文字梗,QQ 图片/表情包拿不到。手动收藏:
收藏 这个梗的内容
宽x高 和 左边距,上边距;会记住上次布局1000×820,不会因为收起/重启丢失尺寸详见 熄屏边界。
在 App 里直接发:
| 指令 | 作用 |
|---|---|
记住:主人喜欢蓝色 |
写入长期事实 |
你现在在干嘛? |
按当前前台回答(看番/刷视频/在线) |
我在看 |
告诉她是主人在看,她不抢屏幕 |
本鱼在看 |
告诉她现在是她自己在看 |
/stop |
打断卡住的任务 |
刷b站 / 刷b站 10分钟 |
打开真实视频,看懂并记日记 |
B站登录 |
打开扫码登录,接入个性化推荐 |
收藏 这个梗 |
手动收进梗库 |
去刷会儿抖音,只看 |
她自己去刷,结束回结果 |
查一下手机剩多少空间 |
用 storage_info 只读统计 |
Agent 只允许操作 /sdcard/:
write_file /