local-approvals

🛡️ 智能审批中枢,安全管控 Agent 权限

本地 Agent 权限审批系统,支持自动学习与历史审计,零依赖代码安全,让多 Agent 协作可控。

收藏
4.6k
安装
1.5k
版本
v1.0.0
CLS 安全性认证2026-05-19
点击查看完整报告 >

使用说明

核心用法

local-approvals 是一个本地化的 Agent 权限管理工具,通过命令行界面(CLI)提供完整的审批工作流。用户可以通过 list 命令查看待处理的权限请求,使用 approvedeny 进行人工决策,并通过 history 追踪审批记录。系统支持 --learn 参数将特定操作类别加入自动白名单,实现"一次审批,后续自动"的便捷体验。所有数据存储在 ~/.openclaw/skills/local-approvals/ 目录下的 JSON 文件中,便于直接查看和备份。

显著优点

安全性是该 Skill 的最大亮点。代码审计显示其完全基于 Python 标准库开发,无第三方依赖,彻底杜绝了供应链攻击风险。实现上严格避免 eval、exec、subprocess 等危险函数,所有文件操作均通过 pathlib 限制在指定目录内,符合最小权限原则。功能设计兼顾灵活性与可控性:自动学习机制减少重复审批负担,完整的审计日志满足合规需求,而 reset 命令提供了快速撤销授权的能力。

潜在局限

作为 T3 级个人开发者作品,虽经安全审计,但长期维护能力和企业级支持存疑。架构上仅支持单机单用户模式,缺乏多用户隔离和跨设备同步能力,不适合团队协作场景。交互方式仅限命令行,对非技术用户不够友好。此外,自动审批列表的积累可能导致"权限蔓延",需要用户定期审查 categories

目标群体

主要面向本地开发环境中使用多 Agent 系统的开发者、AI 自动化工作流设计者,以及对权限管理有基础要求但无需复杂 RBAC 系统的个人用户。特别适合需要人工介入关键操作审批、同时希望减少重复劳动的技术人员。

使用风险

尽管代码本身安全,但 --learn 参数的滥用可能导致过度授权,建议仅对高度可信的操作类别启用。本地 JSON 文件若被误删或损坏将导致配置丢失,需定期备份。由于无网络同步,多设备使用会造成审批状态不一致。T3 来源意味着代码变更需人工审查更新,不建议直接自动更新。

安全解读

核心用法

local-approvals 是一个面向 AI Agent 生态的本地权限审批系统,通过命令行工具管理 Agent 的操作请求。其核心工作流为:Agent 提交请求 → 用户审查并决策 → 系统自动记录并可选地加入自动批准列表。

主要功能模块:

  • 请求管理list 查看待审批请求,approve/deny 处理单个请求,支持 --learn 自动将该类别加入白名单
  • 历史追踪history 查看审批记录,便于审计和复盘
  • 类别管理categories 查看各 Agent 的自动批准类别,reset 清空特定 Agent 的白名单
  • 底层 APIcore.py 提供程序化接口,支持集成到更大系统中

技术实现:仅依赖 Python 标准库(json、pathlib、argparse 等),通过本地 JSON 文件(state.json 存储白名单和历史,pending.json 存储待处理请求)持久化状态,无数据库、无网络、无第三方依赖。

显著优点

1. 极致安全:S+ 级安全认证,零网络通信、零危险函数、零第三方依赖,攻击面极小
2. 权限粒度精细:按 Agent + 类别(category)维度管控,支持差异化策略

3. 渐进式授权--learn 机制让系统越用越顺手,同时保留人工兜底

4. 审计友好:完整的历史记录和 CLI 输出,便于合规审查

5. 零配置启动:无复杂依赖安装,开箱即用

潜在局限

1. 单用户设计:基于本地文件系统,未考虑多用户并发或远程协作场景
2. 无通知机制:需主动 list 查看待办,无推送/弹窗提醒

3. 存储规模限制:JSON 文件在请求量极大时性能可能下降,未提供归档机制

4. 路径硬编码痕迹:文档示例含 Windows 绝对路径,虽代码实际跨平台,但易误导

5. 无图形界面:纯 CLI 交互,对非技术用户门槛较高

适合人群

  • AI Agent 开发者:需要为自主代理系统添加人工审批层
  • 安全敏感型用户:希望 100% 离线管控 AI 操作,杜绝数据外泄风险
  • 自动化爱好者:构建个人 AI 工作流,需要精细的权限边界
  • 合规要求场景:需完整操作审计日志的企业/研究环境

常规风险

  • 误授权风险:过度使用 --learn 可能导致自动批准列表膨胀,建议定期 categories 审查
  • 文件权限依赖:依赖本地文件系统权限,若 ~/.openclaw/ 目录被其他程序篡改可能导致状态异常
  • 无备份机制:JSON 文件损坏将丢失历史和白名单,建议用户自行备份

local-approvals 内容

schemas文件夹
手动下载zip · 8.7 kB
pending.jsonapplication/json
请选择文件