前言¶
在 QQ 羣或類似通道里跑 DSH 智能體時,羣友常發圖、表情包。若只靠模型「記住」某張梗圖,既不穩定,也談不上按「誰發的、什麼語境用過」去複用。常見做法是手工整理文件夾或寫死路徑,羣一換語境就難對上。
dsh-sticker-vault 是 DeepSeek Harness 下的記憶類插件:羣消息裏的附件圖先落到本地,同一張圖被反覆發送時按 sha256 計數,達到閾值後自動入庫,並記錄作者、語境與標籤;對噴、接梗時通過工具按語境把圖撈出來,以 Markdown 圖片行形式返回。圖片與元數據全部在 ~/.dsh/sticker-vault/,不聯網、不調模型。
維護者爲 yingchaoyi,源碼與說明見 GitHub 倉庫,社區目錄頁爲 SkillHub 插件頁。當前 package 版本爲 0.1.14,許可證 MIT。
這是什麼¶
一句話:羣友發的圖先落盤去重計數,重複到 N 次自動進庫,記作者/語境/標籤;需要接梗時用 sticker_pick 按語境搜索並返回可發送的本地圖片 Markdown。
數據流可以概括爲:
羣友發圖 ──► 落盤(按 sha256 去重)──► 計數
├─ 到 5 次 ──► 入庫(帶作者 + 語境)
└─ 沒到 ──► 候選區裏躺着
入庫後 ──► 每張最多記 6 條語境 ──► sticker_pick 按語境/關鍵詞/人搜索
└─► 命中就發 
(默認「到 5 次」等數值可在 Web 面板頂部改。)
核心功能¶
採集與入庫¶
- 重複就計數:同一張圖(sha256 相同)被誰發各算各的,A 發 3 次、B 發 2 次互不干擾。
- 每人只留高頻的幾張:默認每人最多 3 張,新圖擠進來時擠掉該用戶計數最低且未上鎖的那張。
- 總容量 50 張:超出後從全庫挑計數最低、未上鎖的淘汰。
- 計數週期:默認每 5 天清一次——候選歸零,已入庫的計數重置爲 2(從此數重新攢,已入庫圖相對新候選有起跑優勢)。
- 上鎖:鎖住的圖不會被淘汰擠掉,也不能刪,需先解鎖。
Web 面板「表情庫」¶
裝完並刷新 DSH Web 後,設置裏會出現 表情庫 面板:
- 庫:每張圖及描述、標籤、發送者、使用次數;描述/標籤可改,回車保存;可上鎖、刪除、展開看語境。
- 候選:未達入庫次數的圖,可「現在就收」或「扔了」。
- 上傳:自行加圖,填暱稱、描述、標籤。
- 搜索:按描述、標籤、暱稱、語境過濾。
面板約每 4 秒刷新;採集爲實時。達標次數、每人上限、總容量、計數週期(天)、清計數後庫內起始次數等參數在面板頂部配置。
工具(給智能體調用)¶
| 工具 | 作用 |
|---|---|
sticker_pick |
按語境 / 關鍵詞 / 羣友找圖,返回 Markdown 圖片行 + 作者 + 語境 |
sticker_note |
改描述/標籤、上鎖、刪除,或把本地圖片手動加進庫 |
sticker_stats |
查看庫裏/候選數量、上限、清計數週期等佔用信息 |
sticker_pick 找到合適結果時,把返回的  原樣放進回覆;沒有合適圖時會提示不要硬發。
發送日誌¶
面板中的「發送日誌」用於覈對概率擲骰與是否真正發出:
- 每次擲骰記一條:概率、隨機值(0~1)、是否命中、羣號。
- 橋插件發出圖後會標記「已發出」;停留在「命中·等確認」表示擲中但出口未發出。
- 頂部彙總當日擲骰次數、命中次數、確認發出次數、命中率;支持搜索與清空日誌(清空時一併清除約 5 分鐘內複用擲骰結果的緩存)。
- 默認只保留最近
logMax(300)條。
安裝與啓用¶
插件頁填寫 dsh-sticker-vault,或命令行安裝(須與 README 一致):
# 從 GitHub 裝
dsh plugin --profile web add github:yingchaoyi/dsh-sticker-vault
# 本地開發(軟鏈)
dsh plugin --profile web add link:/path/to/dsh-sticker-vault
裝完後刷新頁面,在設置中打開 表情庫 即可管理參數與庫存。運行環境要求 Node.js >= 22(見 package.json engines)。
典型用法¶
智能體在需要接梗、對噴或複用羣語境時,調用 sticker_pick,傳入與當前對話相關的語境或關鍵詞;若返回 Markdown 圖片行,將其原樣寫入回覆。需要維護庫存時調用 sticker_note;需要看容量與週期時調用 sticker_stats。
數據目錄結構如下,便於備份或排查:
~/.dsh/sticker-vault/
├── store.json # 庫 + 候選 + 參數
├── images/ # 入庫的圖
├── inbox/ # 候選的圖(原始落盤)
└── sticker.log # 調試日誌,256KB 自動截斷
刪除整個目錄即清空重來;也可直接查看或編輯 store.json(自行承擔風險)。
適用場景與注意¶
適合:在 DSH + QQ 橋等場景裏,希望智能體本地積累羣梗圖、按語境檢索復發,且不希望圖片上傳外網或走模型記憶的用戶。
限制(README 已說明):
- 只認 完全相同文件(sha256);壓縮、換格式後再發會被當作新圖。
- 只抓 帶附件的羣消息(DSH 附件;QQ 橋轉進來的符合),純鏈接圖不抓。
- 淘汰按計數低者優先,不看社交關係;重要圖請 上鎖。
安全:插件以當前 DSH 進程權限讀寫 ~/.dsh/sticker-vault/ 並處理羣附件。安裝前請閱讀 源碼 與 MIT 許可證,確認符合你的部署策略。DSH 社區插件目錄(如 SkillHub)爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-sticker-vault 把「羣友反覆發的圖」變成可檢索的本地表情庫:採集、計數、入庫、語境記錄一條龍,接梗時用 sticker_pick 按語境撈出 。詳情與 issue 見 GitHub,安裝入口見 SkillHub 目錄頁。