dirge-code/dirge

Dynamic Intent Resolution Grounding Engine

它解決的問題

Dirge 是一個高性能、極簡的編程代理,旨在提供跨會話的長期連續性,同時保持較低的運營成本和資源使用。它解決了代理在會話之間“遺忘”上下文的常見問題,以及基於 JavaScript 的代理編輯器的高內存開銷。

工作原理

Dirge 使用原生 Rust 構建,採用兩層記憶系統來維護項目特定和全局用戶偏好,而不依賴向量嵌入。相反,它利用 SQLite FTS5 進行會話搜索,使用純 grep 進行代碼搜索,並認為詞法搜索對於較弱的模型更可靠。它通過寫入可恢復的檢查點並將重要事實提煉到持久會話數據庫中,來管理受限的上下文預算(默認 250k 令牌)。

適用人群

希望擁有一個快速、輕量級的編程代理,能夠與各種 LLM 提供商(包括通過 Ollama 的本地模型)協作,並需要強大權限管理和長期會話管理的開發者。

亮點

  • 極致效率:與基於 JS 的代理相比,RAM 使用量顯著降低(約 8-15 MB)。
  • 強大的代理循環:包括修復格式錯誤的工具調用並在寫入磁盤之前通過 tree-sitter 驗證寫入的系統。
  • 多提供商路由:允許在單個會話中將不同的模型分配給特定角色,如審查、升級和摘要。
  • 集成問題看板:內置面向代理的看板,用於管理待辦事項,無需外部跟踪器。
  • 可擴展架構:支持 Janet 插件系統和 Claude 兼容的技能,以實現運行時擴展。
  • MCP 服務器支持:可以作為 MCP 服務器公開,允許其他代理(如 Claude Code)將實現任務委派給它。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目