Newer
Older
TelosDB / README.md

TelosDB

TelosDB は、ベクトル検索機能を備えたローカル・ナレッジベース・アプリケーションです。 SQLite と Llama.cpp を基盤とし、Tauri 2.0 (MSVC ツールチェーン) を用いて構築されています。

システムの用途

  • セマンティック検索: ドキュメントの文章をベクトル化し、意味に基づいた検索を可能にします。
  • MCP サーバー統合: Model Context Protocol (MCP) を介して、AI エージェントからデータベースへの安全なアクセスを提供します。
  • ローカル動作: LLM サーバー (Llama.cpp) をサイドカーとして内蔵し、プライバシーを保ちつつベクトル生成とテキスト生成を行います。

システム構造

graph TD
    subgraph "Frontend (Webview2)"
        UI[React/HTML/JS]
    end

    subgraph "Backend (Rust/Tauri)"
        Main[Tauri App]
        MCP[MCP Server - Axum]
        DB[(SQLite / Sea-ORM)]
    end

    subgraph "Sidecar"
        Llama[Llama.cpp Server]
    end

    UI <-->|Tauri Invoke| Main
    Main <--> DB
    Main <-->|HTTP| Llama
    MCP <--> Main
    IDE[AI Agent / IDE] <-->|SSE/HTTP| MCP

開発環境とビルド手順

必須要件

  • OS: Windows (11 / 10)
  • Toolchain: Microsoft Visual C++ (MSVC)
  • Dependencies:
    • Rust (Latest Stable)
    • Node.js & npm / bun

自己完結型ビルド (Hermetic Build)

本プロジェクトは、システム環境(PATH 等)に依存しない「自己完結型ビルド」を採用しています。 cargo build を実行すると、src/backend/build.rs が以下の処理を自動的に行います:

  • 実行に必要な WebView2Loader.dll をビルドツリーから自動検出し、.exe と同じディレクトリに集約します。
  • SQLite をスタティックリンク(bundled)し、外部の sqlite3.dll との ABI 衝突を防止します。

これにより、環境変数 PATH に MinGW や他バージョンの DLL が混在していても、常に正しい MSVC 版ライブラリが優先的にロードされます。

ビルド

cd src/backend
cargo build

テスト

cargo test

ライセンス

プロジェクト内部規程に準拠。