Back to home

culture-flask

dsh-aemeath-pet

爱弥斯 · DeepSeek Harness 桌宠 — DeepSeek Harness Web GUI 的像素风宠物插件。

Stars
2
Language
TypeScript
Created
Aug 14, 2026
Updated
Aug 14, 2026

Introduction

dsh-aemeath-pet

爱弥斯 · DeepSeek Harness 桌宠 — DeepSeek Harness Web GUI 的像素风宠物插件。

爱弥斯会停在页面角落,陪 agent 一起工作: 屏幕截图 2026-08-14 221709 屏幕截图 2026-08-14 221702

场景动作
Agent 空闲随机奔跑 / 原地工作 / 跳跃(不受会话状态限制)
Agent 正在运行工作动画 + 「思考中…」
Agent 等待你输入等待动画 + 「等你哦~」
Agent 步骤出错失败动画 + 「唔…出错了」
新任务开始跳跃 + 「交给我吧!」
一轮任务完成跳跃庆祝 + 「搞定啦 ✨」
点击 / 触碰挥手回应

功能

  • 🎬 全部 11 种动画(待机 / 左右移动 / 挥手 / 跳跃 / 失败 / 等待 / 工作 / 检查 / 两向注视),帧布局与 Codex Pet V2 图集一致(1536×2288,8×11 格,每格 192×208)
  • 🐾 右击菜单:停靠角落 / 自由摆放、大小(小·中·大)、隐藏、重置位置;拖拽可随意移动
  • 💬 跟随 DSH 语言的中/英气泡文案(locale 命名空间 dsh-aemeath-pet
  • 🏃 随时随机表演:向左/右斜向奔跑(running-left / running-right,含垂直分量)、原地工作(running)、跳跃(jumping)— 停靠和自由摆放模式下都会出现
  • 💾 偏好(启用 / 缩放 / 位置)持久化在 localStorage
  • 🔌 纯客户端渲染(canvas + DOM,无 React 依赖);Host 半只负责服务精灵图素材

安装

发布 tag 后(例如 v0.1.0),通过 GitHub tarball 安装进 web profile(无需本地构建,lib/ 随仓库提交):

dsh plugin --profile web add https://github.com/<你的用户名>/dsh-aemeath-pet/archive/refs/tags/v0.1.0.tar.gz

本地开发也可以直接加目录(pnpm link 语义,改源码后 pnpm run build + 硬刷新即可热更新):

dsh plugin --profile web add /path/to/dsh-aemeath-pet

重启 dsh web 并硬刷新浏览器(Cmd/Ctrl+Shift+R)即可看到爱弥斯。

开发

pnpm install
pnpm run check   # typecheck + test + build,提交前必须全绿

环境要求:类型检查依赖 DeepSeek Harness monorepo 的类型(package.jsonlink: 形式的 devDependencies),默认期望源码 checkout 在 ../../deepseek-harness(即本仓库的上一级目录)。如果放在别处,把 package.json 里的五个 link:../../deepseek-harness/... 路径改成实际位置即可。CI(.github/workflows/ci.yml)会在 runner 上自动 clone harness 后跑完整 check。

构建产物 lib/ 由 esbuild 生成(lib/index.js Host ESM + lib/client.js 浏览器单文件 CJS,ModuleLoader handshake),随仓库提交——GitHub tarball 安装不执行构建脚本。

目录结构

dsh-aemeath-pet/
├─ src/
│  ├─ index.ts          # host 半:webServer 素材路由(/aemeath-pet/spritesheet.webp)
│  └─ client/           # 浏览器半(无 React,canvas + DOM)
│     ├─ index.ts       # 会话接线:snapshot → 情绪/动作 + 气泡
│     ├─ pet.ts         # 宠物引擎:动画循环、随机动作、拖拽/菜单/偏好
│     ├─ state.ts       # 纯函数状态派生(单测覆盖)
│     ├─ atlas.ts       # Codex Pet V2 图集布局(每动画的行/帧/帧率)
│     ├─ locales.ts     # 中英文案
│     └─ styles.ts      # 注入样式
├─ assets/              # spritesheet-v2-r2.webp(素材见下)
├─ lib/                 # 构建产物(提交)
├─ tests/               # state 纯逻辑 + pet jsdom 引擎测试
├─ cordis.patch.yml     # bundle 补丁(挂载行)
└─ dsh.plugin.json      # 插件元数据

素材与版权

素材来源:

  • 精灵图与图集布局:源自 aemeath-codex-pet(Apache-2.0,R2)——本插件使用的 assets/spritesheet-v2-r2.webp 是该仓库的原始文件
  • 角色形象:爱弥斯出自游戏 《鸣潮》(Wuthering Waves),角色及美术素材权利归 Kuro Games / 相应权利方所有
  • 原始表情包素材:出自 B 站 up 主 「Neuro音乐」 的动态:哔哩哔哩 · 爱弥斯表情包

本项目是非官方、非商业的同人桌宠适配项目;本仓库不对这些素材授予额外的商业使用许可。角色形象与原始美术素材权利归原作者与相应权利方所有,仅供个人使用;二次分发或商业使用请先取得授权。

License

Apache-2.0,见 LICENSE