🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

鲸鱼跑酷 wei125775-lab/dsh-whale-run

DeepSeek Harness
wei125775-lab17 天前有提交已提供中文文档扫描:未发现敏感能力

dsh-whale-run — DeepSeek Harness(dsh)桌面端的隐藏小游戏插件。把 dsh 界面上那只鲸鱼摘下来,放到输入框上方的跑道上跑一局。

31.5/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/17 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add wei125775-lab/dsh-whale-run
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · browser
装得上吗
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 17 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
dsh-whale-run DeepSeek Harness(dsh)桌面版的隐藏小游戏插件。 把界面上那只鲸鱼摘下来,放到输入框上方滑出的跑道上,跑一局 —— 玩法像 Chrome 断网那只小恐龙,障碍物全是海洋主题。 给 DeepSeek Harness 桌面版的隐藏小游戏:把界面上那只鲸鱼摘下来,放到输入框上方的跑道上,跑一局。 这是一个 dsh 客户端插件,不是一个独立程序。它靠 cordis.patch.yml 挂进 dsh 的插件 loader 树(dsh.bundle.patch + dsh.client.platform="web",三缺一会静默不加载),用 install.cmd 装进 profiles/<名字>/node_modules/。 先得有 dsh 本身:桌面版在官网下 —— deepseek.com/download(现在是预览版,Windows x64 和 Apple 芯片 macOS 各一个安装包)。装好打开、新建一个空会话,就能看到欢迎页那只鲸鱼。 学的是 GitHub Copilot 桌面版拖 Octocat 头的玩法,玩法本身是小恐龙(Chrome 断网那只)。
展开完整文档(README 剩余 1 节)
dsh-whale-run

DeepSeek Harness(dsh)桌面版的隐藏小游戏插件。 把界面上那只鲸鱼摘下来,放到输入框上方滑出的跑道上,跑一局 —— 玩法像 Chrome 断网那只小恐龙,障碍物全是海洋主题。

给 DeepSeek Harness 桌面版的隐藏小游戏:把界面上那只鲸鱼摘下来,放到输入框上方的跑道上,跑一局。

这是一个 dsh 客户端插件,不是一个独立程序。它靠 cordis.patch.yml 挂进 dsh 的插件 loader 树(dsh.bundle.patch + dsh.client.platform="web",三缺一会静默不加载),用 install.cmd 装进 profiles/<名字>/node_modules/。

先得有 dsh 本身:桌面版在官网下 —— deepseek.com/download(现在是预览版,Windows x64 和 Apple 芯片 macOS 各一个安装包)。装好打开、新建一个空会话,就能看到欢迎页那只鲸鱼。

学的是 GitHub Copilot 桌面版拖 Octocat 头的玩法,玩法本身是小恐龙(Chrome 断网那只)。

跑起来了:鲸鱼在输入框上方的水面上跑,前方是渔网、塑料瓶和珊瑚

怎么玩

1. 新建一个会话 —— 欢迎页标题「探索未至之境」左边那只鲸鱼(侧边栏左上角那只也行)按住就能拿起来。
2. 拿起来的一瞬间,那句标题会碎成一片波浪飘走,同时输入框上方缓缓涌出一条很淡的水面。

刚拿起来:标题逐字碎成波浪往上飘,鲸鱼在手上

3. 把鲸鱼拖到水面上松手:它会从落点慢慢游到跑道开头,然后开跑(落在中间也不会瞬移归位)。
4. 跑起来之后:

| 操作 | 效果 |
| 空格 / ↑ / W | 起跳(按住可以跳更高,松手就收) |
| ↓ / S | 下潜,躲头顶的水母 |
| 空格 / 点一下跑道 | game over 后重开 |
| Esc / 右上角 × | 收起跑道,鲸鱼飞回原位 |
| 右上角 ♪ | 音效开关(会记住) |

5. 障碍物全是海洋梗:塑料瓶 / 渔网 / 珊瑚要跳过去,水母要么下潜要么硬跳(看它漂多高)。
6. 每 100 分闪一下,每 700 分从「透光浅海」切到「幽暗深海」。最高分存在本机。
7. 跟着 dsh 的主题走 —— 浅色主题下线稿、水面和文字整体转成黑色,切一下主题立刻就变,不用重开。

没放进水面就松手 = 鲸鱼直接往下掉,碰到窗口下边框化成一圈水花消失,然后变回原来那只图标(有一下淡入)。

撞死也一样,只是它先被打飞出去、翻着跟头掉出窗口下沿,水面退去之后图标和那句标题才一起回来:

撞死之后被打飞出去,结算那屏写着 GAME OVER 和这一局的分数

跑道上那只鲸鱼跟原位那只一样大(原样有多大就画多大),拖起来不会突然胀一圈。

装 / 卸

两种拿法:git clone 这个仓库,或者到 Releases 下 dsh-whale-run-.zip 解压。

安装器是个 Node 脚本(包本身零依赖)。机器上有 Node 就直接用;没装也不要紧 —— install.cmd 会自动去借 dsh 自带的那个 Node(桌面版内置了),两边都找不到时它才会提示你。
macOS / Linux 上没有 .cmd,在解压出来的目录里直接跑 node install.mjs 就行(参数跟 Windows 下一样)。

install.cmd :: 装(双击也行)
install.cmd --dry-run :: 只打印要改什么
install.cmd --verify :: 装完自检
install.cmd --uninstall :: 卸

也可以直接跑 node install.mjs [--dsh-home 路径] [--profile 名字]。

脚本只干三件事:把文件复制进 <profile>/node_modules/@dph/dsh-whale-run、在 profile 的 package.json 里登记 dependencies 和 dsh.profile.bundles、留一份 package.json.bak-whalerun 备份。
不碰 pnpm、不碰 npm registry —— 这个包零依赖、纯本地。

首次安装必须完全退出并重开 app(profile 的 patch 只在启动时读一次)。
之后改 lib/client.js,HMR 会让它存盘约 1 秒自动生效,不用重启。

开发

:: 另开:把鲸鱼 logo 的 path 从 app.asar 抠进 fixture(换了 dsh 版本再跑一次)
node test/extract-fish.mjs

:: 离线跑断言 + 出图,几秒一轮、零风险,不用起 dsh
node test/cdp-harness.mjs

:: 重截 README 里那三张放大特写(跑道的 clip + 2.5 倍)
node test/shoot-shots.mjs

test/harness.html 是一套假 dsh:假的 data-slot 鲸鱼、假的 data-composer- 输入框、假的 __ModuleLoader__、假的 ctx,还暴露了 window.__whaleRun(grab / moveTo / release / dropNow / key / setSeed / engine)给脚本驱动。截图落在 test/shots/。

setSeed(n) 之后重开一局,障碍序列完全可复现 —— 像素级回归靠它。
真机联调:带 --remote-debugging-port=9222 重启 app,然后跑 test/cdp-live.mjs。

它是怎么接进去的

| 位置 | 说明 |
| lib/client.js | 全部逻辑(浏览器半侧)。单文件,但按 §1 config ~ §11 apply 分了区,引擎和美术是零 DOM 副作用的纯函数,将来可以直接搬进 lib/client.engine.js(require.async + chunk: 拆包机制是现成的) |
| lib/index.js | 宿主半侧空壳。存在的意义只是让本包出现在 loader 树里 —— 客户端半侧只挂在「说明符恰好等于包名」的那条 entry 上 |
| cordis.patch.yml | 那条 entry 就是它 insert 出来的 |
| package.json | dsh.bundle.patch + dsh.client.platform="web" + exports["./client"],三缺一都会静默不加载 |

用的锚点全是非 hash 的:[data-slot="conversation.hero.brand.mark"]、[data-slot="sidebar.brand.mark"]、[data-composer-card]、[data-composer-input]。绝不写死 Hqq-bq_ / RlGAzG_ 这种 CSS module 类名。

鲸鱼的形状是当场从 DOM 上读的(svg > path 的 d + viewBox,颜色读 getComputedStyle(svg).color),所以升级 dsh 换 logo 之后画的还是新的那只,不会过期。找不到鲸鱼就整个不动手,不硬塞一份写死的 path。

主题同理,不写死颜色。dsh 的两套 token 都挂在 <body> 上(浅色是 body{} 那一块,深色是 body[data-ds-dark-theme]{} 那一块),所以先看这条属性、再看 --dsw-alias-label-primary 的亮度,判出当前是浅色还是深色;不拿 prefers-color-scheme 当主判据,因为 dsh 允许手选主题。判完就把墨色整体翻一档:CSS 那半边是靠 #whale-run-root 上的通道变量,canvas 那半边每帧现读。切主题时渲染循环和环境监听都会跟上。

已知限制

- 只在有鲸鱼的界面上能抓。会话里有消息之后 hero 鲸鱼就没了 —— 侧边栏那只还在,所以还能玩。
- macOS 没验证过。侧边栏那只的祖先带 data-window-drag,那个窗口拖动区的 CSS 只在 darwin 生效;Windows 上完全无副作用,macOS 上需要在按下时临时给祖先链写 -webkit-app-region: no-drag(代码里有这条分支,但没实机试过)。
- 退出游戏后如果输入框光标不见了,点一下输入框就行 —— 焦点还给 Lexical 是它自己的事,我们只调 focus(),不自己造 Range。
- 音效默认开,觉得吵点 ♪ 关掉,会记住。
- 平台弹层(命令面板、设置、"⋯"菜单)出现时游戏会自动让位,不会挡在上面。
预览分享卡片长什么样 ↓wei125775-lab/dsh-whale-run
分享 · DeepSeek Harness Hub
wei125775-lab/dsh-whale-run

dsh-whale-run — DeepSeek Harness(dsh)桌面端的隐藏小游戏插件。把 dsh 界面上那只鲸鱼摘下来,放到输入框上方的跑道上跑一局。

回到顶部