Show HN:本地優先的 CLI 工具,讓 Obsidian 倉庫對 AI 智慧體可搜尋
NoteBrain 是一個 Go 語言編寫的 CLI 工具,可將 Obsidian 筆記倉庫轉為離線知識後端,供 AI 編碼智慧體使用。它透過本地 ChromaDB 向量資料庫實現語義搜尋、維基連結圖遍歷和隱藏連線發現,並支援結構化輸出。工具內建 AI 智慧體技能和 OpenCode 代理配置,可輕鬆整合到自主編碼工作流中。
NoteBrain 是一款由 Go 語言構建的命令列工具,旨在將 Obsidian 筆記倉庫轉化為完全離線的知識後端,供 AI 編碼智慧體使用。該工具索引 Markdown 筆記至本地 ChromaDB 向量資料庫,並透過結構化輸出提供語義搜尋、維基連結圖遍歷以及隱藏連線發現等功能,可直接被自主智慧體、Shell 管道和 LLM 工具呼叫工作流所使用。
專案作者 Nimendra 表示,他日常使用 Obsidian 作為主要筆記工具,當 AI 智慧體興起時,他希望能將 Obsidian 倉庫用作 RAG 系統,但現有解決方案無法滿足需求。受到一篇文章啟發後,他構建了此工具用於個人使用,並鼓勵使用者根據自身需求 fork 和修改。
NoteBrain 的主要功能包括:語義搜尋(使用離線 all-MiniLM-L6-v2 ONNX 嵌入模型)、多查詢搜尋(提升複雜主題檢索效果)、知識圖譜遍歷(透過反向連結、多跳連線和共享標籤關係探索維基連結圖)、隱藏連線發現(發現未顯式連結但語義相關的筆記,支援可選的深度章節級分析)、圖譜增強排序(結合語義相似性和圖關係提升搜尋相關性)、互動式終端 UI(模糊搜尋介面及智慧引導)等。此外,它還支援高階過濾(按章節、標籤、程式碼塊、任務等過濾)、完整筆記重構、結構化輸出(JSON/TSV,內建 JSONPath 查詢)、AI 智慧體整合、終端超連結、編輯器整合和 Obsidian 感知索引(尊重 Obsidian 配置)。目前該工具僅支援 Markdown 文本,不支援 PDF 或圖片 OCR。
技術實現上,NoteBrain 採用 Goldmark AST 感知分塊(按標題層級分割,而非任意字元偏移),嚴格保留列表、GFM 表格、引用/標註和程式碼塊;使用嵌入式 ChromaDB 在磁碟上儲存向量;透過 SHA-256 內容雜湊實現增量攝取,重複執行時僅需毫秒即可跳過未修改筆記。
安裝需要 Go 1.26.4+、CGO 啟用的工具鏈以及 Linux 環境(macOS 和 Windows 二進位制檔案未經測試)。使用者可從 GitHub Releases 頁面下載預構建二進位制檔案,或從原始碼編譯。快速入門包括索引倉庫、語義搜尋、深度隱藏連線發現、獲取結構化輸出等步驟。工具還支援透過 cron 或 systemd 定時器自動索引。
配置方面,NoteBrain 從 ~/.notebrain/config/config.toml 讀取 TOML 格式配置檔案,CLI 標誌可覆蓋 TOML 值。關鍵設定包括倉庫路徑、名稱、輸出格式等。所有持久化資料儲存在 ~/.notebrain/ 下。文件涵蓋了安裝、命令參考、架構、定時攝取和 AI 智慧體使用等內容。專案採用 MIT 許可證,歡迎貢獻。