文档导航
文档 / 审批与权限

审批与权限

审批与权限控制 OpenSquilla 工具被允许执行的方式。当 agent 可以写入文件、运行 shell 命令、发布 artifact、向 channel 发帖或调用外部服务时,它们尤为重要。

在运行无人值守自动化或赋予连接 channel 的 agent 广泛的工具访问权限之前,请先阅读本页。

权限档位

一次性自动化接受显式的权限档位:

opensquilla agent --permissions restricted -m "Inspect this repo"
opensquilla agent --permissions on -m "Run with host execution and approvals"
opensquilla agent --permissions bypass -m "Trusted local automation"
opensquilla agent --permissions full -m "Fully trusted local automation"

实际含义:

档位使用时机
restricted / off任务应保持保守,避免提升执行权限。
on允许宿主执行,但审批检查仍然生效。
bypass你足够信任该任务,可以自动授予审批,同时保留敏感路径检查。
full你完全信任该任务与环境。谨慎使用。

对于自动化,优先选择能完成任务的最窄档位。

工作区约束

为文件与 shell 工作设置工作区:

opensquilla agent \
  --workspace /path/to/project \
  --workspace-strict \
  -m "Summarize this repo"

将写入约束到工作区或临时目录:

opensquilla agent \
  --workspace /path/to/project \
  --workspace-lockdown \
  --scratch-dir /path/to/project/.scratch \
  -m "Investigate and prepare a minimal patch"

对于无人值守运行,当意外写入项目外不可接受时,使用 --workspace-lockdown

交互式审批

交互式聊天入口可暂停敏感工具调用以等待人工决策。终端聊天支持:

/approvals
/approvals reset
/permissions status
/permissions on
/permissions off
/permissions bypass
/permissions full
/forget

当你需要在聊天过程中查看或重置已缓存的审批决策时,使用这些命令。

Web UI 也提供一个审批入口,可在消息回滚之外审查待处理的操作。

Sandbox 姿态

查看 sandbox 姿态:

opensquilla sandbox status
opensquilla sandbox status --json

设置姿态:

opensquilla sandbox on
opensquilla sandbox bypass
opensquilla sandbox full
opensquilla sandbox reset

更改全局 sandbox 姿态后重启 gateway:

opensquilla gateway restart

推荐默认值

场景推荐做法
在仓库中首次运行--workspace--workspace-strict
只读排查--permissions restricted
本地补丁附带测试--workspace-lockdown 加临时目录
带写入的 Web UI 任务保持审批可见并审查敏感操作
连接 channel 的 agent保守权限并显式配置 channel
无人值守自动化限定超时/迭代次数,选择可行的最窄权限

排障

如果某个工具被拒绝:

opensquilla sandbox status
opensquilla doctor

然后检查:

  • 该入口是否支持实时审批;
  • 工作区路径是否正确;
  • 已缓存的审批是否需要重置;
  • 该任务是否应在不同的权限档位下运行。

接下来阅读:


文档索引 · 产品指南 · 改进此页面 · 报告文档问题

在 GitHub 上编辑此页(英文原稿) OpenSquilla 文档 · 中文社区翻译