inspect 會向執行中的 dev 工作階段詢問某份文件此刻的樣子。它可以列出打開的分頁、回傳結構化摘要或原始 HTML,並附上同一個目標最近的主控台輸出。
工作階段必須在控制通道解鎖的狀態下執行:用 extension dev --allow-control 啟動它。被拒絕時,錯誤訊息會指名缺少的 flag,所以一次被拒的呼叫就足以告訴你該怎麼重啟工作階段。
何時使用 inspect
- 你想確認你的 content script 究竟往頁面裡渲染了什麼。
- agent 需要分頁 id,才能精準地把
eval或inspect呼叫指向某個目標。 - 你希望在一份機器可讀的結果裡同時拿到 DOM 狀態與對應的主控台輸出。
用法
參數與 flag
沒有
--deep-dom 這個 flag。深層 DOM 支援是工作階段內部回報的橋接能力,不是你能逐次呼叫去開關的東西。
探索迴圈
數字形式的分頁 id 讓鎖定目標變得確定。設計好的流程是先列出、再檢視:--list-tabs 需要解鎖的控制通道,但不需要 eval 權杖,所以它在任何 --allow-control 工作階段裡都能用。回傳結果是一個由 {id, url, title, active, windowId} 物件組成的陣列。把其中的 id 值直接餵給這裡的 --tab,或是餵給 eval。
主控台增強
--with-console 會把一個 console 陣列合併進結果:同一個 context 與分頁最近的 n 筆記錄,讀自工作階段的 logs.ndjson。這樣 agent 一次往返就能同時拿到 DOM 狀態與主控台證據。這個增強是盡力而為的,永遠不會讓指令失敗。
兩種輸出模式都會顯示它。pretty 模式會在 DOM 摘要之後,以 logs 使用的同一種 [seq] LEVEL (context) message 格式印出主控台行;當尾端為空時則印出 (no console lines captured)。--output json 則把原始記錄放在信封的 console 陣列裡。
截斷
超過--max-bytes 的 HTML 回傳時會被截斷。pretty 模式會在 stderr 上印出一則截斷提示,--output json 則會在信封中設定 truncated: true(參見 結果信封)。
失敗模式
- 該瀏覽器找不到工作階段:
E_SESSION_NOT_FOUND,並附上應該執行的完整extension dev指令。 - 工作階段在沒有
--allow-control的情況下執行:連線會被拒絕,而錯誤訊息會指名這個 flag。 - 目標介面沒有開啟,或是
--tab指定的 id 已經不存在:E_TARGET_NOT_FOUND。 - 目標花費的時間超過
--timeout:E_TIMEOUT。
doctor。

