embedding-tauri-sidecars

Embeds and executes external binaries as sidecars in Tauri applications.

Updated Jun 7, 2026
One-click install
npx skills add https://github.com/dt418/better-shot-x --skill embedding-tauri-sidecars-dt418
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: embedding-tauri-sidecars
Source: https://github.com/dt418/better-shot-x/tree/main/.agents/skills/embedding-tauri-sidecars
Command: npx skills add https://github.com/dt418/better-shot-x --skill embedding-tauri-sidecars-dt418

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires tauri-plugin-shell, @tauri-apps/plugin-shell.

What problem does it solve? Tauri applications often need functionality provided by external executables such as Python CLIs, Go binaries, or background API servers, but bundling and running these binaries across platforms requires correct configuration, naming conventions, and process management that are easy to get wrong. ## Core Features & Use Cases - Sidecar Configuration: Register external binaries in tauri.conf.json via bundle.externalBin and handle cross-platform target-triple naming for Linux, macOS, and Windows. - Rust and JavaScript Execution: Spawn sidecars from Rust commands using tauri-plugin-shell or from the frontend with @tauri-apps/plugin-shell, including arguments, streaming output, and lifecycle management. - Security and Permissions: Configure capability-based shell permissions with argument validators to restrict how sidecars can be invoked. - Use Case: Package a PyInstaller-compiled Python data processor with your Tauri app, then invoke it from a React frontend button click and stream its output back to the UI. ## Quick Start Show me how to bundle a Python binary as a sidecar in my Tauri app and run it from the frontend with arguments.

Frequently Asked Questions about embedding-tauri-sidecars

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I bundle an external binary with a Tauri app?

Register the binary path in tauri.conf.json under bundle.externalBin, then place platform-specific builds in src-tauri/binaries with target-triple suffixes. Tauri resolves the correct variant automatically at build time.

How to run a sidecar process from JavaScript in Tauri?

Use Command.sidecar from @tauri-apps/plugin-shell, passing the binary name and optional arguments, then call execute or spawn. You must first grant shell:allow-execute permission with sidecar set to true in your capabilities file.

What naming convention do Tauri sidecar binaries require?

Each binary must include the Rust target triple suffix, such as my-sidecar-x86_64-unknown-linux-gnu for Linux or my-sidecar-x86_64-pc-windows-msvc.exe for Windows. Run rustc --print host-tuple to find your platform's triple.

Can Tauri sidecars run as long-lived background processes?

Yes, use spawn instead of output or execute to start a persistent process, then listen to stdout and stderr events. Store the returned child handle or pid so you can kill the process when the app exits.

Why does my Tauri sidecar fail to execute in production builds?

Common causes include missing target-triple suffixes on binary filenames, absent shell:allow-execute capability entries, or non-executable file permissions on Linux. Verify the binaries directory structure and capabilities configuration match the documented requirements.