-j or --json for machine-readable JSON output.
BRICKS Foundation management (bricks device)
bricks device list
List all devices in the workspace.
bricks device get <id>
Show detailed information about a device, including hardware specs.
bricks device bind <passcode>
Bind a new device to the workspace using its passcode.
bricks device control <id> <type>
Send a control event to a device.
bricks device refresh <id>
Reload the application on a device.
bricks device clear-cache <id>
Clear the cache on a device.
bricks device screenshot <id>
Take a screenshot and save it locally.
bricks device monitor
Monitor device status in real time. Requires an interactive terminal.
BRICKS Foundation groups (bricks group)
bricks group list
List all device groups.
bricks group get <id>
Show group details.
bricks group devices <id>
List devices in a group with their online/offline status.
bricks group dispatch <id> <action>
Send an action to all devices in a group.
Available actions: refresh, clear-cache, system-menu-open, system-menu-close, system-info-open, system-info-close, local-sync-panel-open, local-sync-panel-close, debug-panel-open, debug-panel-close, logging-on, logging-off, test-panel-open, test-panel-close
bricks group refresh <id>
Refresh all devices in a group.
bricks group monitor <id>
Monitor all devices in a group in real time.
Applications
bricks app new
Create a new application in the workspace.
bricks app list
List all applications.
bricks app get <id>
Show application details.
bricks app update <id>
Update application metadata or configuration.
bricks app check-config <path>
Validate a configuration file against the BRICKS schema.
bricks app bind <id>
Bind or unbind devices to an application.
bricks app short-edit <id>
Apply quick property changes without a full release.
bricks app short-refs <id>
List available references for short edits.
bricks app trigger <id> <testId>
Trigger an automation test on an application.
bricks app release <id>
Release a new version of an application.
bricks app project-pull <id>
Pull the application source files from the server.
bricks app project-init <id>
Initialize a bricks-ctor project from an existing application.
Deprecated — use
bricks ctor init <id>. The old form still works and forwards to the new command.Modules
bricks module new
Create a new module in the workspace.
bricks module list
List all modules.
bricks module get <id>
Show module details.
bricks module update <id>
Update module metadata or configuration.
bricks module short-edit <id>
Apply quick property changes without a full release.
bricks module short-refs <id>
List available references for short edits.
bricks module release <id>
Release a new version of a module.
bricks module project-pull <id>
Pull the module source files from the server.
bricks module project-init <id>
Initialize a bricks-ctor project from an existing module.
Deprecated — use
bricks ctor init <id> --type module. The old form still works and forwards to the new command.BRICKS Projects (bricks ctor)
Scaffold, sync, compile, deploy, and simulate bricks-ctor projects from the CLI.
bricks ctor init <id>
Initialize a BRICKS project from an application or module. Requires authentication. Replaces the deprecated bricks app project-init and bricks module project-init.
bricks ctor postinstall
Regenerate the project’s local ctor/ library, MCP config, and skills. Migrates legacy bricks-ctor projects.
bricks ctor pull
Pull the latest project files from BRICKS using a three-way Git merge.
bricks ctor push
Compile and push the configuration without creating a release.
bricks ctor deploy
Compile the project and release a new version.
bricks ctor compile
Typecheck and compile the project configuration, then validate it.
bricks ctor simulator
Run the project in the local Simulator window. Extra flags are passed through to the Simulator, for example --skip-typecheck, --clear-cache, --screenshot, --screenshot-delay, --screenshot-width, --screenshot-height, and --screenshot-path.
bricks ctor mcp
Start the project’s bricks-ctor MCP server over STDIO.
Media Flow
Media Flow commands require a workspace with Media Flow enabled.
bricks media boxes
List all Media Flow boxes.
bricks media box <id>
Show Media Flow box details.
bricks media files <boxId>
List files in a Media Flow box.
bricks media file <id>
Show file details.
bricks media upload <boxId> <files...>
Upload one or more files to a Media Flow box.
Activity Log
Activity Log commands query the Activity Log, available on Business plan workspaces. The time range per query is capped at 30 days.
bricks al as a shorter alias for bricks activity-log.
bricks activity-log events
Query activity log events across all event types.
bricks activity-log screenshots
List screenshot timestamps captured from a device.
bricks activity-log screenshot
Download a single screenshot image for a device at a specific timestamp.
BRICKS Buttress (bricks buttress)
Pair a BRICKS Buttress server with the current workspace, inspect bindings, mint long-lived access tokens, and wire an agent to a server’s local functions. Also available as bricks butr.
bricks buttress bind
Pair the local Buttress server with the workspace of the active CLI profile and write the server’s state.json. Restart the Buttress server after binding for the change to take effect.
bricks buttress unbind
Remove the binding from the workspace and delete the local state.json.
bricks buttress status
Show the local state.json and the workspace-side list of bound servers.
bricks buttress issue-token
Mint a long-lived workspace access token for headless callers (CI scripts, CTOR agents, ACP bridges).
bricks buttress scan
Scan the LAN for BRICKS Buttress servers via UDP and verify each one over HTTP /buttress/info. Lists every reachable server (bound or unbound) with version, auth state, bound workspace, and per-generator hardware caps. Servers whose workspace matches the active CLI profile are highlighted.
This command does not mint a token. Run bricks buttress issue-token afterwards if you need to connect to a bound server.
bricks buttress mcp-config
Print — or write — the .mcp.json entry for a server’s local functions MCP endpoint. Without --url it scans the LAN, prefers a server that advertises local functions, mints a workspace access token, and merges the entry into .mcp.json alongside your other MCP servers.
Discovery refuses to mint a token for a server that does not report your workspace — an unbound or foreign host is a mismatch, and any machine on the LAN can answer a discovery probe. Pass
--url to target such a server deliberately, or --no-token for an unauthenticated one. A malformed existing .mcp.json is reported rather than overwritten.
Self-update
bricks update-cli
Update the CLI in-place. Auto-detects how the running CLI was installed (npm global, Bun global, or the standalone binary) by inspecting process.execPath and process.argv[1], then runs the matching update command. Falls back to the binary installer (install.sh / install.ps1 from the CDN) when detection is inconclusive or the primary method fails.
Configuration
bricks config show
Display the current CLI configuration.
bricks config endpoint [environment]
Show or change the API endpoint.
Environments: prod (https://display.bricks.tools), beta (https://display-beta.bricks.tools), dev (http://localhost:3001)
Workspace
bricks workspace
Show details about the current workspace. Also available as bricks ws.
Interactive mode
bricks interactive
Launch the terminal UI for browsing and controlling devices, applications, modules, and media. Also available as bricks i.
Controls:
DevTools
bricks devtools scan
Scan the local network for BRICKS DevTools servers. Each device reports its auth state: workspace-jwt (workspace-token auth, shown when the device is bound to a workspace), passcode, locked, or open (older versions).
bricks devtools open <address>
Show information about a DevTools server (name, version, device ID, workspace, protocols, auth). The reported auth state is one of workspace-jwt (workspace-token auth, shown when the device is bound to a workspace), passcode, locked, or open (older versions).
bricks devtools issue-token
Issue or refresh a workspace-scoped DevTools access token for the current profile and save it to the CLI config (~/.bricks-cli/config.json). The token itself is never printed — the command prints the profile, workspace, expiry, and token id.
DevTools commands acquire and refresh this token automatically, so you rarely need to run
issue-token manually.DevTools CDP commands
CDP commands require BRICKS Foundation version 2.24 or later. All CDP commands share the following options:
When a device supports workspace auth and you are signed into its workspace, commands authenticate automatically with a cached token, re-issued on a
403 response.bricks devtools screenshot
Capture a device screenshot via CDP and save it locally.
Brick inspection (bricks devtools brick)
bricks devtools brick tree
Print the brick component tree.
bricks devtools brick query <selector>
Find a brick by CSS selector and show its attributes.
bricks devtools brick query-all <selector>
Find all bricks matching a CSS selector.
bricks devtools brick attributes <nodeId>
Get all attributes of a brick by node ID.
bricks devtools brick box-model <nodeId>
Get dimensions and position (content, padding, border, margin) of a brick.
bricks devtools brick resolve <nodeId>
Resolve a brick to a JavaScript object and show its properties.
bricks devtools brick focus <nodeId>
Focus a brick element.
Input emulation (bricks devtools input)
bricks devtools input tap <x> <y>
Tap/click at the given coordinates.
bricks devtools input type <text>
Insert text into the currently focused element.
bricks devtools input key <key>
Dispatch a key event (e.g., Enter, Escape, Tab).
Network inspection (bricks devtools network)
bricks devtools network list
Capture a snapshot of network activity.
bricks devtools network get <requestId>
Get the response body for a captured network request.
Storage inspection (bricks devtools storage)
bricks devtools storage system persist
Show persistent system storage entries.
bricks devtools storage system memory
Show in-memory system storage entries.
bricks devtools storage data-bank list
List all Data Banks on the device.
bricks devtools storage data-bank get <name> <store>
Query data from a Data Bank store.
bricks devtools storage generator-cache
Show generator cache entries.
Runtime (bricks devtools runtime)
bricks devtools runtime eval <expression>
Evaluate a JavaScript expression on the device.
bricks devtools runtime properties <objectId>
Get properties of a remote JavaScript object by its object ID.
Simulator (bricks devtools simulator)
Inspect and export simulated thermal-printer output from a running CTOR or Config Editor Simulator. Print history is kept in memory — up to 10 prints per printer, cleared on reload.
bricks devtools simulator thermal-printer list
List the captured thermal-printer prints.
bricks devtools simulator thermal-printer print-result -o <file>
Export a captured thermal-printer print to a file.
ACP bridge
bricks desktop-acp-bridge
Connect acpx or other ACP clients to the running CTOR app. The bridge pipes ACP JSON-RPC messages between an ACP client and the desktop app’s Unix socket — over stdio by default, or as a WebSocket server with --ws.
In
--ws mode each WebSocket client gets its own dedicated connection to the ACP Unix socket; one WebSocket text frame equals one JSON-RPC message. The default bind host is 0.0.0.0 because WebSocket mode is intended for LAN exposure (e.g. browser or mobile clients on other machines) — always set --auth-token and only run on trusted networks. Use --host 127.0.0.1 to restrict to localhost.
The desktop app must be running with ACP enabled in Settings > Agent. See ACP reference for setup details.