diff --git a/README.md b/README.md index 0f493df..4c81328 100644 --- a/README.md +++ b/README.md @@ -15,12 +15,12 @@ ## 主な機能 -- **🧠 セマンティック検索 (Vector Search)**: 意味の近さを考慮した高度な検索。 -- **🤖 MCP SSE サーバー内蔵**: AIエージェント(LM Studio / Claude等)からの自律的な知識操作が可能。 -- **🔄 自動ヒーリング (Self-Healing)**: モデル変更によるベクトル次元数の不一致を自動検知し、バックグラウンドで補完。 -- **🛡️ 完全ローカル・プライバシー**: データ、モデル、推論エンジンのすべてがローカルで完結。 +- **🧠 セマンティック検索 (Vector Search)**: 意味の近さを考慮した高度な検索(ベクトル検索)。 +- **🤖 MCP SSE サーバー内蔵**: AIエージェント(LM Studio / Claude等)からの自律的な知識操作(CRUD)が可能。 +- **🔄 自動ヒーリング (Self-Healing)**: モデル変更によるベクトル次元数の不一致を自動検知して補完。 +- **🛡️ 完全ローカル・プライバシー**: データ、モデル、推論エンジンのすべてがローカル環境内で完結。 - **✨ プレミアムなUI/UX**: ガラスモーフィズムとカスタムアニメーションを採用したデスクトップ体験。 -- **📦 常駐管理**: システムトレイ常駐により、MCPサーバーを常にバックグラウンドで待機可能。 +- **📦 常駐管理**: システムトレイ常駐により、MCPサーバーをバックグラウンドで常に待機。 --- @@ -29,20 +29,20 @@ ```mermaid graph TD subgraph "Frontend (Webview)" - UI[Premium Glass UI] - SSE[SSE Client Monitor] + UI["Premium Glass UI (Vanilla JS/CSS)"] + SSE["SSE Client Monitor"] end - subgraph "Backend (Rust / Tauri)" - Core[Tauri 2 Core] - Axum[Axum SSE Server] - DB[(SQLite + Vector Ext)] - Logger[Rotating Logger] + subgraph "Backend (Rust / Tauri 2)" + Core["Tauri Core & Command Handlers"] + Axum["Axum (MCP SSE Server)"] + DB[("SQLite + sqlite-vec")] + Logger["Rotating File Logger"] end subgraph "Sidecar (llama.cpp)" - Server[llama-server] - Model[Gemma-3 GGUF] + Server["llama-server"] + Model["Gemma-3 GGUF (640d)"] end UI <-- JSON/SSE --> Axum @@ -70,6 +70,7 @@ ```bash bun install +# 開発モードでの起動 bun run tauri dev ``` @@ -77,10 +78,10 @@ ## ディレクトリ構成 -- `src/`: フロントエンド(Vanilla JS + Vanilla CSS) -- `src-tauri/src/`: バックエンド(Rust / Tauriコマンド / MCP実装) +- `src/`: フロントエンド(Vanilla JS / CSS) +- `src-tauri/`: バックエンド(Rust / Tauri設定 / MCP実装) - `document/`: 設計書・仕様書(`mermaid`図解付き) -- `journals/`: 作業記録(日付別) +- `journals/`: 作業記録(日付別、Rule 13に基づく集約管理) --- diff --git a/document/mcp.json b/document/mcp.json index c36f4b3..6d82804 100644 --- a/document/mcp.json +++ b/document/mcp.json @@ -47,4 +47,4 @@ ] } } -} \ No newline at end of file +} diff --git "a/journals/202602-006-Tauri\347\247\273\350\241\214\343\201\250\343\202\267\343\202\271\343\203\206\343\203\240\345\256\211\345\256\232\345\214\226.md" "b/journals/202602-006-Tauri\347\247\273\350\241\214\343\201\250\343\202\267\343\202\271\343\203\206\343\203\240\345\256\211\345\256\232\345\214\226.md" new file mode 100644 index 0000000..3e3d48b --- /dev/null +++ "b/journals/202602-006-Tauri\347\247\273\350\241\214\343\201\250\343\202\267\343\202\271\343\203\206\343\203\240\345\256\211\345\256\232\345\214\226.md" @@ -0,0 +1,69 @@ +# 202602-006-Tauri移行とシステム安定化 + +## 週次サマリー (2026/02/02 - 2026/02/08) + +```mermaid +timeline + title 2026年2月 第6週の歩み + 2026-02-06 : Tauri v2 移行開始 : Gemma 3 統合基盤構築 : SeaORM導入 + 2026-02-07 : プロジェクト構造刷新 : Sidecar (llama-server) 安定化 : 384次元統一 + 2026-02-08 : 長文データ対応 (平均プーリング) : MCPツール拡充 : インストーラー(MSI)対応 : 768次元変更 +``` + +--- + +## 2026-02-06: Tauri v2 移行と Gemma 3 統合基盤の構築 + +### 案件概要 + +AIエージェント(Antigravity)は、Electron + Bun ベースの常駐型 MCP サーバーを、軽量・高性能な **Tauri v2 + Rust** 構成へ完全に移植した。 + +### 作業詳細 + +- **GUIフレームワーク**: WebView2 を採用し、メモリ使用量を劇的に削減。 +- **データ層**: SeaORM を導入。SQLite + `sqlite-vec` を型安全に操作し、ベクトル検索(MATCH句)を実現。 +- **通信層**: `axum` による MCP SSE サーバー実装と、`reqwest` による `llama.cpp` サーバー連携。 +- **常駐アプリ基盤**: `TrayIconBuilder` を使用したシステムトレイメニューおよびライフサイクル管理を実装。 +- **Gemma 3 統合**: `models/` ディレクトリに 300M Embedding モデルを組み込み、Sidecar 形式での起動を実現。 + +### AI視点での結果 + +単体テストおよび統合テスト(全 4 ケース)が正常に PASS し、Tauri バックエンドと Llama サーバーの連携基盤が確立された。 + +--- + +## 2026-02-07: Tauri化の完了とプロジェクト構造の刷新 + +### 案件概要 + +AIエージェントは、Electron から Tauri v2 への移行を完了させ、プロジェクト構造の抜本的な整理(Rationalization)と安定化を行った。 + +### 作業詳細 + +- **構造整理**: `src-tauri` を `src/backend` に移動。`bin/`, `data/`, `logs/`, `resources/` の資産分離を徹底。 +- **Sidecar 安定化**: Windows 環境での DLL 読み込みエラーを解決するため、環境変数 `PATH` 継承と絶対パス解決を導入。 +- **スキーマ修正**: ベクトル次元数を Gemma 3 に合わせて 384 次元に統一し、日時フィールドを導入。 +- **品質保証**: `README.md` を刷新し、セットアップ手順を `bun setup` に集約。 + +### AI視点での結果 + +プロジェクトの見通しが劇的に改善され、開発環境とプロダクションビルドの両方で安定して動作する基盤が整った。 + +--- + +## 2026-02-08: 開発レビュー: 機能強化と安定化 + +### 案件概要 + +AIエージェントは、MCP サーバーとしての機能強化(長文対応、ツール拡充)と、配布に向けたインストーラーおよびサイドカー起動の安定化を集中的に行った。 + +### 作業詳細 + +- **長文データ対応**: 2048トークンを超える長文に対し、チャンキングと平均プーリング (Mean Pooling) をバックエンドに実装。 +- **MCP ツール拡充**: `delete_item` 等のツールを追加し、CRUD を完全サポート。次元数を **768次元** に変更。 +- **インストーラー安定化**: MSI パッケージにおけるサイドカー起動失敗に対し、Tauri Sidecar API の適用と DLL 検索パスの修正を実施。 +- **可視化**: SSE Keep-Alive の実装、および UI 上でのサーバー稼働状態(Health Check)表示機能を追加。 + +### AI視点での結果 + +長文ドキュメントのベクトル化が可能になり、MSI インストーラー環境下でもローカル LLM が正常に動作する配布可能な品質に達した。 diff --git "a/journals/202602-007-TelosDB\346\251\237\350\203\275\346\213\241\345\274\265\343\201\250\351\226\213\347\231\272\347\222\260\345\242\203\344\277\256\345\276\251.md" "b/journals/202602-007-TelosDB\346\251\237\350\203\275\346\213\241\345\274\265\343\201\250\351\226\213\347\231\272\347\222\260\345\242\203\344\277\256\345\276\251.md" new file mode 100644 index 0000000..db4e229 --- /dev/null +++ "b/journals/202602-007-TelosDB\346\251\237\350\203\275\346\213\241\345\274\265\343\201\250\351\226\213\347\231\272\347\222\260\345\242\203\344\277\256\345\276\251.md" @@ -0,0 +1,85 @@ +# 202602-007-TelosDB機能拡張と開発環境修復 + +## 週次サマリー (2026/02/09 - 2026/02/15) + +```mermaid +timeline + title 2026年2月 第7週の歩み + 2026-02-12 : プロジェクト名変更 (TelosDB) : SQLiteテーブルビューア実装 : sqlite-vector 移行 + 2026-02-13 : 開発環境(Java/Marketplace)修正 : UIグラスモルフィズム刷新 : MCPツール CRUD完全化 + 2026-02-14 : 環境移行(Dドライブ)対応 : MSYS2/MinGW再構築 : Tauriビルド修復 + 2026-02-15 : DLL競合(0xc0000139)解消 : build.rsによるDLL自動管理 : MCP SSEプロトコル完全準拠 +``` + +--- + +## 2024-02-12: TelosDB Development Journal + +### 案件概要 + +AIエージェント(Antigravity)は、プロジェクト名の一新(`sqlitevector` -> `TelosDB`)および、コアとなるベクトルエンジンの移行、GUI機能の拡充を実施した。 + +### 作業詳細 + +- **ブランド刷新**: `package.json`, `tauri.conf.json`, `README.md` 等の全識別子を `TelosDB` へ統一。 +- **SQLite ビューア**: テーブル一覧、スキーマ表示、データ閲覧(ページネーション付き)を GUI に実装。 +- **エンジン移行**: `sqlite-vec` から `sqlite-vector` (sqliteai版) へ移行。BLOB 格納方式への統合と DLL 管理の堅牢化を図った。 +- **ドキュメント整備**: Windows 環境特有の DLL ビルド・リンク手順を `docs/sqlite-vector-build.md` に記録。 + +### AI視点での結果 + +プロジェクトの名称と構造が整理され、GUI 上でのデータ確認が容易になった。DLL リンクの問題をビルド手法の確立により解決した。 + +--- + +## 2026-02-13: System Stabilization and UI Refactoring + +### 案件概要 + +AIエージェントは、開発環境の不整合(Java/VS Code)の解消と、アプリケーション UI の大幅なリフレッシュ、および MCP ツールの完全実装を行った。 + +### 作業詳細 + +- **Java 環境修正**:Open VSX 依存を排し Microsoft Marketplace を参照するように修正。Java 25 を正式にサポート。 +- **UI 刷新**: グラスモルフィズムを取り入れたダークテーマへ UI を再構築。CSS/JS を外部ファイル化し構造を整理。 +- **MCP ツール完全化**: `update_item`, `delete_item` を実装し、ベクトルデータの CRUD 操作を外部エージェントからも完遂可能にした。 + +### AI視点での結果 + +開発環境が最新化され、UI/UX がプレミアムな質感へと向上した。MCP ツール群の完成により、外部 AI からの知識操作が完全なものとなった。 + +--- + +## 2026-02-14: Tauri環境の修復とデバッグ + +### 案件概要 + +AIエージェントは、作業環境の物理的な移動(FドライブからDドライブ)に伴うビルドエラーや環境変数の不整合を解消した。 + +### 作業詳細 + +- **再構築**: MSYS2/MinGW の再インストール、Rust ツールチェーンの再紐付けを実施。 +- **デバッグ**: `0xc0000139` (Entrypoint Not Found) エラーの初期調査を行い、DLL の不整合を特定。 + +### AI視点での結果 + +環境移行による壊滅的な状況から、Tauri アプリのビルドが再び通る状態まで復旧させた。 + +--- + +## 2026-02-15: TelosDB開発 - 環境修復とMCPプロトコル準拠 + +### 案件概要 + +AIエージェントは、難航していた DLL 競合問題を「bundled」設定と `build.rs` による自動管理で根本解決し、MCP プロトコルへの完全な準拠を果たした。 + +### 作業詳細 + +- **DLL 地獄の解消**: `libsqlite3-sys` の bundled 特徴量を有効化。`build.rs` で `vec0.dll` をターゲットディレクトリへ自動コピーする仕組みを構築。 +- **MCP SSE サーバー**: JSON-RPC 非同期レスポンスに完全対応。LM Studio 等の外部クライアントからの接続を安定化させた。 +- **UI 同期**: データ更新を SSE で検知し、UI 上の件数表示をリアルタイムに同期。 +- **ログ安定化**: `tauri-plugin-log` の出力パスを適切に設定し、起動時のクラッシュを解消。 + +### AI視点での結果 + +`cargo run` だけで全ての依存が解決される「自律的なビルド」を達成。外部 AI の知識ベースとして実用可能なレベルに到達した。 diff --git "a/journals/202602-008-DB\345\210\235\346\234\237\345\214\226\345\210\267\346\226\260\343\201\250\343\203\252\343\203\235\343\202\270\343\203\210\343\203\252\345\206\215\345\273\272.md" "b/journals/202602-008-DB\345\210\235\346\234\237\345\214\226\345\210\267\346\226\260\343\201\250\343\203\252\343\203\235\343\202\270\343\203\210\343\203\252\345\206\215\345\273\272.md" new file mode 100644 index 0000000..c074339 --- /dev/null +++ "b/journals/202602-008-DB\345\210\235\346\234\237\345\214\226\345\210\267\346\226\260\343\201\250\343\203\252\343\203\235\343\202\270\343\203\210\343\203\252\345\206\215\345\273\272.md" @@ -0,0 +1,47 @@ +# 202602-008-DB初期化刷新とリポジトリ再建 + +## 週次サマリー (2026/02/16 - 2026/02/22) + +```mermaid +timeline + title 2026年2月 第8週の歩み + 2026-02-16 : DB初期化ロジック刷新 : 埋め込み次元動的検知 : Gemma-3 270M 移行 : NSIS配布パッケージ作成 + 2026-02-17 : リモートリポジトリ(GitBucket)再建 : 日次ジャーナル整理 : README.md 清書 +``` + +--- + +## 20260216-0002-DB初期化の刷新とGemma-3移行 + +### 案件概要 + +AIエージェント(Antigravity)は、データベース初期化プロセスの堅牢化と、モデル変更に柔軟に対応できる動的構成システムを構築し、デフォルトモデルを Gemma-3 270M へ移行した。 + +### 作業詳細 + +- **初期化統合**: `rusqlite` を完全に廃止し `sqlx` へ一本化。非同期 `SqlitePool` による一貫した初期化を実現。 +- **動的次元検知**: モデルごとの次元数(Qwen: 1536, Gemma-3: 640/768)を起動時に自動検知する仕組みを導入。不整合時のテーブル自動再生成機能を実装。 +- **セルフヒーリング**: バックグラウンドで欠損ベクトルを自動再取得・同期する機能を実装。 +- **配布パッケージ**: NSIS (`.exe`) 形式のインストーラー作成フローを確立。未使用モデルの除外によりサイズを 240MB へ軽量化した。 + +### AI視点での結果 + +モデル変更時の手動調整が不要になり、システムの汎用性とメンテナンス性が飛躍的に向上した。配布用バイナリの安定性も確保された。 + +--- + +## 20260217-0001-リモートリポジトリの再建とプッシュ + +### 案件概要 + +AIエージェントは、再建されたリモートリポジトリへの最新状態の反映、およびプロジェクト運用ルールに基づくドキュメント・ジャーナルの整理を実施した。 + +### 作業詳細 + +- **リポジトリ復旧**: 空になったリモート(GitBucket)へ `git push -u origin main` を実行し全履歴を復元。 +- **ジャーナル整理**: 過去の日次報告を運用ルールに基づき 1 日 1 ファイルへ再編。 +- **ドキュメント清書**: `README.md` を最新のシステム構成(Tauri 2 + Gemma-3 + MCP)に合わせて全面的に修正。 + +### AI視点での結果 + +コードとドキュメントの整合性が保たれ、チーム開発(Git)が再び正常に機能する体制が整った。 diff --git "a/journals/20260218-0004-\343\202\270\343\203\243\343\203\274\343\203\212\343\203\253\351\200\261\346\254\241\343\202\242\343\203\274\343\202\253\343\202\244\343\203\226\345\214\226.md" "b/journals/20260218-0004-\343\202\270\343\203\243\343\203\274\343\203\212\343\203\253\351\200\261\346\254\241\343\202\242\343\203\274\343\202\253\343\202\244\343\203\226\345\214\226.md" new file mode 100644 index 0000000..65a9538 --- /dev/null +++ "b/journals/20260218-0004-\343\202\270\343\203\243\343\203\274\343\203\212\343\203\253\351\200\261\346\254\241\343\202\242\343\203\274\343\202\253\343\202\244\343\203\226\345\214\226.md" @@ -0,0 +1,42 @@ +# 20260218-0004-ジャーナル週次アーカイブ化 + +## 概要 + +AIエージェント(Antigravity)は、プロジェクト規約に基づき、2026年2月第6週から第8週(前日まで)の全ジャーナルファイルを週単位のアーカイブへ集約し、フォルダ構成を整理しました。 + +## 実施内容 + +1. **週次アーカイブの作成 (Archive Rule 3)** + - **Week 006 (02/02 - 02/08)**: Tauri 移行と初期安定化の記録を集約。 + - **Week 007 (02/09 - 02/15)**: TelosDB への改名、UI 刷新、ビルド環境修復の記録を集約。 + - **Week 008 (02/16 - 02/17)**: DB 初期化刷新、リポジトリ再建の記録を集約。 +2. **タイムラインの視認化** + - 各週次ファイル冒頭に Mermaid タイムラインを追加し、週ごとの主要なマイルストーンを俯瞰可能にしました。 +3. **旧ファイルの削除** + - アーカイブが完了した 9 件の日次ファイルを削除し、`journals` フォルダをクリーンアップしました。 + +## 整理後の構造 (Mermaid) + +```mermaid +graph TD + subgraph "Weekly Archives" + W006["202602-006...md"] + W007["202602-007...md"] + W008["202602-008...md"] + end + + subgraph "Current Journals (Today)" + J001["20260218-0001...md"] + J002["20260218-0002...md"] + J003["20260218-0003...md"] + J004["20260218-0004-ジャーナル週次アーカイブ化.md"] + end + + W006 --- W007 + W007 --- W008 + W008 --- J001 +``` + +## AI視点での結果 + +フォルダ内のファイル数が整理され、過去の経緯を週単位で効率的に振り返ることが可能になりました。規約に完全準拠したドキュメント管理体制を維持しています。