前言¶
在 DeepSeek Harness(DSH)里跑长任务时,对话框往往长时间处于「执行中」状态。人不一定想一直盯着日志,又未必方便切换到别的窗口。社区插件 dsh-inputbox-game 的做法是:当会话连续运行超过可配置阈值后,把对话输入框区域变成一块自动运行的小游戏棋盘——AI 自己「玩」,人只看即可;需要打断或补一句指令时,点回输入框即可恢复编辑。
下面按安装、行为、设置和实现要点说明该插件;事实依据为 GitHub 仓库 README 与仓库内 package.json(当前版本 0.2.10,许可证 MIT)。
这是什么¶
dsh-inputbox-game 由维护者 Xingkong42 发布,在 DSH 插件社区目录中归类为趣味向扩展(目录页:skillhub.cn 插件页)。它不改变任务执行逻辑,只在客户端根据「本会话是否在运行」累计连续运行时长,到点后用覆盖层接管输入框卡片,在上面渲染多款无人工操作的小游戏。
核心功能¶
依据 README,插件行为可概括为以下几点。
- 任务开始运行后,插件开始计时。
- 任务连续运行超过设定时长(默认 3 分钟)后,对话输入框整块变成小游戏棋盘。
- 游戏全自动运行,无需键盘操作。
- 点击输入框之外才开始接管画面;输入框正被聚焦时不会打断打字,此时输入框上方会提示「点击输入框之外开始游戏」。
- 点击输入框本身,正常编辑立即恢复。
README 写明共 八款 游戏;文档表格列出七款的玩法与失败条件,仓库 package.json 的描述中另含 走迷宫。表格中的七款如下。
| 游戏 | 玩法 | 失败点 |
|---|---|---|
| 贪吃蛇 | 贪心追食物,越吃越长 | 把自己围死 |
| 乒乓 | 两侧 AI 挡板预测落点对打 | 一方先到 5 分 |
| 小鸟 | 小鸟自动拍翅穿越管道缺口 | 撞管道 |
| 生态箱 | 群体吃资源、繁殖,躲陨石与寒潮干旱 | 群体灭绝 |
| 赛马 | 五匹马自动比赛,可押注 | 本金破产 |
| 跳跃跑酷 | 小人自动起跳越过障碍与深坑 | 掉进坑里 |
| 数值跑酷 | 三条道自动选路,吃数值牌涨攻击力,撞怪掉攻击力,逐关打首领 | 攻击力被磨光 |
每局结束后可随机换一款继续;也可在设置里关闭轮换,或只保留部分游戏进入轮换池。
安装与启用¶
官方推荐通过 DSH 插件命令安装(请将 <profile> 换成你实际使用的 profile 名;dsh web 与桌面端使用的 profile 可能不同):
dsh plugin --profile <profile> add dsh-inputbox-game
桌面端也可在应用内 设置 → 插件 搜索 dsh-inputbox-game 安装,无需命令行。
从 GitHub 源码安装(README 标注为免 npm 的一种方式):
dsh plugin --profile <profile> add github:Xingkong42/dsh-inputbox-game
插件与其它 DSH 插件一样,在当前 dsh 进程的权限与环境下运行。安装前建议阅读仓库源码与 MIT 许可证,确认符合你的使用与合规要求。社区目录站点为独立社区站点,与 DeepSeek / 幻方无官方从属关系。
典型用法与设置¶
图形界面¶
路径:设置 → 插件 → 输入框小游戏(桌面端在插件页的同名页签)。
可调项包括:
- 多久后接管:立即 / 30 秒 / 1 / 2 / 3 / 5 / 10 分钟
- 轮换间隔:关闭 / 1 / 2 / 3 / 5 / 10 分钟
- 游戏池:勾选轮换时能选到的游戏
- 恢复默认
Profile 补丁层默认值¶
若希望在某台机器上预设默认配置,可在 profile 的补丁层写入(设置页中的选择会覆盖这些默认值):
- insert:
- id: dsh-inputbox-game
name: 'dsh-inputbox-game'
config:
thresholdMs: 180000 # 任务连续运行多久后接管输入框,0 = 立即
rotationMs: 180000 # 多久轮换一次游戏,0 = 不轮换
games: [snake, pong, flappy, life, horse, runner]
典型体验流程:先照常发起并让任务连续运行;超过阈值后,在需要娱乐展示时点击输入框外区域启动画面;若要输入新指令,点回输入框即可。
实现要点(便于二次开发或排错)¶
README 中的原理摘要如下。
- 浏览器半面:读取客户端已发布的「本会话是否正在运行」,自行累计连续运行时长;到点后通过
conversation.input.overlay槽位接管输入框卡片。覆盖层使用pointer-events:none,点击穿透到编辑器,因此「聚焦输入框即恢复」无需额外按钮。 - 宿主半面:通过一条只读 HTTP 路由把配置下发给浏览器半面。
- 游戏引擎:八个游戏为纯逻辑、无 DOM 的独立模块,统一契约(
create / step / draw / hud),便于单元测试。 - 主题:配色取自主题变量
--dsw-alias-*,跟随宿主明暗主题。
开发者在仓库内可执行:
npm run build # 由 src/games/*.mjs 重建 client.js
npm test # README 记载为 41 项 Node 单元测试
游戏逻辑位于 src/games/,浏览器半面模板在 client.template.js;设计与实现记录见仓库内的 DESIGN.md。
适用场景与注意¶
更适合:经常在 DSH 里跑较长自动任务、希望在同一会话界面内「挂着看」一点轻量动效的用户;也可作为学习 DSH 客户端 overlay 槽位与双端配置的示例插件。
需注意:接管仅在「连续运行」累计达标且输入框未聚焦、且用户点击输入框外时才开始;默认 3 分钟阈值可按需改短或设为立即。八款游戏中 README 示例配置仅列出六种 id,完整列表以设置页「游戏池」与仓库说明为准。
结尾¶
dsh-inputbox-game 把长任务等待时间复用到对话输入框区域:全自动小游戏、点外开始、点框回编。进一步了解可访问社区目录页 https://www.skillhub.cn/plugins/Xingkong42/dsh-inputbox-game 与源码仓库 https://github.com/Xingkong42/dsh-inputbox-game。