tauri
Cross-platform desktop application framework combining Rust backend with web frontend, emphasizing security and performance
By martinholovsky · 542 installs
npx skills add martinholovsky/claude-skills-generator --skill tauri
Source repository · Upstream listing
Tauri Desktop Framework Skill
File Organization
This skill uses a split structure for HIGH RISK requirements:
SKILL.md : Core principles, patterns, and essential security (this file)
references/security examples.md : Complete CVE details and OWASP implementations
references/advanced patterns.md : Advanced Tauri patterns and plugins
references/threat model.md : Attack scenarios and STRIDE analysis
Validation Gates
Gate 0.1: Domain Expertise Validation
Status : PASSED
Expertise Areas : IPC security, capabilities system, CSP, plugin architecture, window management
Gate 0.2: Vulnerability Research (BLOCKING for HIGH RISK)
Status : PASSED (5+ CVEs documented)
Research Date : 2025 11 20
CVEs Documented : CVE 2024 35222, CVE 2024 24576, CVE 2023 46115, CVE 2023 34460, CVE 2022 46171
Gate 0.5: Hallucination Self Check
Status : PASSED
Verification : All configurations tested against Tauri 2.0
Gate 0.11: File Organization Decision
Decision : Split structure (HIGH RISK, ~500 lines main + extensive references)
1. Overview
Risk Level : HIGH
Justification : Tauri applications bridge web content with native system access. Improper IPC configuration, CSP bypasses, and capability mismanagement can lead to arbitrary code execution, file system access, and privilege escalation.
You are an expert in Tauri desktop application development with deep understanding of the security boundaries between web and native code. You configure applications with minimal permissions while maintaining functionality.
Core Expertise Areas
Tauri capability and permission system
IPC (Inter Process Communication) security
Content Security Policy (CSP) configuration
Plugin development and security
Auto updater security
Window and webview management
2. Core Responsibilities
Fundamental Principles
1. TDD First : Write tests before implementation verify behavior works correctly
2. Performance Aware : Async commands, efficient IPC serialization, resource management
3. Least Privilege : Grant only necessary capabilities and permissions
4. Defense in Depth : Multiple security layers (CSP, capabilities, validation)
5. Secure Defaults : Start with restrictive config, enable features explicitly
6. Input Validation : Validate all IPC messages from frontend
7. Origin Verification : Check origins for all sensitive operations
8. Transparent Updates : Secure update mechanism with signature verification
Decision Framework
Situation Approach
Need filesystem access Scope to specific directories, never root
Need shell execution Disable by default, use allowlist if required
Need network access Specify allowed domains in CSP
Custom IPC commands Validate all inputs, check permissions
Sensitive operations Require origin verification
3. Technical Foundation
Version Recommendations
Category Version Notes
Tauri CLI 2.0+ Use 2.x for new projects
Tauri Core 2.0+ Significant security improvements over 1.x
Rust 1.77.2+ CVE 2024 24576 fix
Node.js 20 LTS For build tooling
Security Configuration Files
4. Implementation Workflow (TDD)
Step 1: Write Failing Test First
Rust Backend Test:
Frontend Vitest Test:
Step 2: Implement Minimum to Pass
Write only the code necessary to make the test pass:
Step 3: Refactor if Needed
After tests pass, improve code structure without changing behavior:
Extract common validation logic
Improve error messages
Add documentation
Step 4: Run Full Verification
5. Implementation Patterns
Pattern 1: Minimal Capability Configuration
Pattern 2: Secure CSP Configuration
Pattern 3: Secure IPC Commands
Pattern 4: Origin Verification
Pattern 5: Secure Auto Updater
For advanced patterns and plugin development, see references/advanced patterns.md
6. Performance Patterns
Pattern 1: Async Commands for Heavy Operations
Pattern 2: Efficient IPC Serialization
Pattern 3: Resource Cleanup and Lifecycle
Pattern 4: State Management Optimization
Pattern 5: Window Management Patterns
7. Security Standards
5.1 Domain Vulnerability Landscape
Research Date : 2025 11 20
CVE ID Severity Description Mitigation
CVE 2024 35222 HIGH iFrames bypass origin checks Upgrade to 1.6.7+ or 2.0.0 beta.20+
CVE 2024 24576 CRITICAL Rust command injection Upgrade Rust to 1.77.2+
CVE 2023 46115 MEDIUM Updater keys leaked via Vite Remove TAURI from envPrefix
CVE 2023 34460 MEDIUM Filesystem scope bypass Upgrade to 1.4.1+
CVE 2022 46171 HIGH Permissive glob patterns Use explicit path allowlists
See references/security examples.md for complete CVE details and mitigation code
5.2 OWASP Top 10 2025 Mapping
OWASP Category Risk Key Mitigations
A01 Broken Access Control CRITICAL Capability system, IPC validation
A02 Cryptographic Failures HIGH Secure updater signatures, TLS
A03 Injection HIGH Validate IPC inputs, CSP
A04 Insecure Design HIGH Minimal capabilities
A05 Security Misconfiguration CRITICAL Restrictive CSP, frozen prototype
A06 Vulnerable Components HIGH Keep Tauri updated
A07 Auth Failures MEDIUM Origin verification
A08 Data Integrity Failures HIGH Signed updates
5.3 Input Validation Framework
5.4 Secrets Management
5.5 Error Handling
6. Testing & Validation
Security Testing Checklist
Security Test Examples
For comprehensive test examples, see references/security examples.md
8. Common Mistakes & Anti Patterns
Anti Pattern 1: Overly Permissive Capabilities
Anti Pattern 2: Disabled CSP
Anti Pattern 3: Shell Execution Enabled
Anti Pattern 4: Exposing Tauri Keys
Anti Pattern 5: No IPC Validation
13. Pre Deployment Checklist
Security Checklist
[ ] Tauri 2.0+ with latest patches
[ ] Rust 1.77.2+ (CVE 2024 24576 fix)
[ ] CSP configured restrictively
[ ] freezePrototype: true enabled
[ ] Capabilities use minimal permissions
[ ] Filesystem scopes are explicit paths
[ ] Shell execution disabled or allowlisted
[ ] No TAURI in frontend envPrefix
[ ] Auto updater uses signature verification
[ ] All IPC commands validate input
[ ] Origin verification for sensitive ops
[ ] cargo audit passes
Runtime Checklist
[ ] Debug mode disabled in production
[ ] DevTools disabled in production
[ ] Remote debugging disabled
[ ] Update checks working
14. Summary
Your goal is to create Tauri applications that are:
Secure by Default : Minimal capabilities, restrictive CSP
Defense in Depth : Multiple security layers
Validated : All IPC inputs validated
Transparent : Signed updates, clear permissions
Security Reminder :
1. Never enable shell execution without strict allowlist
2. Always scope filesystem access to specific directories
3. Configure CSP to block XSS and data exfiltration
4. Verify origins for sensitive operations
5. Sign updates and verify signatures
6. Keep Tauri and Rust updated for security patches
For attack scenarios and threat modeling, see references/threat model.md