Skip to content

Repository files navigation

BlueTidy logo

BlueTidy

先看清空间,再安全处理。

面向 Windows 的磁盘空间分析、软件资产治理与可回滚迁移工具。

CI Release MIT License Windows 10 and 11

BlueTidy 应用模式首页
应用模式首页:扫描软件资产后,再根据空间收益和风险决定是否处理。

Important

BlueTidy 0.2.0 仍是 Preview。安装包尚未签名,磁盘扫描采用安全目录遍历,速度不等同于基于 MFT 的成熟磁盘分析器。请先在非关键目录、小体量数据上验证,再处理重要软件或文件夹。

它解决什么问题

系统盘满了,真正麻烦的通常不是“删一个大文件”,而是两个判断:空间到底被谁占了,以及哪些东西可以动。

BlueTidy 把这两类任务拆成两个模式:

模式 适合做什么 工作区
文件夹模式 找出空间去哪了,再决定是否迁移某个数据目录 左侧按占用排序的目录树,中间矩形图、排行和快照变化,右侧显示风险、解释与迁移计划
应用模式 判断某个软件能否清理、迁移或回滚 左侧软件资产库,中间查看安装证据与占用,右侧完成预检、迁移、清理和回滚

首页只保留一个主任务:释放 C 盘空间。它汇总预计可迁移容量、可安全清理项目和高风险资产,并提供“分析磁盘空间”“治理软件资产”两个入口。

已实现

文件夹模式

  • 可选择磁盘根目录或任意可访问文件夹进行扫描。
  • 同时显示文件逻辑大小与实际磁盘占用;遇到无权限目录会记录问题,不会静默算成 0 B
  • 首次扫描建立完整目录缓存。展开左侧文件树或进入子目录时,不需要再次访问磁盘。
  • 支持矩形图、占用排行、名称/路径搜索和 CSV 导出。
  • 同一路径的扫描结果会保存为快照,可比较新增、删除、增长和缩小的项目。
  • 扫描可取消。未完整扫描的结果会明确标记,不适合作为危险操作的依据。

磁盘分析与文件夹迁移的权限不同。分析可以从磁盘根目录开始;迁移只接受当前用户目录中的具体子文件夹,并拒绝整个用户目录、AppData 根目录、OneDrive 根目录、文件和已有链接。

应用模式

  • 从卸载注册表、开始菜单、winget、Scoop、Steam、Epic、Xbox 和 Microsoft Store / MSIX 等来源发现软件资产。
  • 展示安装位置、来源证据、预计占用、迁移可信度、警告和阻断项。
  • 为传统 MSI / EXE 安装目录生成预检计划。预检通过后,将目录移到目标磁盘,并在原路径创建 Windows 目录联接。
  • 迁移记录写入事务日志。满足回滚条件时,可以把目录恢复到原位置。
  • 识别安装目录内的缓存、日志和临时目录。文档、示例与离线帮助默认不选中,确认后移入 Windows 回收站。
  • 语言包当前只做占用分析。无法确认当前语言和回退语言时,BlueTidy 不提供删除按钮。
  • 支持多选资产、统一预检和串行执行,避免多个文件操作同时修改磁盘。

Microsoft Store 应用、驱动、服务、系统组件,以及缺少可信安装目录的软件不会被强行迁移。“扫描到了”不等于“可以搬”。

TidyPilot

TidyPilot 默认使用本地规则,不需要联网。项目内置了 5 组提示词:快速评估、C 盘迁移判断、瘦身清理、风险复核和回滚解释。

你也可以配置兼容 OpenAI chat/completions 的接口、模型和 API Key。启用后,BlueTidy 发送软件名称、版本、安装路径、来源、容量和本地风险结论,不发送文件内容。AI 只负责解释,不能绕过本地预检、保护路径或运行进程阻断。

安全边界

执行迁移或清理前,BlueTidy 会检查:

  • 阻止 WindowsSystem32SysWOW64DriversWindowsApps 等受保护路径。
  • 阻止源目录中的目录联接、符号链接和其他重解析点,避免操作越过用户选择的边界。
  • 目标目录必须存在,不能位于源目录内部,也不能提前占用计划目标路径。
  • 检查目标卷剩余空间;检测到相关进程仍在运行时阻止迁移。
  • 同卷优先使用重命名;跨卷复制完成后核对文件数、目录数与总字节,校验通过前不删除源目录。
  • 跨卷复制尽量保留权限和文件时间戳。若目录联接创建失败,会尝试自动恢复。
  • 回滚前核对原路径确实是 BlueTidy 事务记录中的联接,并验证它指向记录的目标目录。
  • 清理只处理计划中列出的候选项。缓存、日志和临时目录会直接清理;文档类候选项进入回收站;语言包只分析。
  • 迁移、清理和事务日志写入使用单操作锁,防止并发修改互相覆盖。

这些检查能减少误操作,但不能代替备份。数据库、虚拟机、同步盘、开发环境和仍在写入的数据目录,迁移前应先退出相关程序并自行留存备份。

安装

运行要求

  • Windows 10 或 Windows 11,x64
  • 原路径所在卷需要支持 NTFS 目录联接,目标必须是本机目录;网络共享不受支持
  • Microsoft Edge WebView2 Runtime
  • 某些受权限保护的安装目录需要以管理员身份运行

安装版

v0.2.0 Preview 发布页下载对应版本:

Preview 构建未签名,Windows SmartScreen 可能显示警告。请先核对发布页提供的 SHA-256,再决定是否运行。不要从第三方下载站获取安装包。

便携版

解压便携版,运行 BlueTidy-Portable.cmd。不要直接双击 BlueTidy.exe,否则设置和事务记录不会固定保存在便携目录。

便携版把运行数据写入同目录的 Data 文件夹,便于整体移动和备份。

第一次使用

  1. 在首页选择“分析磁盘空间”,扫描 C 盘或某个大目录。
  2. 先看左侧占用树和中间排行。扫描存在受限项目时,展开问题清单确认缺失范围。
  3. 如果要迁移普通数据,选择当前用户目录中的具体子文件夹,再生成迁移计划。
  4. 如果要处理软件,切换到应用模式并扫描资产;只处理预检通过的项目。
  5. 迁移后先启动软件或打开文件验证。事务确认无误前,不要手动删除目标目录或原路径联接。

更完整的操作说明见 使用指南。PDF 版随安装包一起发布,可从 v0.2.0 发布页下载。

数据与隐私

安装版默认把设置、事务记录和文件夹扫描快照保存在 %APPDATA%\BlueTidy。便携版使用自身目录下的 Data。也可以在启动前设置 BLUETIDY_DATA_DIR,把这些文件统一放到指定目录。

Warning

AI 接口的 API Key 当前以明文写入 BlueTidy 设置文件。Preview 阶段请使用权限和额度受限的独立 Key,不要复用高价值凭据。不要把设置文件、事务日志或扫描快照直接上传到公开 Issue,它们可能包含本机路径和软件清单。

未配置外部 AI 时,TidyPilot 只运行本地规则。配置接口后,请同时阅读对应服务商的数据处理政策。

从源码运行

需要 Rust stable、Node.js 20+、pnpm 10+、Windows C++ 构建工具和 WebView2 开发环境。

pnpm install
pnpm tauri dev

pnpm dev 只启动浏览器界面。浏览器预览不返回模拟业务数据,扫描、迁移和清理必须在 Tauri 桌面运行时中使用。

检查与打包

pnpm build
cargo test --workspace
cargo clippy --workspace --all-targets -- -D warnings
pnpm tauri build

桌面安装包通常生成在:

target/release/bundle/nsis/
target/release/bundle/msi/

CI 会检查 Rust 格式、工作区测试、Clippy、前端生产构建和 README 本地链接。现有测试覆盖采集解析、风险判断、迁移与回滚流程、事务日志和清理候选规则,但仍不能替代真实 Windows 设备上的大容量与异常断电测试。

项目结构

.
├─ apps/desktop/
│  ├─ src/                    # React 界面、模式工作区和 Tauri API 封装
│  └─ src-tauri/              # 桌面入口、磁盘扫描、快照和命令层
├─ crates/asset-model/        # 共享数据结构
├─ crates/collector/          # Windows 软件资产采集与风险评估
├─ crates/migrator/           # 预检、迁移、清理、事务与回滚
├─ crates/advisor/            # 本地规则、内置提示词与兼容 API 接入
├─ crates/smoke/              # 独立冒烟流程
├─ docs/                      # 使用指南与发布检查表
└─ packaging/                 # 便携版启动脚本和说明

已知限制

  • 目录扫描尚未使用 NTFS MFT。面对百万级文件时,速度可能明显慢于 WizTree 一类工具。
  • 安装程序未签名,也没有自动更新通道;当前版本只适合 Preview 测试。
  • 真实应用兼容性白名单仍需扩大。不要假设所有传统桌面软件都能通过目录联接正常工作。
  • 当前版本未在预检中主动识别源卷和目标卷文件系统;NTFS、exFAT、HDD 与 SSD 的组合仍需建立公开实测矩阵。
  • 文件夹迁移只允许当前用户目录里的具体子文件夹;磁盘根目录和系统目录只能用于分析,不能整体迁移。
  • 当前正式界面语言为简体中文。英文文案尚未达到完整发布标准。
  • API Key 仍以明文保存在本地设置文件,尚未接入 Windows Credential Manager。

版本变化见 CHANGELOG.md。正式公开发布前的外部条件与验证范围见 发布检查表

获取帮助与参与

项目由 @by-fengqiao 维护。提交问题时请写明 BlueTidy 版本、Windows 版本、源卷与目标卷文件系统和复现步骤,并先移除日志与截图中的用户名、私人路径、软件清单和 Token。

设计参考

文件夹模式的占用排序、可展开目录树和三栏工作台参考了 PinkBin 的交互思路。BlueTidy 的软件资产采集、迁移预检、事务记录和回滚由本项目独立实现;本项目与 PinkBin 没有隶属关系。

开源协议

BlueTidy 使用 MIT License。你可以使用、复制、修改、合并、发布、分发、再许可和销售本软件,但必须在副本或主要部分中保留版权声明与许可声明。软件按原样提供,不附带担保。

如英文正文与中文参考内容存在差异,以 LICENSE.md 为准。

English summary

BlueTidy is a Windows desktop utility for disk-space analysis, software asset governance, cautious cleanup, and reversible directory migration. Folder mode provides a size-sorted tree, treemap, ranking, CSV export, and persistent snapshot comparison. Application mode discovers installed software, explains migration evidence and risk, preflights supported MSI/EXE directories, moves them with Windows junctions, and records rollback transactions.

Version 0.2.0 is a Preview build. Installers are unsigned, automatic updates are not enabled, and disk scanning currently uses directory traversal rather than NTFS MFT indexing. Download it from the v0.2.0 release and see the MIT License before redistribution.

About

Windows 磁盘空间分析、软件资产治理与可回滚迁移工具

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages