dsh-ikun-pet
An ikun (basketball meme) pet that fills the dock under the "Deep diving..." status row during replies: a sprite-sheet pet walks a 0→100% progress bar, switching animation and text every 20%, and plays a system-level "nǐ gàn ma~" voice cue at completion.
Install
dsh plugin --profile web add dsh-ikun-pet
Sandbox test results
| Stage | Result |
|---|---|
| 1 install | ✓ |
| 2 list | ✓ |
| 3 mount | ✓ |
| 4 boot | — |
Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).
README
🐤 dsh-ikun-pet · ikun 桌宠



DeepSeek Harness(DSH)插件 —— 只在 DSH 每次回答问题的 Deep diving 期间,
用坤宠动图填满「Deep diving...」状态行下方的整行区块:
进度条 0% → 100%,每 20% 切换一档动图动作与文案,完成时跳跃庆祝「完成啦!你干嘛~哎哟」🏀
✨ 特性
- 只占深潜区块:注册在
conversation.input.dock—— 正是 DSH「Deep diving...」状态行正下方、
对话区与输入框之间的整行区块;仅在会话 running(深潜回答)时出现,其余时间完全隐形
- 动图沿进度条行走:坤宠从 3% 走到 97%,压着进度条逐帧播放(8 列 × 9 行精灵图契约)
- 每 20% 一档:0/20/40/60/80/100 六档分别切换动图动作与文案(见 [docs/PROGRESS-STAGES.md](docs/PROGRESS-STAGES.md))
- 通用自适应进度:分层估算模型——真实锚点(开始 0% / 完成 100%)+
goal 回合真实进度+本会话历史回合时长自校准+工具/流式/等待审批动态调速+收缩保留量;
短任务快跑、长任务慢跑,等待你审批时诚实减速,永不假 100%(详见 [docs/PROGRESS-STAGES.md](docs/PROGRESS-STAGES.md))
- 完成全机可闻:100% 完成时由宿主进程用系统命令播放「你干嘛~哎哟」(
assets/voice.mp3),
任何窗口、任何会话完成都听得到,与浏览器静音无关(已在 macOS 实测)
- 永久插件形态:写入 DSH 组成(
cordis.patch.yml),随 DSH 启动自动加载,一次安装全局生效;
同时保留动态插件源码(src/)作为会话级安装的替代方式
🚀 安装
方式 A:克隆安装(适合想魔改的人)
git clone https://github.com/eric-song-dev/dsh-ikun-pet && cd dsh-ikun-pet dsh plugin add "$PWD"
方式 B:远程一条命令(适合纯使用者)
dsh plugin add github:eric-song-dev/dsh-ikun-pet # 或:dsh plugin add https://github.com/eric-song-dev/dsh-ikun-pet.git
装完重启 dsh web,浏览器刷新即可。验证:
curl -sI http://127.0.0.1:3080/ikun-pet/spritesheet.webp # 素材路由(应为 image/webp) curl -s http://127.0.0.1:3080/plugins/dsh-ikun-pet/client.js # client bundle(应返回 JS)
🎬 档位 → 动作 → 文案
进度 · 动图动作 · 文案
0% – 20% · waiting(期待) · 深潜启动!准备出发…
20% – 40% · runRight(向右跑) · 正在收集线索…
40% – 60% · working(专注干活) · 埋头苦干中…
60% – 80% · review(思考审阅) · 认真思考中…
80% – 100% · wave(挥手) · 快好啦!马上见结果~
100%(完成) · jump(跳跃庆祝) · 完成啦!你干嘛~哎哟 🔉(宿主进程播放提示音)
⚙️ 配置(可选)
全部配置在包内 cordis.patch.yml 插件行的 config 里:spritePath / voicePath /
playVoiceAtDone / playCommand(素材默认取包内 assets/)。
- 停用插件:把
# disabled: true行首的#去掉,重启dsh web(再加回#即重新启用) - 关闭音效:
config.playVoiceAtDone: false(不影响动图进度条) - Windows/Linux 提示音:把
playCommand换成 PowerShell / ffplay 方案(注释里有示例;macOS 默认afplay已实测)
🗑 卸载 / 🔄 更新
dsh plugin remove dsh-ikun-pet # 卸载(bundles 层自动对账),然后重启 dsh web # 更新:cd <仓库目录> && git pull && dsh plugin add "$PWD"
🧪 临时安装(动态插件,会话级)
node scripts/build-package.mjs # 生成 ikun.package.json 一键安装载荷
把载荷交给 Agent 用 cordis_define + cordis_run 安装,仅当前会话生效。
⚠️ 与永久插件不要同时启用(同一条素材路由会冲突)。
🖥 平台支持
部分 · macOS · Windows / Linux
界面动图 + 进度条(纯 Web) · ✅ 已实测 · ⚠️ 理论可用,未测试
完成提示音(系统命令播放) · ✅ 已实测(afplay) · ⚠️ 命令已预留,未测试
🛟 故障排查
现象 · 排查
重启后插件行激活失败 · profile 目录下 node -e "require('dsh-ikun-pet')" 应成功,失败则重装
区块不显示但路由正常 · 浏览器强刷(Cmd+Shift+R);确认没有同时启用动态插件
提示音不响 · 检查 config.playVoiceAtDone;macOS 用 afplay,其它系统换 playCommand
想让插件不加载 · 插件行加 disabled: true 后重启
📄 License
MIT
Rendered from the README published on npm. Formatted only, not edited.
Versions
Published on npm::1,最后更新 2026-08-15