Skip to content
Development
Command

/devtool

Drive the Zedra Android UI from the agent via the in-app GPUI devtool HTTP server.

From plugin
zedra
2508 skills8 commands
$ npx -y skills add deltaqdev/zedra --agent claude-code

Command definition

devtool.md

Drive the Zedra Android UI from the agent via the in-app GPUI devtool HTTP server.

Use this when you need to reproduce a tap-driven flow (drawer open/close, navigation, button activation) without asking the user to operate the phone. Pairs well with `/perf-debug` and `/android-log` for end-to-end capture.

One-time per session

./scripts/devtool.sh bridge

`adb forward tcp:9777 tcp:9777` + a `/ping` check. Re-run if the device reconnects. Requires the app built with `--devtool` (debug only):

./scripts/run-android.sh --debug --target arm64-v8a --devtool

Driving the UI

./scripts/devtool.sh list                 # leaf-only element table for the current frame
./scripts/devtool.sh tap <leaf>           # synthetic tap by ElementId (bare leaf or full path)
./scripts/devtool.sh tap-xy <x> <y>       # raw logical-pixel coords
./scripts/devtool.sh elements             # raw JSON if you need instance ids or full paths
./scripts/devtool.sh ping                 # liveness only

After each tap, wait ~0.5–1 s before re-querying so the next frame reflects the new state.

Typical loop

1. `scripts/devtool.sh bridge` 2. `scripts/devtool.sh list` — discover targets. 3. `scripts/devtool.sh tap ws-card-0` — navigate. 4. Wait, list again, tap the next target. 5. While iterating, grab logs (`adb logcat`, `scripts/android-perf-debug.py`) to confirm behaviour.

Notes

  • Only elements with `.id("…")` are tappable by name; untagged regions need `tap-xy`.
  • If multiple entries share a leaf, the smallest-area (topmost) wins. Pass the full path to disambiguate.
  • Single-window assumption; first registered window receives all taps.
  • Full surface in `docs/DEVTOOL.md`.
Read more
@tanlethanh
Ships withzedra

An experimental remote code editor on mobile with GPU-accelerated rendering powered by Zed's GPUI, P2P tunnel over QUIC/UDP by Iroh.

Stars on GitHub

Momentum

stars in total
250
Star history of tanlethanh/zedra on GitHub, a chart by star-history.com

Other commands on zedra.

android-build

android-build

Command

Build the Rust libraries and install the APK to the connected Android device. Does NOT launch the app or monitor logs.

@tanlethanh@tanlethanhInstall Command
ios-dev

ios-dev

Command

Build, install, launch, and monitor the iOS app on a connected device.

@tanlethanh@tanlethanhInstall Command
ios-log

ios-log

Command

Stream and analyze logs from a USB-connected iOS device running Zedra.

@tanlethanh@tanlethanhInstall Command
perf-debug

perf-debug

Command

Capture and analyze performance diagnostics from the running Android app.

@tanlethanh@tanlethanhInstall Command

More commands from other plugins.

build
Auto-invoked

build

Command

Implement tasks incrementally — build, test, verify, commit. Add "auto" to run the whole plan in one approved pass.

@addyosmani@addyosmaniInstall Command