DSH Plugins Marketplace

DSH Plugins

Plugins

/

Just for Fun

/

dsh-kun-like-pet

l

dsh-kun-like-pet

Identified★ 112

Kun Like Desktop Pet —— DeepSeek Harness Desktop Pet Plugin: The little Kun pet in the bottom-right corner switches between 9 actions based on the Agent's work status, playing "What are you doing~ Ouch" when the task is completed

🐤 Kun Like Desktop Pet

DeepSeek Harness (DSH) Desktop Pet plugin — a little Kun pet that lives in the bottom-right corner of the Web UI. It watches the Agent at work: it hauls bricks while you code, rests its chin on its hand while you think, eagerly waits when it's your turn to reply, and when a task is done it waves, jumps, and shouts 「What are you doing~ oops」 🏀

Kun Like Pet · Working

Kun Like Pet · Waving

✨ Features

  • 9 state animations: fully reuses the Codex desktop pet sprite sheet contract (8 columns × 9 rows, each cell 192×208), zero re-drawing of assets
  • Real-time Agent status awareness: polls the agents service to detect each Agent's running/idle state, and combines tools/execute, approval/request, and agent/request-error events to derive five modes — working / thinking / waiting / error / idle
  • Machine-wide audible task completion: the host process plays "What are you doing~ oops" via a system command, so any window and any session that completes a task will ring out, regardless of browser mute settings
  • Interactive: drag the pet around (running animation direction follows the drag), click it to make it wave hello
  • Built-in debug tools: kun_pet_debug lets you inspect the state machine's internal counters and polling health at any time

🎮 Status → Action Mapping

Agent Work StatePet ActionBubble Text
Working (a tool is executing)Focused on the job (row 7)Working hard…
Mid-turn but idleThinking loop (row 8)Thinking…
Waiting for user reply / approvalExpected waiting (row 6)Waiting for your reply~
ErrorSad and down (row 5)Ugh… something went wrong (._.)
IdleBreathing standby (row 0)Resting~ call me if you need anything
Task completedWave + jump celebration (alternating rows 3/4) + system voice "What are you doing~ oops"Done! What are you doing~ oops
DraggingRunning (rows 1/2, direction follows)Whoa~ stop tugging me!
ClickWave (2.4s reaction)Heh~

🚀 Installation

Option 1: DSH Dynamic Plugin (recommended, tested & verified)

The pet is developed and run-verified as a DSH dynamic plugin (cordis_define). In a DSH session, let the Agent execute it, or call the cordis_define tool manually:

  1. Clone this repository:

    git clone https://github.com/liyupi/dsh-kun-like-pet.git
    
  2. Modify the asset paths in CONFIG at the top of src/host.js:

    const CONFIG = {
      spritePath: '/your/path/dsh-kun-like-pet/assets/spritesheet.webp',
      voicePath:  '/your/path/dsh-kun-like-pet/assets/voice.mp3',
      // macOS defaults to afplay; on Windows / Linux change to the corresponding playback command
      playCommand: (path) => "afplay '\" + path.replace(/'/g, \"'\\\\''\") + \"'",
    }
    
  3. Generate the one-click install payload and paste it into the cordis_define tool:

    node scripts/build-kunpet-package.mjs -   # outputs the JSON payload
    

    Payload structure (kind: "new" creates a new plugin; use kind: "existing" + pluginId for later updates):

    {
      "plugin": { "kind": "new", "idPrefix": "kunpet" },
      "name": "Kun Like 桌宠",
      "purpose": "Displays the Kun Like desktop pet in the bottom-right of the Web UI, switching actions based on the Agent's work state, and playing the 'What are you doing~ oops' voice on task completion.",
      "code": { "host": "<contents of src/host.js>", "client": "<contents of src/client.js>" }
    }
    
  4. Activate it with cordis_run, and the pet will appear in the bottom-right of the Web UI.

Option 2: Direct Animation Preview (no DSH needed)

Open demo/index.html (a static server is recommended, e.g. npx serve . or python3 -m http.server) to browse all 9 animations and interact by dragging.

⚙️ Configuration

All tunable options are centralized in CONFIG at the top of src/host.js:

SettingDefaultDescription
spritePath~/.codex/pets/kun-like/spritesheet.webpSprite sheet path
voicePath~/Downloads/你干嘛哎呦.mp3Completion sound path
playCommandafplay '…'System-level playback command (Windows: powershell -c (New-Object Media.SoundPlayer '…').PlaySync(); Linux: ffplay -nodisp -autoexit '…')
pollMs500Agent status polling interval
celebrateMs4800Celebration animation duration
failedMs2600Failure animation duration

📁 Project Structure

dsh-kun-like-pet/
├── src/
│   ├── host.js        # 插件 Host 半:状态机、素材路由、系统音、pet-state RPC、kun_pet_debug 工具
│   └── client.js      # 插件 Client 半:shell.overlay 注入、9 种动画渲染、拖动/点击互动
├── assets/
│   ├── spritesheet.webp   # 8×9 精灵图(1536×1872,Codex 桌宠契约)
│   └── voice.mp3          # 「你干嘛~哎哟」完成音
├── demo/index.html    # 独立动画演示页(无需 DSH)
├── docs/
│   ├── SPRITESHEET-CONTRACT.md   # 精灵图契约与动画行速查
│   └── screenshots…
├── scripts/
│   ├── build-kunpet-package.mjs  # 生成 cordis_define 安装载荷
│   └── validate.mjs              # 仓库完整性校验
├── CHANGELOG.md       # v1 → v5 迭代记录(含事件隔离根因分析)
└── kunpet.package.json    # 由 build 脚本生成的一键安装载荷

Validation: node scripts/validate.mjs

❓ FAQ

Why is the pet only in one window? Dynamic plugins are session-bound: the pet UI injects only into the activating session. But since v5, the completion sound plays system-wide via the host process, so any finished task in any window/session rings on this machine. To show the pet in all windows, upgrade to a host-level composite package (PRs welcome).

Why use polling instead of event listeners? During development, probes built with internal/dispatch revealed that in some deployments, agent status events such as agent/status and agent/turn-stopping do not flow through the bus that dynamic plugins live on (out of 831 observed events, status-related events were 0), so event listeners would never detect "task completed." Polling the agents service is the most reliable cross-deployment approach. See CHANGELOG v3/v4 for details.

⚠️ Asset Copyright Notice

  • assets/voice.mp3 is a publicly available meme voice clip (featuring a public figure's voice); rights belong to the original owner, for personal learning/exchange only, no commercial use. Replace with royalty-free assets for commercial use.
  • assets/spritesheet.webp is a fan-made pixel avatar, built per the Codex desktop pet asset contract.
  • If you are the rights holder and object to the content, contact us to have it removed.

📄 License

The code is released under the MIT License. Asset files (assets/) are for personal learning and exchange only, as noted in the statement above.

Comments

Loading…

Similar plugins

dsh-kun-pet

by Practice019

Kun Like 桌宠 - DSH 桌面宠物插件

Manifest valid

★ 0

MIT

JavaScript

Aug 31, 2026

dsh plugin --profile web add dsh-kun-pet

by eric-song-dev

🐤 DeepSeek Harness(DSH)永久插件:Deep diving 回答期间用坤宠动图填满深潜状态行下方区块——进度条 0%→100%,每 20% 切换动作与文案,完成时系统级播放「你干嘛~哎哟」

Just for FunManifest valid

★ 10

↓ 125/wk

NOASSERTION

JavaScript

Aug 15, 2026

dsh plugin --profile web add dsh-ikun-pet

by miku00039-01

🐋 DSH 桌宠:DeepSeek Harness 的 Windows 桌面宠物,一键启动/停止/监测服务,双击唤起 GUI,零依赖单文件 exe

Just for FunDevelopment & InfrastructureManifest valid

★ 3

↓ 157/wk

MIT

C#

Oct 1, 2026

dsh plugin --profile web add @miku00039-01/dsh-whale-pet

by whitefirer

牛来桌宠:agent 任务完成它就蹦出来喊「妈~~妈~~」——dsh 纯客户端桌宠插件(6 皮肤/签名动作/合成叫声)

Just for FunManifest valid

★ 17

↓ 320/wk

MIT

JavaScript

Oct 17, 2026

dsh plugin --profile web add dsh-niulai-pet

by nzl153

桌宠小鲸鱼:DSH(DeepSeek Harness)Web 桌宠插件,随 agent 状态切换动画,纯 DOM 零依赖

Just for FunManifest valid

★ 13

MIT

JavaScript

Oct 2, 2026

dsh plugin --profile web add pet-whale

by c-ling

DeepSeek Harness 桌面电子宠物插件:跟随 agent 状态变换心情的内置/自定义/Codex 精灵图伙伴。

Manifest valid

★ 4

↓ 33/wk

MIT

JavaScript

Oct 22, 2026

dsh plugin --profile web add dsh-plugin-pet