swaylq/dsh-digipet
在 DeepSeek Harness 里孵一只数码兽:吃你的真实工作长大,数码宝贝式分支进化,零 token、模型不知道它存在 | Digimon-style raising game for DSH — feeds on your real work, zero tokens.
Listed
2
Fun
Bundle verified
Preview
What it does
Digimon-style raising game: hatch an egg that feeds on real work (turns, tool calls, errors) and evolves along four branching lines shaped by how you work; zero tokens, invisible to the model.
Best for
- DSH users who want a passive raising game driven by turns, tool calls, messages, and errors.
- People who enjoy one persistent pet with branching evolution shaped by their working style.
- Users who want a local, network-free diversion with no model-visible context or token overhead.
Not ideal for
- Users who need separate pets for different profiles, sessions, or subagents; one DSH home shares one pet.
- Multi-process DSH setups that require conflict-safe state updates; concurrent saves are last-writer-wins.
- Players who need configurable evolution thresholds or feeding rules.
README
dsh-digipet · 数码搭子
在 DeepSeek Harness 里孵一只数码兽 —— 它吃你的真实工作长大,数码宝贝式分支进化。
你写代码,它变成龙;你翻文档,它成为贤者;你天天报错……它会变成一条在一千万个进程里同时存在的东西。
| 中文 | English |
蛋壳裂开了 ——
▗▄▚▚▄▖
▐ ◉ ◉ ▌
▝▚▄▄▞▘ 。o
✨ 数码蛋 进化为 比特泡 Bitpop(幼年期Ⅰ)
「一颗刚立了 flag 的比特,还不知道自己要变成什么。」

30 秒上手
dsh plugin --profile web add github:swaylq/dsh-digipet
# 重启 dsh,然后在任意会话里:
/pet hatch
然后正常干活就行。每个完成的回合 +5 XP、你每条消息 +2、每次工具调用 +3、连报错都 +4。/pet 随时看它,/pet evolve 见证进化仪式。
它会变成什么,取决于你怎么干活
生命周期完整对齐初代育成机的正统结构:数码蛋 → 幼年期Ⅰ → 幼年期Ⅱ → 成长期 → 成熟期 → 完全体 → 究极体。从成长期起,每次进化都重新读一遍「这一阶段你实际怎么干活」来选系谱:
| 系谱 | 喂出它的方式 | 究极体 |
|---|---|---|
| 🐉 龙之系谱 | 写文件、跑命令 | 战铠龙皇 Wardrake Sovereign |
| 📜 贤者系谱 | 读代码、查资料 | 天书贤神 Codex Deva |
| 🕊️ 圣翼系谱 | 一句一句聊天 | 炽天使皇 Seraph Prime |
| 👾 病毒系谱 | 在报错和事故里泡大 | 末日蛛皇 Doomweaver —— kill -9 只会让它分裂 |
3 个共通幼年形态 + 4 条系谱 × 4 阶段 + 3 个隐藏形态 = 22 格图鉴。系谱不锁死 —— 上一阶段是龙、这一阶段疯狂报错,它就转职病毒系谱。你的宠物最终长成什么样,就是你这段时间工作方式的镜子。
至于那三个隐藏形态,图鉴里只有一句谣传:
「谣传:吃撑的时候进化,会出事。」
初代玩家都知道这句话什么意思。有的错误能被爱救赎,有的错误会层层堆叠、越滚越高,最终成为某种祖传的存在(立绘的最后一行是 // 别动。)。

命令
| 命令 | 作用 |
|---|---|
/pet |
状态卡:立绘、XP、饱食度、心情、四维属性、累计吞食 |
/pet hatch |
孵蛋(每个 DSH home 一只;蛋可进化时也可当仪式触发器) |
/pet evolve |
进化仪式 |
/pet name <名字> |
起名(16 字以内) |
/pet dex |
图鉴(未见过的形态显示 ???,隐藏形态只给谣传) |
/pet story |
一生的大事记 |
/pet about |
机制说明与信任立场 |
从 0.1.x 升级:旧存档(海洋生物图鉴)会在下次启动时自动无损迁移 —— 阶段、经验、四维、图鉴、大事记全部保留,历史形态一并映射到新图鉴。
为什么做这个
DSH 生态已经有二十多个桌宠插件(whale-girl、各家鲸鱼、Clippy、Live2D……),它们几乎都是状态镜像:agent 在思考,宠物做思考动作;任务完成,宠物欢呼。做得最深的 whale-girl 有资历等级和称号,但形象不会变,而且只活在 Web GUI 里。
没有一个是养成:没有孵化、没有阶段进化、没有「你的工作方式决定它长成什么」。dsh-digipet 补的是这一格 —— 初代育成机式的成长循环,宿主是你的 harness,饲料是你的真实工作。
吃撑了会犯困(饱食度 > 90% 时经验收益降到 15%),睡一会儿消化掉再继续吃 —— 这是天然的防刷机制。但老玩家都知道:撑着肚子的时候,千万别按进化。
原理
整个插件是四个事件监听 + 一个斜杠命令:
| 挂载点 | 喂的是 |
|---|---|
agent/turn-stopping |
每个完成的回合 +5 XP |
agent/inbox/claimed |
你的每条消息 +2 XP(喂「羁绊」) |
tools/result |
每次工具调用 +3 XP,按工具名分类喂「锻造」或「学识」;失败喂「皮实」 |
agent/error |
每次报错 +4 XP(喂「皮实」) |
进化门槛 30 / 120 / 500 / 1800 / 6000 / 16000 XP。进化时取这一阶段窗口内的最高属性定系谱,窗口随进化清零。存档在 $DSH_HOME/digipet/state.json,写盘走「临时文件 + fsync + 原子 rename」(与官方 JSON 存储后端同款),事件再密集也只按 1.5 秒节流落盘一次。
关键不变量:模型可见即已记录 —— 而这个插件干脆什么都不让模型看见。 不注册工具(工具 schema 是每轮固定 token 税)、不 agent.inject()、不写会话事件。宠物只活在命令结果卡里,对每一次模型请求的贡献是零字节。
信任立场
- 读:只读它自己的存档文件。不读你的代码、不读会话内容 —— 事件监听里只用到「发生了什么类型的事」,消息与工具的具体内容从不落存档。
-
写:只写
$DSH_HOME/digipet/state.json。 - 网络:无。
- 模型可见面:无。零 token 开销,KV cache 不受任何影响。
-
故障半径:所有监听器包在 try/catch 里,命令处理器有自己的错误兜底 —— 宠物摔了一跤不会波及你的工作。挂载的事件全是通知型(
emit/serial),本插件从不否决、不改写、不延迟任何真实流程。
已知限制
- 一个 DSH home 一只宠物,同机的所有 profile、会话、子 agent 共享它、一起喂它(这是特性也是限制)。
- 多个 dsh 进程同时跑时,存档是「后写者胜」—— 与官方 JSON 后端同样的单进程立场。
- 工具分类靠名字的正则启发(
write/edit/shell→ 锻造;read/grep/search→ 学识),第三方工具起了奇怪的名字就会被当成中性饲料。 - 会话流里的折叠行会把立绘拍平成一行 —— 点开卡片看完整版(DSH 的工具行同款交互)。
- 进化门槛与食谱不可配置:改了数字,图鉴和存档就没有共同语言了。
验证记录
在 dsh 0.1.0-rc.6(macOS,web profile)上真机验证:
-
dsh plugin --profile web add <本仓库>安装,--dump-config出现 digipet 层; -
dsh web启动无异常; - 真浏览器里
/pet hatch→ 蛋卡渲染(等宽、换行保留)→ 真实事件喂到 30 XP →/pet evolve破壳出比特泡; - 无 API key 时发普通消息,模型请求失败但事件是真的 —— 存档数字与食谱逐项吻合;
- 造一份 0.1.x 旧存档(故障系成长期)重启加载:自动迁移为新图鉴对应形态,名字、四维、大事记全部保留;
- 42 个单元 / 集成测试(
node --test),覆盖纯逻辑层、假 ctx 集成、迷途进化三连与迁移。
致敬与边界
形态设计致敬初代 V-pet 与经典养成游戏的进化线传统(骨盔恐龙、机械改造、圣翼、网络病毒、照顾失误的那只泥)。「数码宝贝 / Digimon」是万代南梦宫的商标,本项目与其无任何关联;全部命名、立绘、文案均为原创,不包含任何官方素材。
许可
MIT
Frequently Asked QuestionsFAQ
Use the verified command dsh plugin --profile default add github:swaylq/dsh-digipet in a DSH-enabled shell. The command resolves the public package metadata and keeps the plugin attached to the catalog identity shown on this page.
Compatibility follows the bundle and profile status shown above. If a profile is not detected, keep the plugin disabled there and check the repository documentation before enabling it in production.
The GitHub link and activity metadata are the source of truth for releases and maintenance. Revisit this page after a new release to confirm the catalog has observed the latest version.