dsh-pet
PC2005-cloud/dsh-petDSH Web UI 桌面宠物,Windows / macOS / Linux 三端可用:浏览器浮层或透明置顶桌面窗口,106 个透明动画、带挤压与粒子的甩抛反弹物理、随会话事件实时联动的工作状态气泡、碎碎念与带持久记忆的对话、余额展示、表情包配图、多开同屏,并支持直接放入的自定义动画与宠物种类(pet pack)。
动态舒尔特方格等待小游戏:模型思考时,在静态网格或旋转轮盘上按顺序点击 1..N,边玩边等。
中文 | English
Dynamic Schulte Table · a waiting-room mini-game plugin for DeepSeek Harness.
The model does not play this game — it exists for you to play while the model is replying. The plugin registers a "Schulte" entry at the bottom of the dsh Web UI sidebar. While the current session's model is thinking, the entry shows a breathing green dot.
The plugin declares a dsh.bundle manifest, so it installs via dsh plugin add:
# 1. Build (or use a published artifact)
pnpm install
pnpm build
# 2. Install into a profile
dsh plugin --profile <name> add -w /path/to/dynamic-schulte-dsh
# 3. Start the Web UI
dsh --profile <name>
Open the Web UI and click "Schulte" at the bottom of the sidebar to play. To uninstall:
dsh plugin --profile <name> remove dynamic-schulte-dsh
pnpm install # devDeps: typescript / tsdown / react types
pnpm typecheck # tsc --noEmit (framework types resolve via tsconfig paths to a local deepseek-harness checkout)
pnpm build # tsdown → lib/index.js (host stub) + lib/client.js (browser bundle)
pnpm verify:host # smoke-test the build artifacts
src/index.ts): a stub plugin. The game is browser-only; the
host half exists so the Cordis Loader row resolves and the dsh.client client
package is discovered by the web shell.src/client/): the browser bundle, registering the
sidebar.footer.action slot. The panel is a complete game — engine.ts is a
pure-TS state machine (no React), while GridBoard/RouletteBoard render the
static grid and the dynamic roulette.tsdown.config.ts mirrors the harness repo's client-bundle
conventions — platform modules stay external, everything else inlines, and the
output is a window.__ModuleLoader__.load({id, factory}) closure factory served
by the web shell at /plugins/dynamic-schulte-dsh/client.js.@deepseek-ai/dsh-web-app bundle)MIT