为 AI 回复自动添加表情。
安装
# npm 包(预构建)
dsh plugin --profile web add dsh-emoji
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:hellodigua/dsh-emoji
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
English | 简体中文
为 DeepSeek Harness 的回复加入可切换、自定义的行内表情和独立表情包。

效果预览
默认的大肥鱼表情:

切换到贴吧表情包后,也能使用同一套语义协议展示贴吧表情:

上传并切换到 B 站表情包后,也能保留熟悉的社区表达风格:

同一套语义协议也可用于小红书、抖音、微博等自定义表情包。
安装
使用 DSH CLI 把插件加入 Web Profile,然后重启 Web Host:
dsh plugin --profile web add dsh-emoji
如需体验预发布版本,将安装命令中的包名替换为 dsh-emoji@beta。普通 npm install dsh-emoji 只会把包加入当前 Node.js 项目,不会启用 DSH 插件。
工作方式
- AI 想加入情绪或装饰性表情时,直接从 42 个允许的 Unicode 表情中选择,例如输出
😊;它们对应 40 个稳定语义,插件会在 Host 端将其转换为当前表情包的图片,无需额外模型调用。 - 内置和用户上传的表情包共用 40 个稳定语义 key,可随时切换,并支持小、正常、偏大、大四档尺寸。
- 转写只作用于 40 个规范 Unicode 表情、常见别名
😄/🙂和本插件图片;其他 Unicode 表情、代码、链接、双冒号文本和普通 Markdown 图片保持原样。程序不会根据正文猜测情绪或自动补图。多张插件表情必须由有效正文分隔,相同表情可以在不同位置重复使用。
调整 AI 的表情频率
安装并重启 Web Host 后,打开侧栏「插件 → dsh-emoji」:
关闭:不使用表情。智能:仅在表情确实有助于表达时自然使用,每回合最多 3 张,默认选项。高频:在所有对话回复中加入一个合适的表情,并放在最能对应当前情绪的句子或短段落后;每回合最多 4 张。
还可以选择表情包、调整显示尺寸,或填写“附加提示词”控制表情的选择、语气和使用场景。保存后从下一次回复生效,无需重启;所选频率策略仍依赖模型遵循提示词。
上传自己的表情包
在同一张设置卡片中点击“上传 ZIP”。上传成功后选择新表情包并保存,下一次模型调用立即使用,无需重启。自定义包复用内置的 40 个稳定语义 key;AI 仍使用同一组允许的 Unicode 表情,Host 只替换图片,不需要重新理解每套素材的含义。
ZIP 可以直接包含下列文件,也可以再包一层同名目录:
my-whale.zip
├── pack.json
└── images/
├── happy.png
├── sad.png
├── thinking.png
├── celebrate.png
└── ...其余标准 key
表情包可通过 displayMode 声明展示方式:省略或 inline 使用行内表情;block 使用独立表情,AI 会被要求将表情单独成段,默认显示为 160px。设置页提供 120、160、200、240px 四档,独立于行内尺寸保存。
pack.json 格式:
{
"schemaVersion": 1,
"keySet": "dsh-emoji-core@1",
"id": "my-whale",
"name": "我的鲸鱼表情",
"version": "1.0.0"
}
schemaVersion 表示 ZIP 技术格式,keySet 表示图片实现的语义集合。当前上传包必须声明 dsh-emoji-core@1;每个 key 的准确含义、相近语义边界和绘制建议见 核心语义契约。
40 个文件名 key 是:
happy, sad, confused, watching, angry, speechless, doge, overloaded,
neutral, laughing, crying, sweating, thinking, okay, nodding, sleeping,
hurt, peeking, approve, heart, shy, star-eyes, laugh-cry, touched,
scared, facepalm, eye-roll, sigh, frustrated, playful, snickering,
sarcastic, cool, celebrate, cheer, thanks, sorry, hug, please, applause
每个 key 必须且只能提供一个同名 .png。id 使用小写字母、数字和连字符,version 使用 SemVer;同一个 id@version 的内容不可覆盖,更新素材时必须提升版本。ZIP 上限 20 MiB,解压后上限 80 MiB,单文件上限 2 MiB,图片宽高均不得超过 512 像素;路径逃逸、额外文件、缺失 key、未知 keySet、伪造格式和同版本冲突都会被拒绝。
用户包保存在 $DSH_HOME/emoji-packs/(默认 ~/.dsh/emoji-packs/),Settings 只保存当前 id@version。从选择列表“移除”不会物理删除素材字节,因此历史消息里的版本化 URL 仍能回放;重新上传完全相同的 ZIP 可以恢复该版本。
兼容性
支持 DSH 0.1.7-rc.2 与 0.2.0-rc.2 所属的 peer 范围(^0.1.7-rc.2 || ^0.2.0-rc.2),以及 Node.js ^22.19.0 || >=24。本地开发固定 DSH 0.2.0-rc.2 的精确类型链,部署时由 Web Profile 提供共享运行时;完整运行验收状态记录在 package.json 的 dsh.compatibility.dshReleases 中。设置保存到当前 Profile 的 cordis.patch.yml,表情素材保存在 DSH Home 中。
本地开发
需要 Node.js ^22.19.0 || >=24 和 pnpm 11。
corepack pnpm install
corepack pnpm typecheck
corepack pnpm test
corepack pnpm build
npm pack --dry-run
友情链接
已加入 dshfind.com DSH 插件超市。
链接
同类插件
PC2005-cloud/dsh-pet#dsh-pet★ 5347
DSH Web UI 桌面宠物,Windows / macOS / Linux 三端可用:浏览器浮层或透明置顶桌面窗口,106 个透明动画、带挤压与粒子的甩抛反弹物理、随会话事件实时联动的工作状态气泡、碎碎念与带持久记忆的对话、余额展示、表情包配图、多开同屏,并支持直接放入的自定义动画与宠物种类(pet pack)。
Alterssss/dsh-bili-whale★ 862
一条按自己作息过日子的 B 站插件:宿主里每 60 秒一次心跳,在设定的作息窗口里随机挑一个时刻叫醒专用会话(今天不想看是按概率跳过),再交给自带的 38 个子命令——信息流、字幕、弹幕、评论、ffmpeg 抽帧、两本日记。每天最多发 N 条评论/动态并 @ 主人(默认 3,按配额账本计数,撞到限流或验证码就停手)。同时轮询评论回复、私信和直播间弹幕;除主人以外的回复先入队,等主人在设置页批准。设置 → 养鱼 写 ~/.dsh/bili-whale.config.json;cookie 单独在 ~/.bili-ai/credentials.json,只写不回显。HTTP 路由只认回环地址并过 DSH 信任栅栏。抽帧需要 Node 18+ 与 ffmpeg。
Nagi-ovo/dsh-ads★ 707
2005 年中文站点风格的整活广告插件:侧栏广告/信息流/角落弹窗 + 假关闭叉,素材全虚构。
yyh-001/dsh-meme★ 488
聊天表情包:纯文本斗图、情绪主动发图、像 QQ/微信 一样发图、AI 自动学图、自定义表情包。
vlln/whale-girl★ 400
桌面宠物(QQ 宠物形态):右下角悬浮、可拖拽/投喂/玩耍。
a86582751/dsh-nexttavern★ 218
NextTavern 是面向 DeepSeek Harness 0.1.7-rc.2 Web 的长篇角色扮演插件,支持角色卡导入与创作、世界线、世界书、分层长期记忆、关键词/语义/混合检索、角色 Agent,以及角色卡或小说导出;支持 SillyTavern 角色卡导入,v0.2.9 修复分发与安装问题。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。