Full-stack-skills tauri-app-single-instance

Prevent multiple app instances and handle second-launch arguments using the Tauri v2 single-instance plugin. Use when enforcing single-instance behavior, forwarding CLI arguments from a second launch, or focusing the existing window on re-entry.

install
source · Clone the upstream repo
git clone https://github.com/partme-ai/full-stack-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/partme-ai/full-stack-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tauri-skills/tauri-app-single-instance" ~/.claude/skills/partme-ai-full-stack-skills-tauri-app-single-instance && rm -rf "$T"
manifest: skills/tauri-skills/tauri-app-single-instance/SKILL.md
source content

When to use this skill

ALWAYS use this skill when the user mentions:

  • Preventing multiple app instances from running
  • Handling second-launch arguments or deep links
  • Focusing the existing window when re-launched

Trigger phrases include:

  • "single instance", "prevent duplicate", "second launch", "one instance only"

How to use this skill

  1. Install the single-instance plugin:
    cargo add tauri-plugin-single-instance
    
  2. Register the plugin in your Tauri builder with a callback:
    tauri::Builder::default()
        .plugin(tauri_plugin_single_instance::init(|app, args, _cwd| {
            // Focus the main window when a second instance is launched
            if let Some(window) = app.get_webview_window("main") {
                window.set_focus().unwrap();
            }
            // Forward args to the running instance
            println!("Second launch args: {:?}", args);
        }))
    
  3. The callback receives: the app handle, command-line arguments, and the working directory from the second launch
  4. Combine with deep-linking to route
    myapp://
    URLs from the second instance to the existing window
  5. Combine with CLI plugin to forward parsed arguments to the running app
  6. The second instance exits automatically after the callback runs

Outputs

  • Single-instance plugin setup with window focus callback
  • Second-launch argument forwarding pattern
  • Integration with deep-linking and CLI plugins

References

Keywords

tauri single instance, prevent duplicate, second launch, window focus, args