read、list、tree、glob、grep、search、edit 和 write 可以在审批后使用工作区外的路径:由你审批,或在 Review、Audit 中由 Review 模型审批。工作区内的 write 和 edit 仍遵循审批模式。
bash 从工作区根启动,并作为副作用审批。后台 Bash 任务只在 Work 中可用。
| 规则 |
细节 |
| 后台任务 |
bash_start 返回会话本地的任务 ID。用 bash_status 或 bash_logs 观察,用 bash_stop 停止 |
| 超时 |
backgroundBashTimeoutSeconds,默认 10800 秒(3 小时) |
| 生命周期 |
不保存。会话关闭时停止。最多 32 个活动任务。已完成的任务仍可查询,不占槽位 |
| Stdin |
已关闭。需要终端输入的命令不受支持 |
| 凭据路径 |
.ssh、.gnupg 和 credentials.json 保持 Forbidden |
| 跳过的目录 |
Glob、grep、search、list 和 tree 跳过 .git、.vs、bin、obj、node_modules 和 dist |
| 链接 |
Tree 对目录链接只列出一次,位于解析后的路径下,并跳过离开工作区根或外部起始路径的链接 |
| 二进制文件 |
read 和 edit 拒绝(NUL 探测) |
| 工具 |
目录 |
用途 |
read |
Plan、Work |
读取文本文件(path,可选的从 1 开始的 offset 和 limit) |
describe_image |
Plan、Work |
通过 imageModel 描述图像(path,可选 question)。未设置 imageModel 时省略 |
view_image |
Plan、Work |
向当前模型展示图像(path)。仅当该模型接受图像时出现 |
list |
Plan、Work |
列出直接条目(path 可选,从 1 开始的 offset 和 limit) |
tree |
Plan、Work |
列出路径下的结构(path 可选,depth 默认 2、上限 4,files 包含文件)。深度优先。子目录在文件之前。最多 1,000 个条目,每个目录 20 个文件 |
glob |
Plan、Work |
列出匹配 glob 的文件(pattern,可选 path,从 1 开始的 offset 和 limit) |
grep |
Plan、Work |
正则搜索(pattern,可选 path 和文件名 glob) |
search |
Plan、Work |
按名称和内容排序(query,可选 path、glob、caseSensitive,从 1 开始的 offset 和 limit) |
todowrite |
Plan、Work |
替换或合并会话待办 |
todoread |
Plan、Work |
读取当前待办 |
question |
Plan、Work |
提出一个或多个问题,带单选、多选和自定义答案 |
skill |
Plan、Work |
按 name 加载技能。skills 为 false 时省略 |
edit |
Work |
替换唯一的 old_string |
write |
Work |
创建或覆盖 UTF-8 文本文件 |
bash |
Work |
审批后运行一条 shell 命令(bash -lc)。超时是 bashTimeoutSeconds(默认 600 秒) |
bash_start |
Work |
审批后启动后台命令并返回任务 ID |
bash_status |
Work |
读取状态、退出码和日志偏移 |
bash_logs |
Work |
按偏移读取有界输出 |
bash_stop |
Work |
审批后停止后台任务及其子进程 |
| 限制 |
值 |
read |
1,000,000 个字符或 20,000 行 |
write |
2 MiB |
grep |
1,000 个匹配,每个文件 8 MiB |
search |
每页 200 个候选文件(默认 50),每个文件 2 行预览,每个扫描文件 8 MiB |
glob |
每页 1,000 个匹配 |
list |
每页 1,000 个条目 |
tree |
1,000 个条目、4 层、每个目录 20 个文件 |
| 工具输出 |
在 100,000 个字符处截断 |
| 后台输出 |
每个任务 1 MiB。bash_logs 每次调用最多 100,000 个字符 |