← Dick Tracy Watch

Agent Command setup

Phone chat works without a computer. Use the optional host for tasks that run through your signed-in Codex CLI, with the workspaces, skills and MCP tools you select.

This guide matches Android 0.11.0-agent-dev (13), watch 1.9.0 and host 0.1.1. The APK is a debug-signed preview. Install the Android update first and retain your existing Pebble pairing.

Skills and MCP on the phone

  1. Open Skills. Import a SKILL.md, ZIP, pasted instructions or an HTTPS file. Review the instructions and hash. Referenced text is included; imported scripts never execute on Android.
  2. Open Connections. Add an HTTPS MCP server, select Streamable HTTP or legacy SSE, and supply the authentication it needs. Test connection discovers tools, resources and prompts without calling a model or running a tool.
  3. Select the tools to make available. In Profiles, combine a skill and connection with your answer setup. Pin up to five profiles to the watch.
  4. For automatic calls, enable Settings → Tools → Enable tools and use a supported model. Review each new permission request. Manual Run and attach result works with any answer source.

Changing a connection clears its old credentials and catalog. Test it again. Revoke saved grants when you no longer want a profile to use them. Third-party MCP authentication and model compatibility need checking against your own service.

Install the computer host

Use macOS, Linux or WSL2 with Python 3.12+. Download and unpack the source ZIP, then run these commands in its top-level directory. Install uv and Codex CLI 0.160.0 first.

uv sync --project host --python 3.12 --locked
uv run --project host --locked agent-command-host doctor
CODEX_HOME="$HOME/.local/state/agent-command-host/codex" codex login

Choose subscription sign-in. This host rejects API-key accounts and has no model API fallback. Its separate Codex home keeps these tasks apart from your usual CLI history. Installation does not register a service.

Start the host on a free local port:

uv run --project host --locked agent-command-host serve --port 5057

Expose that loopback service over HTTPS using your own reverse proxy or Tailscale Serve. Both phone and computer must be able to reach the same private network. Keep existing proxy routes intact. Do not expose the plain HTTP listener publicly.

Pair and grant a workspace

In another terminal, generate a five-minute code:

uv run --project host --locked agent-command-host pair

On Android, open Connections → Pair a computer. Enter its HTTPS URL and the code. On the computer, list devices:

uv run --project host --locked agent-command-host devices

Create a local profile.json using a dedicated workspace you intend to share:

{"id":"host-default","name":"My workspace","mode":"codex",
 "workspace":"/absolute/granted/workspace","write":false,
 "network":false,"tools":[],"skills":[],
 "activeSeconds":1800,"inputBytes":262144}
uv run --project host --locked agent-command-host configure profiles --device DEVICE_ID profile.json

Replace DEVICE_ID with the paired device’s ID. Refresh the host’s profiles on Android and create a background profile from the permitted host profile. Select it before sending a question. Host skills and MCP connections are configured separately on the computer; phone imports are not copied automatically.

Try a read-only task

Start with disposable text in the granted workspace. Ask the host to read and summarize it. Select a pinned Host profile in the watch’s Agents menu and check the destination before dictating.

Tasks shows progress, results and decisions. Back on the watch leaves work running. Host approvals open on the phone; Cancel task requires confirmation. Disconnect and reconnect, then open the same task and check that it was not run again. Background results do not automatically speak.

Phone-to-host CLI execution, referenced instructions and a controlled MCP approval have been tested. The complete wrist-to-host approval/reconnect path remains a live acceptance check. Speech works on my setup; watch playback remains experimental.

Reference and removal

The source ZIP includes the docs/agent-command.md test guide and docs/agent-command-host.md protocol reference, sample skills, host tests and the dependency lockfile. It is source only, without Git history or credentials.

Stop the host with Ctrl-C. Removing a pairing on the phone removes local access; run agent-command-host revoke DEVICE_ID on the computer to invalidate its token. Uninstalling the phone app does not stop a task already running elsewhere.

Package checksums · MIT license · Source revision 06d5502.