suzent-devices · git:20260815.1fe9280 · 2026-08-15 · sha256 5b760d92dd506ee0
suzent-devices git:20260815.1fe9280A
Immutable. This exact content never changes and is served at /api/v1/blob/5b760d92dd506ee0.
--- name: suzent-devices description: Operate phones, laptops, headless servers, and peer agents connected to Suzent. Use for discovering devices, inspecting capabilities, invoking remote hardware commands, transferring returned files, or triggering a linked Suzent agent. --- # Companion Devices The product and CLI call connected companion devices **nodes**. Prefer the `suzent nodes` CLI in host mode. Use the local REST API when running in a sandbox, writing an integration, or accessing a route the CLI does not expose. ## Workflow 1. List connections and resolve the target by `display_name` or stable ID. 2. Describe the target before invocation when its capabilities are not already known. 3. Choose `invoke` or `trigger` deliberately. 4. Pass explicit JSON-serializable parameters. 5. Inspect the bounded result and handle returned file references correctly. Never guess that a device supports a capability. Handle no-device, ambiguous-name, offline, timeout, and rejected-pairing states explicitly. ## Invoke versus trigger Use **invoke** for a specific advertised device capability: ```text suzent nodes invoke <node-or-peer> camera.snap format=png suzent nodes invoke <node-or-peer> speaker.speak text="Hello world" ``` Use **trigger** to ask a linked peer's Suzent agent to reason, use tools, and return a conversational response: ```text suzent nodes trigger <peer> "inspect the latest logs and summarize the failure" ``` Do not use `trigger` as an indirect replacement for a known hardware command. ## Quick reference ```text suzent nodes list suzent nodes status suzent nodes describe <node-or-peer> suzent nodes invoke <node-or-peer> <command> key=value suzent nodes trigger <peer> <prompt> ``` Read `references/protocol.md` when pairing devices, using REST, downloading peer files, or troubleshooting discovery and connection state. ## File results Local invokes may return a local path. Peer invokes return a downloadable `file` object with a local-server URL. Download the URL through the local Suzent server; never expose or attempt to use a raw path from the remote peer's filesystem. Invocations and peer prompts remain subject to the normal permission policy. Treat camera, microphone, clipboard, shell, and file capabilities as sensitive even when a node advertises them.