Appearance
Kiro CLI Tool Permissions 让你细粒度控制 agent 可以执行哪些系统操作。通过 /tools 可以查看、信任或取消信任工具;shell、read、write 还支持按命令或路径分级授权,适合在安全敏感项目中使用。
Kiro CLI Tool Permissions:用 /tools 控制读写、Shell 和 AWS 权限
Kiro CLI 会通过 tools 读取文件、写入文件、运行命令或调用 AWS。为了避免 AI agent 在未确认的情况下执行高风险操作,Kiro 提供 /tools 命令管理权限。
这和 Claude Code 的工具确认、Cursor 的命令审批思路类似:核心不是阻止 agent 工作,而是让人保留关键动作的控制权。
/tools 命令
在 Kiro CLI chat 中运行:
text
/tools可以查看当前所有 tools 的权限状态。
常用子命令:
| Command | 说明 |
|---|---|
help | 显示 tools 帮助 |
trust | 在当前 session 中信任某个 tool |
untrust | 恢复为每次请求确认 |
trust-all | 信任所有 tools,等同于旧的 /acceptall |
reset | 重置运行时权限,包括 shell trust patterns、文件路径和 denied tools |
权限状态
每个 tool 主要有两种状态:
| 状态 | 含义 |
|---|---|
| Trusted | Kiro 可以直接使用,不再每次确认 |
| Per-request | 每次使用前都需要你确认 |
示例:
text
/tools trust read
/tools untrust shell也可以一次信任所有工具:
text
/tools trust-all但在生产环境、包含 secrets 的项目或会改动基础设施的仓库中,不建议轻易 trust all。
内置 tools
Kiro CLI 包含这些内置工具:
| Tool | 说明 |
|---|---|
read | 读取系统上的文件和目录 |
write | 创建和修改文件 |
shell | 执行 bash 命令 |
aws | 调用 AWS CLI 操作 AWS services |
report | 打开浏览器向 AWS 报告 chat 问题 |
当 Kiro 想使用未授权 tool 时,会显示确认面板。你可以选择允许、拒绝,或在当前 session 中信任该 tool。
Shell 命令分级信任
当 Kiro 要运行 shell 命令时,不一定要信任整个 shell tool。Kiro 会给出更细的信任范围。
例如命令是:
bash
git pull --rebase你可能看到:
text
Full command → git pull --rebase
Partial command → git pull *
Base command → git *
Entire Tool → *信任范围从严格到宽松:
| Tier | 信任内容 | 示例 |
|---|---|---|
| Full command | 只信任完全相同命令 | git pull --rebase |
| Partial command | 信任命令和子命令,参数不限 | git pull * |
| Base command | 信任基础命令所有参数 | git * |
| Entire Tool | 信任所有 shell 命令 | * |
对链式命令、管道和 &&,Kiro 会为链中各命令生成并去重 trust patterns。
Read / write 路径分级信任
read 和 write 在访问当前工作目录外的路径时,也支持分级授权。默认情况下,当前 working directory 内的读写通常不触发额外路径选择器。
当 Kiro 访问外部路径时,可能显示:
text
Specific paths → ~/.config/app/settings.json
Complete directory → ~/.config/app
Entire Tool → *范围说明:
| Tier | 信任内容 |
|---|---|
| Specific paths | 只信任这次请求的具体文件路径 |
| Complete directory | 信任该目录下的所有文件 |
| Entire Tool | 信任任意路径的 read 或 write |
如果只是读取一个配置文件,选 specific paths 更安全;如果你明确在整理某个配置目录,可以选 complete directory。
什么时候该信任或取消信任
推荐策略:
- 探索普通代码仓库时,可以信任
read。 - 正在让 Kiro 修改项目文件时,可以信任
write,但仍要审查 diff。 - 在敏感环境中,保持
shell为 per-request。 - 涉及 production AWS 资源时,保持
aws为 per-request 或 untrusted。
常见问题
Q: Kiro CLI 的 /tools trust-all 安全吗?
A: 只有在低风险、可回滚的本地环境中才建议使用。涉及生产、secrets 或基础设施时不要轻易 trust all。
Q: Shell 权限只能整个工具信任吗?
A: 不是。Kiro 支持按完整命令、子命令、基础命令或整个 shell tool 分级信任。
Q: read/write 当前项目外的文件会怎样?
A: Kiro 会提供路径级授权选项,例如只信任具体文件、整个目录或所有路径。