Skip to main content
印出引擎版本、契約版本,以及支援 json 輸出的指令。 capabilities 是 agent 或腳本在做其他任何事之前先執行的那次交握。一次呼叫就能告訴呼叫端:它正在跟哪一個 CLI 對話、這個 CLI 會寫出哪些契約 schema,以及哪些指令接受 --output json。它不需要專案、不需要工作階段,也不需要瀏覽器。

何時使用 capabilities

  • agent 要開啟一個工作階段,必須先知道該用哪些 schema 版本來解析。
  • 腳本想用功能偵測判斷是否支援 --output json,而不是靠版本號猜測。
  • 你想確認某次 npx 呼叫實際解析到的是哪一個 CLI 建置。

用法

引數與旗標

這是唯一一個預設輸出 json 的指令。交握本來就是給機器用的,所以機器格式才是預設值,--output pretty 反而是要你主動指定的那一個。

它會回傳什麼

JSON 輸出是一個 schema-1 信封(參見 結果信封),它的 value 帶有五個欄位:
outputJsonCommands 是從即時的指令註冊資訊讀取而來,絕不是手工維護的清單,因此它不可能與 CLI 實際接受的指令產生落差。請把上面的範例當成示意,並解析真正回傳的內容。 pretty 輸出會把同樣的資訊印成四行帶標籤的文字。兩種格式的結束碼都是 0

典型的 agent 流程

  1. 執行 extension capabilities,確認 envelopeSchemareadySchemaVersion 都是你支援的版本。
  2. 開啟工作階段:extension dev --allow-control --output json
  3. 用動作類指令來驅動它:inspectevalstoragereload

後續步驟

  • 結果信封 中了解每個支援 json 的指令都會輸出的那個信封。
  • dev 開啟這次交握所準備的工作階段。
  • 除錯 中了解更完整的除錯工作流程。