关于 audit-permissions
audit-permissions 是分析权限审计日志并建议允许列表变更的 Skill。它会先展示拟议修改以供确认,也可归档并重置审计日志。
主要功能
- 01运行权限日志分析器
- 02建议新增允许规则
- 03修改前展示差异
- 04仅编辑 permissions.allow
- 05归档日志并重置审计数据
适用场景
- 01检查已记录的权限提示
- 02将获批的安全规则加入设置
- 03清除日志以收集新的审计数据
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ camacho/ ai-skills --skill audit-permissions安装后在 Claude Code 中输入/audit-permissions确认已加载。
详细介绍
审计权限
分析权限审计日志并建议调整允许列表。封装了 ai-env 中的 TypeScript 分析器。
参数路由
- 无参数 / 空参数:运行报告(默认)
- 参数包含 "reset" 或 "clear":归档日志并重新开始
报告模式(默认)
1. 生成报告
node --import tsx /Users/patrickcamacho/projects/camacho/ai-env/src/tools/permission-analyzer.ts
向用户展示完整的 Markdown 输出。
2. 建议的允许规则
如果该部分包含条目:
- 读取
~/.claude/settings.json,提取permissions.allow(默认为[]) - 计算尚未存在的新模式(区分大小写的完全匹配)
- 仅显示
permissions.allow的修改前 / 修改后差异 - 询问:“将这 N 条安全规则应用到 settings.json 吗?”(纯文本 y/n——适用于所有界面)
- 如果用户同意:合并、去重、按字母顺序排序,并以 2 个空格缩进写回
- 切勿修改
permissions.allow以外的键。切勿修改permissions.deny。 - 确认已添加的内容
3. 安全警告
如果存在:显示每个模式及其标记和示例命令。询问:“要添加其中任何带有标记的规则吗?(列出编号,或输入 'none')”
4. 已抑制的建议
列出以供了解。不要提供添加选项——这些建议带有危险级别标记。
完成
总结:添加了什么,以及预计可减少多少权限提示。
重置模式
/Users/patrickcamacho/projects/camacho/ai-env/.claude/hooks/audit-permissions-reset.sh
下次调用工具时会自动开始记录新日志。
前提条件
| 要求 | 检查 |
|---|---|
| ai-env 仓库 | /Users/patrickcamacho/projects/camacho/ai-env 存在(仅适用于 ai-env——其他项目会出现找不到文件错误) |
| 依赖项 | 已在 ai-env 中完成 pnpm install |
| 审计钩子 | permission-audit-log.sh 已添加到 ~/.claude/settings.json 的 PreToolUse 中 |
故障排除
| 症状 | 修复方法 |
|---|---|
| "No audit data found" | 尚未安装钩子,或尚未记录未获允许的提示 |
| 分析器崩溃 | 在 ai-env 仓库中运行 pnpm install |
| 建议已过时 | 运行 /audit-permissions reset,积累新数据后重新运行 |
| settings.json 解析错误 | 验证:jq . ~/.claude/settings.json |
评论
支持 Markdown