前言¶
DeepSeek Harness(dsh)是 DeepSeek AI 開源的智能體框架,目前仍處於開發者預覽階段。它的核心理念是「一切皆插件」:工具、界面、主題、工作流都可以按層裝進當前 profile。社區裏已經出現了不少獨立目錄來收錄這些插件,其中 DeepSeek Harness 插件庫 是一個社區站點,與 DeepSeek / 幻方沒有官方從屬關係。
日常用 Web UI 看智能體回覆時,正文往往是純 Markdown。模型偶爾會打出 Unicode emoji,但那只是字符,換不了畫風,也沒法統一成一套社區表情。dsh-emoji 要做的事情更具體:讓模型按固定語義標記輸出表情,再由 Host 端轉成當前表情包裏的行內圖片。
下面按倉庫 README、package.json、更新日誌和插件目錄頁覈對後的信息,說明它是什麼、怎麼裝、怎麼用。
dsh-emoji 是什麼¶
dsh-emoji 是一款面向 DeepSeek Harness 的趣味插件,由 hellodigua 維護,代碼採用 MIT 許可證。GitHub 倉庫爲 hellodigua/dsh-emoji,主要語言是 TypeScript,倉庫 topic 含 dsh-plugin。截至 2026-08-17,GitHub 顯示 23 顆星;社區目錄頁同期記錄爲 17 顆星,星標以倉庫頁面爲準。
一句話定位:爲 DSH 的回覆加入可切換、可自定義的行內表情。插件目錄頁的簡介是「讓 AI 回覆加入自定義表情,支持 Bilibili、小紅書、貼吧、知乎等多平臺表情包,或自定義表情」。對照倉庫文檔後可以更準確地說:運行時目前內置的是 40 張藍鯨(大肥魚)表情;貼吧、B 站等畫風通過同一套語義協議切換或上傳 ZIP 實現,並不等於這些平臺的表情都打進了發佈包。
當前 npm 包版本是 0.2.2-beta.1(2026-08-15)。更新日誌寫明:0.2.1 是推薦安裝版本,0.2.2-beta.1 的運行時行爲與 0.2.1 / 0.1.0 保持一致。兼容性聲明面向 @deepseek-ai/dsh@0.1.0-rc.6,peer 範圍爲 ^0.1.0-rc.6。package.json 裏客戶端平臺標爲 web,需要加到 Web Profile 後重啓 Web Host。
工作方式與核心能力¶
表情不是模型另外畫一張圖,也不走一次新的模型調用。內置協議要求模型在需要情緒或裝飾時輸出 ::happy:: 這類語義標記;插件在 Host 端把標記替換成當前表情包對應的行內圖片。
內置包和用戶上傳包共用 40 個穩定語義 key,契約標識爲 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。相近語義在契約裏有邊界,例如 happy 是溫和愉快,明顯大笑留給 laughing,笑到流淚才用 laugh-cry。完整含義和繪製建議見倉庫的 EMOJI_KEYS.md。
倉庫 README 還寫了幾條轉寫邊界,實際使用時值得記住:
- 只處理插件 marker 和插件圖片,普通正文裏的 Unicode emoji、代碼、鏈接、未知標記以及其他 Markdown 圖片不會被改寫。
- 同一條回覆裏可以出現多張插件表情,但必須由有效正文隔開;同一個 key 允許在不同位置重複使用。
- 顯示尺寸有四檔:小、正常、偏大、大。
- 默認內置素材是藍鯨表情。README 展示了切換貼吧表情包、上傳 B 站表情包後的對話效果,並說明同一協議也可用於小紅書、抖音、微博等自定義包。
- 倉庫
ASSETS.md寫明:assets/emoji/bilibili/只作開發參考,不進入當前運行時 catalog,也不在package.json#files的發佈白名單裏。因此不能把「支持 B 站表情」理解成安裝後自帶完整 B 站包。
代碼是 MIT,素材不一定是。ASSETS.md 明確:代碼許可證不聲明鯨魚形象或二創表情素材的所有權;40 張運行時圖可以隨 npm 包公開分發,但不納入 MIT,也不授予脫離本項目單獨複製、改編或再分發素材的權利。
安裝與啓用¶
社區目錄頁給出的安裝命令如下,在 DeepSeek Harness 終端中運行即可:
dsh plugin add github:hellodigua/dsh-emoji
如需可復現安裝,目錄頁建議固定 commit 哈希:
dsh plugin add github:hellodigua/dsh-emoji#commit
把 #commit 換成倉庫裏實際的提交哈希,不要留這個佔位符。
倉庫 README 給出的是 npm 包名、並指定 Web Profile 的寫法,裝完後需要重啓 Web Host:
dsh plugin --profile web add dsh-emoji
更新日誌裏推薦的穩定版本是 dsh-emoji@0.2.1。若要體驗預發佈版本,把包名換成 dsh-emoji@beta。不要只用 npm install dsh-emoji:那隻會把包裝進當前 Node.js 項目,不會啓用 DSH 插件。
目錄頁有一條安全提示,安裝前應讀完:插件以當前 dsh 進程的權限運行,安裝時可能執行代碼。安裝前請檢查源代碼倉庫和許可證。GitHub 安裝還可能在本地跑構建腳本,只安裝自己審查過的來源。
調整表情頻率與顯示¶
安裝並重啓 Web Host 之後,打開「設置 → 插件 → 表情(Whale Emoji)」:
關閉:不使用表情。智能:僅在表情確實有助於表達時自然使用,每回合最多 3 張,這是默認選項。高頻:更積極地考慮使用,但不強制每次出現,也不追求多張;每回合最多 4 張。
同一張設置卡片裏還可以選擇表情包、調整顯示尺寸,或填寫「附加提示詞」來約束選擇、語氣和使用場景。保存後從下一次回覆生效,不必再重啓 Host。是否真正插入表情仍由模型決定,插件不會在每句話後面強行貼圖。
上傳自己的表情包¶
自定義包複用同一套 40 個 key,因此模型仍然輸出 ::happy:: 等 marker,只替換最終圖片,不需要爲每套素材重新教模型認圖。
在上述設置卡片中點擊「上傳 ZIP」。上傳成功後選中新包並保存,下一次模型調用就會用它。ZIP 可以直接包含下列文件,也可以再包一層同名目錄:
my-whale.zip
├── pack.json
└── images/
├── happy.png
├── sad.png
├── thinking.png
├── celebrate.png
└── ...其餘標準 key
pack.json 格式如下,當前上傳包必須聲明 keySet 爲 dsh-emoji-core@1:
{
"schemaVersion": 1,
"keySet": "dsh-emoji-core@1",
"id": "my-whale",
"name": "我的鯨魚表情",
"version": "1.0.0"
}
schemaVersion 表示 ZIP 技術格式,keySet 表示圖片實現的語義集合。每個 key 必須且只能提供一個同名 .png。id 使用小寫字母、數字和連字符,version 使用 SemVer。同一個 id@version 的內容不可覆蓋,更新素材時必須提升版本。
倉庫給出的硬限制是:ZIP 上限 20 MiB,解壓後上限 80 MiB,單文件上限 2 MiB,圖片寬高均不得超過 512 像素。路徑逃逸、額外文件、缺失 key、未知 keySet、僞造格式和同版本衝突都會被拒絕。
用戶包保存在 $DSH_HOME/emoji-packs/(默認 ~/.dsh/emoji-packs/),設置項只保存當前 id@version。從選擇列表裏「移除」不會物理刪除素材字節,這樣歷史消息裏的版本化 URL 仍能回放;重新上傳完全相同的 ZIP 可以恢復該版本。
自己做包時,素材權利也要單獨處理:契約要求投稿者擁有原創權或可再分發授權。不要把內置藍鯨圖拆出來當自己的包發佈。
適用場景與注意事項¶
比較適合這些情況:
- 已經在用 DSH Web UI,希望回覆裏出現統一畫風的行內表情,而不是零散的 Unicode 符號。
- 想把對話語氣從「文檔腔」換成社區表情風格,例如貼吧、B 站或自制角色,但不想改模型本身。
- 需要給團隊或個人做一個固定 40 語義的表情包,並在多套素材之間切換。
需要注意的限制同樣明確:
- 當前版本面向 Web Profile 和
@deepseek-ai/dsh@0.1.0-rc.6。DSH 仍在開發者預覽,後續可能出現破壞兼容性的變更。 - 本地開發環境要求 Node.js
^22.19.0 || >=24與 pnpm 11;這是開發該插件時的要求,不等於終端用戶必須從源碼編譯。 - 表情是否出現由模型決定。設成「智能」或「高頻」只改變提示策略和每回合上限,不能保證每條回覆都帶圖。
- 插件以當前 dsh 進程權限運行。安裝前應閱讀源碼、許可證和
ASSETS.md裏的素材說明;生產環境建議固定 commit。 - 社區插件目錄不是 DeepSeek 官方應用商店,收錄不代表官方背書。
小結¶
dsh-emoji 把「AI 想表達某種情緒」收成 40 個穩定 key,再在 Host 端渲染成當前表情包的行內圖。默認是藍鯨表情,頻率和尺寸可在設置裏改,也可以按契約上傳自己的 ZIP。它不增加額外模型調用,也不改寫普通正文裏的 emoji 和代碼。
目錄頁:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-emoji/
GitHub:https://github.com/hellodigua/dsh-emoji