diff --git a/README.md b/README.md index 29ef3af..0f493df 100644 --- a/README.md +++ b/README.md @@ -1,59 +1,26 @@ # TelosDB -ローカル完結型セマンティック検索DB & MCPサーバー +ローカル完結型セマンティック検索基盤 & MCPサーバー --- ## 概要 -TelosDBは、Tauri 2 + Rust + Vanilla JS/HTMLで構成された、SQLite Vector拡張を活用するローカル特化型セマンティック検索基盤です。 -サイドカー(llama-server)による高品質な埋め込み生成、Model Context Protocol (MCP) 準拠のSSEサーバー、そしてガラスモーフィズムを採用したプレミアムなUIを備えています。 +**TelosDB** は、Tauri 2 と Rust を核とした、プライバシー重視のローカル特化型ナレッジベースです。 +SQLite Vector拡張(`sqlite-vec`)を活用し、外部APIを一切介さずに、ローカルLLM(Gemma-3)を用いた高度な意味検索と知識管理を実現します。 -外部APIを一切使用せず、ローカルLLM(Gemma-3)の力を借りて、安全かつ高速な知識検索環境をデスクトップに提供します。 +AIエージェントが自律的に記憶を蓄積・整理するための基盤として設計されており、**Model Context Protocol (MCP)** を通じて、LM Studio や Claude Desktop 等から即座に利用可能です。 --- ## 主な機能 -- **完全な知識管理 (CRUD)**: `add_item_text`, `update_item`, `delete_item` を通じて、AIエージェントが自律的に知識を蓄積・修正・削除可能。 -- **セマンティック検索 (Vector Search)**: `sqlite-vec` + `llama-server` (Gemma-3) による高度な意味検索。 -- **動的次元検知 & 自動同期**: モデル変更時にベクトルの次元数(Gemma-3なら640等)を自動検知し、不足しているベクトルをバックグラウンドで自動生成(ヒーリング)します。 -- **サイドカー自動管理**: `llama-server` の起動・ヘルスチェック・ログ転送をRust側で制御。 -- **MCP SSE サーバー**: LM Studio, Claude Desktop 等の外部ツールからプラグインとして即座に利用可能。 -- **Premium UI**: ガラスモーフィズムを採用した洗練されたデスクトップUX。 -- **常駐モード (Resident Mode)**: システムトレイに常駐し、閉じてもMCPサーバーが待機し続けます。 -- **リアルタイム・アクティビティログ**: MCP経由のツール呼び出しをUI上でリアルタイムに監視可能。 -- **堅牢なロギング**: ローテーション機能付きログ出力。`llama-server` の詳細な内部ログもキャプチャします。 - ---- - -## セットアップ - -### 1. 動作要件 - -- **OS**: Windows 10/11 (x64) -- **Rust**: 1.77.2以上 -- **Node.js / Bun**: 最新のLTS推奨 - -### 2. モデルの配置 - -以下のパスに GGUF モデルファイルを配置してください: -`src-tauri/bin/gemma-3-270m-it-Q4_K_M.gguf` - -### 3. 起動方法 - -```bash -# 依存関係のインストール -bun install - -# 開発モードで実行 -bun run tauri dev -``` - -### 4. 操作方法 - -- **ウィンドウの最小化 / 閉じ**: 「×」ボタンで閉じるとシステムトレイ(画面右下)に格納されます。 -- **右クリックメニュー**: システムトレイのアイコンを右クリックして「終了」を選ぶと、アプリを完全に終了できます。 +- **🧠 セマンティック検索 (Vector Search)**: 意味の近さを考慮した高度な検索。 +- **🤖 MCP SSE サーバー内蔵**: AIエージェント(LM Studio / Claude等)からの自律的な知識操作が可能。 +- **🔄 自動ヒーリング (Self-Healing)**: モデル変更によるベクトル次元数の不一致を自動検知し、バックグラウンドで補完。 +- **🛡️ 完全ローカル・プライバシー**: データ、モデル、推論エンジンのすべてがローカルで完結。 +- **✨ プレミアムなUI/UX**: ガラスモーフィズムとカスタムアニメーションを採用したデスクトップ体験。 +- **📦 常駐管理**: システムトレイ常駐により、MCPサーバーを常にバックグラウンドで待機可能。 --- @@ -61,58 +28,59 @@ ```mermaid graph TD - subgraph "Frontend (Vanilla JS)" - UI[Glassmorphism UI] - SSE_Monitor[SSE Client] + subgraph "Frontend (Webview)" + UI[Premium Glass UI] + SSE[SSE Client Monitor] end - subgraph "Backend (Rust/Tauri)" - Main[Tauri Core] - Axum[Axum MCP Server] - DB[(SQLite + sqlite-vec)] + subgraph "Backend (Rust / Tauri)" + Core[Tauri 2 Core] + Axum[Axum SSE Server] + DB[(SQLite + Vector Ext)] Logger[Rotating Logger] end - subgraph "Sidecar (llama-server)" - Engine[Inference Engine] + subgraph "Sidecar (llama.cpp)" + Server[llama-server] Model[Gemma-3 GGUF] end - UI <-- JSON / SSE --> Axum - Axum <-- SQL/Vector --> DB - Main -- Spawn/Monitor --> Engine - Engine -- Load --> Model - Engine -- Log Stream --> Logger + UI <-- JSON/SSE --> Axum + Axum <-- CRUD/Search --> DB + Core -- Lifecycle Mgmt --> Server + Server -- Inference --> Model + Server -- Log Sync --> Logger ``` --- -## 開発環境のトラブルシューティング +## クイックスタート -### SSH接続エラー (Host Key Mismatch) +### 1. 動作要件 -サーバーの再構築等により `REMOTE HOST IDENTIFICATION HAS CHANGED!` エラーが発生した場合は、以下のコマンドで古いホストキーを削除してください。 +- Windows 10/11 (x64) +- Rust 1.77.2+ +- Node.js (Bun 推奨) -```powershell -ssh-keygen -R [ホスト名] +### 2. モデルの準備 + +`src-tauri/bin/gemma-3-270m-it-Q4_K_M.gguf` を配置してください。 + +### 3. ビルドと実行 + +```bash +bun install +bun run tauri dev ``` -例: `ssh-keygen -R server2022` - --- -## 開発者向け情報 +## ディレクトリ構成 -### ログ - -ログファイルは以下に出力されます: - -- 開発時: `src-tauri/logs/telos.log` -- 実行時: `%LOCALAPPDATA%/com.telosdb.app/logs/telos.log` - -### MCP接続設定 - -UI上の「MCP Config」ボタンをクリックすると、LM Studio 等に貼り付け可能な設定 JSON が表示されます。 +- `src/`: フロントエンド(Vanilla JS + Vanilla CSS) +- `src-tauri/src/`: バックエンド(Rust / Tauriコマンド / MCP実装) +- `document/`: 設計書・仕様書(`mermaid`図解付き) +- `journals/`: 作業記録(日付別) ---