tauri
Tauriを使って、Web技術を使いながらもChromiumを同梱せず、Rustで高速かつ安全なデスクトップアプリやモバイルアプリを開発し、OS標準のWeb表示機能を利用することで軽量化を実現するSkill。
📜 元の英語説明(参考)
Assists with building lightweight cross-platform desktop (and mobile) applications using Tauri. Use when creating small, fast, secure apps with a web frontend and Rust backend that use the system webview instead of bundling Chromium. Trigger words: tauri, rust desktop, system webview, tauri commands, tauri plugins.
🇯🇵 日本人クリエイター向け解説
Tauriを使って、Web技術を使いながらもChromiumを同梱せず、Rustで高速かつ安全なデスクトップアプリやモバイルアプリを開発し、OS標準のWeb表示機能を利用することで軽量化を実現するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o tauri.zip https://jpskill.com/download/15456.zip && unzip -o tauri.zip && rm tauri.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/15456.zip -OutFile "$d\tauri.zip"; Expand-Archive "$d\tauri.zip" -DestinationPath $d -Force; ri "$d\tauri.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
tauri.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
tauriフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
Tauri
概要
Tauri は、フロントエンドに任意の Web フレームワーク、バックエンドに Rust を使用して、クロスプラットフォームのデスクトップおよびモバイルアプリケーションを構築するためのフレームワークです。Tauri は、Chromium をバンドルする代わりにシステムの Webview を使用することで、10MB 未満のバイナリを生成し、30〜80MB のメモリ使用量で、機能ベースのセキュリティ、タイプセーフな IPC コマンド、およびネイティブ API のためのプラグインエコシステムを備えています。
手順
- アーキテクチャをセットアップする際は、システムの Webview でレンダリングされる任意の Web フレームワーク(React、Vue、Svelte、Solid)で UI を構築し、Rust バックエンドコマンドでシステムアクセスと高負荷な計算を実装します。
- IPC を実装する際は、リクエスト-レスポンスパターン用に
#[tauri::command]を使用して Rust 関数を定義し(JS からinvoke()を介して呼び出されます)、バックエンドからフロントエンドへのプッシュ型通信にはイベントを使用します。 - ネイティブ API にアクセスする際は、Tauri プラグイン(
@tauri-apps/plugin-fs、@tauri-apps/plugin-dialog、@tauri-apps/plugin-shell、@tauri-apps/plugin-notification)を使用し、capabilities/ディレクトリで許可される機能を定義します。 - セキュリティを管理する際は、フロントエンドがアクセスできる API を制限するために機能ベースの権限を定義し、CSP ヘッダーを設定し、サンドボックス化された環境のために分離パターンを使用します。
- 配布用にビルドする際は、
cargo tauri buildを使用して、コード署名と公証を備えたプラットフォーム固有のインストーラー(Windows 用の NSIS/MSI、macOS 用の DMG、Linux 用の AppImage/deb)を生成します。 - 自動アップデートを実装する際は、GitHub Releases またはカスタムサーバーで
@tauri-apps/plugin-updaterを使用し、改ざんを防ぐために署名検証を行います。
例
例 1:暗号化されたローカルストレージを備えたノートアプリを構築する
ユーザーリクエスト: 「ローカルファイルストレージと暗号化を備えた Tauri ノートアプリを作成してください」
アクション:
- Tauri プロジェクトスキャフォールディングで Svelte フロントエンドをセットアップします
aes-gcmクレートを使用して、ノートファイルの読み取り、書き込み、および暗号化のための Rust コマンドを実装します- アプリ設定には
@tauri-apps/plugin-storeを、ファイルダイアログには@tauri-apps/plugin-dialogを使用します - 必要なファイルシステムパスのみを許可するように機能権限を構成します
出力: 暗号化されたローカルストレージとネイティブファイルダイアログを備えた、10MB 未満の軽量ノートアプリ。
例 2:システム監視ダッシュボードを構築する
ユーザーリクエスト: 「CPU、メモリ、およびディスクの使用状況をリアルタイムで表示するデスクトップアプリを作成してください」
アクション:
sysinfoクレートを使用して、システムメトリックを収集するための Rust コマンドを定義します- Tauri イベントを使用して、メトリックの更新をバックエンドからフロントエンドに毎秒プッシュします
- CPU、メモリ、およびディスクの使用状況を表示するリアルタイムチャートを備えた React ダッシュボードを構築します
@tauri-apps/plugin-trayを使用して、クイックビューメニューを備えたシステムトレイアイコンを追加します
出力: トレイアイコンを備えたリアルタイムシステムモニターで、50MB 未満のメモリを使用します。
ガイドライン
- リクエスト-レスポンスパターンにはコマンドを使用し、プッシュ通知にはイベントを使用します。これらを混在させないでください。
- 最小特権の原則に従い、
capabilities/で許可されるすべての API を定義します。 - Rust はスレッドセーフを強制するため、共有の可変状態には
tauri::State<Mutex<T>>を使用します。 - アプリのアップデート後もデータが保持されるため、永続的なデータには
localStorageよりも@tauri-apps/plugin-storeを使用します。 - Rust でエラーを
Result<T, String>で処理して、エラーメッセージが JS で拒否された Promise として表示されるようにします。 - Tauri は任意の Web フレームワークで動作するため、フロントエンドをフレームワークに依存しないようにします。
- 本番環境アプリでは、署名検証付きの自動アップデート機能を使用します。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Tauri
Overview
Tauri is a framework for building cross-platform desktop and mobile applications using any web framework for the frontend and Rust for the backend. By using the system webview instead of bundling Chromium, Tauri produces binaries under 10MB with 30-80MB memory usage, featuring capability-based security, type-safe IPC commands, and a plugin ecosystem for native APIs.
Instructions
- When setting up the architecture, build the UI with any web framework (React, Vue, Svelte, Solid) rendered in the system webview, and implement system access and heavy computation in Rust backend commands.
- When implementing IPC, define Rust functions with
#[tauri::command]for request-response patterns (called viainvoke()from JS), and use events for push-style communication from backend to frontend. - When accessing native APIs, use Tauri plugins (
@tauri-apps/plugin-fs,@tauri-apps/plugin-dialog,@tauri-apps/plugin-shell,@tauri-apps/plugin-notification) and define allowed capabilities in thecapabilities/directory. - When managing security, define capability-based permissions to restrict which APIs the frontend can access, set CSP headers, and use the isolation pattern for sandboxed environments.
- When building for distribution, use
cargo tauri buildto produce platform-specific installers (NSIS/MSI for Windows, DMG for macOS, AppImage/deb for Linux) with code signing and notarization. - When implementing auto-updates, use
@tauri-apps/plugin-updaterwith GitHub Releases or a custom server, with signature verification to prevent tampering.
Examples
Example 1: Build a note-taking app with encrypted local storage
User request: "Create a Tauri note-taking app with local file storage and encryption"
Actions:
- Set up a Svelte frontend with the Tauri project scaffolding
- Implement Rust commands for reading, writing, and encrypting note files using the
aes-gcmcrate - Use
@tauri-apps/plugin-storefor app settings and@tauri-apps/plugin-dialogfor file dialogs - Configure capability permissions to allow only the required file system paths
Output: A lightweight note-taking app with encrypted local storage and native file dialogs, under 10MB.
Example 2: Build a system monitoring dashboard
User request: "Create a desktop app that shows CPU, memory, and disk usage in real time"
Actions:
- Define Rust commands using the
sysinfocrate to collect system metrics - Use Tauri events to push metric updates from backend to frontend every second
- Build a React dashboard with real-time charts displaying CPU, memory, and disk usage
- Add system tray icon with quick-view menu using
@tauri-apps/plugin-tray
Output: A real-time system monitor with tray icon, using under 50MB of memory.
Guidelines
- Use commands for request-response patterns and events for push notifications; do not mix them.
- Define all allowed APIs in
capabilities/following the principle of least privilege. - Use
tauri::State<Mutex<T>>for shared mutable state since Rust enforces thread safety. - Use
@tauri-apps/plugin-storeoverlocalStoragefor persistent data since it survives app updates. - Handle errors in Rust with
Result<T, String>so error messages surface as rejected promises in JS. - Keep the frontend framework-agnostic since Tauri works with any web framework.
- Use the auto-updater with signature verification for production apps.