Repository navigation
Releases: LuckTerence/CleanYourWechatTool
Release list
CleanYourWechatTool v1.0.10 · 数据安全修复
Release Notes - CleanYourWechatTool v1.0.10
发布日期: 2026-09-28
类型: 数据安全修复(2 项)
本版本修复两处在特定操作时序下可能导致用户数据丢失的问题,建议所有用户升级。
重要修复
1. 归档中途取消后无法一键恢复
- 问题:外置归档过程中点击取消(或处理中途发生异常),已经移到外置目录的文件不会写入
archive_manifest.json(清单此前每满 100 条才中途落盘一次,最终写入位于循环之后)。结果文件已被移走,却无法通过restore原样放回。 - 修复:清单写入改为
finally执行,任何中断路径都会先落盘已归档记录。
2. 去重可能覆盖扫描后被修改的文件
- 问题:去重依据的是扫描时计算的哈希;从扫描完成到点击执行之间,若用户修改了其中某个文件,执行时会直接被另一份旧内容的硬链接替换,修改内容丢失。
- 修复:执行前对每个文件重新校验大小与完整哈希,不一致即跳过并记录日志;若保留的主副本已变化,则整组跳过。预览(dry-run)不受影响。
测试
- 新增
test_archive_manifest_written_on_cancel、test_execute_dedup_skips_file_modified_after_scan两个回归测试(在旧代码上均失败)。
CleanYourWechatTool v1.0.9 · 边界修复与发布门禁固化
Release Notes - CleanYourWechatTool v1.0.9
发布日期: 2026-09-12
类型: 稳定性与边界修复(3 项) + 发布工程门禁固化
本版本在 v1.0.8 的基础上,针对三处在窄场景(大文件抽屉交互、后台诊断完成时序、主子线程白名单并发配置)下可能触发的异常进行了针对性防御,并内置了发布自检门禁脚本。
重要修复与稳定性增强
1. 消除大文件抽屉点击 KeyError
- 问题:大文件抽屉展开期间,若后台重新完成诊断并刷新了文件元数据字典,残留的旧项目 ID 点击时会直接触发
KeyError,导致界面停滞在半更新状态且无提示。 - 修复:在
on_click事件中增加iid in meta存在性防御保护。
2. GUI 后台任务完成回调异常显式捕获
- 问题:
_poll_queue中此前仅捕获queue.Empty,当on_done回调执行抛出未预料异常时,窗口化应用没有标准错误流输出,导致异常被静默吞掉,界面无法恢复。 - 修复:显式捕获
on_done执行期异常,记录日志并通过原生弹窗进行友好提示。
3. 白名单多线程迭代竞争保护
- 问题:当后台诊断线程正在遍历白名单规则时,如果用户在前端界面同时新增或修改白名单规则,可能触发 Python 的
RuntimeError: dictionary changed size during iteration。 - 修复:遍历改为快照安全迭代(
list(self.rules.values()))。
工程规范与自动化
- 发布自检门禁 (
scripts/preflight.py):把版本号一致性、工作区状态、远程同步、pytest 矩阵、flake8/mypy 静态扫描、CLI 冒烟及 GUI 真机运行固化为一键检查命令,阻断不合格打包。 - 发布流程规范 (
docs/RELEASE_PROCESS.md):建立规范的发布标准与四层故障回退方案。
CleanYourWechatTool v1.0.8 · 上线前全量审核修复
Release Notes - CleanYourWechatTool v1.0.8
发布日期: 2026-09-11
类型: 上线前全量审核修复(11 项,含 1 个阻断发布的问题)
本轮在发布前做了三路并行审核(引擎/CLI、图形界面、端到端实跑),共修复 11 个问题,
其中包含一个会导致「发布即失败」的问题和一个会导致「去重后文件意外消失」的问题。
重要修复
1. 界面承诺的释放量 = 实际能释放的量
此前界面上「预计可安全释放」可能高于实际,原因有三处,本次全部对齐到同一个判定函数:
- 死线过度拦截:运行时目录名(
resources等)的死线原先对任意路径层级生效,
导致缓存内部的同名目录被误保护——实测本机 52 MB 可清缓存被白留。
现改为仅对账号根目录第一层生效;数据库、.db/.db-wal、.dll/.pak
等硬拦截完全不变。 - 预估未扣除拦截项:修改后预估与执行的差额由 65.9 MB 降至 13.9 MB
(余下为真正应拦的程序组件后缀)。 - 跨卡片重复计算:同一个文件可能同时属于「缓存垃圾」与「历史大文件」候选,
此前简单相加导致虚高;现按绝对路径去重(实测显示 260 MB → 正确值 160 MB)。
2. 避免「去重」与「清理」相互叠加造成意外
同一文件既在去重组、又被勾选清理时,此前会先合并为硬链接、随后该路径又被清理,
结果超出用户「只合并不删除」的预期。现改为:组内任一文件被选中清理时,整组避让。
3. 归档可靠性
- 归档过程中被取消或异常中断时,此前不会写出清单,已归档文件将失去还原依据;
现改为每 100 条周期性落盘,清单本身也改为原子写入(临时文件 + 替换)。 - 归档的行为边界在命令输出与文档中明确说明:归档文件不在本机,
微信内点击会提示"文件不可用"属预期行为,插回磁盘执行restore即可原样恢复。
4. 多账号支持(命令行)
scan / clean / dedup 此前只处理第一个账号,多账号用户其余账号静默漏清。
现默认处理全部账号(输出 [1/2] [2/2] 分组),并新增 --account <id或片段> 精确指定。
5. 触控板 / 滚轮无法滚动
界面内容超出后只能拖动滚动条,无法用触控板双指或滚轮滚动。
根因是界面库按事件数值计算滚动步长,在较新的 Tk 运行时下该值算为 0;
现改为按方向以固定步长滚动(兼容各平台事件语义)。
6. 打包产物启动崩溃(继承 v1.0.6/v1.0.7 修复)
窗口图标的 Pillow 依赖改为可选(缺失时优雅降级),打包配置显式收集,
并在发布流程中增加产物冒烟测试:产物无法启动则发布直接失败。
其他修复
| 问题 | 影响 |
|---|---|
restore 命令的模块导入路径 |
pip 安装 / 打包环境下该命令直接崩溃(已改为统一导入) |
scan 的 --account 参数未生效 |
参数存在但不起作用 |
表格标题写成 账号 [wxid] |
方括号被渲染库当作样式标签,账号名被吞掉 |
--archive-to 未展开 ~ |
~/路径 写法失效 |
| 任务进行中切换账号 | 界面显示与实际扫描账号错位(现拦截并提示) |
--min-size abc 等非法参数 |
显示原始错误堆栈(现为友好提示) |
| 测试断言停留在旧默认值 | 会导致 CI 失败、发布被跳过(已同步) |
下载
| 平台 | 文件 |
|---|---|
| macOS (Apple Silicon) | CleanYourWechatTool-arm64.dmg |
| Windows 10/11 (64 位) | CleanYourWechatTool-windows-x64.zip |
首次打开若提示"无法验证开发者":系统设置 → 隐私与安全性 → 仍要打开;
或终端 xattr -cr /Applications/CleanYourWechatTool.app。
(macOS 15 起 Apple 已移除"右键打开"的绕过方式。)
首次使用需授予完全磁盘访问权限(系统设置 → 隐私与安全性 → 完全磁盘访问权限),
否则读不到微信数据——应用内会给出跳转指引。
质量与验证
- 83 项自动化测试全绿(含新增的死线回归测试 4 项);
flake8/mypy无告警;CI 在 macOS / Windows / Ubuntu × Python 3.8–3.12 矩阵运行;- 端到端实跑验证:清理(文件确实进入废纸篓、数据库未被触碰、统计计数正确)、
归档与恢复闭环、多账号分派、命令行全命令冒烟 10/10 通过。
CleanYourWechatTool v1.0.7 · 补齐 macOS 打包依赖与高清图标
Release Notes - CleanYourWechatTool v1.0.7
发布日期: 2026-09-09
类型: 紧急修复(macOS 打包依赖补全与 Logo 渲染)+ CI 产物冒烟门禁加固
核心修复:补齐 macOS 打包环境 Pillow 依赖
在 v1.0.6 中虽然增加了优雅降级,但 macOS 构建环境(CI build-gui 步骤)中因遗漏 pillow 安装,导致生成的 .app 产物未打包 Pillow,运行时无法显示高清 Logo 和窗口图标:
- 构建依赖补全:在
.github/workflows/ci.yml的build-gui阶段中正式补齐pillow安装; - Logo 逻辑严密防护:在
clean_wechat_gui.py的_build_ui()中增加Image is not None判空,彻底消除潜在的AttributeError; - 冒烟测试深度加固:在产物冒烟门禁中新增「Logo 与关键装饰依赖完整性」断言,若出现图标降级告警将立即阻断发布。
下载
| 平台 | 文件 | 说明 |
|---|---|---|
| macOS (Apple Silicon) | CleanYourWechatTool-arm64.dmg |
适用于 M1/M2/M3/M4 芯片 Mac |
| macOS (Intel) | CleanYourWechatTool-x86_64.dmg |
适用于 Intel 芯片 Mac |
| Windows 10/11 (64 位) | CleanYourWechatTool-windows-x64.zip |
绿色便携免安装版,解压直接运行 |
macOS 首次打开若提示"已损坏 / 无法验证开发者"(应用未经公证):
右键应用图标 → 打开;或执行 xattr -cr /Applications/CleanYourWechatTool.app。
Windows:未签名的便携版可能被 SmartScreen 拦截,选择「更多信息」→「仍要运行」即可。
CleanYourWechatTool v1.0.6 · 修复启动崩溃
Release Notes - CleanYourWechatTool v1.0.6
发布日期: 2026-09-09
类型: 紧急修复(产物启动崩溃)+ 发布质量门禁
修复:v1.0.5 的 .app 双击即崩溃
v1.0.5 产物的图形界面在启动时抛出异常:
ModuleNotFoundError: No module named 'PIL'
原因:窗口图标显示依赖 Pillow,但打包配置未收集该依赖。
该问题未被 CI 发现——87 项测试与多平台矩阵均针对源码运行,不覆盖打包产物。
修复(双保险):
- 图形界面将 Pillow 改为可选依赖,缺失时优雅降级为无窗口图标,不阻断启动;
- 打包配置显式收集
PIL / PIL.Image / PIL.ImageTk。
实测:修复后产物启动存活并正常进入主界面(此前必崩)。
新增:发布前的产物冒烟门禁
为避免同类问题再次被"测试全绿"掩盖,发布流程在上传 Release 前新增冒烟步骤:
- 真正运行打包产物(macOS 运行 .app,Windows 运行 .exe);
- 断言进程存活且启动日志无
Traceback / ModuleNotFoundError / ImportError; - Windows 额外校验产物内
customtkinter、PIL依赖资源齐备; - 任一不通过则发布流程失败,坏包不会出现在 Release 页面。
下载
| 平台 | 文件 |
|---|---|
| macOS (Apple Silicon) | CleanYourWechatTool-arm64.dmg |
| macOS (Intel) | CleanYourWechatTool-x86_64.dmg |
| Windows 10/11 (64 位) | CleanYourWechatTool-windows-x64.zip |
macOS 首次打开若提示"已损坏 / 无法验证开发者"(应用未经公证):
右键应用图标 → 打开;或执行 xattr -cr /Applications/CleanYourWechatTool.app。
Windows:未签名的便携版可能被 SmartScreen 拦截,选择「更多信息」→「仍要运行」即可。
CleanYourWechatTool v1.0.4 · 智能两步筛选与纯净交互
Release Notes - CleanYourWechatTool v1.0.4
发布日期: 2026-09-09
类型: 智能两步筛选 + 零 Emoji 纯净交互 + 办公重要文档锁定保护
精准两步筛选机制 (先选人,后选文件)
全面重构历史大文件的筛选模式,打破微信自带清理“整群整人一刀切”的暴力清除逻辑:
- 第一步 · 核心人脉防删白名单(先选人/群):
- 筛选面板顶部常驻白名单守护条,一键直达「管理保护名单」;
- 自动避开白名单联系人/重要群聊,以及含有「合同/发票/方案」关键词的核心文件。
- 第二步 · 细粒度文件类型选择(后选文件):
- 聊天大视频 (.mp4 / .mov 等) —— 默认不勾选;
- 临时压缩包/安装包 (.dmg / .zip / .pkg 等) —— 默认不勾选;
- 办公重要文档 (.pdf / .docx / .xlsx 等) —— 默认锁定保护,防手滑误删。
- 100% 自主掌控(默认零勾选):
- 历史大文件初始处于 100% 绝对保护锁定状态,绝不自作主张勾选任何项目;
- 只有用户主动确认并打勾的项目才会被纳入预估清理范围。
零 Emoji 纯净专业界面
- 按照企业级与严谨生产力工具标准,移除所有 Emoji 表情符号,提供干净、专业、现代的 UI 界面体验;
- 明细抽屉增加清晰的文本类别标识(视频、压缩包、文档、其他)。
质量与测试
- 全套 83 项单元与集成测试全绿通过;
- CI 持续集成覆盖 Python 3.8–3.12 跨平台测试及安全审计。
CleanYourWechatTool v1.0.3 · 全新界面与交互重构
Release Notes - CleanYourWechatTool v1.0.3
发布日期: 2026-09-09
类型: 全新界面 + 交互重构(渐进式披露)
🎨 全新界面:微信智能空间管家
界面整体重构为 CustomTkinter 原生质感(深浅色自适应),信息层级收敛为:
一屏核心看板 + 三张智能建议卡片 + 一个主操作按钮。
- 顶部看板:微信当前占用 / 预计可安全释放 / 一键安全瘦身
- 三张智能建议卡片:基础系统垃圾(零风险)、多群转发重复文件(无损合并)、历史大文件(空间大户)
- 每张卡片独立开关,释放总量与按钮状态实时联动
- 底部常驻累计成就与操作状态
🍃 树叶版应用图标
新图标:微信绿渐变 + 白叶 + 叶脉 + 对勾,贴合"轻量、瘦身"的定位。
🧩 渐进式披露:默认极简,需要时可选
不做参数铺陈,也不砍能力——
- 默认:推荐值已选好(90 天前 / 大于 10MB / 视频与接收文件),普通用户零配置、零术语
- 可选:每张卡片提供「调整筛选条件」折叠区
- 历史大文件:清理时间 / 最小大小 / 文件类型,改完自动重算
- 重复文件:重复判定大小阈值
- 核对:历史大文件支持打开明细抽屉,逐条勾选后再执行
🛡 稳定性与正确性修复
- 取消链路修复:任务取消不再被当作"完成"渲染(正确显示"已取消");去重阶段支持取消与进度
- 任务重叠防护:后台任务进行中拒绝新任务,避免状态互相覆盖
- Python 3.8 兼容修复(哈希参数在 3.9+ 才支持,导致 3.8 环境失败)
- 统计准确性:累计释放/保护数据统计修正
- 防御死线:数据库与程序组件后缀、运行时目录物理拉黑,任何规则都不可触碰
下载
| 机型 | 文件 |
|---|---|
| Apple Silicon (M1/M2/M3/M4) | CleanYourWechatTool-arm64.dmg |
| Intel | CleanYourWechatTool-x86_64.dmg |
首次打开提示"已损坏 / 无法验证开发者"(应用未经 Apple 公证):
右键应用图标 → 打开;或终端执行 xattr -cr /Applications/CleanYourWechatTool.app。
提示"未找到微信数据":系统设置 → 隐私与安全性 → 完全磁盘访问权限,
将本应用加入列表后重启(应用内也会一键引导跳转该设置面板)。
质量与测试
- 63 项单元与端到端测试全绿;
- CI:Python 3.8–3.12 × macOS/Ubuntu 矩阵 + flake8 + mypy + bandit + pip-audit 全绿;
- 双架构 .app 由 GitHub Actions 自动打包并附于本 Release。
CleanYourWechatTool v1.0.2 · 交互体验大版本
Release Notes - CleanYourWechatTool v1.0.2
发布日期: 2026-09-08
类型: 交互体验大版本 (macOS 原生习惯全面对齐)
🍃 新应用图标
应用图标重绘为树叶主题(微信绿渐变 + 白叶 + 叶脉 + 对勾)——贴合"轻量、瘦身"的产品定位。
🖱 macOS 原生操作习惯 (文件清单)
- 双击文件行:用系统默认程序直接打开该视频/文档;
- 按空格键:唤起 macOS 标志性的 Quick Look 快速预览(无需跳出应用去访达);
- 右键菜单:在访达中显示 / 包含 / 排除 / 加入白名单保护;
- 点击表头排序:按大小 / 修改日期 / 路径排序,再次点击反转方向(带 ▾▴ 指示)。
☑ 清单即决策:勾选排除,执行只删勾选项
预览清单中的每个文件都可以单独排除(点击"含"列切换 ☑/☐,或 Shift/Ctrl 多选后右键批量排除)。
执行清理时只处理清单中未排除的文件,不再把过滤参数重新全量执行一遍——
预览阶段看到什么、排除什么,执行就动什么。
🏆 累计成就仪表
底部状态栏常驻"已累计为这台 Mac 释放 XX 空间(清理 N 次 / 去重 M 次)",
每次清理或去重后实时刷新。
⏳ 动态进度与可取消
大库扫描 / 指纹计算 / 全量校验各阶段实时上报进度计数("已检查 14,320/15,000 个文件…"),
并提供取消按钮——数万文件规模下不再有"假死"焦虑。
🔁 去重界面升级为交互表格
重复文件清单从纯文本升级为两级表格(组 + 文件行,绿色=保留底稿、红色=重复副本):
- 右键**"将此文件设为保留底稿"**,自由切换保留哪一份副本;
- 双击在访达中定位;
- 执行遵循切换后的保留状态。
📂 多账号与自定义目录
- 顶部账号下拉框列出全部发现的微信账号及占用大小,切换即重扫;
- 支持"重新检测"与"自定义微信目录",自动探测受挫时可手动指定。
🛡 防御死线
引擎与界面双侧物理拉黑数据库及程序组件后缀(.db/.sqlite/.ldb/.sst/.dll/.dylib/.pak 等)
与运行时目录(bin/runtime/frameworks/resources),任何清理规则都不可触碰——
即使未来目录结构变化或使用自定义路径,聊天数据库与微信本体也不会受损。
下载
| 机型 | 文件 |
|---|---|
| Apple Silicon (M1/M2/M3/M4) | CleanYourWechatTool-arm64.dmg |
| Intel | CleanYourWechatTool-x86_64.dmg |
首次打开提示"已损坏/无法验证开发者"(应用未经公证):右键应用图标 → 打开;
或终端执行 xattr -cr /Applications/CleanYourWechatTool.app。
提示"未找到微信数据":系统设置 → 隐私与安全性 → 完全磁盘访问权限,
将本应用加入列表后重启(应用内也会一键引导跳转该设置面板)。
质量与测试
- 61 项单元与端到端测试全绿;GUI 交互断言(勾选排除 / 统计联动 / 表头排序升降 /
去重表格 / 访达定位 / 双击空格 / 成就 / 取消 / 多账号)全部通过; - CI: Python 3.8–3.12 × macOS/Ubuntu + flake8 + mypy + bandit + pip-audit 全绿;
- 双架构 .app 已在本机实测启动。
CleanYourWechatTool v1.0.1 · 图形界面首发
Release Notes - CleanYourWechatTool v1.0.1
发布日期: 2026-09-08
类型: 图形界面首发 + 安全修复
🖥 图形界面首发 (GUI)
新增 CleanYourWechatTool.app(macOS,基于 ttkbootstrap,引擎层零改动复用)。
用户全程零终端:所有清理条件均为下拉与勾选。
- 智能瘦身:时间范围 / 文件类型 / 大小阈值 / 处理方式(废纸篓或归档)全部选择题化;
流程强制为 预览文件清单 → 确认 → 执行,清单按大小降序列出每个文件的大小、
修改日期与路径,杜绝盲确认; - 重复文件去重:阈值下拉 → 扫描重复组 → APFS 硬链接去重(聊天窗口文件照常打开);
- 防删白名单:交互式添加保护规则——填名字和关键词即可,微信号/群ID 选填;
- 执行前若检测到微信正在运行会提醒先退出。
下载(按机型选择):
| 机型 | 文件 |
|---|---|
| Apple Silicon (M1/M2/M3/M4) | CleanYourWechatTool-arm64.dmg |
| Intel | CleanYourWechatTool-x86_64.dmg |
首次打开提示"已损坏/无法验证开发者":本应用未经 Apple 公证,任选其一:
右键应用图标 → 打开;或终端执行 xattr -cr /Applications/CleanYourWechatTool.app。
提示"未找到微信数据":打开 系统设置 → 隐私与安全性 → 完全磁盘访问权限,
将本应用加入列表后重启。
🔒 安全修复
- WebUI CSRF 防护:POST 端点此前不校验来源,本机任意网页可静默触发清理类
写操作;现强制校验 Host/Origin 为本机回环地址。 - 存储型 XSS 修复:白名单名称/微信ID/关键词与历史备注等用户可控字段在
WebUI 渲染前全部 HTML 转义;移除按钮改用事件委托,消除属性注入。 - 配置原子写:状态统计与白名单配置改为临时文件 + fsync + 原子替换;
损坏时自动备份为*.corrupted-<时间戳>并提示,不再静默归零——
白名单是防删保护的唯一数据源,此前损坏会静默失效导致误删风险。 - 白名单结构校验:解析结果缺少已知结构键时按损坏处理并备份,
不再被or {}静默吞掉。
🛠 引擎与体验
- 去重联动白名单:重复文件查重与去重全程跳过白名单命中文件
(此前去重会触碰受保护文件,违背防删承诺); - 归档同名冲突:归档目录已存在同名文件时自动加
_2后缀并记审计日志,
不再静默覆盖旧归档; - 确认前展示文件清单:CLI 与 GUI 一致,清理/演练前列出全部命中文件
(大小降序),用户逐个可见"将动哪些文件"; - 微信运行检测:清理/去重前检测微信进程并提醒。
质量与测试
- 61 项单元与端到端测试全绿(新增 7 项:CSRF/XSS 相关、去重白名单联动、
归档冲突、原子写一致性/损坏备份); - CI: Python 3.8–3.12 × macOS/Ubuntu 矩阵 + flake8 + mypy + bandit + pip-audit 全绿;
- GUI .app 已在本机实测启动;.dmg 由 CI 双架构构建。
CleanYourWechatTool v1.0.0 · 微信智能瘦身(安全无损)
Release Notes - CleanYourWechatTool v1.0.0 (Official MVP)
发布日期: 2026-09-08
适用平台: macOS (Apple Silicon & Intel x86_64),微信 4.0+(3.x 目录结构已兼容识别)
Python 要求: Python >= 3.8(零第三方运行时依赖)
亮点 (Key Highlights)
1. 微信存储空间透视 (cleanyourwechat scan)
- 自动发现本机全部微信账号,按
db_storage / video / file / attach / cache分类统计空间占用。 - 实测:本机微信 5.6 GB 中,核心文字与数据库仅占约 2.9%(166 MB),97% 的空间是可安全瘦身的媒体与附件。
2. 废纸篓安全清理 (cleanyourwechat clean)
- 所有清理默认通过 macOS Finder 移入系统废纸篓(非
rm),可随时"放回原处"。 - 支持
--days / --min-size / --types组合过滤与--dry-run演练模式。 --archive-to将陈年大文件无损迁移至外接 SSD / NAS,原始目录结构完整保留。
3. 多群重复文件去重 (cleanyourwechat dedup)
- 解决"同一文件转发到 N 个群占用 N 份磁盘"的痛点。
- 三级指纹(大小分桶 → 稀疏采样 → 全量哈希)快速识别重复文件。
--action hardlink通过 APFS 硬链接合并重复副本:微信各会话点击原样打开,物理磁盘只占一份。
4. 防删白名单 (cleanyourwechat tag)
- 支持文件名关键词(如"合同、报价、委托书")与精确路径规则的绝对豁免,命中文件绝不进废纸篓。
- 清理与去重全程一票否决,并在报告中统计保护量。
- 能力边界:微信 4.0 数据库为 WCDB/SQLCipher 加密,未提供解密密钥时无法按"发送者/会话"维度保护文件(详见 §8 已知限制)。
5. 数据库绝对防护
db_storage/下的 SQLite/WCDB 库在扫描、清理、归档、去重全程被物理隔离,100% 不触碰。
6. 本地可视化大盘 (cleanyourwechat web)
- 零第三方依赖的内置 WebUI:资产分布、条件瘦身、白名单管理、历史统计与审计日志可视化。
7. 统计与审计 (cleanyourwechat stats)
- 累计运行/释放/保护量与最近 50 条操作记录持久化到
~/.wechat_slim/,全操作写入审计日志。
质量与测试
- 自动化测试: 54 项单元与端到端测试全绿。
- CI: GitHub Actions 矩阵(Python 3.8–3.12 × macOS / Ubuntu)+ flake8 + mypy + bandit + pip-audit 全绿。
- 真实验证: 在开发者本机真实微信 4.0 数据(15,000+ 文件 / 5.6 GB)上完成 scan / clean --dry-run / 白名单命中的端到端验证。
安装
# 从源码安装
git clone https://github.com/LuckTerence/CleanYourWechatTool.git
cd CleanYourWechatTool
pip install .
# 验证
cleanyourwechat --help
# 或免安装直接运行
python3 clean_wechat.py scan已知限制(诚实声明)
详见 docs/wechat-storage-slimming-prd.md §8:
- 微信 4.0 数据库加密,未提供密钥时无法实现"按联系人/发送者防删",白名单按文件名关键词生效;
msg/video/、msg/attach/为哈希命名,无语义信息,只能按时间/大小/类型处理;- 本工具不修改、不恢复任何微信聊天内容;清理的是本地媒体文件缓存,请先自行确认。
规划中(v1.1+)
- AI Agent Skill 包(
skills/)随正式版发布(开发分支已验证)。 - 解密数据库(需用户密钥)后的"文件 → 发送者"映射,实现真正的联系人级白名单。