dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
给 DSH 用的梗百科 / 黑话词典插件。
⚠️ 这是 DSH 插件,不是 AstrBot 插件。 仓库里出现
astrbot_plugin_memewiki字样,只是因为本项目的灵感来自那个 AstrBot 插件;装进 AstrBot 里不会生效。
致谢:灵感来自 AstrBot 插件 astrbot_plugin_memewiki(作者 in1t1a1),谢谢原作者提供的灵感。原仓库已删除,这里不放链接。
内置 6792 条网络梗词条,查词离线可用、零依赖(只用 Node 自带的 node:sqlite)。
当你问一句「XX 是什么梗」时,它会在模型看到这句话之前就把对应词条查好塞进上下文,让模型直接接梗;同时提供一个 search_meme_wiki 工具,让模型自己想查的时候也能查。
作者:@thawline 致谢:灵感来自 AstrBot 插件
astrbot_plugin_memewiki(原仓库已删除),感谢原作者
scripts/sync-cnmeme.mjs --no-existing,只把站点上的新词条补进来(不覆盖你手改过的),跑完自动刷新条数。全程纯 Node 脚本,不经过模型,不烧 token。feedback_meme_wiki——只提交要补的那一段,插件自己去拉原文、在「用法」小节末尾追加、拼好整篇再提交,不用模型贴全文;站内 AI 先审、拿不准转人工。提交记录显示在设置页。用户不用注册网站、不用登录,凭证由插件在后台领。sqlite3,这里只要 Node ≥ 22.13,零依赖,pnpm add 完事。这是 DSH 插件,不是 AstrBot 插件,请装进 DeepSeek Harness。
在 profile 目录(通常是 C:\Users\<你>\.dsh\profiles\desktop)下执行:
pnpm add github:thawline/dsh-memewiki
或者把仓库 clone 到本地,再用 link: 引用。
装好后,把 "dsh-memewiki" 加进同一个 package.json 的 dsh.profile.bundles 数组,重启 DSH。
还没发布到 npm,所以
pnpm add dsh-memewiki会 404 —— 用上面的 GitHub 方式。 也不要把它交给 AstrBot 的插件安装流程:那是另一套 Python 插件体系,装进去不会生效。
配置文件:~/.dsh/memewiki.json
{
"自动思考梗": true,
"串子开关": false,
"串子程度": 50
}
自动思考梗:是否在每轮请求前自动查词库并注入。默认 true。串子开关:是否手动接管玩梗尺度。默认 false(关着时模型自己判断)。串子程度:0–100。≤20 很低(很尊重,黑称不接)、≤45 偏低(损操作可以,损长相不行)、≤70 中等(跟着社区玩)、>70 很高(放开串,黑称也玩)。开关关着时不生效。data/memes.db 是 SQLite 数据库,表结构:
CREATE TABLE memes (
title TEXT PRIMARY KEY, -- 词条名
slug TEXT, -- 拼音/英文别名
tags TEXT, -- 标签,逗号分隔
usage TEXT, -- 怎么用 / 怎么接
origin TEXT, -- 出处
other TEXT, -- 其他分节(演化 / 相关 / 备注等)
summary TEXT, -- 释义
aliases TEXT -- 别名,逗号分隔
);
词库来自 cnmeme.wiki 的公开 API(来源、用法、标签、别名与摘要),2026-11-05 同步至 6792 条,对应站点当前的公开词条。最初 6668 条来自原版插件随包分发的 data/memes.db(2026-10-26 构建)。
梗是会长出来的。想再同步一次,跑(需要联网,只读站点的公开 API):
node scripts/sync-cnmeme.mjs # 补新词条 + 同步被站点改过的词条
node scripts/sync-cnmeme.mjs --dry-run # 只报告会改什么,不写库
node scripts/sync-cnmeme.mjs --no-existing # 只补新词条,不动已有条目
脚本会先翻完全站公开列表(约 4–5 分钟),再只拉有变化的详情;写库前自动备份成 data/memes.db.bak-时间戳。你在设置页手动填的 aliases 不会被冲掉,正文为空时也保留本地旧值。跑完 meta.built_at / count 会更新,设置页的总条数跟着变。
不想开终端的话,直接在 DSH 设置页 → 插件 → 梗百科点「更新词库」:后台跑的是 --no-existing(只加新词条),页面上会显示同步进度和结果,跑完条数自动刷新。按钮不经过模型,零 token。
本插件是一次独立实现,不是逐行翻译。AstrBot 是 Python 的 Star 插件框架,DSH 是 Node.js 的插件体系,外壳必须重写;词库、匹配逻辑、预查闸门、注入文案这些设计受原版启发。
| 能力 | 参考的 AstrBot 版 astrbot_plugin_memewiki | 本插件 dsh-memewiki |
|---|---|---|
| 运行环境 | AstrBot(Python) | DSH(Node.js,ESM,零依赖) |
| 词库读取 | SQLite(sqlite3) | node:sqlite(Node ≥ 22.13 自带) |
| 预查注入点 | @filter.on_llm_request → _append_temp | ctx.systemPrompt.context()(order 950,仅该轮) |
| 玩梗尺度 | 无 | 「串子程度」0–100 滑杆 + 开关(默认关,交给模型判断) |
| 版本检查 | 无 | 设置页显示当前版本 + 「检查更新」按钮(只在你点击时连一次 GitHub raw) |
| 注入内容 | 接梗规则 + 命中词条 | 相同设计(规则约 750 字符 + 一条词条) |
| 查询工具 | search_meme_wiki | 同名工具,参数 { query } |
| 匹配方式 | 精确 + 查询词包含标题 | 精确 + 查询词包含标题 + 标题包含查询词(≥3 字) |
| 注入开关 | 配置项 | 设置页「自动思考梗」勾选框(写 ~/.dsh/memewiki.json) |
| 词条管理 | AstrBot WebUI 面板 + /黑话 命令 | DSH 设置页「梗百科」(增删改查 + 总数) |
| 图片卡片 | /梗 → Pillow 渲染图片 | ❌ 暂未实现 |
| 联网兜底 | cnmeme.wiki 公开 API(像梗才查、同词 10 分钟一次、带缓存) | ❌ 不联网(见下) |
| 预查闸门 | 本地精确 → 像梗才联网 → 同词节流 → 缓存 | 本地匹配 + 像梗判断(问梗句式 / 裸词 / 停用词) |
| 黑话自建 | /黑话 词 释义 命令 | 设置页新增词条(等价,但走界面) |
预查注入永远不联网。 原版在本地查不到时会去 cnmeme.wiki 搜;这里没有做,原因:
需要联网版的话,可以在设置页把「自动思考梗」关掉,改用 search_meme_wiki 工具自行决定何时查(工具同样只查本地库)。
另外有两个显式的联网动作:设置页的「更新词库」和「提交新词条」。这两个只在你点了之后才连一次 cnmeme.wiki,平时不跑。
/黑话)。MIT。词库数据版权归原项目与 cnmeme.wiki;本项目仅做格式适配,功能设计受原版启发,详见 NOTICE。