explaingit

johunsang/tauri-dev-screen-cli

Analysis updated 2026-06-24

26JavaScriptAudience · developerComplexity · 2/5LicenseSetup · moderate

TLDR

Node.js CLI that talks to a tauri-plugin-mcp-bridge WebSocket to screenshot, snapshot the DOM, run JavaScript, and drive a running Tauri desktop app from shell scripts, CI jobs, or AI agents.

Mindmap

mindmap
  root((tauri-dev-screen-cli))
    Inputs
      WebSocket on port 9223
      CSS selectors
      JavaScript snippets
    Outputs
      PNG screenshots
      DOM text snapshot
      status.json
      summary.json
    Use Cases
      AI agent verification
      CI smoke checks
      Local bug reports
    Tech Stack
      Node.js
      Tauri
      WebSocket
      Rust bridge
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Let an AI coding agent confirm a Tauri app actually renders

USE CASE 2

Attach screenshot and DOM snapshot artifacts to a CI pull request check

USE CASE 3

Click buttons or type into a running Tauri dev window from a shell script

USE CASE 4

Capture a four-file bug report folder when a desktop bug repros locally

What is it built with?

Node.jsTauriWebSocketRust

How does it compare?

johunsang/tauri-dev-screen-cliemirsametguzel/escape-from-mzjoeseesun/qiaomu-suno-master
Stars262727
LanguageJavaScriptJavaScriptJavaScript
Setup difficultymoderateeasymoderate
Complexity2/52/52/5
Audiencedevelopergeneralvibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires adding the tauri-plugin-mcp-bridge Rust crate to the Tauri app and only pointing the CLI at trusted local apps since the bridge runs arbitrary JS.

MIT license, free to use, modify, and ship with attribution.

In plain English

This is a small Node.js command-line program for inspecting and poking at a running Tauri desktop application during development. Tauri is a framework for building desktop apps that wrap a web page inside a native window, similar to Electron but lighter. When such an app is under development, looking at the actual native window from outside the app is awkward, because browser test tools cannot reach into it. This CLI fills that gap. It works by connecting to a WebSocket exposed by a separate Rust crate called tauri-plugin-mcp-bridge, which the developer adds to their Tauri project. The bridge usually listens on local port 9223. Once it is running, the CLI can take a PNG screenshot of the actual rendered window, save a compact text snapshot of the page's DOM, run arbitrary JavaScript inside the WebView, click a CSS selector, type into an input, fire a keyboard event, or resize the window. The README frames the audience as AI coding agents and CI pipelines that need proof a desktop app actually renders and behaves. An agent can call tauri-dev-screen status to confirm the window is up, tauri-dev-screen screenshot to capture an image, tauri-dev-screen snapshot to dump the DOM as readable text, and tauri-dev-screen js to ask a question like how many buttons are on screen. The artifacts can then be attached to a pull request check or stored as a local bug report. A running default check command, used with no subcommand, drops four files into a .tauri-dev-screen folder: status.json with app and window metadata, screenshot.png, dom-snapshot.txt, and a summary.json. Commands accept flags for host, port, window name, output folder, file path, and timeout, and the same values can be set with environment variables like TAURI_DEV_HOST and TAURI_DEV_PORT. The selling point is that this is just a CLI. There is no MCP stdio server to register, no editor integration to set up, and no extra runtime to keep alive. Any shell script or CI job can drive it. Installation is a single npm install -g from the GitHub source, or npm link from a clone. The README adds an explicit security caution: the bridge can run arbitrary JavaScript inside the WebView, so it should only be pointed at a trusted local development app and never exposed to untrusted networks.

Copy-paste prompts

Prompt 1
Add tauri-dev-screen-cli to my existing Tauri project and show me the exact tauri-plugin-mcp-bridge wiring in Rust
Prompt 2
Write a CI job that runs tauri-dev-screen-cli after build and uploads the .tauri-dev-screen folder as artifacts
Prompt 3
Show me a tauri-dev-screen js command that counts the visible buttons and fails the script if there are zero
Prompt 4
Script a smoke test with tauri-dev-screen-cli that clicks a login button, types credentials, and screenshots the result
Prompt 5
Compare tauri-dev-screen-cli to a full MCP stdio server setup and explain when each one is the right tool

Frequently asked questions

What is tauri-dev-screen-cli?

Node.js CLI that talks to a tauri-plugin-mcp-bridge WebSocket to screenshot, snapshot the DOM, run JavaScript, and drive a running Tauri desktop app from shell scripts, CI jobs, or AI agents.

What language is tauri-dev-screen-cli written in?

Mainly JavaScript. The stack also includes Node.js, Tauri, WebSocket.

What license does tauri-dev-screen-cli use?

MIT license, free to use, modify, and ship with attribution.

How hard is tauri-dev-screen-cli to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is tauri-dev-screen-cli for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.