Agent CLI Scope Guard

Read-only AI agent CLI security audit for hidden global Skill routing, credential inheritance, bridge snapshots, and over-broad permissions.

View the Project on GitHub xiaoqi-AI/agent-cli-scope-guard

AI Agent CLI 安全审计使用场景

English use cases

本页把威胁模型转成可执行的工作场景。每个场景都包含触发信号、审计动作和退出条件;审计器在所有场景中都保持只读。

1. 安装或升级 Agent CLI 前后

触发信号: vendor CLI、npm 包、桌面扩展或自更新器可能在当前项目之外安装 Skill、hook 或桥接配置。

执行:

agent-scope-guard --json --output before.json
# 安装或升级待审查的 CLI
agent-scope-guard --json --output after.json

重点核对: 新增的用户级 SKILL.md、包生命周期脚本、共享链接、Bridge 快照和权限变化。

退出条件: 每个新增全局对象都有明确负责人、作用域、关闭方式和必须全局生效的理由。

2. 普通开发任务被转交给其他平台

触发信号: 你要求 Codex 或其他宿主模型修改代码,但 Coze、Figma 等未被点名的平台创建了实际产物。

执行:

agent-scope-guard --fail-on high

重点核对: ROUTE-001 中的 always usewhenever、“无需显式点名”或宽泛开发触发词,并追踪 Skill 的物理路径和安装来源。

退出条件: 外部委托必须由平台名或命令前缀显式触发,普通开发继续由用户选择的宿主模型完成。

3. 一个 Skill 同时改变多个 Agent

触发信号: 安装一次 CLI 后,Codex、Trae 或其他编辑器开始做出相同的路由决定。

重点核对: ROUTE-002、符号链接、Windows Junction 和中央 Skill 池。多个可见目录可能指向同一个物理来源,删除其中一个副本并不能解决问题。

退出条件: 共享传播要么被明确记录为有意控制,要么改成宿主专用、项目级配置。

4. 子 Agent 能读取无关凭据

触发信号: 只处理本地代码的 Agent 可以看到公众号、云服务、OAuth 或模型 API 凭据。

执行:

agent-scope-guard --json

重点核对: SECRET-001 环境变量名称、SECRET-002 Bridge 快照、SECRET-003 凭据文件权限,以及桥接进程是否仍在运行。

退出条件: 子进程只获得白名单环境;隔离完成后删除陈旧快照;凭据文件仅所有者可读;仍有效的暴露凭据完成轮换。

发现本地快照只能证明暴露面扩大,不能单独证明凭据已经远程外传。

5. 项目、草稿、上传或部署被重复创建

触发信号: 请求超时或多个 Agent 并行运行后,同一业务操作产生多个远端资源。

重点核对: 谁拥有写入权、是否存在幂等键、是否自动重试,以及在结果不确定时是否先查询远端状态。

退出条件: 唯一写入者持有租约;每次写操作都有稳定 operation key;超时进入 unknown;重试前先只读核对。

6. 开发者工作站安全体检

触发信号: 工作站长期累积可信项目、全局指令、用户级 API 凭据、完全访问会话或免审批策略。

执行:

agent-scope-guard --json --fail-on medium

重点核对: PERM-001PERM-002TRUST-001AUTO-001UX-001,并比较启动时覆盖与持久配置。

退出条件: 默认仅工作区写入;外部写入需要批准;删除陈旧信任项;项目专用自动化不再放在全局。

7. 企业镜像或 DevSecOps 门禁

触发信号: 标准开发镜像或受管工作站必须阻止不安全的 Agent CLI 配置交付给用户。

在 CI 或镜像验收中执行:

agent-scope-guard --json --output agent-scope-report.json --fail-on high

建议策略: 严重和高风险直接失败;保存脱敏报告;接受中风险必须有负责人和到期时间。

退出条件: 镜像中不存在环境级生产凭据、隐式 vendor 路由、活动 Bridge 快照、默认完全权限或未经审查的全局 hook。

8. Skill、插件或 CLI 发布前自检

触发信号: 新 Skill 使用自然语言触发器、安装到用户级目录,或同时面向多个宿主。

重点核对: 触发精度、用户显式意图、安装作用域、升级行为、卸载持久性、子进程环境过滤和误报测试。

退出条件: 默认项目级安装;全局安装必须选择加入;每次外部写入单独授权;升级不能静默扩大路由。

9. Agent 异常行为后的事件响应

触发信号: 已经出现无法解释的外部资源、权限变化、凭据使用或路由决定。

处置顺序:

  1. 暂停外部写入和自动重试。
  2. 记录时间和配置元数据,但不复制密钥值。
  3. 运行审计器,把观察证据与推断分开。
  4. 先停止重新分发凭据的进程,再轮换凭据。
  5. 通过只读请求核对远端状态。
  6. 执行整改手册
  7. 重启后及下一次 CLI 升级后重新审计。

退出条件: 有效路由、凭据路径、写入者身份、远端副作用和长期预防控制均已对账。

工具不能替代什么

Agent CLI Scope Guard 检查本地配置和有限运行信号,不能替代终端检测、网络遥测、云审计日志、密钥扫描、软件成分分析或外部平台访问日志。需要证明远程传输或确认外部操作归因时,应结合这些证据源。