メインコンテンツへスキップ

概要

ShannonはTauriで構築されたネイティブデスクトップアプリケーションを提供し、リアルタイムのタスク監視と管理を実現します。デスクトップアプリは、Shannonサービスと対話するための合理化されたインターフェースを提供します。
デスクトップアプリケーションは以前のWebダッシュボードに代わり、パフォーマンスの向上とネイティブOS統合を提供します。

機能

  • ライブタスクストリーミング - アクティブなタスクのリアルタイムSSEイベントフィード
  • タスク管理 - タスクの送信、監視、キャンセル
  • セッション履歴 - 以前の会話の閲覧と継続
  • マルチプラットフォーム - macOS (Universal)、Windows、Linux、iOS

サポートされているプラットフォーム

プラットフォームアーキテクチャフォーマット
macOSUniversal (Intel + Apple Silicon)DMG
Windowsx86_64MSI
Linuxx86_64AppImage/DEB
iOSARM64App Bundle

インストール

macOS

  1. Releasesページから最新のDMGをダウンロード
  2. DMGファイルを開く
  3. ShannonをApplicationsフォルダにドラッグ
  4. Applicationsから起動
# またはコマンドラインからインストール
open shannon-desktop_0.1.0_universal.dmg

ソースからビルド

1

前提条件

必要なツールがインストールされていることを確認:
  • Node.js 18+
  • Rust 1.70+
  • Xcode Command Line Tools (macOS)
# ユニバーサルバイナリ用のRustターゲットをインストール(macOS)
rustup target add aarch64-apple-darwin x86_64-apple-darwin
2

クローンとインストール

git clone https://github.com/Kocoro-lab/Shannon.git
cd Shannon/desktop
npm install
3

APIエンドポイントの設定

cp .env.local.example .env.local
# .env.localを編集してShannon API URLを設定
# デフォルト: http://localhost:8080
4

開発モード

npm run tauri:dev
5

本番ビルド

npm run tauri:build
出力: src-tauri/target/release/bundle/dmg/shannon-desktop_0.1.0_universal.dmg

設定

APIエンドポイント

環境変数でShannon APIエンドポイントを設定:
# .env.local
NEXT_PUBLIC_API_URL=http://localhost:8080
本番環境デプロイの場合:
NEXT_PUBLIC_API_URL=https://api.your-domain.com

使用方法

メインインターフェース

デスクトップアプリは以下を提供します:
  1. チャットインターフェース - クエリの送信とレスポンスの表示
  2. Runsビュー - アクティブおよび完了したタスクの監視
  3. Run Details - 特定のタスクの完全なイベントストリームを表示
  4. Settings - APIエンドポイントと設定の構成

タスクの送信

  1. アプリを開く
  2. チャット入力にクエリを入力
  3. EnterキーまたはSendをクリック
  4. タスクが実行される際のリアルタイムイベントを監視

タスクの監視

Runsページに移動して以下を確認:
  • ライブステータス付きのアクティブなタスク
  • 結果付きの完了したタスク
  • エラー詳細付きの失敗したタスク
任意のRunをクリックして完全なイベントストリームを表示します。

トラブルシューティング

ビルド失敗: Module Not Found

npm install @tauri-apps/plugin-shell

ユニバーサルバイナリの要件(macOS)

両方のRustターゲットがインストールされていることを確認:
rustup target list --installed
# 以下が表示されるはず:
# aarch64-apple-darwin
# x86_64-apple-darwin

接続の問題

  1. Shannonサービスが実行中であることを確認
  2. .env.localのAPI URLを確認
  3. ポート8080をブロックするファイアウォールがないことを確認

クリーンリビルド

rm -rf .next out src-tauri/target/release/bundle
npm run tauri:build

技術スタック

コンポーネント技術
FrameworkNext.js 16 (Turbopack)
RuntimeTauri 2.x
UIShadcn/ui + Tailwind CSS
StateRedux Toolkit
BackendShannon Gateway API

次のステップ