CH3SH-LC/dsh-better-wechat ↗★ 0

dsh-better-wechat

本地优先的微信消息整理助手:把电脑微信聊天变成可检索、可筛选、可复盘的个人工作台。采集、解密与索引全部在本机完成,只有本次分析选中的消息文本会交给 DSH 里的模型;免打扰群可一键忽略。 适合需要安全检索本地微信历史、自动提炼待办事项并进行复盘的工作场景。

パッケージ
dsh-better-wechat
互換性
未検証
Harness ピア範囲
0.2.0-rc.2
バージョン
0.6.0
ライセンス
MIT
最終更新
2026/10/15

インストール

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:CH3SH-LC/dsh-better-wechat

ドキュメント

README 全文を読む ↗

dsh-better-wechat

把电脑上的微信聊天,变成你随时能问的私人消息工作台。 本地优先:采集、解密、索引、筛选都在你的电脑上完成;只有你这次分析真正用到的消息文本,才会交给你在 DSH 里选择的模型。

微信里其实躺着大量有价值的信息 —— 谁答应了什么、哪条通知有时限、上周讨论的结论是什么。但真要用的时候,你只能在几百个会话里往上翻。

dsh-better-wechat 是 DeepSeek Harness(DSH)的一个插件。它在你的电脑本地把微信聊天整理成一份可检索、可筛选、可追溯的私人档案,然后让 DSH 里的助手用自然语言帮你查、帮你总结、帮你把「要做的事」挑出来。

  • 🗂️ 一句话找消息 —— 按人、按群、按时间、按关键词找,返回原文和上下文
  • ✅ 自动整理待办 —— 从聊天里挑出与你有关的承诺和截止时间,每条都带原文出处
  • 🔕 免打扰群一键忽略 —— 整理消息时跳过你早已静音的群,只看真正重要的会话
  • 🔒 本地优先、按需外发 —— 数据库、索引和完整历史留在本机;只有本次分析用到的消息文本交给 DSH 里的模型,换成本地模型即可完全不外发

它把什么变简单了

你现在的麻烦用它可以这样
重要信息淹没在几百个群聊里直接问「昨天关于验收的消息」,拿到原文和上下文
每天翻聊天记录找「谁答应了什么」让它按日期整理候选待办,逐条附上消息依据
几十个免打扰群刷屏,整理时全是噪声说一句「忽略免打扰群」,整理范围立刻干净
想知道「这事上周谁提的」按时间回看,结论可追溯到具体某条消息
不想把聊天记录交给云端工具采集、索引、完整历史都在本机;只把你选中的文本交给模型分析,也可以改用本地模型完全不外发

核心功能

1. 用大白话检索聊天记录

不需要记命令,也不需要知道消息存在哪个数据库。直接描述你记得的线索:谁、哪个群、大概什么时候、聊了什么。

「上周三到周五,项目群里提到的截止时间」 「查一下昨天跟王工讨论的接口问题,给我原文」

2. 把聊天里的「事」挑出来

它会通读你指定时间范围内的消息,整理成候选待办:任务、负责人、截止时间、状态,并且每条都标注来自哪条消息。

更重要的是它的分寸感:

  • 草稿不等于完成 —— 它给你的都是需要你核对的草稿,不会替你确认「已完成」
  • 别人的事不算你的事 —— 群里的任务不会硬算到你头上
  • 证据可回溯 —— 消息更新后会标记「依据已变化」,可以按版本回查当时的原文

「整理本周与我有关的待办,明确任务和可能任务分开」

3. 免打扰群,一键忽略

这是最好用的一条「减负开关」。

你手机里静音的群,插件读的是微信自己的「消息免打扰」设置,所以和你在微信里看到的是一回事。整理消息时开启忽略,免打扰群的海量消息就不会占用你的整理时间和模型上下文。

  • 只排除确定处于免打扰的会话;状态不明的会话会保留,不会被误伤
  • 会明确告诉你索引里是否已有免打扰信息,缺数据时不会假装「已排除」

「整理今天的待办,忽略免打扰群」

4. 会话视角:先找准人,再查内容

同名群、同名联系人很容易搞混。插件会先列出匹配到的会话(真实显示名、类型、消息量、最近时间、是否免打扰),确认后再读取内容 —— 不会擅自替你选一个。

5. 长期不关注名单

有些群你永远不想在整理时看到。可以把它们加入「长期不关注」名单:之后所有检索、上下文和待办都会自动跳过,但它仍然保留在本地档案里,随时可以查看或移出。

6. 结论带证据,越权的事不做

每条结论都能落到具体某条消息。插件不会发消息、不会改微信、不会替你执行任务、不会创建提醒 —— 它只做「读懂 + 整理」。


三分钟上手

第 0 步 · 准备:DSH(支持 workspace bundle 的版本)、Python 3.10+。要让插件自动读取电脑微信,还需要 Windows 上的微信 4.x 并已登录。

第 1 步 · 安装插件 在 DSH 的插件页面安装本插件目录(或让 plugin_manager 用 install_bundle 安装)。

⚠️ 首次安装本地插件目录后,请完整退出并重新打开 DSH。仅刷新或禁用/启用不能替代重启 —— 插件代码必须由宿主重新加载,新的工具才会出现。

第 2 步 · 让它读一次微信 安装完成后,在 DSH 里说:

「初始化微信助手」

插件会接入你已登录的电脑微信,做一次完整读取、校验并建立本地索引(首次通常需要几分钟)。若提示缺少采集依赖,运行插件目录里的 安装采集依赖.cmd 后重试。

第 3 步 · 开始提问

「看看今天有哪些需要我回的消息」

之后每天想更新时,说一句「刷新微信记录」即可,不需要重新选择来源。

没有 Windows 微信也没关系:可以导入已有的聊天导出(完整导出目录即可),macOS / Linux 同样支持。


可以这样问它

  • 「昨天群聊里关于验收的消息,给我原文和上下文」
  • 「总结今天和这位联系人的讨论,每条结论给出消息依据」
  • 「整理本周与我有关的待办,明确任务和可能任务分开,不把别人要做的事算到我名下」
  • 「只提取今天上午 9 点到 12 点,项目甲群和项目乙群的记录」
  • 「总结昨天的消息,排除闲聊群,不读公众号」
  • 「以后不关注这个闲聊群 —— 先把匹配到的会话列出来给我确认」
  • 「整理今天的待办,忽略免打扰群」

隐私:本地优先,但要看你把模型放在哪

先把话说清楚:**采集、解密、校验、索引、筛选、会话查找全部在你的电脑上完成,微信数据库、解密副本和完整索引不会上传到任何地方。**但插件不是“本地总结器”——分析必须由 DSH 里的模型来做,所以你要知道哪些内容会随模型请求离开本机。

留在本机会交给 DSH 里的模型
微信数据库与其解密副本本次分析被选中的消息正文
完整聊天历史与全文索引联系人 / 群显示名、时间、证据编号
账号映射、本地随机密钥你提问里的时间 / 会话 / 类型范围
长期不关注名单、候选待办草稿—
  • 这不是“完全离线总结”。 如果 DSH 用的是云端模型(例如 DeepSeek API),上表右列的内容会随模型请求发送给对应服务商。这不是插件在“上传”,而是“让模型帮你分析”本身的含义。
  • 想让内容完全不外发:在 DSH 里改用本地模型,那就真的不出本机。
  • 你能控制发多少:范围与条数由你决定——按日期、按会话、按类型筛选,用「忽略免打扰群」跳过高噪声会话,一次只读你真正要用的那几条。图片、语音、视频和文件正文不会被读取,未读取的内容会明确标注。
  • 插件自己不碰微信:不向微信写入数据、不注入进程、不保存数据库密钥、不发送消息、不执行任务、不创建提醒。

插件主动发起的联网行为只有一个:运行 安装采集依赖.cmd 时从公开源安装 Python 依赖包(与聊天内容无关)。其余网络流量来自 DSH 与它所选择的模型,遵循 DSH 自身的配置与权限。

完整的数据边界见 PRIVACY.md,安全反馈见 SECURITY.md。


适用环境与边界(如实说明)

项目情况
DSH 宿主已在 DSH 0.2.0-rc.2 真实运行时验证插件加载、工具注册、返回格式与审批
自动读取电脑微信需要 Windows + 微信 4.x + Python 3.10+(64 位)
macOS / Linux支持导入已有聊天导出;不支持自动读取本机微信
图片 / 语音 / 视频 / 文件只记录「有一条这样的消息」,不读取正文
实时性读的是本地快照,不是实时聊天;空结果不等于「没有消息」,需要时先刷新
待办准确性结论是需要人工核对的草稿;请以原文为准

常见问题

会把我的聊天记录上传吗? 分两层看。微信数据库、解密副本、完整索引和历史都只在本机,插件不会上传它们;但被选中用于分析的那段文本会交给 DSH 里的模型——如果那是云端模型,文本就会随模型请求发送给该服务商。想让内容完全不出本机,请把 DSH 换成本地模型。

免打扰状态是怎么判断的? 读的是微信自己的「消息免打扰」设置。状态不明的会话不会被当成「没开免打扰」,也不会被误排除。

升级或改名后我的索引会丢吗? 不会。私有数据目录与插件名字解耦:如果本机已有旧目录里的索引,改名后会继续使用它,不需要重新采集(也可以用环境变量 DSH_WECHAT_STATE_DIR 指定目录)。

为什么重启 DSH 之后工具还是没出现? 说明宿主没有重新加载插件。请在任务结束后正常重启 DSH;仅刷新页面或禁用/启用插件可能清不掉旧模块缓存。

为什么有的时候查不到消息? 常见原因是本地快照还没覆盖到那个时间段。状态信息会告诉你是否需要刷新,以及当前覆盖范围 —— 空结果不等于当天没有消息。

支持多个微信账号吗? 一个私有数据目录绑定一个账号。切换账号请使用另一个数据目录,避免混在一起。


深入一点

本项目原创部分采用 MIT,采集器上游改写部分采用 Apache-2.0,见 第三方归属。


附录 · 插件由哪些能力组成(排障与进阶使用)

插件按功能域拆成 5 个可独立启停的组件,每个组件只提供自己那组能力:

组件能力
core配置、本地引擎与审批状态(不直接提供工具)
stage-one读取与刷新本机聊天(wechat_prepare、wechat_refresh)
read状态、检索、上下文、按范围复核、会话查找(wechat_status、wechat_search、wechat_context、wechat_review、wechat_conversations)
tasks候选待办的保存与读取(wechat_save_tasks、wechat_list_tasks)
preferences长期不关注名单的查看与修改(wechat_get_preferences、wechat_set_preferences)

常用范围参数:start_date / end_date、start_time / end_time、kinds(friend / group / official / private / system)、conversation_ids、exclude_conversation_ids、exclude_muted。 第一步只接受空参数;筛选与忽略全部发生在第二步。