librarian
抓取、索引並搜尋 GitHub 和網站上的開發者文件,為 AI 代理提供準確、基於真實來源且具備版本控制的程式碼上下文。
簡介
Librarian 是一款專門為解決 AI 代理工作流程中「幻覺」問題而設計的工具,旨在提供基於真實資料來源的開發者文件。它使開發者和 AI 代理能夠將外部知識庫(從特定的 GitHub 儲存庫到公開的文件網站)匯入至本機的向量索引資料庫中。透過結合關鍵字匹配與語義向量搜尋的混合搜尋模式,Librarian 能確保 API 細節、複雜的程式碼範例以及特定版本的指南能被高精度地檢索。對於使用如 Next.js、Hono 或自訂內部 API 等快速演進框架的開發者來說,這是不可或缺的工具,因為標準模型的訓練資料往往過時或不足。
-
可從 GitHub 儲存庫(支援指定分支或版本)以及公開網站(透過 sitemap、llms.txt 或直接爬取)匯入文件。
-
支援混合搜尋模式,包括關鍵字搜尋、語義向量搜尋以及兩者結合,以針對不同查詢類型進行最佳化。
-
維護特定於專案庫的版本控制,允許使用者將搜尋範圍限縮在特定版本標籤或文件快照中。
-
提供強大的 CLI 介面來管理來源、觸發匯入作業,並在將文件整合至 AI 工作流程前在本機測試搜尋結果。
-
內建 MCP (Model Context Protocol) 伺服器,可將文件查詢功能無縫整合至 Claude Code 或其他本機開發環境的 AI 程式碼助理中。
-
自動偵測執行環境,處理 Bun、npm 和 pnpm 的複雜安裝流程。
-
前置條件:執行期需要 Bun 以處理繁重的 CLI 操作與索引任務。
-
安裝方式:建議透過
npm install -g @iannuttall/librarian或bun add -g進行全域安裝。 -
操作流程:從
add加入來源開始,接著執行ingest --embed匯入資料,最後使用search或get指令檢索特定的文件片段。 -
版本管理:在專案目錄中使用
librarian detect自動識別版本標籤,並在搜尋指令中使用--version旗標以限制範圍。 -
效能調整:針對大型網站,請使用
--depth和--pages限制參數來控制爬取範圍與匯入速度。 -
隱私保護:所有操作均在本機執行,確保在檢索過程中不會洩漏敏感文件或 API 金鑰。
倉庫統計
- Star 數
- 98
- Fork 數
- 8
- Open Issue 數
- 1
- 主要語言
- TypeScript
- 預設分支
- main
- 同步狀態
- 閒置
- 最近同步時間
- 2026年5月3日 下午05:38