預設啟用
在 BRICKS Foundation 2.25 及後續版本中,本機除錯預設為啟用:DevTools 伺服器會在開機時啟動,無需任何設定,並在區域網路上的連接埠19851 進行接聽。若該連接埠已被使用,則會自動遞增至下一個可用的連接埠。
若要檢視或變更這些控制項,請在裝置上開啟設定並導覽至進階設定區段:
- 啟用 Local Debugging 可整個開啟或關閉伺服器。將其關閉即可停止伺服器。
- 啟用 Chrome DevTools Protocol (CDP)、啟用 Model Context Protocol (MCP) 與啟用區域網路探索為子開關,全部預設為啟用。
- 密碼為選用項目,僅在您想要求以密碼存取時才需設定。
需要 BRICKS Foundation 2.25 或更新版本。在較舊的版本上,伺服器採用選擇性啟用方式,請在進階設定中手動啟用 Chrome DevTools。
探索裝置
使用 BRICKS CLI 掃描區域網路中已啟用 DevTools 的裝置:裝置必須在進階設定中開啟啟用區域網路探索,網路掃描才能正常運作。預設為啟用。
驗證
DevTools 存取權的範圍限定於裝置所屬的工作區。用戶端可使用工作區 token 或選用的裝置密碼進行驗證。工作區 token
裝置所屬工作區的任何成員都可以使用 DevTools workspace token 連線,這是一種以 Ed25519 簽署的 token,與 Workspace API Token 不同。BRICKS CLI 與 CTOR Desktop 會自動取得並更新這些 token,因此已登入的工作區成員通常無需額外步驟即可連線。 若要手動核發或更新 token,請執行:~/.bricks-cli/config.json(絕不會印出),並持續重複使用直到接近到期,若請求傳回 403 則會自動重新核發。
選用的密碼
裝置也接受密碼,但僅在進階設定中明確設定時才有效(請參閱進階設定)。不再有預設密碼。作為升級時的單次移轉措施,若某裝置在升級至 2.25 之前已明確啟用本機除錯但未設定密碼,則會保留舊版的BRICKS_DEVTOOLS 密碼,讓既有的存取方式仍可運作。
用戶端可提供任一種憑證:透過 WebSocket 路徑 /ws/<credential>、以查詢參數,或針對 MCP 使用 Authorization: Bearer <token or passcode> 標頭。當兩者皆可用時,工作區 token 的優先順序高於密碼。
驗證狀態
bricks devtools scan 與 bricks devtools open 會為每個裝置顯示驗證狀態:
bricks devtools open --info 也會回報是否已啟用工作區驗證。
DevTools 端點
找到裝置後,使用bricks devtools open 搭配 --info 旗標檢視所有可用端點:
加上
--info 時,輸出內容也會包含適用憑證的授權詳細資訊。MCP 與 MCP SSE 端點接受 Authorization: Bearer <workspace token or passcode> 標頭。
未加上 --info 時,指令會顯示伺服器識別資訊(名稱、版本、裝置 ID、工作區、協定與驗證狀態)。
開啟 DevTools 頁面
在瀏覽器中開啟 Web UI URL 以存取 DevTools 首頁。您可以在此檢查正在執行的應用程式、檢視可用的除錯目標,並連線至裝置。透過 Chrome 連線
您也可以直接透過 Chrome 連線:- 在 Chrome 中開啟
chrome://inspect - 您的裝置會出現在遠端目標清單中:
/json探索端點一律會提供,因此無需任何設定 - 點選檢查以開啟連線至正在執行應用程式的 DevTools 視窗
透過 BRICKS CLI 檢視(CDP)
需要 BRICKS Foundation 2.24 或更新版本。
--passcode。完整 CDP 指令清單請參閱 CLI 指令參考。
使用 DevTools 可以做什麼
已連線的 DevTools 視窗看起來像瀏覽器,但 BRICKS Foundation 並不是網頁,每個面板投射的是裝置的即時執行狀態。共有四個面板已啟用且具有實際意義:Elements、Console、Network 與 Application。其他面板(Sources、Performance、Memory 以及檢查元素按鈕)會被隱藏,因為背後並沒有網頁。Elements—Brick 樹狀結構

#document 為根節點,並以巢狀方式排列您在 BRICKS 中建立的結構:
- 每個 Subspace 都是一個
<subspace>元素。目前顯示的 Canvas 會合併至其中,因此其 Bricks 會直接以子節點呈現(不會有獨立的<canvas>節點),而canvas-*屬性(canvas-id、canvas-title等)則描述目前顯示的是哪個 Canvas。 - 每個 Brick 都是一個元素,其標籤名稱為移除
BRICK_前綴後的 Brick 類型,例如<text>、<image>、<text_input>、<video>、<chart>、<items>、<webview>、<qrcode>。 - Brick 的主要內容會顯示為該元素的文字:Text Brick 顯示其字串,Image Brick 顯示其來源路徑(過長的值會被截斷)。
選取某個 Brick 後,其屬性會內嵌顯示,解析後的執行階段狀態則顯示於側邊面板:Properties 分頁會列出該 Brick 的
props、events、outlet 與 templateKey,而 Styles 與 Computed 則顯示其合成後的版面配置。將游標停留在某個節點或選取節點時,會在裝置上標示對應的 Brick 或 Subspace,並顯示如 text — WelcomeHeader 的標籤。
從 Elements 搜尋框可使用 BRICKS 專屬的選擇器搜尋樹狀結構:
#welcome-text或#B_3—依別名或 short ID 比對:pressable、:editable、:hidden—依能力或狀態比對.MyStateGroup—比對屬於某個狀態群組的 Brick
Elements 樹狀結構為唯讀:編輯屬性或移除節點並不會變更正在執行的應用程式,且編輯會還原。若要操作應用程式,請使用 Console 中的
system 輔助函式(如下),或使用支援 CDP 的自動化工具。Console—執行階段記錄與 system 輔助函式

[System] Event: 行,以及原生模型(LLM/STT)記錄。它並非網頁的 console.*。連線時會自動重播最近的歷史記錄。
連線時,BRICKS 也會將一組輔助物件直接注入 Console 的求值範圍中。直接以名稱輸入即可,不需要加上 globals 前綴。請先執行 usage() 列印完整目錄,或輸入 globalThis 展開整個樹狀結構。
system.* 是應用程式檢查的核心:
Network—請求流量

舉例來說,指向
mqtt://broker.example.com:1883 的 Generator 會顯示一列(狀態為 101 Connected);將 {"temp":21} 發布至 sensors/room1 時,會在 Messages 中以傳出訊框 [sensors/room1] {"temp":21} 呈現,接收到的訊息則以傳入訊框呈現。
Subspace、Canvas、Brick 與 Property Bank 值沒有直接的 Network 列:它們只會以發出請求的 Generator 或 Preload 步驟來源形式間接出現。回應主體僅會為最近的請求快取,且在 DevTools 啟動前就已建立的連線不會出現。
從執行階段快取提供的回應目前不會顯示為網路請求;在此面板中呈現執行階段快取活動屬於未來版本的規劃。
Application—已儲存的 Data(唯讀)

bricks://app 之下:
DATA-… 資料庫存放的是執行階段 Property Bank,與 BRICKS Controller 中的 Data Bank 儲存產品不同。同樣地,GENERATIVE_MEDIA_CACHE 是執行階段快取,而非 Media Box 或 Media Flow。[HIDDEN]。
下一步
遠端除錯
透過 BRICKS Controller 遠端除錯裝置,無需存取區域網路。
除錯面板
使用裝置端的疊加層來檢查運行時狀態。



