Talon:一個自託管的長期AI代理框架
Talon是一個多平臺、可自託管的AI代理框架,支援Telegram、Discord、Microsoft Teams、終端及跨平臺的桌面/移動應用。它提供可插拔的後端(Claude Agent SDK、Kilo、OpenCode、Codex、OpenAI Agents)和完整的MCP工具訪問,具備背景代理、目標管理、技能系統、事件匯流排等功能。專案架構清晰,前端與後端獨立,支援熱過載外掛和技能,便於擴充套件。
Talon是一個自託管的AI代理框架,旨在為長期執行的AI代理提供統一的執行環境。它由開發者dylanneve1建立,在GitHub上開源。Talon的設計理念是讓AI代理能夠跨多個平臺工作,並具備持久化任務執行、記憶管理和工具整合能力。
多前端支援
Talon支援多種使用者介面,包括Telegram(使用Grammy和GramJS userbot)、Discord(discord.js)、Microsoft Teams(Bot Framework)、終端(帶即時工具可見性)以及一個基於Flutter的桌面/移動伴侶應用。伴侶應用可透過本地或遠端加密橋樑連線,支援多聊天曆史、即時流式推理、工具呼叫視覺化以及設定同步。
可插拔後端
Talon的後端設計為可插拔,支援多種AI代理後端:Claude Agent SDK(程序內MCP)、Kilo(本地HTTP伺服器,SSE流式傳輸)、OpenCode(與Kilo共享基礎設施)、Codex(子程序呼叫Codex CLI)以及OpenAI Agents SDK(Responses API)。使用者可針對每個對話選擇不同的後端和模型,並享有模型回退和上下文溢位恢復功能。
核心功能
- 背景代理:心跳代理每小時執行,推進目標並主動傳送資訊;夢境代理負責記憶整合和日記。
- 目標系統:代理可承諾多日目標,每次心跳時重新讀取並記錄進展。
- 技能系統:透過SKILL.md檔案定義工作流,支援從本地資料夾、Git倉庫或Anthropic技能生態系統安裝技能。
- 觸發器:使用者可編寫bash/Python/Node指令碼作為監視器,在條件滿足時喚醒機器人。
- 事件匯流排:內部發布-訂閱系統,支援任務和輪次生命週期事件,子系統可訂閱而不相互依賴。
- 虛擬檔案系統:統一名稱空間,包含工作區、技能、指令碼、日誌等,並提供/proc風格的即時檢視(FUSE支援)。
- 外掛系統:支援熱過載的外掛,可從npm、Git或本地安裝。內建外掛包括GitHub、MemPalace、Playwright和Brave Search。
架構概覽
Talon的架構遵循嚴格的依賴規則:核心引擎不匯入前端或後端程式碼。前端和後端都依賴於核心型別,彼此獨立。所有後端實現統一的Backend能力介面,確保切換後端的無縫體驗。核心引擎包含代理執行時、模型層、提示組裝、背景代理、MCP工具定義和訊息流排程器。
快速開始與安裝
使用者可透過git克隆倉庫並執行npm install安裝依賴。互動式設定嚮導(npx talon setup)幫助選擇前端、配置令牌和選擇模型。支援透過npx talon start啟動守護程序或npx talon chat進入終端聊天模式。
Talon還提供獨立二進位制檔案,適用於Linux、macOS和Windows,無需Node.js環境。可透過Homebrew(macOS/Linux)或直接下載deb包安裝。二進位制檔案支援完整的互動式CLI,但執行MCP伺服器仍需npm安裝。
總結
Talon為開發者提供了一個強大且靈活的AI代理框架,適合需要長期執行、多平臺互動和深度工具整合的場景。其模組化設計、豐富的功能集和開源特性使其成為構建自主AI代理的有力工具。