前言¶
在 DeepSeek Harness(dsh)里跑长任务时,界面往往只能等进度。切到浏览器开别的页面,会话上下文和注意力一起被带走;留在 Harness 里又缺少一个「占手但不占会话」的消遣入口。
维护者 JJJACKsong 的 dsh-plugin-2048 把经典 2048 做成侧边栏插件:入口与「技能流」「插件」「定时任务」并列,点开后在主区整页下棋盘,不弹全屏窗、不写会话、不动工作区。分类上属于社区目录里的「趣味换装」类插件;GitHub 仓库当前星标为 0,许可证 MIT,版本 0.2.0(以 package.json 为准)。
这是什么¶
一句话:DeepSeek Harness 侧边栏 2048 小游戏——侧边栏一个图标,主区整页棋盘(sidebar panel, full-page board)。
Host 半是空壳 apply():不注册 Service、不注册 Tool、不写 session、不碰工作区文件。客户端半在浏览器里完成规则与 UI,棋盘与分数只进 localStorage。插件以当前 dsh 进程权限运行;安装前建议自行查看源码与 LICENSE。
核心功能¶
入口与布局¶
安装并激活后,侧边栏底部多 2048 图标;点击后主区显示整页棋盘,副标题文案为「agent 还在跑?先来一局」。界面使用宿主 --dsw-alias-* 主题变量,随 Harness 明/暗主题切换;棋子格本身为固定暖色美术,不跟主题走。
操作与规则¶
- 移动:方向键、
W A S D、Vim 的H J K L;触屏在棋盘上滑动。 - 撤销:最多回退 30 步(工具栏或终局浮层均可);历史最高分不因撤销回退。
- 存档:棋盘、当前分、步数、最高分写入
localStorage,关闭 Harness 再开可续玩(同一浏览器 origin;不跨设备、清缓存会丢)。 - 结算:合成 2048 时出现「注意力惊人!」小卡片,可继续往 4096 堆或结束;无路可走时出现「注意力涣散!」,可撤销或新局。均为盖住棋盘的小卡片,非全屏弹窗。
- 动画:滑动、新块、合并、无效方向抖动;系统
prefers-reduced-motion时动画全部关闭。
兼容性¶
- dsh 版本:
>= 0.1.5-rc.2(engines.dsh)。 - 平台:仅 Web UI(
dsh.client.platform: "web");桌面版即 Web UI,无终端/TUI 界面。 - 客户端依赖注入:
@deepseek-ai/dsh-client-locale;其余为原生 React 与主题变量。
未提供排行榜、音效或 AI 对手;用途就是等待 agent 的几分钟。
安装与启用¶
社区插件目录页:https://www.skillhub.cn/plugins/JJJACKsong/dsh-plugin-2048。源码与说明:https://github.com/JJJACKsong/dsh-plugin-2048。
从插件市场(审核通过后):仓库 README 写明已提交 Open Plugin Market(索引 polang233/dsh-plugin-index),通过后可在市场面板搜 2048 安装。Open Plugin Market 为社区索引站点,与 DeepSeek / 幻方无官方从属关系。
从本地目录(README 给出的当前可用方式):先把插件目录放到本机,再任选其一:
# 非桌面托管的 profile:
dsh plugin --profile <profile> add /abs/path/to/dsh-plugin-2048
其余方式见 README:插件管理器 / 插件页 →「从本地目录安装」并指向该目录;或由 agent 调用 plugin_manager 的 install_bundle,target 填目录绝对路径。
装完即激活(HMR);侧边栏出现 2048。卸载或暂停:插件管理器开关,或 plugin_manager 的 set_bundle / remove_bundle。
典型用法¶
- 长任务跑起来后,点侧边栏 2048,在主区下棋。
- Agent 消息到达后照常通知;切回会话继续即可,游戏状态仍在
localStorage。 - 终局浮层里可撤销几步再试,或点「新局」重开。
开发侧若改 lib/client.js,README 说明需重装 bundle 并重启 Harness 后浏览器才会载入新客户端(HMR 仅对首次安装生效)。规则内核单测:
node test/game.test.mjs
# 或
npm test
实现要点(选读)¶
README 中的取舍便于判断是否适合你的环境:
- 纯浏览器半 + 空 Host:不增加 Host 启动负担,不在任何会话留痕。
- 无构建步骤:
lib/client.js为手写 bundle;改代码刷新依赖上述重装/重启策略。 - 规则内核与 React 解耦:
#region game-core纯函数,单测从源码抽取,与上线逻辑一致。
适用场景与注意¶
适合:经常在 dsh Web UI 里等 agent、希望留在 Harness 内轻度消遣的开发者。
注意:
- 存档绑定浏览器
localStorage,多设备不同步。 - 插件分类为趣味换装,不改变 agent 能力;安装前核对 MIT 许可与仓库代码。
- 需要 dsh
>= 0.1.5-rc.2,且仅 Web UI。
结尾¶
dsh-plugin-2048 把等待时间收进侧边栏与主区整页棋盘:不写会话、不占工作区,合出 2048 或走死局都有轻量反馈。目录页见 skillhub.cn/plugins/JJJACKsong/dsh-plugin-2048,仓库见 github.com/JJJACKsong/dsh-plugin-2048。