Install
openclaw skills install storage-cleanAI-powered disk storage cleaner for Windows. Scan disk usage, generate interactive HTML report with 3-color grading (green/yellow/red), and safely clean junk files. Triggers: 帮我看看存储, 清理磁盘, 存储空间不足, 扫描垃圾文件, 磁盘清理, storage clean, disk cleanup.
openclaw skills install storage-cleanAI 磁盘存储清理工具技能 智能扫描磁盘占用,生成交互式 HTML 报告,三色分级安全清理。
storage-clean 是一个 AI 驱动的磁盘存储清理工具,参考数字生命卡兹克的开源方案设计。支持:
项目路径: C:\Users\PC\.workbuddy\skills\storage-clean\
报告端口: 本地文件(直接用浏览器打开 HTML 文件)
| 颜色 | 含义 | 操作 |
|---|---|---|
| 🟢 绿灯 | 纯缓存、临时文件、安装包残留,可放心清理 | 提供"移到废纸篓"和"直接删除"按钮 |
| 🟡 黄灯 | 需要用户确认(如下载视频、项目文件夹) | 只提供"在资源管理器中打开"入口 |
| 🔴 红灯 | 重要文件(系统文件、正在使用的应用核心数据) | 解释不能删除的原因,提供访问入口 |
用户说"帮我看看存储"或"清理磁盘"时触发:
import subprocess, os, webbrowser
from pathlib import Path
SKILL_DIR = r"C:\Users\PC\.workbuddy\skills\storage-clean"
SCANNER_PY = os.path.join(SKILL_DIR, "scripts", "scanner.py")
def run_storage_clean():
"""运行存储清理,生成 HTML 报告并打开"""
result = subprocess.run(
["python", SCANNER_PY],
cwd=SKILL_DIR,
capture_output=True,
text=True
)
# 解析输出,获取生成的 HTML 报告路径
output_lines = result.stdout.strip().split("\n")
html_path = None
for line in output_lines:
if line.startswith("REPORT:"):
html_path = line[7:].strip()
break
if html_path and os.path.exists(html_path):
webbrowser.open(f"file://{html_path}")
print(f"已打开存储清理报告:{html_path}")
else:
print("扫描失败,未生成报告")
在 aioom 的 SKILL.md 中添加存储清理入口:
# 在 aioom 中调用 storage-clean
import subprocess, os
STORAGE_CLEAN_DIR = r"C:\Users\PC\.workbuddy\skills\storage-clean"
SCANNER_PY = os.path.join(STORAGE_CLEAN_DIR, "scripts", "scanner.py")
def aioom_storage_clean():
"""aioom 存储清理接口"""
subprocess.Popen(
["python", SCANNER_PY],
cwd=STORAGE_CLEAN_DIR,
creationflags=subprocess.CREATE_NO_WINDOW
)
| 路径 | 说明 | 预估大小 |
|---|---|---|
%TEMP% / %TMP% | 系统临时文件 | 可变 |
%LOCALAPPDATA%\Temp | 用户临时文件 | 可变 |
C:\Windows\Temp | Windows 临时文件夹 | 可变 |
| Chrome 缓存 | %LOCALAPPDATA%\Google\Chrome\User Data\Default\Cache | 可变 |
| Edge 缓存 | %LOCALAPPDATA%\Microsoft\Edge\User Data\Default\Cache | 可变 |
| Firefox 缓存 | %APPDATA%\Mozilla\Firefox\Profiles\*.default\cache2 | 可变 |
| 回收站 | C:\$Recycle.Bin | 可变 |
| B站缓存 | %LOCALAPPDATA%\bilibili\bloom-player\cache | 可变 |
| 微信缓存 | %APPDATA%\Tencent\WeChat\cache | 可变 |
| 企业微信缓存 | %APPDATA%\Tencent\WXWork\cache | 可变 |
| QQ 缓存 | %APPDATA%\Tencent\QQ\cache | 可变 |
| 钉钉缓存 | %APPDATA%\DingTalk\cache | 可变 |
| 飞书缓存 | %LOCALAPPDATA%\Lark\cache | 可变 |
| Python pip 缓存 | %LOCALAPPDATA%\pip\cache | 可变 |
| npm 缓存 | %APPDATA%\npm-cache | 可变 |
| yarn 缓存 | %LOCALAPPDATA%\Yarn\cache | 可变 |
| VS Code 缓存 | %APPDATA%\Code\Cache | 可变 |
| 缩略图缓存 | %LOCALAPPDATA%\Microsoft\Windows\Explorer\thumbcache_*.db | 可变 |
| 浏览器下载历史 | 浏览器下载记录(不影响已下载文件) | 0 |
| 路径 | 说明 |
|---|---|
%USERPROFILE%\Downloads | 下载文件夹(可能包含重要文件) |
%USERPROFILE%\Desktop | 桌面(可能包含重要文件) |
| 视频缓存(B站等) | 用户可能想保留的离线视频 |
| 项目构建产物 | node_modules, dist, build, __pycache__ 等 |
| 路径 | 说明 |
|---|---|
C:\Windows\System32 | Windows 系统文件 |
C:\Program Files | 已安装程序 |
%APPDATA%\Microsoft\Windows\Start Menu | 开始菜单 |
| 正在使用的应用数据 | 如 %APPDATA%\Google\Chrome\User Data\Default\History(正在使用) |
使用 psutil 获取磁盘信息(无需生成报告):
import psutil
def get_disk_info():
"""获取磁盘信息"""
partitions = psutil.disk_partitions()
disk_info = []
for part in partitions:
if 'cdrom' in part.opts or part.fstype == '':
continue
usage = psutil.disk_usage(part.mountpoint)
disk_info.append({
'device': part.device,
'mountpoint': part.mountpoint,
'fstype': part.fstype,
'total': usage.total,
'used': usage.used,
'free': usage.free,
'percent': usage.percent
})
return disk_info
# 示例输出
disks = get_disk_info()
for d in disks:
print(f"{d['device']} ({d['mountpoint']}) - {d['percent']:.1f}% 已用")
print(f" 总计: {d['total']/1024**3:.1f} GB")
print(f" 已用: {d['used']/1024**3:.1f} GB")
print(f" 可用: {d['free']/1024**3:.1f} GB")
运行 scanner.py 脚本,生成交互式 HTML 报告:
python "C:\Users\PC\.workbuddy\skills\storage-clean\scripts\scanner.py"
脚本会:
reports/ 目录REPORT:C:\path\to\report.html)HTML 报告提供以下操作:
报告最后提供系统存储优化建议,例如:
生成的 HTML 报告包含:
场景:用户说"帮我看看存储"
get_disk_info() 展示磁盘总览scanner.py 生成完整报告场景:用户说"清理磁盘垃圾"
场景:aioom 调用存储清理
aioom_storage_clean() 接口storage-clean/
├── SKILL.md # Skill 定义文件(本文件)
├── scripts/
│ ├── scanner.py # 扫描脚本(生成 JSON 数据)
│ └── cleaner.py # 清理脚本(执行删除操作)
├── templates/
│ └── report_template.html # HTML 报告模板
└── reports/ # 生成的报告存放目录
安装依赖:
pip install psutil