前言¶
给智能体接 QQ 上下文时,常见做法是手工截图、复制粘贴,或依赖未公开的接口。NTQQ(QQ 9.9.x / NT 架构)的消息落在本机 SQLCipher 库里,密钥在已登录进程里,私聊与群聊混在一起,体量大、格式专。DeepSeek Harness(DSH)把能力拆成插件;下面介绍社区维护者 ariyflow 的 dsh-qqnt-chat-export(目录分类:记忆):在 Windows / Linux 上从本机 NTQQ 读聊天记录,建旁路索引,用模型工具或本地网页检索、统计、导出,并支持按问题检索片段与可点回引用。
这是什么¶
dsh-qqnt-chat-export 是一个 DSH 插件包:README 写明包含十六个模型工具与一个本地网页界面,支持群聊和私聊,可导出多种格式,并可对截图 OCR、语音转写后纳入搜索与问答文本池。维护者 ariyflow,源码与文档在 GitHub,许可证 MIT。插件行 id 固定为 qqnt-chat-export;不支持 macOS,要求本机已安装并登录 NTQQ。
核心功能¶
模型工具¶
README 工具表与功能列表涵盖:体检与排障(qqnt_doctor)、建索引(qqnt_index)、统计(qqnt_stats)、后台任务(qqnt_jobs)、取图(qqnt_media)、存储盘点与清理(qqnt_storage)、提取密钥、群列表、会话列表、跨会话搜索、单群 / 单会话 / 批量导出,以及问答检索(qqnt_ask)与主题回看(qqnt_recall)。qqnt_list_chats、qqnt_stats、qqnt_search 与导出类工具读旁路索引 index.sqlite,可覆盖私聊与跨会话;索引未建时可调 qqnt_index(action: "build")在后台构建。
本地网页与 DSH 侧边栏¶
默认网页地址为 http://127.0.0.1:46728/(端口可配置)。单页应用提供会话列表、组合查询与高亮、图片预览、统计、批量导出、导出预设,以及模型与组件、设置、任务面板;窄屏小于 720px 时列表与阅读器单栏切换。DSH 侧边栏会增加「QQ 聊天记录」入口,主区打开同一页面。
索引、搜索与问答¶
首次同步会建旁路明文索引;之后查询与导出只读索引。关键词走 FTS5 trigram,中文子串可索引查找;支持多账号索引缓存。会话可切分为带上下文的片段并做本地嵌入;qqnt_ask 返回最相关的几段对话与引用,答案由宿主模型或用户撰写,引用可回到原文;不装嵌入模型仍可用关键词检索。
导出与保护¶
单会话可导出 txt / csv / json / md / html / sqlite;单群另有 txt / sqlite / csv;批量导出最多 200 个会话到一个 ZIP(含 manifest.json)。支持昵称 / QQ 脱敏、媒体打包、按天分文件、AES-256 密码 ZIP 等选项(详见仓库 docs/features.md)。
安装与启用¶
DSH 通过 profile 目录内的 pnpm 安装依赖,官方命令如下(将 web 换成你的 profile 名):
dsh plugin --profile web add github:ariyflow/dsh-qqnt-chat-export
装好后插件行 qqnt-chat-export 自动启用,网页在 http://127.0.0.1:46728/。若曾安装旧的 @local/qqnt-chat-export,需先 remove,避免两个包争抢同一行 id。装完重启 DSH,GET /api/qqnt/panel 返回 200 表示宿主侧已加载。
卸载:
dsh plugin --profile web remove dsh-qqnt-chat-export
插件以当前 DSH 进程权限运行;安装前请自行查看源码与 MIT 许可证。README 声明本项目仅供学习参考,未获腾讯授权。
典型用法¶
第一次使用(QQ 保持登录):
- 打开
http://127.0.0.1:46728/,在「设置」查看运行环境; - 缺依赖时用「默认源安装」或「清华镜像安装」,在插件独立虚拟环境中安装(不改动系统 Python);
- 点「提取密钥」或在对话中运行
qqnt_extract_key(首次约 1~3 分钟,期间保持 QQ 登录); - 顶栏点「从 QQ 同步」,约 1 分钟建好索引;
- 之后可搜索、统计、导出或在对话里调用各
qqnt_*工具。
之后:默认每 60 分钟自动同步一次(设置页可关或改间隔),也可随时手动同步。Linux 提取密钥需能读取 qq 进程内存;被拒绝时 qqnt_status 会显示状态,qqnt_extract_key 会给出修复命令(如临时调整 kernel.yama.ptrace_scope,细节见 docs/setup.md)。
在对话中可直接调用工具,例如建立索引:
qqnt_index(action: "build")
跨会话关键词搜索使用 qqnt_search;聚合统计使用 qqnt_stats;单会话导出使用 qqnt_export_chat(支持 dryRun、keyword、sender、since、until 等过滤)。
适用场景与注意¶
适合:在本机已登录 NTQQ 的前提下,希望把聊天记录交给 DSH 智能体检索、统计、导出,或需要在本地网页里浏览与批量处理,且运行在 Windows 10/11 或 Linux(x86_64 / arm64)的用户。
环境与依赖:64 位 Python 3,sqlcipher3 装在插件自有虚拟环境;推荐安装 uv 以创建环境。WSL 内读不到 Windows 侧 QQ 内存,需在 WSL 内使用 Linux 版 QQ。
隐私与安全:workDir 内含明文密钥、解密副本与索引;用完建议整目录删除。网页仅绑定 127.0.0.1。对 QQ 原始数据库只读,不结束 QQ 进程。完整说明见 docs/security.md;已知限制见 docs/limitations.md(例如增量同步不感知消息编辑、媒体仅导出本机已下载文件等)。
结尾¶
dsh-qqnt-chat-export 把 NTQQ 本机聊天记录接到 DSH 的工具链与本地 UI 上,索引、FTS、可选嵌入与导出格式都在同一插件包内完成。社区目录页:https://www.skillhub.cn/plugins/ariyflow/dsh-qqnt-chat-export;源码与 README:https://github.com/ariyflow/dsh-qqnt-chat-export。