跳到內容
Crystal CodeDocs
繁繁體中文

內建工具

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 探測)。Shell 工作目錄是工作區根目錄。

工具 目錄 用途
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 核准後啟動工作階段本機的背景 shell 命令並返回其任務 ID。逾時是 backgroundBashTimeoutSeconds(預設 10800 秒,即 3 小時)
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 個字元。