Mole 深度研究代理 – 執行預算限制、引用驗證的終端工具

Mole 直接從終端機提供執行預算限制、引用驗證的研究服務

Mole 會將自然語言問題分解、搜尋網路、提取主張、根據來源檢查每項主張,並合成包含豐富引用的答案——同時保證總成本絕不會超過使用者指定的預算。


預算限制消除意外支出

每一次模型呼叫在執行前都會進行預留,並在執行後根據具有非負約束的帳本進行結算。

  • 使用 --usd 0.50 來限制在搜尋 API 與 LLM 綜合使用達到 50 美分後停止執行。
  • 當模型定價未知時,使用 --tokens 200000 作為僅限 Token 的上限。
  • 該專案在測試語料庫中的 超支率為 0%,這意味著從未有任何執行超過上限。

"永遠不要花超過你預算的錢」——一位使用者在 HN 上詢問如何防止 LLM 超支。Mole 的預留系統保證搜尋與 LLM 的成本總和絕不會超過配置的限制;Token 限制與定價表會在每次呼叫前套用,且快取不會影響預留邏輯。


原文引用驗證保證主張的完整性

每項主張必須包含出現在來源頁面中的原文引用;否則該主張將被捨棄。

  • 生存下來的主張會連同其來源 URL 與精確引用一併儲存。
  • 在執行後的驗證階段,會針對來源重新閱讀主張;任何不匹配的地方都會被標記,而不是被靜默忽略。
  • 報告的指標顯示 100% 的主張完整性100% 的引用準確度

本地數據隱私邊界

Mole 可以讀取 CSV、TSV、JSON、JSONL 或類 Parquet 檔案(目前尚不支援 Parquet),且不會將任何行數據發送給 LLM。

  • 模型僅接收假設模板與欄位名稱;它會渲染確定性的 SQL 並回傳聚合結果(計數、平均值、統計檢定、≥ 5 筆記錄的分組)。
  • mole crossings 命令會列出確切有哪些資訊離開了機器。

安裝 – 單一靜態二進位檔,多種套件管理器

方法 平台 備註
Script (curl) Linux/macOS, amd64 & arm64 驗證 SHA-256,安裝至 ~/.local/bin/usr/local/bin
Homebrew macOS & Linux brew install lajosdeme/mole/mole (與無關的 mole 工具衝突)
AUR Arch Linux yay -S mole-research-bin (預編譯) 或 yay -S mole-research (從原始碼構建)
.deb/.rpm Debian/Ubuntu 從 releases 頁面下載
go install 任何支援 Go 1.25+ 的 OS go install github.com/lajosdeme/mole/cmd/mole@latest

所有發行版都會產生兩個靜態二進位檔 (molemole-mcp) 且無執行時依賴;SQLite 帳本會在首次使用時於 XDG 數據目錄下建立。


配置 – API 金鑰安全地儲存在磁碟上

mole config set search.provider tavily          # 或 brave
mole config set search.tavily-key <key>

mole config set llm.provider anthropic          # 或 openai-compatible
mole config set llm.api-key <key>
mole config set llm.model claude-sonnet-5
mole config set llm.cheap-model claude-haiku-4-5

mole doctor   # 驗證配置

金鑰儲存在 ~/.config/mole/config.json 中,權限為 0600,絕不儲存在環境變數中。任何與 OpenAI 相容的端點(DeepSeek, Ollama, vLLM 等)皆可運作,且可以使用本地託管的模型,在不產生金錢成本的同時仍會計算 Token 以進行預算執行。


核心使用模式

1. 自主深度研究

mole research "how much electricity does the bitcoin network use?" --usd 0.50
  • 該工具在單次執行中完成規劃、搜尋、提取、驗證與回答。
  • 選項:--max-sources--max-depth--json(用於機器可讀輸出)。

2. 無需額外支出的後續查詢

mole ask <session-id> "what did the Cambridge estimate say?"
  • 重用先前收集的主張;僅需單次 LLM 呼叫即可組織答案。

3. 結構化數據集提取

mole research "largest UK supermarket chains and their revenue" \
  --mode dataset \
  --schema 'company:text!,revenue:number=annual revenue in GBP,employees:number' \
  --usd 0.50

mole dataset <session-id> --format csv > chains.csv
  • 行數據會跨來源合併;CSV 會包含一個 contested 欄位,用於標記數值不同的欄位。

3. 本地檔案的隱私分析

mole connect add sales./exports/sales.csv
mole research "how does spend differ between regions?" --actors local_compute --usd 0.30
mole crossings <session-id>
  • LLM 永遠看不到原始行數據;僅回傳聚合統計數據。

MCP 伺服器模式 – 為編碼代理提供程式化存取

mole serve   # 監聽於私有 Unix socket

用戶端配置其 mcpServers 指向 mole-mcp。用戶端配置中不儲存憑證;守護進程會安全地持有它們。

工具箱模式 – 讓周邊代理擁有模型控制權

mole serve --toolkit
  • 外部編碼代理使用其自身的模型進行推理;Mole 提供確定性的操作(搜尋、引用驗證、SQL 渲染)。這在配合 Claude Code, Qwen Code 或任何已支付模型 Token 訂閱服務時非常理想。

透明度 – 來自真實執行的誠實指標

指標 數值
預算超支 0%
主張完整性 100%
引用準確度 100%
落地率 (主張重新閱讀) 80%
矛盾精準度 70% (含確認階段)
合併精準度 / 召回率 1.000 / 1.000

這些數據是由 mole eval <session-id> 產生的;任何無法計算的指標會報告為「不可用」,而不是靜默預設為零。


Hacker News 社群回饋

  • 利益衝突備註 – 一位評論者連結到另一個名為 “Mole” 的不同專案 (tw93/Mole) 並警告潛在的命名混淆。
  • 預算處理問題 – 一位使用者詢問如何將意外的 LLM Token 使用量控制在預算內;答案是 Mole 在每次呼叫前會預留成本並封頂總支出,而 Token 限制提供了額外的安全網。
  • 功能與代碼比例 – 一則評論稱該代碼庫是「為了一個相當基礎的功能寫了大量的代碼」,反映出實作相對於其核心功能顯得過於沉重。
  • 關於誠實的幽默 – 一則輕鬆的評論稱讚了「誠實數據」部分,強調了專案的透明度。
  • 澄清 – 使用者詢問與普通網路搜尋相比,「深度研究」意味著什麼;Mole 的流水線(規劃、主張提取、驗證、矛盾檢測)將其與簡單的檢索區分開來。

貢獻與質量標準

  • Pull requests 需要簽署貢獻者許可協議 (CLA)。
  • 專案執行 falsify-your-own-fix:變更後,撤銷機制並確認測試失敗。
  • 代碼必須通過 gofmt -l.go build./... 以及無跳過的 go test./...

授權

Mole 根據 Apache-2.0 授權發布。

Sources

相關

  • Dispatch
  • Dispatch
  • 專案
  • 專案
  • Dispatch