dsh-memewiki:內置梗百科,讓 DSH 認得羣裏的梗

前言

在羣聊或 IM 場景裏接 DeepSeek Harness(DSH)時,用戶常會甩出網絡梗、黑話或縮寫。模型若本地沒有釋義,容易硬猜:要麼當普通詞理解,要麼編一段像模像樣的解釋。AstrBot 生態裏曾有 astrbot_plugin_memewiki 做「問梗前先查庫、再注入上下文」;原倉庫已不可用,且 AstrBot 與 DSH 是兩套插件體系。維護者 thawline 將其重構移植爲 Node 插件 dsh-memewiki,面向 DSH 的 profile 安裝方式,內置離線 SQLite 詞庫,在模型看到用戶消息之前完成查梗與注入。

下面介紹插件定位、能力與安裝配置;事實以 GitHub 倉庫 README 爲準。

這是什麼

dsh-memewiki 是 DSH 用的梗百科 / 黑話詞典插件,分類屬於「記憶」相關能力:內置約 6696 條網絡梗詞條(2026-11-03 與 cnmeme.wiki 公開 API 同步;最初隨包詞庫爲 6668 條),離線可用,不聯網、零依賴(僅使用 Node 自帶的 node:sqlite)。

倉庫明確說明:這是 DSH 插件,不是 AstrBot 插件;裝進 AstrBot 不會生效。移植來源爲 AstrBot 插件 astrbot_plugin_memewiki(作者 in1t1a1),邏輯與詞庫設計沿用原版,外殼按 DSH(Node.js、ESM)重寫。當前 package 版本 0.1.6,許可證 MIT。社區目錄頁:skillhub.cn/plugins/thawline/dsh-memewiki;源碼:github.com/thawline/dsh-memewiki(目錄頁標註約 21 stars,以 GitHub 實時爲準)。

核心功能

預查注入與工具查詢

當用戶消息「像在問梗」(問梗句式、裸詞、停用詞過濾)時,插件會在模型處理該輪請求之前查本地庫,命中則只注入那一條詞條及相關接梗規則(約 750 字符規則 + 一條詞條);未命中則不注入,避免閒聊被塞無關上下文。

同時註冊工具 search_meme_wiki,參數 { query },供模型在需要時主動查庫。

匹配方式包括:精確匹配、問句包含詞條標題,以及查詢詞不少於 3 字時的「標題包含查詢詞」反向匹配(例如短問「碼頭」可關聯更長梗名)。

設置頁與配置

DSH 設置 → 插件 → 梗百科 支持詞條增刪改查、查看本機詞條總數;標題改名時若與已有詞條重名會報錯而非覆蓋。頁籤含「詞條庫 / 關於」,關於頁提供項目簡介、Star、倉庫與致謝(含詞庫來源 cnmeme.wiki)。

自動思考梗:勾選控制是否在每輪請求前自動預查注入;關閉後預查停止,僅工具調用時查庫。變更寫入 ~/.dsh/memewiki.json,下一輪生效。

串子程度(可選):串子開關 默認關閉,由模型自行把握玩梗尺度;開啓後可用 0–100 滑桿手動約束(低端更尊重、不接黑稱;高端放開串子)。設置頁可顯示當前版本並通過「檢查更新」與 GitHub 比對(僅點擊時聯網)。

離線與安全邊界

查詞與注入均在本地 16MB 級 SQLite(data/memes.db)完成;原版聯網兜底已移除,避免把聊天片段發往第三方 API。需要更新詞庫時,可在倉庫內運行同步腳本(需聯網讀 cnmeme.wiki 公開 API),與日常對話查梗路徑分離。

安裝與啓用

插件尚未發佈到 npm,勿使用 pnpm add dsh-memewiki(會 404)。在 profile 目錄(通常爲 C:\Users\<你>\.dsh\profiles\desktop,Linux/macOS 對應 ~/.dsh/profiles/...)下執行 README 給出的命令:

pnpm add github:thawline/dsh-memewiki

也可將倉庫放到本地後用 link: 引用。裝好後,把 "dsh-memewiki" 加入同一 package.json 的 dsh.profile.bundles 數組,重啓 DSH。

運行環境要求 Node ≥ 22.13.0(engines 字段)。peer 依賴 @deepseek-ai/dsh-tools(optional)。

配置與詞庫

配置文件路徑:~/.dsh/memewiki.json。README 示例:

{
  "自動思考梗": true,
  "串子開關": false,
  "串子程度": 50
}
  • 自動思考梗:默認 true,每輪前自動查庫注入。
  • 串子開關:默認 false;關閉時 串子程度 不生效。
  • 串子程度:0–100;README 對 ≤20、≤45、≤70、>70 各檔有說明。

詞庫表結構見 README(memes 表含 title、summary、usage、origin、aliases 等字段)。手動在設置頁填寫的 aliases 在跑同步腳本時不會被沖掉。

更新本地詞庫(需聯網,寫庫前自動備份):

node scripts/sync-cnmeme.mjs               # 補新詞條 + 同步站點改過的詞條
node scripts/sync-cnmeme.mjs --dry-run     # 只報告,不寫庫
node scripts/sync-cnmeme.mjs --no-existing # 只補新詞條

典型用法與效果

  1. 用戶發送類似「XX 是什麼梗」或羣內裸梗詞;若觸發預查且本地命中,模型上下文已含釋義與接梗提示,回答可直接接梗而非編造。
  2. 關閉「自動思考梗」後,依賴模型調用 search_meme_wiki 按需查本地庫。
  3. 在設置頁新增私有黑話詞條,下一輪即可參與匹配。

README 對比原版:本插件無 /梗 圖片卡片、無 /黑話 命令與 AstrBot WebUI,由 DSH 設置頁替代;無聯網兜底,生僻或未入庫新梗可能查不到(文檔舉例部分詞條尚未收錄)。

適用場景與注意

適合:羣聊機器人、IM 助手、任何通過 DSH 接模型且需要離線、可控梗釋義注入的場景。

注意:

  • 插件以當前 DSH 進程權限運行;安裝前請閱讀源碼與 MIT 許可及倉庫 NOTICE(詞庫版權歸原作者與 cnmeme.wiki)。
  • 預查靠句式與停用詞表,寧可漏查也不硬塞;不是分類模型。
  • 社區目錄 skillhub.cn 爲獨立生態站點,與 DeepSeek / 幻方無官方從屬關係;安裝方式以 README 爲準,勿與 AstrBot Python 插件流程混淆。

結尾

dsh-memewiki 把 AstrBot 梗百科的「預查 + 單條注入 + 本地詞庫」搬到 DSH,並增加串子尺度、設置頁管理與版本檢查。若你的 Harness 需要認得常見網絡梗,可在 profile 中按上文安裝並寫入 bundles。

  • 目錄頁:https://www.skillhub.cn/plugins/thawline/dsh-memewiki
  • GitHub:https://github.com/thawline/dsh-memewiki
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜