agentsclimarketplace

Tauri desktop engineering

Skill meyverick/agy-skills/skills/tauri-desktop-engineering

Engineers secure, cross-platform desktop applications using Tauri. Use when bridging web frontends with native Rust backends via IPC.From its SKILL.md

Install
npx -y skills add meyverick/agy-skills --skill tauri-desktop-engineering

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

2.4 KB, 495 tokens by cl100k_base, as published. Nobody here has run it

Tauri Desktop Engineering

This skill governs the construction of highly secure desktop applications using Tauri (Rust + Web Frontend). It mandates strict Inter-Process Communication (IPC) boundaries and explicit system permission scopes.

When to Use

  • Use when bridging a Web Framework (Svelte/React) to the native OS (Rust).
  • Use when accessing the local filesystem, spawning processes, or creating system trays.
  • NOT for standard, browser-only web applications.

Core Process

Phase 1: IPC Security

  • The web frontend must be treated as completely untrusted.
  • Never pass raw system commands or SQL queries from the frontend to the Rust backend.
  • Define explicit Rust Commands (#[tauri::command]) that perform single, validated actions.

Phase 2: Allowlist Scoping

  • Tauri v2 uses a strict capability system. Never use wildcard permissions (fs:read-all).
  • Explicitly scope capabilities in the tauri.conf.json or capabilities folder to only allow access to necessary directories (e.g., $APPDATA).

Phase 3: The Rust Backend

  • Treat the Rust core exactly like a remote server. Validate all arguments received from the frontend.
  • Handle state using Tauri's managed state (app_handle.state::<MyState>()), wrapped in Mutex or RwLock for thread safety.

Common Rationalizations

RationalizationReality
"I'll let the frontend send the exact file path it wants to delete."This is a path traversal vulnerability. The frontend should send an ID, and the Rust backend resolves the path safely.
"I'll just enable all filesystem permissions to avoid headaches."Enabling **/* filesystem access defeats Tauri's sandbox, turning any XSS vulnerability into a full system compromise.

Red Flags

  • Tauri Commands accepting raw shell scripts or SQL queries from the JS client.
  • Wildcard * capabilities defined in the Tauri configuration.

Verification

Before concluding the Tauri architecture:

  • Tauri capabilities are strictly scoped to the exact APIs and directories needed.
  • Frontend-to-Backend IPC calls pass structured data, never raw system instructions.
  • Rust Commands heavily validate all input before executing OS-level tasks.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.