重复文件清理·硬链接去重:用 Agent Skill 回收磁盘且不改路径

前言

下载目录、微信/QQ 文件、网盘同步盘里,同一份 Office 文档或安装包往往被复制多份。直接删重复项容易误伤「同名不同内容」的版本,也会让聊天或网盘里的记录指向失效路径。下面介绍社区 Skill「重复文件清理·硬链接去重」:在 Agent 对话里触发扫描与整理,用 MD5 识别真重复,并用硬链接合并数据块,路径与文件名保持不变。

这是什么

重复文件清理·硬链接去重(坐标 @user_37b3d0df/duplicate-file-cleaner,当前版本 1.3.0)是 SkillHub 上的社区 Skill,分类为 it-ops-security,发布者为 user_37b3d0df,无需 API Key(requires_api_key=false)。

它面向办公与日常文件场景:扫描 Office/Word/Excel/PPT/WPS、PDF、txt/csv/md、图片、安装包、压缩包等,并覆盖微信/QQ/钉钉文件目录、下载目录、网盘同步目录、素材库中的重复副本。核心思路是用硬链接回收空间——磁盘只保留一份内容,各路径仍可照常打开;按 MD5 判定重复,同名但内容不同的文件不会误判为重复。

官方页面:SkillHub - 重复文件清理·硬链接去重
线索入口:api.skillhub.cn 页面

核心功能

扫描与去重

  1. 按 MD5 精确识别内容完全相同的文件。
  2. 默认「办公文件扫描」档位(v1.2),支持快速模式(v1.1)。
  3. 支持停止扫描(v1.2)。
  4. 安装包场景:已安装检测、安装包与已解压软件目录配对(v1.2);解压软件目录可搬移或删除(v1.1)。
  5. 微信/QQ 文件目录一键定位(v1.1)。

硬链接与空间回收

去重执行采用硬链接,而非简单删除副本。执行后路径、文件名、大小对外仍一致,微信/网盘侧原有打开方式不受影响,底层数据块合并为一份。

安全边界与 v1.3 可信机制

硬边界(扫描与执行时跳过或拒绝):代码文件、库文件、开发目录(含 .git / node_modules / venv)、虚拟磁盘、邮件库、临时文件等。

v1.3 安全与可信(据官方简介):

  1. 三层 CSRF 防护:启动随机 token、Host 头与 Origin 头校验,降低任意网页/插件远程触发删除的风险。
  2. 硬链接可撤销:执行时写入 logs/undo_*.tsv,UI 提供撤销按钮做原子还原。
  3. 执行前预演:/api/preview 返回影响数量、释放字节、卷类型、跨卷配对及前 3 个样本,弹窗二次确认。
  4. 日志目录在需要时退化到 %TEMP%,失败有显式提示。
  5. NTFS / 跨卷前置检查:非 NTFS 整批拒绝。

实现为纯 Python 标准库、零依赖,提供图形界面与命令行两种用法。

安装与启用

安装前需本机已有 SkillHub CLI。若未安装,可先按官方文档检查版本:

command -v skillhub && skillhub --version

未安装时可执行完整安装(含 CLI 与默认 Skill):

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash

将本 Skill 装到当前 Agent 的 skills 目录(必须使用 --dir,否则默认 ./skills/ 可能不被 Agent 识别)。SkillHub 页面要求安装:

@user_37b3d0df/duplicate-file-cleaner

Cursor 示例:

skillhub install @user_37b3d0df/duplicate-file-cleaner --dir ~/.cursor/skills/

Claude Code 示例:

skillhub install @user_37b3d0df/duplicate-file-cleaner --dir ~/.claude/skills/

Codex 示例(用户级或项目级二选一):

skillhub install @user_37b3d0df/duplicate-file-cleaner --dir ~/.codex/skills/
# 或项目内
skillhub install @user_37b3d0df/duplicate-file-cleaner --dir .agents/skills/

安装完成后按所用客户端要求重启或刷新 Agent,使 Skill 被加载。更完整的 CLI 安装与优先源说明见:SkillHub 安装与优先源配置。

典型用法

本 Skill 通过自然语言触发。在已启用该 Skill 的 Agent 中,可用官方列出的触发词描述需求,例如:

  • 磁盘与盘符:磁盘空间不够、清理磁盘、C盘满了、D盘满了、扫描C盘、扫描D盘、整盘扫描、磁盘瘦身
  • 重复与办公:重复文件、重复文件清理、文件去重、硬链接去重、办公文件去重、Office文件重复、文档重复了、表格重复、PPT重复、txt重复
  • 安装包与软件目录:安装包清理、装完的安装包、解压的软件、软件目录搬移
  • 即时通讯与目录:微信文件太占空间、微信去重、清理微信文件、msg/file 太大、文件夹里有重复

建议流程:

  1. 说明要扫描的目录或场景(如下载目录、微信文件目录、某盘办公文档)。
  2. 等待扫描结果;需要时可使用停止扫描。
  3. 在 GUI 或对话引导下查看 预演(/api/preview 相关能力):影响文件数、可释放空间、卷类型与样本。
  4. 确认后执行硬链接去重;如需回退,使用撤销并依赖 logs/undo_*.tsv 记录。

具体界面按钮与 CLI 子命令以 Skill 包内 SKILL.md 与自带程序为准;本文仅归纳官方页面已公开的行为。

适用场景与注意

适合:Windows 环境下以 NTFS 为主、重复副本集中在办公文档、聊天附件、下载与网盘同步目录;希望在 Agent 里用对话完成扫描、预演与去重,且希望保留原路径的场景。

限制与注意:

  1. 平台与文件系统:v1.3 对非 NTFS 整批拒绝;跨卷配对有前置检查,跨卷硬链接能力受系统限制,预演结果中的「跨卷配对」需认真阅读后再确认。
  2. 开发与安全目录:勿指望清理 .git、node_modules、venv 等;Skill 设计上会跳过并在执行时二次拒绝。
  3. 「删除」表述:用户说「删除重复文件」时,Skill 实际路径是硬链接去重;撤销依赖 undo 日志,重要数据仍建议先备份或先完整走预演。
  4. 环境:图形界面与本地 Web/API(含 CSRF 校验)通常在用户本机运行;在远程或沙箱 Agent 中可能无法直接访问本机磁盘,需在装有该 Skill 且能访问目标路径的环境中使用。

结尾

重复文件清理·硬链接去重把「找重复 → 风险评估 → 预演确认 → 硬链接合并 → 可撤销」串成一条可在 Agent 里触发的流程,适合日常办公与聊天目录占满磁盘时的规范化整理。安装与详情以 SkillHub 为准:

  • https://www.skillhub.cn/skills/user_37b3d0df/duplicate-file-cleaner
  • https://api.skillhub.cn/user_b3d06a4a/duplicate-file-cleaner
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye