Token导航 LogoToken导航TokenDH.com
开发需要联网clawhub未标认证来源可访问clear审计通过

safe-file-editor安全文件编辑器

Agent Skill

safe-file-editor 用于补充开发相关能力,适合在 OpenClaw 中需要让 Agent 承接开发相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

4,581

周安装

189

GitHub Stars

公开资料未说明

下载量

1,497
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:safe-file-editor(安全文件编辑器)
来源仓库:https://github.com/suda6632/safe-file-editor
安装命令:
openclaw skills install safe-file-editor
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install safe-file-editor

简介

安全文件编辑器,支持4眼原则预览确认,原子备份与回滚,避免误操作覆盖及注入风险,保障文件编辑安全可靠。

SKILL.md

Safe File Editor

模拟预览+4眼原则+原子备份回滚 参考Claude Code SedEdit安全设计

背景问题

文件编辑类工具的常见风险:

  • 误操作覆盖:模型匹配文本错误,导致文件损坏
  • 无预览:直接写入,无法反悔
  • 无备份:修改后原文件丢失
  • 注入风险_simulatedSedEdit字段可被模型构造

根因:Claude Code原生的SedEdit虽有安全措施,但未完整迁移到OpenClaw

解决方案

4眼原则(Two-Person Rule)

第1眼(AI预览):生成diff,不实际修改
第2眼(用户确认):确认diff正确后执行

原子写入流程

1. 读取原始内容
      ↓
2. 生成diff预览(dry_run=True)
      ↓
3. 用户确认
      ↓
4. 创建备份(原子)
      ↓
5. 写入临时文件
      ↓
6. 重命名替换(原子操作)
      ↓
7. 成功/失败回滚

安全设计

参考Claude Code的_simulatedSedEdit字段omit策略:

# 该字段在inputSchema中被omit,模型无法自行设置
_simulatedSedEdit: Optional[SedEditRequest] = Field(
    default=None,
    json_schema_extra={"omit": True}  # 关键:omit防止注入
)

使用方式

Python API

from safe_file_editor import safe_edit, rollback

# 第一步:预览(dry_run=True,默认)
result = safe_edit(
    file_path="config.json",
    old_text='"timeout": 300',
    new_text='"timeout": 600',
    dry_run=True
)
print(result.changes)  # 查看变更预览

# 第二步:确认后执行(dry_run=False)
if result.success:
    result = safe_edit(
        file_path="config.json",
        old_text='"timeout": 300',
        new_text='"timeout": 600',
        dry_run=False
    )
    print(f"备份: {result.backup_path}")

# 第三步:如需回滚
rollback("config.json", result.backup_path)

EditResult结构

@dataclass
class EditResult:
    success: bool          # 是否成功
    file_path: str         # 目标文件
    backup_path: str       # 备份路径(失败时用于回滚)
    changes: str           # 变更描述(diff)
    hash_before: str       # 修改前hash
    hash_after: str        # 修改后hash
    dry_run: bool          # 是否为预览模式
    message: str           # 状态消息

Skill集成

在SKILL.md中声明:

whenToUse: |
  任何需要修改文件的操作
  必须使用dry_run预览,用户确认后再执行
permissions:
  - file:read (读取原文件)
  - file:write (写入临时+重命名)
  - file:backup (创建.bak备份)
steps:
  1: dry_run预览变更
  2: 展示diff给用户确认
  3: dry_run=False执行
  4: 返回backup_path

配置参数

参数默认值说明
BACKUP_DIRtmp/file-backups/备份文件目录
MAX_BACKUP_AGE30天备份保留期限
原子写入temp.replace(target)防止写入中断

日志审计

编辑日志 (logs/safe-file-editor.log)

[2026-04-03 15:30:00] DRY_RUN: config.json | a1b2c3d4->e5f6a7b8 | - "timeout": 300
+ "timeout": 600
[2026-04-03 15:30:05] COMMITTED: config.json | a1b2c3d4->e5f6a7b8 | changes | backup: tmp/...
[2026-04-03 15:30:10] FAILED: config.json | - | Permission denied
[2026-04-03 15:35:00] ROLLBACK: config.json | - | Restored from tmp/...

最佳实践

  1. always dry_run first — 任何编辑先预览
  2. show complete diff — 展示完整变更给用户
  3. unique old_text — old_text必须足够唯一,避免误匹配
  4. backup before commit — 自动备份,支持回滚
  5. log everything — 所有操作记录审计日志

关联

  • 并发安全:skills/agent-concurrency-controller/
  • 结果控制:skills/tool-result-size-controller/
  • Claude Code安全设计:memory/learnings/claude-code-architecture-2026-04-03.md

版本

  • v1.0.0 (2026-04-03): 初始实现,4眼原则+原子备份回滚

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

82.17%
按下载量换算1,230

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills