Show HN: Obsidian vaultをAIエージェントが検索可能にするローカルファーストCLI
NoteBrain は、Obsidian のノート vault を完全オフラインの知識バックエンドに変える Go 製 CLI ツールです。ローカルの ChromaDB ベクトルデータベースにマークダウンノートをインデックスし、セマンティック検索、ウィキリンクグラフ探索、隠れた関係の発見を構造化出力で提供します。自律エージェントやシェルパイプライン、LLMツール利用ワークフローに直接組み込めるよう設計されています。
NoteBrain は、Go 言語で書かれたコマンドラインツールで、Obsidian のノート vault を完全にオフラインで動作する知識バックエンドに変換します。このツールはマークダウンノートをローカルの ChromaDB ベクトルデータベースにインデックスし、セマンティック検索、ウィキリンクグラフの探索、隠れた関係の発見を構造化出力として提供します。自律エージェント、シェルパイプライン、LLMのツール利用ワークフローに直接組み込めるよう設計されています。
プロジェクトの作成者 Nimendra 氏は、日常的に Obsidian を主要なノートツールとして使用しており、AI エージェントが登場した際に Obsidian vault を RAG システムとして活用したいと考えました。しかし、既存の解決策は要件を満たさず、ある記事に触発されてこのツールを個人使用のために構築しました。ユーザーはそのまま使用することも、フォークして自身のユースケースに合わせて変更することも推奨されています。
主な機能:セマンティック検索(オフラインの all-MiniLM-L6-v2 ONNX 埋め込みモデル使用)、マルチクエリ検索(複数の独立したクエリで複雑なトピックの検索精度を向上)、ナレッジグラフ探索(バックリンク、マルチホップ接続、共有タグ関係を通じてウィキリンクグラフを探索)、隠れた関係の発見(明示的にリンクされていないが意味的に関連するノートを発見、オプションで深いセクションレベル分析可能)、グラフ強化ランキング(セマンティック類似性とグラフ関係を組み合わせて検索関連性を向上)、インタラクティブなターミナル UI(ファジーサーチインターフェースと検索結果がゼロの場合のインテリジェントガイダンス)、高度なフィルタリング(セクション、タグ、コードブロック、タスクなどで絞り込み)、完全ノート取得(インデックスされたコンテンツからノートを再構成)、構造化出力(JSON/TSV、JSONPath クエリによる自動化容易)、AI エージェント統合(組み込み AI エージェントスキルと専用エージェント設定)、ターミナルハイパーリンク、エディタ統合、Obsidian 対応インデックス(Obsidian の設定を尊重、無視ファイルや添付フォルダ等を考慮)。現時点ではマークダウンテキストのみ対応、PDF や画像 OCR は非対応。
技術的詳細:Goldmark AST 認識チャンキング(ヘッダ階層による分割、リストやテーブル等を厳密に保持)、組み込み ChromaDB(ベクトルをディスクに保存)、SHA-256 コンテンツハッシュによるインクリメンタルインジェスト(未変更ノートをミリ秒でスキップ)。
前提条件:Go 1.26.4+、CGO 対応ツールチェーン、Linux(macOS と Windows は未テスト)。インストールは GitHub Releases からバイナリをダウンロードするか、ソースからビルド。クイックスタートとして、vault のインデックス作成、セマンティック検索、深い隠れた関係の発見、構造化出力の取得などが可能。cron や systemd タイマーによる定期インデックスもサポート。
設定は ~/.notebrain/config/config.toml の TOML ファイルで行い、CLI フラグで上書き可能。データは ~/.notebrain/ に保存。ドキュメントにはインストール、コマンドリファレンス、アーキテクチャ、定期インデックス、AI エージェント使用法などが含まれる。MIT ライセンスで提供され、貢献を歓迎。