@楽曲作りまくりおじさん 楽曲作りまくりおじさん authored 1 day ago
.agent/ rules docs: .agent/rules/documents.md の MD009 警告修正および README.md 清書とジャーナル作成 5 days ago
.copilot chore: migrate MCP config to port (SSE) format 5 days ago
.github Add MCP server with llama.cpp integration and docs 8 days ago
.vscode fix: launch.json修正とF5起動の完成 6 days ago
document feat: add real-time status visibility (connections & db stats) and fix vector search query syntax error 6 days ago
resources/ icons chore: comprehensive project restructuring and cleanup 6 days ago
scripts refactor: ビルド資産を build_assets に集約し src/backend を整理Section内容を簡潔に。Section内容を簡潔に。Section内容を簡潔に。Section内容を簡潔に。 5 days ago
src refactor: ビルド資産を build_assets に集約し src/backend を整理Section内容を簡潔に。Section内容を簡潔に。Section内容を簡潔に。Section内容を簡潔に。 5 days ago
src-backend feat: SQLiteテーブルビューア機能(テーブル一覧、スキーマ、データ表示)を追加 1 day ago
src-frontend feat: SQLiteテーブルビューア機能(テーブル一覧、スキーマ、データ表示)を追加 1 day ago
test chore: release v0.1.1 6 days ago
.env.example style: tidy project root and simplify onboarding commands 6 days ago
.gitignore refactor: ビルド資産を build_assets に集約し src/backend を整理Section内容を簡潔に。Section内容を簡潔に。Section内容を簡潔に。Section内容を簡潔に。 5 days ago
README.md docs: README.mdを更新 (DBブラウザ機能の追加反映) 1 day ago
bun.lock chore: comprehensive project restructuring and cleanup 6 days ago
dummy.js chore: release v0.1.1 6 days ago
jsconfig.json Add MCP server with llama.cpp integration and docs 8 days ago
launch.cmd chore: release v0.1.1 6 days ago
package-lock.json chore: release v0.1.1 6 days ago
package.json fix: リソースのフラット化により MSI 起動時の DLL 欠落エラーを根本修正Section内容を簡潔に。 5 days ago
README.md

🦀 TelosDB (Tauri 2 Edition)

SQLite と Rust で構築された、ローカル向けベクトル検索サーバー & DBブラウザ

Tauri 2
Rust
Gemma 3

📝 イントロダクション

Model Context Protocol (MCP) に準拠した、ローカル実行用のベクトル検索サーバーです。Tauri v2 および Rust をベースに構築されています。

Gemma 3 300M Embedding モデルや llama-server をサイドカーとして利用することで、外部ネットワークに依存せず、ローカル環境のみでテキストのベクトル化と検索を行うことができます。

また、内蔵の SQLite DBブラウザ により、GUI上で直接テーブル構成やデータの確認が可能です。


✨ 主な機能

  1. Tauri v2 + Rust: 軽量で高速なバックエンド基盤。
  2. SQLite + sqlite-vec: リレーショナルデータとベクトルデータの一元管理。
  3. DBブラウザ (New!): テーブル一覧、スキーマ表示、データ閲覧(ページネーション対応)が可能なモダンなGUI。
  4. MCP 準拠: SSE プロトコルにより、外部エージェント(Claude 等)からのツール呼び出しに対応。
  5. Sidecar LLM: llama-server を内蔵し、オフラインでのテキスト処理が可能。
  6. SeaORM: 型安全なデータベース操作。
  7. 長文対応: 入力テキストの自動チャンキングと Mean Pooling により、コンテキスト制限を超える文書もベクトル化可能。
  8. 運用支援: 詳細なログ記録とステータス可視化。

🏗️ システム構造

graph TD
    subgraph "Frontend Layer (WebView2)"
        UI["DB Browser & Status UI"]
    end
    
    subgraph "Tauri Backend Layer (Rust)"
        Axum["MCP Server (SSE/JSON-RPC)"]
        Tray["System Tray Manager"]
        Sidecar["Sidecar Manager"]
        ORM["SeaORM Layer"]
        Llama["Llama API Client"]
        DBCmd["DB Browser Commands"]
    end
    
    subgraph "External Process Layer"
        LS["llama-server.exe (Sidecar)"]
    end
    
    subgraph "Data Layer"
        DB[("SQLite + sqlite-vec")]
        Model["Gemma 3 300M (GGUF)"]
    end
    
    UI <--> Axum
    UI <--> DBCmd
    DBCmd <--> DB
    Axum <--> ORM
    ORM <--> DB
    Llama <--> LS
    Sidecar --> LS
    LS --> Model

📁 ディレクトリ構成

.
├── .agent/       # エージェント用ルール・ドキュメント
├── bin/          # 外部バイナリ (llama-server等)
├── data/         # データベースファイル (vector.db)
├── docs/         # 仕様・設計ドキュメント
├── journals/     # 開発記録 (Git管理外)
├── logs/         # アプリケーションログ
├── resources/    # アセット類
├── scripts/      # ユーティリティスクリプト (analyze_nesting, count_lines等)
├── src-backend/  # Rust / Tauri バックエンド
├── src-frontend/ # Webview UI
├── tests/        # テストコード
└── tmp/          # 一時ファイル

🛠️ MCP ツール

ツール名 用途
save_document 文書の追加とベクトル化 (長文対応: 自動チャンキング)
find_documents テキストによる類似文書検索
find_by_vector ベクトルによる類似文書検索
delete_item 指定IDの文書削除
get_document 指定IDの文書内容取得
get_vector 指定IDのベクトル取得
list_documents 文書一覧の取得 (ページネーション対応)
get_documents_count 登録文書数の取得
read_recent_items 最近追加された文書の取得
llm_generate LLM によるテキスト生成

📜 ライセンス

ISC License.