DeepSeek Harness Hub
← 返回列表

touche-s/rice-loving-whale

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

一只爱吃大白米饭的傲娇鲸鱼娘桌宠,随时感知 DSH 状态

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/30 · 已提供中文文档
综合分
31.5
GitHub 分
31.5
用户评分
★ Stars
5
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add touche-s/rice-loving-whale
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/19(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

🐳 鲸鱼娘桌宠

一只蓝色女仆 Q 版鲸鱼娘,住在你的电脑桌面上,实时感知 DeepSeek Harness(DSH) 的 AI 状态,陪你干活、撒娇、长大。

她会在你让 AI 干活时跟着变:思考 → 歪头推理,干活 → 敲代码,完成 → 吃大白米饭 🍚,报错 → 惊慌抱头,还能跟你聊天、攒养成、查用量。

鲸鱼娘图标

🎬 她的日常(每个状态都是动态 GIF)

| 待机 · 呼吸眨眼 | 思考 · 歪头推理 | 干活 · 敲代码 |
|---|---|---|
| 待机 | 思考 | 干活 |

| 完成 · 吃大白米饭 | 报错 · 惊慌抱头 | 趴睡 · 睡着啦 |
|---|---|---|
| 完成 | 报错 | 趴睡 |

💖 互动表情(单击 / 面板按钮触发)

| 摸头 · 害羞 | 开心 · 蹦跳 | 生气 · 鼓腮 |
|---|---|---|
| 摸头 | 开心 | 生气 |

角色设定:蓝色女仆装 Q 版鲸鱼娘,蓝发、白围裙、蝴蝶结、头顶呆毛、身后有鲸鱼尾巴。傲娇又粘人,爱吃大白米饭。

✨ 功能亮点

- 🤖 实时感知 AI 状态:监听 DSH 原生事件流,AI 思考/干活/完成/报错,她全程跟随
- 💬 心声气泡:AI 正在输出的文字实时显示在她头顶,像在悄悄念叨
- 🐳 和鲸鱼娘聊天:傲娇的她陪你唠嗑(deepseek-chat),可在宠物页给她起名字
- 💰 余额与用量:填 DeepSeek API Key 后,面板查看余额、本轮/累计 token 与费用,完成时汇报消耗
- 🌱 养成系统:喂食/摸头提升饱腹与好感,陪 AI 干活积累成长,从鲸鱼宝宝长成鲸鱼娘
- 💖 互动表情:摸头害羞、开心蹦跳、生气鼓腮,单击或面板按钮触发
- 😴 待机入睡:一直待机她会慢慢趴睡(站立 → 趴睡)
- ⚠️ 审批/提问提醒:AI 请求操作或提问时,她举手提醒你
- 🎨 素材预设:可保存多套状态图方案,每个状态自定义换图
- 🔄 跟随 DSH 启动/退出:DSH 启动自动拉起,退出自动关闭
- 🔌 通用 Hooks:Claude Code / Codex / Cline 等任意工具都能推送状态驱动她
- ✨ 零依赖:状态桥只用 Node 内置能力,透明无边框悬浮桌面

🚀 快速上手(30 秒开始用)

方式一:下载 exe(推荐,开箱即用)

从 Releases 下载,无需安装任何环境:

- 鲸鱼娘桌宠 Setup x.x.x.exe — 安装版(创建桌面快捷方式,可设开机自启)
- 鲸鱼娘桌宠 x.x.x.exe — 便携版(单文件,双击即用)

三步开始:
1. 运行桌宠(或用 dsh-pet-launcher 让它跟随 DSH 自动启动)
2. 右键托盘 → 打开面板 → 设置里填 DeepSeek API Key(可选,填了才能聊天/查余额)
3. 在 DSH 里让 AI 干活,鲸鱼娘就会活起来!

方式二:源码运行

需要 Node.js ≥ 18:

cd electron
npm install
npm start

🚀 使用

1. 先启动 DeepSeek Harness Web(默认 http://127.0.0.1:3080)
2. 启动桌宠,托盘出现鲸鱼娘图标,窗口底部状态徽章变绿 = 已连接
3. 在 DSH 网页发起对话/工具调用,鲸鱼娘会跟随 AI 状态切换动画
交互

| 操作 | 效果 |
|---|---|
| 单击鲸鱼娘 | 摸头(喂饭在面板 → 宠物页 🍚) |
| 拖拽 | 移动窗口 |
| 任务栏点击 / 托盘左键 | 打开面板 |
| 托盘右键 | 显示/隐藏、切状态、打开面板、自启、退出 |

🖥 控制面板(鲸鱼娘的"家")

右键托盘 → 打开面板,左侧是功能导航:

| 页面 | 功能 |
|---|---|
| 🐳 宠物 | 查看当前状态,改名字,喂饭/摸头/互动表情 |
| 🌱 养成 | 饱腹/好感/成长进度,从鲸鱼宝宝长成鲸鱼娘 |
| 🎨 素材预设 | 保存多套状态图方案,每个状态自定义换图 |
| 💬 对话 | 和傲娇的鲸鱼娘聊天(deepseek-chat) |
| 💰 用量 | 余额、本轮/累计 token 与费用、每轮结算历史 |
| ⚙️ 设置 | 状态源、DSH 地址、API Key、开机自启 |

⚙️ 配置

右键托盘图标 → 打开面板 → 设置页(或在面板左侧点 ⚙️ 设置):

- 状态源:
- DeepSeek Harness(DSH 事件流):监听 DSH 原生事件流实时驱动(默认)
- 通用 Hooks 端口:任意 AI 工具通过 curl 推送状态驱动(http://127.0.0.1:8765/state)
- DSH 地址:DSH Web 服务地址(默认 http://127.0.0.1:3080;局域网部署可填 http://192.168.x.x:3080)
- DeepSeek API Key:可选。填了才能查余额(/user/balance)和对话;会用 Windows 加密(DPAPI)存本机,明文不落盘,不会上传
- 开机自启:登录 Windows 时自动启动

配置文件保存在 %APPDATA%/maid-whale-desktop-pet/config.json,也可手动编辑。

仓库提供了 config.example.json 模板(不含任何敏感信息),字段说明见文件内 _comment。真实配置运行时自动生成到 %APPDATA%,不要把含 Key 的 config.json 提交进仓库。

其他功能
- 🐳 和鲸鱼娘聊天:面板 → 对话页,用你配的 API Key(deepseek-chat)。可在宠物页 ✏️ 给鲸鱼娘起名字,名字会自动带入人设。
- 💰 用量/余额:面板 → 用量页,展示余额、本轮/累计 token 与估算费用、每轮结算历史。
- 🌱 养成:面板 → 养成页,喂食/摸头提升饱腹与好感,陪 AI 干活积累成长。

通用 Hooks 端口(任意 AI 工具驱动鲸鱼娘)

桌宠内置状态端点 http://127.0.0.1:8765/state,任何工具/脚本一行命令即可驱动:

GET:查询参数
curl "http://127.0.0.1:8765/state?state=thinking&text=正在思考"
POST:JSON
curl -X POST http://127.0.0.1:8765/state -H "content-type: application/json" \
-d '{"state":"working","text":"正在写代码"}'

支持的状态:thinking / working / completed / error / idle(含别名:done→completed、failed→error 等)。

Claude Code 示例(~/.claude/settings.json 的 hooks 配置):

{
"hooks": {
"Stop": [{ "hooks": [{ "type": "command", "command": "curl -s \"http://127.0.0.1:8765/state?state=completed\"" }] }],
"SessionStart": [{ "hooks": [{ "type": "command", "command": "curl -s \"http://127.0.0.1:8765/state?state=working\"" }] }]
}
}

更多工具的接入示例(Codex / Cline / Cursor / Windsurf 等)与跨平台通知脚本 hook-notify.js 见 hooks-examples/。

🔌 独立运行状态桥(开发/调试)

项目根提供独立模式,验证 DSH 事件流链路:

node dsh-status-bridge.js
参数:--base http://127.0.0.1:3080  --transport auto|websocket|sse  --debug

应看到 ✅ SSE CONNECTED(mux + host 双流)和状态切换日志。

🧠 技术说明

DSH (dsh web) ──ws──▶ ws-client.js(手写 RFC6455,免 Origin)──▶ dsh-status-bridge.js
│ 双流 mux/host、防抖、idle 超时
▼
Electron 主进程 ──IPC──▶ 渲染进程动画 + 心声气泡

- 为什么手写 WebSocket:DSH 的 client-connection 对 GET /api/events.* 硬编码返回 426,且 WS 握手有 Origin 同源校验(file:// 页面会被 403)。桥在主进程用不带 Origin 的裸握手连接,兼容 Electron 28(Node 18,无全局 WebSocket)。
- 状态防抖:1.5s(同状态事件不重置窗口),8s 无事件自动回 idle。
- 帧格式:{"type":"server-request","rpcId":"…","method":"","payload":{…}}

❓ 常见问题

Q:桌宠窗口没出现?
A:窗口是透明无边框,显示在屏幕右下角;确认 DSH 已启动、托盘图标存在(右键可“显示鲸鱼娘”)。

Q:状态徽章一直是灰色/无边框?
A:未连上 DSH。检查:DSH Web 是否在跑、设置里的地址是否正确、端口是否被占用。

Q:AI 干活时桌宠不动?
A:先跑 node dsh-status-bridge.js 看日志是否打印 ✅ SSE CONNECTED 和状态切换;若 426/403,确认 DSH 版本(需支持 dsh web 模式的浏览器传输)。

Q:心声气泡不显示?
A:心声来自 assistant/chunk 的 text-delta 流,仅在 thinking 状态显示;有些模型只输出 reasoning 块时可能较少。

🛠 开发

cd electron
npm install
npm run check   # 语法检查
npm start       # 运行
npm run build   # 打包便携版
npm run build-installer  # 打包安装版

发布新版本:打 tag 推 GitHub,workflow 自动构建 Release。

📁 项目结构

├── dsh-status-bridge.js      # 状态桥(项目根入口,独立运行验证)
├── dsh-plugin/               # DSH client 插件(网页内桌宠,生态原生)
│   ├── package.json          # dsh.client 声明 + ./client exports
│   └── lib/client.js         # 单文件 bundle:状态机 + 浮层 UI
├── dsh-pet-launcher/         # DSH 宿主插件:让桌宠跟随 DSH 启动/退出
├── electron/
│   ├── main.js               # 主进程:窗口/托盘/桥/对话/用量
│   ├── ws-client.js          # 零依赖 WebSocket 客户端(RFC 6455)
│   ├── dsh-status-bridge.js  # 状态桥实现(双流/防抖/idle/心声)
│   ├── config.js             # 配置读写
│   ├── credentials.js        # API Key 加密存储(Windows DPAPI)
│   ├── usage.js              # 余额查询 + 用量/费用统计(usage.json)
│   ├── presets.js            # 素材预设(多套状态图方案可切换/自定义图)
│   ├── renderer.js           # 渲染进程:动画/互动/心声气泡/待机入睡
│   ├── panel.html/js         # 控制面板(宠物/养成/素材/主题/用量/对话/设置/日志)
│   ├── nurture.js            # 养成系统
│   ├── hooks-server.js       # 通用 Hooks 状态端点
│   └── assets/               # 16:9 立绘动图(idle/thinking/coding/success/error/sleep + 图标/头像)
├── extension/                # (可选)VS Code 扩展雏形
└── config.example.json       # 配置模板(不含敏感信息)

🙏 致谢

- 角色形象参考社区deepseek大肥鱼形象
- 参考开源生态:vscode-pets、duzexu/desktop-pet、dsh-dafeiyu

📄 License

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群