Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.
Coding
disk-cleaner
Try it跨平台磁盘空间分析与缓存清理(Windows / macOS / Linux)。当用户说"磁盘满了""C 盘空间不足""清理缓存""清理 npm 缓存""清理临时文件""看看什么占空间""磁盘清理""释放空间"时使用。四层架构:平台探测、缓存发现、安全分级、交互勾选执行。启发式扫描能找出白名单外的未知缓存,删除项由用户逐项勾选确认。
What it does
磁盘告警 / 空间不足,需要释放空间 用户点名要清 npm / pip / yarn / pnpm / brew / apt 缓存、临时文件、IDE 缓存 用户想知道"空间被谁吃了"
The skill document
磁盘空间清理(跨平台)
何时使用
- 磁盘告警 / 空间不足,需要释放空间
- 用户点名要清 npm / pip / yarn / pnpm / brew / apt 缓存、临时文件、IDE 缓存
- 用户想知道"空间被谁吃了"
核心原则
- 两道确认。先由用户勾选"删哪些",再展开每项的完整路径/大小/分级/删除代价,用户二次确认后才动手。脚本绝不自动全删。
- 先扫描,后删除。清单出来前不碰任何文件。
- 白名单 + 发现双通道。已知软件的缓存走白名单,未知缓存靠启发式扫描找出来。
- 发现项默认只报告。启发式扫出的陌生目录进清单但不会自动删,需用户主动勾选。
- 只删可再生缓存。配置、代码、聊天记录、数据库一律不动。
- 软链逃逸防护。删除前用
realpath解析符号链接,校验真实路径严格落在允许根区(带分隔符边界,杜绝前缀绕过);删除时绝不跟随软链,遇到软链只删链接本身。
四层架构
| 层 | 职责 |
|---|---|
| L1 平台探测 | 自动识别 Windows/macOS/Linux,推导缓存根区。无硬编码用户名、盘符 |
| L2 缓存发现 | 已知模式库(跨三平台的软件路径)+ 目录名启发式扫描 |
| L3 安全分级 | GREEN 可再生 / YELLOW 需重下 / DISCOVERED 发现项 / RED 禁止 |
| L4 执行策略 | 扫描 → 编号清单 → 用户勾选 → 展开详情 → 二次确认 → 删除 → 复测空间 |
快速开始
脚本在 scripts/ 下,默认就是只读扫描:
python scripts/clean_cache.py --dry-run # 只出清单,不删(最安全,推荐先跑)
python scripts/clean_cache.py # 出清单 → 勾选 → 看详情 → 确认 → 删除
python scripts/clean_cache.py --pick 1,3,5 # 指定序号(仍会展开详情要你确认)
python scripts/clean_cache.py --pick g --force # 跳过二次确认,仅在已核对过时使用
python scripts/clean_cache.py --json # 机器可读输出,供上层解析
删除前会展开选中项的完整信息,确认无误后输入 y 才执行:
======================================================================
待删除 2 项,预计释放 1.20 GB
======================================================================
1. uv/cache
路径 C:\Users\xxx\AppData\Local\uv\cache
大小 518.56 MB 分级 发现项 来源 启发式扫描
说明 启发式扫描得出,未经人工验证,请核对路径后再删
----------------------------------------------------------------------
合计 1.20 GB 当前可用 59.53 GB 删除后预计 60.73 GB
----------------------------------------------------------------------
确认删除?输入 y 执行,其他任意键取消:
--force 可跳过这道确认,只用于已经核对过、要放进定时任务的场景。--json 模式只输出清单不删除,不受影响。
勾选语法(交互输入或 --pick):
| 输入 | 含义 |
|---|---|
1,3,5 | 指定序号 |
1-4 | 区间 |
all | 全部 |
g | 仅「可再生」类 |
y | 「可再生」+「需重下」 |
d | 仅发现项 |
| 回车 | 取消 |
常用参数:--tier yellow(清单里加入"需重下"项)、--min-size 100(只列 ≥100MB)、--keep-temp-days 7、--no-discover(只查白名单)、--no-temp、--no-trash。
Windows 用户双击 scripts/clean.bat 直接进入交互勾选。
分级说明
| 级别 | 含义 | 例子 |
|---|---|---|
| GREEN 可再生 | 删了最多导致下次变慢 | npm/pip 缓存、日志、着色器缓存、浏览器缓存 |
| YELLOW 需重下 | 删后要重新联网下载,体积大 | .m2、Gradle dists、HuggingFace 模型、Xcode DerivedData |
| DISCOVERED 发现项 | 启发式扫出来的,未经验证 | 陌生软件的 Cache/Logs 目录 |
| RED 禁止 | 任何情况下都不碰 | 见下方清单 |
禁止删除(会出事)
| 路径 | 原因 |
|---|---|
C:\Windows\Installer、C:\Windows\WinSxS、System32 | 删后程序无法卸载/修复,系统可能损坏 |
C:\ProgramData\Package Cache | 同上 |
| 微信/QQ 的「文件管理」目录 | 聊天记录与接收的文件 |
IDE 的 User / config / settings 目录 | 配置、插件、对话记录 |
/usr、/bin、/etc、/System、/Library | 系统目录 |
脚本内置 FORBIDDEN_PARTS 与 assert_safe() 双重拦截,命中即拒绝并打印警告。
三平台缓存根区
| 平台 | 主要路径 |
|---|---|
| Windows | %LOCALAPPDATA%、%APPDATA%、%LOCALAPPDATA%\Temp |
| macOS | ~/Library/Caches、~/Library/Logs、~/Library/Developer、~/Library/Containers |
| Linux | ~/.cache(或 $XDG_CACHE_HOME)、~/.local/share、/var/cache |
详见 references/platform-paths.md。
空间分析方法(找大头)
脚本负责清,找大头可以配合系统命令:
# Linux / macOS
du -sh ~/.cache/* ~/Library/Caches/* 2>/dev/null | sort -rh | head -20
# Windows(Git Bash)
du -sh "$LOCALAPPDATA"/*/ "$APPDATA"/*/ 2>/dev/null | sort -rh | head -20
⚠️ 不要对 /c/Windows、/System、/usr 跑 du —— 文件量太大,跑十几分钟还拖慢整机。
本机环境坑
- PowerShell stdout 可能被吞(只回 exit code)。要结果就
Out-File到文件再读。 $env:APPDATA在部分 Shell 里为空(LOCALAPPDATA正常)。脚本已从LOCALAPPDATA反推,勿改回os.path.expandvars单依赖。- 删除方式选择:
- PowerShell
Remove-Item -Recurse -Force→ 大目录会被[safe-delete][SAFE_DELETE_BULK_GUARD_ERROR]拦下 - bash
rm常被包装成 safe-delete → 慢且进回收站,绕过用/usr/bin/rm - 最快最稳:
[System.IO.Directory]::Delete($p, $true) npm cache clean --force可能卡在genie-trash ETIMEDOUT→ 直接删目录
- PowerShell
.bat必须纯 ASCII。cmd 按 GBK 读 bat,UTF-8 中文注释会被当命令执行,报"不是内部或外部命令"。- Windows 长路径:深目录要
\\?\前缀(脚本已内置long_path())。 - WPS
addons文件极多:别用资源管理器打开(会卡死),删前必须退出 WPS 及wpscloudsvr.exe。 - Git Bash 的
du很慢:扫大目录放后台跑。 - 清空回收站:C 盘回收站里的文件不删不会释放空间,脚本末尾默认清一次(
--no-trash可关)。
扩展清理项
编辑 scripts/clean_cache.py 的 TARGETS:
# (名称, 路径模式, 分级, 占用进程, 适用平台)
("我的缓存", "~/.cache/myapp", TIER_GREEN, None, None), # 全平台
("Windows 专用", r"%LOCALAPPDATA%\App\Cache", TIER_GREEN, None, ["windows"]),
("要先退出的", r"%APPDATA%\App\cache", TIER_GREEN, ["app.exe"], ["windows"]),
路径支持 ~、%ENV%、$HOME、* 通配符。平台填 None 表示全平台。
IDE_SCAN / ELECTRON_SCAN 控制 IDE 与 Electron 应用的通配扫描范围。
参考
scripts/clean_cache.py— 主程序(四层架构都在里面)scripts/clean.bat— Windows 双击入口(纯 ASCII)references/platform-paths.md— 三平台路径对照 + 各平台特有清理项references/cleanup-catalog.md— 已知软件清单、分级表、禁止清单
Related skills
Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.
Save, search, and manage personal notes and knowledge bases in Get笔记 on explicit request.
Post videos, photos, text, and documents to 10 social platforms through a single REST API call.
Trade crypto, manage a multi-chain wallet, and query an AI analyst from one CLI.
More from liyumingben
Browse all skills3-7 岁幼儿英语启蒙课程:L1 字母 → L2 自然拼读 → L3 词汇句型 → L4 阅读对话,生成 A4 可打印练习页(含答案),支持诊断定级与错题重练。kindergarten English worksheets, alphabet, phonics, CVC words, sight words.
3-7 岁幼儿识数与加减法体系课程。按 L1 识数1-5、L2 识数6-10、L3 比大小与分解组成、L4 10以内加减、L5 20以内进退位五级体系,生成 A4 可打印数学练习页(含答案页),并支持能力诊断、练习批改与进阶建议。Use when 用户提到 幼儿园/幼儿/小班/中班/大班/幼小衔接/学前 的 数学、识数、认数字、数数、点数、比大小、分解组成、凑十法、加减法、口算、应用题、练习纸、练习题、给孩子出题、数学启蒙、数学练习;or asks for kindergarten math worksheets, counting, number recognition, addition/subtraction within 10 or 20. Also use when 需要判断孩子数学起点、规划学习路径、批改幼儿数学练习或给出家长指导话术。
面向 3-7 岁幼儿的 L1-L4 思维启蒙体系,生成 A4 可打印训练页与答案。
3-7 岁幼儿识字与诗歌课程:L1 看图认字 → L2 描红 → L3 组词 → L4 古诗填空,生成 A4 可打印练习页(含答案页)。Use when 用户提到 识字、描红、笔顺、组词、古诗、儿歌、默写、幼小衔接练字;or asks for Chinese tracing worksheets, hanzi, poem with pinyin.
3-6 岁幼儿五大领域活动方案生成器。按 小班/中班/大班/幼小衔接 与 健康/语言/社会/科学/艺术 五域,从内置活动库挑选游戏、小实验、手工、生活任务,生成 A4 可打印活动卡(领域目标、材料清单、分步玩法、家长安全提示、时长),支持一周活动计划组合。Use when 用户提到 幼儿/孩子/幼儿园/亲子/陪玩 的 活动、游戏、亲子活动、手工、画画、小实验、科学实验、运动游戏、户外活动、带娃、周计划、活动方案、活动卡;or asks for kindergarten activities, kids games, crafts, science experiments, family activity plans. Also use when 需要为幼儿园五大领域设计活动或安排一周亲子活动。注意:若用户要的是练习题(数学/思维/英语题),请使用对应的练习型 Skill。