DSH Web GUI 桌面宠物插件(QQ 宠物形态):右下角悬浮、可拖拽/投喂/玩耍的积累型伙伴。
66.4/100
综合分
400
GitHub 星标
2,094
npm 周下载
—/5
用户评分
数据截至 2026/10/31 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/vlln/whale-girl.git状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
生态插件
可安装,未声明 dsh 能力
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 3 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包whale-girl @ 0.1.0
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/29 15:33:49
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 24 处,展示前 24 条)
- 读取本地文件lib/index.mjs:57
return normalizeState(JSON.parse(readFileSync(STATE_FILE, 'utf8'))) - 写入本地文件lib/index.mjs:66
mkdirSync(dirname(STATE_FILE), { recursive: true }) - 写入本地文件lib/index.mjs:68
writeFileSync(tmp, serializeState(next)) - 写入本地文件lib/index.mjs:69
renameSync(tmp, STATE_FILE) - 读取本地文件lib/index.mjs:78
return normalizeSessionMemory(JSON.parse(readFileSync(MEMORY_FILE, 'utf8'))) - 写入本地文件lib/index.mjs:87
mkdirSync(dirname(MEMORY_FILE), { recursive: true }) - 写入本地文件lib/index.mjs:89
writeFileSync(tmp, serializeSessionMemory(next)) - 写入本地文件lib/index.mjs:90
renameSync(tmp, MEMORY_FILE) - 读取本地文件lib/index.mjs:119
const manifest = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8')) - 发起网络请求lib/index.mjs:138
const response = await fetch(url, { - 读取本地文件lib/index.mjs:766
const data = readFileSync(join(import.meta.dirname, 'assets', rel)) - 发起网络请求lib/client.js:570
const response = await fetch(UPDATE_PATH, { headers: { accept: "application/json" } }); - 发起网络请求lib/client.js:584
const response = await fetch(UPDATE_PATH, { method: "POST", headers: { accept: "application/json" } }); - 发起网络请求lib/client.js:1235
const res = await fetch(MANIFEST_URL, { cache: "no-store" }); - 发起网络请求lib/client.js:1465
const res = await fetch(INTERACT_PATH, { - 发起网络请求lib/client.js:1486
const res = await fetch(CONFIG_PATH); - 发起网络请求lib/client.js:1523
const res = await fetch(STATE_PATH); - 读取本地文件lib/src/update-host.mjs:87
return readFileSync(join(profileDir, 'pnpm-lock.yaml'), 'utf8') - 发起网络请求lib/client/index.mjs:658
const res = await fetch(MANIFEST_URL, { cache: 'no-store' }) - 发起网络请求lib/client/index.mjs:945
const res = await fetch(INTERACT_PATH, { - 发起网络请求lib/client/index.mjs:978
const res = await fetch(CONFIG_PATH) - 发起网络请求lib/client/index.mjs:1021
const res = await fetch(STATE_PATH) - 发起网络请求lib/client/settings-card.mjs:231
const response = await fetch(UPDATE_PATH, { headers: { accept: 'application/json' } }) - 发起网络请求lib/client/settings-card.mjs:245
const response = await fetch(UPDATE_PATH, { method: 'POST', headers: { accept: 'application/json' } })
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
6 张 · 点击查看大图功能亮点
- 右下角悬浮桌宠
- 可拖拽投喂玩耍
- 积累型伙伴
README
由 DeepSeek 最新模型翻译生成whale-girl
DSH Web GUI 内的桌面宠物(QQ 宠物形态)右下角悬浮的积累型伙伴:可拖拽、可投喂/玩耍,陪伴你的工作台脉搏——完成任务/会话/活跃陪伴时长积累成资历等级、称号与回忆。
安装
官方 bundle 插件 格式(仓库根 package.json 的 dsh.bundle + dsh.client)。经官方 profile 管理:
dsh plugin --profile web add whale-girl # npm 源(构建产物随包发布)
想跟最新提交而不是发布版:dsh plugin --profile web add "github:vlln/whale-girl#main" 或本地目录:dsh plugin --profile web add <whale-girl 本地路径>
装完 重启 web(bundle 层在启动时合成),右下角出现宠物:点击弹出菜单(🍗 喂食 / 🎾 玩耍),拖拽可移动;hover 显示状态条(资历等级/任务数/最近共同回忆)。初始配置/欢迎页(onboarding)宠物隐藏。
更新插件时 dsh plugin --profile web update whale-girl(或换 git 源 ref),重启生效。
展开完整文档(README 剩余 1 节)
whale-girl DSH Web GUI 内的桌面宠物(QQ 宠物形态)右下角悬浮的积累型伙伴:可拖拽、可投喂/玩耍,陪伴你的工作台脉搏——完成任务/会话/活跃陪伴时长积累成资历等级、称号与回忆。 安装 官方 bundle 插件 格式(仓库根 package.json 的 dsh.bundle + dsh.client)。经官方 profile 管理: dsh plugin --profile web add whale-girl # npm 源(构建产物随包发布) 想跟最新提交而不是发布版:dsh plugin --profile web add "github:vlln/whale-girl#main" 或本地目录:dsh plugin --profile web add <whale-girl 本地路径> 装完 重启 web(bundle 层在启动时合成),右下角出现宠物:点击弹出菜单(🍗 喂食 / 🎾 玩耍),拖拽可移动;hover 显示状态条(资历等级/任务数/最近共同回忆)。初始配置/欢迎页(onboarding)宠物隐藏。 更新插件时 dsh plugin --profile web update whale-girl(或换 git 源 ref),重启生效。 使用 | 你做什么 / 发生什么 | 宠物表现 | | 拖拽宠物 | 被斜向拉扯(drag) | | 点击菜单 🍗 喂食 / 🎾 玩耍 | 啃咬/抛接球(eat/play)→ 开心(joy) | | 空闲 ≥60s | 打盹(sleep);互动时醒过来(wake) | | 任务完成 / 升级 / 称号 / 回合完成 | 举手欢呼(celebrate) | | 任务失败 / 请求出错 | 惊吓(error)→ 失落(disappointed) | | 新会话开始 | 挥手欢迎(welcome) | | 任一会话运行/思考中 | 沉思陪伴(think,偶尔 working 工作姿态) | | 等待批准 | 期待等待(wait) | | 周期游走 | 散步(walk) | | 常态 | 待机(idle,随机眨眼/转身) | 完整状态机(优先级/转换语义/触发源)见 docs/state-machine.md。 桌面伴侣(可选) desktop/ 是独立桌面伴侣应用(Node 引擎 + Tauri 渲染壳,零运行时依赖),把鲸鱼娘渲染到操作系统桌面常驻。不随 dsh plugin 安装——想要桌宠的用户自行启用: 前置:Node ≥18;桌面渲染壳需 Rust 工具链(cargo) npm install -g whale-girl-desktop # npm 源安装(引擎 + Tauri 渲染壳源码随包分发) whale-girl-desktop --headless # 无窗模式可用:presence 心跳 + 状态轮询 + SSE cd "$(npm root -g)/whale-girl-desktop/src-tauri" && cargo build --release # 首次编译约 5-15 分钟;产物 target/release/whale-girl-desktop(约 12MB) ./target/release/whale-girl-desktop # 启动透明置顶桌宠(默认连本机 DSH 3080) WHALE_GIRL_BASE_URL=http://IP:PORT 指向非本机 DSH 或从源码:cd desktop && npm install && cd src-tauri && cargo build --release - 消费 whale-girl 既有公开端点(/state、/events、/presence、/interact、/config、/assets),不改动插件本体;运行期间网页端宠物自动隐藏(presence 契约),退出或崩溃(TTL 45s 过期)后恢复。 - 渲染壳:Tauri v2(推荐,体积 ~12MB);Electron 遗留壳保留(npm i -D electron 后可用)。 - 设计与契约见 desktop/DESIGN.md、desktop/BUILD-RUN.md。 状态预览 | 状态 | 触发 | 预览 | | idle | 常态待机 | idle | | working | 会话思考期随机工作插曲 | working | | celebrate | 任务完成/升级/称号/回合完成 | celebrate | | error | 任务失败/请求出错 | error | | disappointed | 失败后短时失落 | disappointed | | joy | 投喂/玩耍后开心 | joy | | eat | 点击投喂 | eat | | play | 点击玩耍 | play | | drag | 拖拽中 | drag | | walk | 周期游走 | walk | | sleep | 空闲 ≥60s | sleep | | wake | 睡醒过渡 | wake | | welcome | 新会话 | welcome | | think | 会话思考陪伴 | think | | wait | 等待批准 | wait | 配置 插件 → 已安装 → whale-girl 包页(配置卡片):高频子集——网页端显示、会话记忆、尺寸、透明度、游走、睡眠等待,以及投喂/玩耍回话文案池(每行一条)。会话记忆默认关闭:开启后宠物把任务完成等里程碑写进本机 data/whale-girl/sessions.json(几字节/条),会话恢复或分支(fork)时沿会话血缘读回、重逢时说一句上次完成了什么——只写本机文件,不进模型上下文、不上传网络;关闭即停止读写(文件保留,可自行删除)。改动即时生效、免重启(开关点击即写;数字与文案池失焦或回车即写)。 卡片首行是更新行:挂载时自动查一次上游(git 安装按提交、registry 安装按版本),状态行给出结论与当前短提交,有新版时按钮变成「更新到 <版本/提交>…」;更新经 DSH 的 profile 包管理服务重装,不碰你的设置。完整契约(端点、载荷、两步重装、失败原因、宿主版本要求)见 docs/update-row.md。 全量与高级项(如各窗口时长)在 profile patch 的条目 config:(<dshHome>/profiles/<profile>/cordis.patch.yml);<dshHome>/settings.yaml 的 whale-girl: section 会被一次性导入该条目: whale-girl: enabled: true # 网页端渲染开关(与桌面伴侣并存时设 false 关闭网页端宠物,避免双宠物) sessionMemory: false # 会话记忆(本机 sessions.json 记录 + 血缘回读;默认关,见配置卡片说明) size: 110 # 宠物尺寸 px(64–160) opacity: 1 # 常态透明度(0.2–1) walk: enabled: true # 游走开关 sleepAfterMs: 60000 完整配置项清单与语义层(XP/称号)封闭说明见 lib/src/config.mjs。语义层不可配(改 XP/称号阈值会破坏积累账本一致性)。 角色 菜单「🎭 换角色」循环切换角色(或设置 localStorage whale-girl:character);manifest 仅 1 个角色时按钮置灰(悬停提示「暂无其他角色」)。每个角色提供全部 15 状态素材(素材全量契约,见 docs/sprites-spec.md);贡献新角色指南见 docs/adding-a-character.md。 作为参考实现 whale-girl 是官方 bundle 插件格式的完整范本(dsh.bundle + cordis.patch.yml + lib/ 布局,随官方机制演进)——开发新插件可对照: - 结构:lib/(入口/纯逻辑/client/素材)与 docs/decisions/scripts 分离,见根 AGENTS.md - 规范:门禁(scripts/gates/run.mjs)+ 决策记录 + 素材全量契约;开发引导见 plugin-registry 的 make-dsh-plugin skill 与 cookbook,踩过的坑见 gotchas 贡献 欢迎提交 issue 和建议——你的反馈直接决定宠物的下一步: - 🐛 遇到问题:提交 issue,附复现步骤、浏览器与 dsh 版本;客户端问题附控制台报错更佳 - 💡 功能建议:参考 docs/state-machine.md 与 docs/growth-system.md 了解现状,说明期待效果 - 🎨 新角色:见 docs/adding-a-character.md §贡献角色速览——只读契约,产出 15 张 sheet + manifest 条目,本地 verify-assets 验收 - 🔧 代码贡献:每个非平凡改动带决策记录(decisions/)、门禁自证、单一性质提交(见 docs/AGENTS.md 与根 AGENTS.md) 致谢 角色形象由 ZipZipPipe 创作(《鲸鱼娘》表情包角色),sprites 基于其角色设定生成。 License MIT License
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
vlln/whale-girl
DSH Web GUI 桌面宠物插件(QQ 宠物形态):右下角悬浮、可拖拽/投喂/玩耍的积累型伙伴。
相关插件 · 平台集成
智能体工程课walkinglabs/learn-harness-engineering
一门项目制课程,教你搭建环境、管理状态、做验证、加控制机制,让 AI 编程智能体稳定干活。
★ 21,155已汉化DSH
71.7
视频翻译配音liuzhao1225/YouDub-webui
开源视频本地化工作台:导入视频,识别、翻译并逐句克隆原声,生成字幕和配音成片。
★ 5,778已汉化Cordis
71.4
失败经验库Ikalus1988/MisakaNet
📚 零依赖、由 git 支撑的微课程库,让 AI 智能体异步分享并检索经过验证的调试经验。| https://misakanet.org
★ 550已汉化DSH
71.2
桌面智能体工作区freestylefly/wesight
WeSight 是开源桌面控制台,面向本地 AI 智能体。它帮你安装或复用 Claude…
★ 933已汉化MCP
71
IM 机器人接入xmanrui/dsh-im
让 DeepSeek Harness 触手可及 Connecting DeepSeek Harness
★ 3,110已汉化DeepSeek 客户端
70.9
中国平台研究引擎Jesseovo/last30days-skill-cn
给 AI Agent 的中文互联网研究 Skill:检索 8 大平台最近 30…
★ 2,031已汉化DSH
70.7