返回顶部
d

delete-recovery文件恢复

File deletion recovery skill v0.8.0. Back up files before deletion (to `delete_backup/YYYYMMDDHHMM/`), restore from backup, search via manifest. SHA256 integrity + path-traversal checks + workspace-root confinement. Auto-cleanup 7d/30d. **v0.8.0: Added workspace_cleaner — scheduled temp-file cleanup with auto-backup before deletion.** **v0.7.0: allowed_roots defaults to workspace root (restores confined); manifest paths are HMAC-encrypted.**

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.8.3
安全检测
已通过
311
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

delete-recovery

中文


概述

文件误删恢复技能 v0.8.0。删除文件前先将文件备份到带时间戳的文件夹(delete_backup/YYYYMMDDHHMM/),备份时计算 SHA256 哈希并存储,恢复时验证完整性并检查路径安全(检测 ../ 等路径遍历序列)。恢复后自动删除备份(保留原始文件结构)。

v0.8.0 新增 workspace_cleaner:

  • - 定时(默认24小时)扫描 workspace 下的临时文件和过期文件(默认7天),自动备份后清理
  • 支持白名单配置(文件扩展名/文件名/文件夹名),白名单内不清理
  • 核心文件(AGENTS.md、SOUL.md 等)和技能目录始终保护
  • 支持手动触发 dry-run 预览和强制立即清理
  • 数据文件独立存放于 {workspace}/.deleterecovery/workspacecleaner/,技能删除后配置仍保留

v0.7.0 安全加固:

  • - allowed_roots 默认为 workspace 根目录 — 恢复目标限制在 {workspace} 树内,防止恢复文件到任意路径
  • manifest 路径字段改为 HMAC-SHA256 加密存储 — 原始路径不再明文暴露在 manifest.jsonl 中

⚠️ 版本说明: v0.1.0~v0.6.0 已淘汰(DEPRECATED),功能说明保留仅供参考。请始终使用 v0.7.0v0.8.0

触发场景

  1. 1. 用户要删除文件,希望先备份
  2. 用户误删了文件,想要恢复
  3. 用户想查看有哪些可用的备份
  4. 用户想手动清理某个备份
  5. 用户想验证备份是否被篡改(不执行恢复)
  6. 用户想通过文件名/功能/路径关键字检索已删除的文件
  7. 用户想自动清理 workspace 下的临时文件和过期文件

触发词: 删除文件、误删恢复、恢复文件、查看备份、清理备份、验证备份完整性、搜索已删除文件、检索删除记录、workspace清理、临时文件清理、定时清理、workspace_cleaner

核心命令

delete_recovery.py — 备份恢复核心

{workspace}/skills/delete-recovery/scripts/delete_recovery.py

命令说明备注
backup <filepath> [originalpath] [description]备份文件到带时间戳文件夹v0.7.0
search <keyword>
按文件名/简介/路径关键字检索已删除文件 | v0.7.0 | | restore [--keep-backup] [--force] | 从备份恢复文件 | v0.7.0 | | verify | 验证备份完整性(SHA256 + PATH) | v0.7.0 | | list | 查看备份列表 | v0.7.0 | | delete_backup | 删除指定备份 | v0.7.0 | | cleanup | 手动触发过期备份+日志清理 | v0.7.0 | | log [lines] | 查看操作日志 | v0.7.0 |

workspace_cleaner.py — workspace 定时清理(v0.8.0 新增)

{workspace}/skills/delete-recovery/scripts/workspace_cleaner.py

命令说明
python workspacecleaner.py run手动触发一次清理(满足时间间隔才执行)
python workspacecleaner.py dry-run
预览哪些文件将被清理(不实际删除) | | python workspace_cleaner.py status | 查看定时器状态和配置 | | python workspace_cleaner.py show-whitelist | 查看当前白名单 | | python workspace_cleaner.py add-whitelist [--type file\|folder\|ext] | 添加白名单项 | | python workspace_cleaner.py remove-whitelist | 移除白名单项 | | python workspace_cleaner.py set-interval | 设置清理间隔(小时) | | python workspace_cleaner.py set-expire-days | 设置文件过期天数 |

安装

前提条件

  • - Python 3.8+
  • 已安装 ClawHub CLI:npm i -g clawhub
  • 已登录 ClawHub:clawhub login

安装步骤

bash

通过 ClawHub 安装技能

clawhub install delete-recovery

查看已安装的技能

clawhub list

delete_recovery.py 命令详解

所有命令通过执行脚本实现,路径:

{workspace}/skills/delete-recovery/scripts/delete_recovery.py

1. 备份文件(删除前必做)

bash
python deleterecovery.py backup path> [original_path] [description]

  • - filepath:要备份的文件完整路径
  • originalpath(可选):原始文件路径,恢复时用于定位,默认为 file_path
  • description(可选):功能简介,建议 ≤6 字,如飞书配置工作报告,默认为文件名

备份时自动计算并存储 SHA256 哈希 + 原始路径到 .sha256 文件,防止备份文件被替换。备份后自动将(文件名、功能简介、路径)写入 manifest.jsonl,支持 search 检索。

返回示例:
json
{ok: true, folder: 202603261130, file: CUsersuserDesktoptest.txt, description: 工作报告}

2. 搜索已删除文件

bash
python delete_recovery.py search

在 manifest.jsonl 中按文件名、功能简介或路径关键字模糊搜索,返回匹配的备份位置和恢复命令。

  • - keyword:检索关键词(大小写不敏感, substring 匹配)

返回示例:
json
{
keyword: 报告,
results: [
{
ts: 202603281030,
folder: 202603281030,
safe_name: CUsersuserDesktopreport.docx,
filename: report.docx,
description: 工作报告,
path: C:/Users/user/Desktop/report.docx
}
],
count: 1
}

3. 恢复文件

bash
python deleterecovery.py restore folder> [--keep-backup] [--force]

  • - backupfolder:备份文件夹名(如 202603261130)
  • safename:备份文件名(脚本自动将路径中的 /、\、: 替换为
  • --keep-backup:可选,恢复成功后保留该备份文件夹(默认自动删除)
  • --force:强制恢复无 SHA256 记录的旧备份(跳过 SHA256 存在性检查;SHA256 完整性检查和 PATH 验证仍然强制执行)

恢复前验证 SHA256 完整性 + PATH 交叉验证 + 路径遍历检测,任一验证失败均拒绝恢复。

返回示例:
json
{ok: true, restoredto: C:\\Users\\user\\Desktop\\test.txt, backupdeleted: true}

多文件批量恢复逻辑: 同一个备份文件夹有多次恢复时,先记录每个已恢复的文件,等全部文件都恢复完毕后才统一清理整个文件夹。

4. 验证备份完整性

bash
python deleterecovery.py verify folder>

不执行恢复,仅检查备份文件是否被篡改(SHA256 完整性 + PATH 交叉验证)。

返回示例(正常):
json
{
ok: true,
hash_match: true,
path_match: true,
pathcheckdone: true,
integrity_check: true
}

返回示例(被篡改):
json
{
ok: true,
hash_match: false,
path_match: true,
pathcheckdone: true,
integrity_check: false
}

5. 查看备份列表

bash
python delete_recovery.py list

6. 手动删除指定备份

bash
python deleterecovery.py deletebackup

7. 手动触发清理

bash
python delete_recovery.py cleanup

8. 查看操作日志

bash
python delete_recovery.py log [lines]



workspace_cleaner.py 命令详解

workspace_cleaner 是 v0

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 delete-recovery-1776012396 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 delete-recovery-1776012396 技能

通过命令行安装

skillhub install delete-recovery-1776012396

下载

⬇ 下载 delete-recovery v0.8.3(免费)

文件大小: 37.32 KB | 发布时间: 2026-4-13 10:00

v0.8.3 最新 2026-4-13 10:00
Version 0.8.3 of delete-recovery

- No code or documentation changes detected in this release.
- Maintains all features, security constraints, and commands as described in v0.8.0.
- No impact on user triggers, agent permissions, or behavior.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large