tauri-browser
A CLI + Tauri plugin for automating and inspecting Tauri apps. Ref-based element targeting with output designed for LLM consumption.
Install the Skill
Add the Claude Code skill to your project:
Or install globally:
Install the CLI
Setup
Add the plugin to your Tauri app behind a feature flag:
# Cargo.toml
[]
= { = "0.2", = true }
[]
= ["tauri-plugin-debug-bridge"]
// src-tauri/src/lib.rs
app.plugin;
Add the permission to capabilities/default.json:
"debug-bridge:default"
Run your app with the feature enabled:
Authentication
The plugin generates a random auth token on each startup, printed to stdout:
debug-bridge auth token: a1b2c3d4e5f6...
Pass it to the CLI:
# Or per-command:
The /health endpoint does not require auth.
Usage
Architecture
tauri-browser (CLI) ◄──── HTTP/WS ────► tauri-plugin-debug-bridge (in-app)
localhost:9229
The plugin starts a local HTTP+WS server inside your Tauri app. The CLI talks to it. No app code changes needed beyond plugin registration.
Troubleshooting
401 Unauthorized on all requests
Set TAURI_BROWSER_TOKEN to the token printed at app startup. The token changes every time the app restarts.
Eval/invoke times out after 10-30s
The debug-bridge:default permission must be in your capabilities/default.json. Without it, Tauri silently blocks the eval_callback command and results never return.
Console streaming shows nothing
Make sure you're on plugin version 0.2.5+ which includes console_callback in the default permission set. Earlier versions only permitted eval_callback.
Port already in use
Configure a different port in tauri.conf.json:
Then connect with tauri-browser -p 9230 connect.
License
MIT