UStackUStack
Linchpin icon

Linchpin

Linchpin 是可自行部署的 AI agent 執行環境,支援透過 OpenRouter 或 Ollama 接入各種模型,提供沙箱會話與工具/憑證管理,避免廠商鎖定。

Linchpin

Linchpin 是什麼?

Linchpin 是可自行部署的 AI agent 執行環境,支援多種模型提供者和本地模型運行。設計目的是讓您將請求路由至不同 LLM、在隔離環境中運行每個 agent 會話,並提供受控的內建與外部工具集。

其核心目的是減少模型/提供者鎖定,同時為 agent 提供沙箱執行環境,以及對工具、憑證和事件串流的受控存取。

主要功能

  • 任一模型,單一適配器: Linchpin 可透過 OpenRouter 路由至約 200 種雲端模型(包含 Claude、GPT、Gemini、Llama、DeepSeek、Mistral 和 Qwen),並可使用 Ollama 運行本地拉取的模型;您可為每個 agent 切換提供者。
  • 沙箱會話與每個會話的 Docker 容器: 每個會話運行於專屬 Docker 容器中,預裝 Python、Node、git 和 ripgrep,提供一致的工具環境。
  • 每個環境的可配置網路: 網路可設定為 none 以嚴格限制,或 open egress 以較寬鬆設定。
  • 八種內建容器工具: Agent 可使用包括 bashreadwriteeditglobgrepweb_fetchweb_search 的工具,執行受限於容器內。
  • MCP 和 HTTP 工具整合: Linchpin 可透過 stdio 接入 Model Context Protocol (MCP) 伺服器,或連接任意 HTTP 端點;連接器管理程序生命週期與憑證注入。
  • 加密憑證儲存庫: 憑證使用 Fernet 加密儲存;agent 在配置中以名稱參照秘密,會話啟動時解密,不會以明文寫入磁碟。
  • 每個會話的僅追加事件串流: Linchpin 為每個會話記錄僅追加的事件日誌,並支援游標分頁;客戶端可透過 SSE 訂閱,從游標重播事件後串流即時更新。

如何使用 Linchpin

  1. 選擇模型路徑: 配置 agent 透過 OpenRouter(用於提供者選擇)使用雲端模型,和/或透過 Ollama 使用本地模型。
  2. 在沙箱中運行 agent 會話: 啟動會話時知曉每個會話使用專屬 Docker 容器與預裝運行工具;依環境需求設定網路(none 對 open egress)。
  3. 為 agent 選擇工具: 使用 Linchpin 內建工具(bash、檔案操作、搜尋/擷取),並可選透過 stdio 新增 MCP 伺服器,或連接 HTTP 端點作為外部工具。
  4. 安全提供憑證: 將憑證儲存於 Linchpin 的 Fernet 加密儲存庫,並在 agent 配置中以名稱參照秘密。
  5. 串流事件至 UI 或服務: 透過 SSE 訂閱,使用游標分頁重播先前事件並持續接收更新。

使用案例

  • 多提供者 agent 部署: 您想對不同 LLM 運行相同 agent 工作流程(例如,一任務用 Claude,另一用 GPT),同時保持工具與沙箱設定的其他部分一致。
  • 本地模型 agent 運行: 您有本地拉取的模型,偏好透過 Ollama 運行,不論模型運行位置皆使用相同容器化工具與會話隔離。
  • 沙箱程式碼與檔案工作流程: 需要編輯與搜尋專案檔案或運行 shell 指令的 agent,可在其專屬 Docker 容器內執行,並在必要時限制網路。
  • 透過 MCP 伺服器的工具: 您有現有 MCP 伺服器向 agent 暴露功能;Linchpin 可透過 stdio 連接,並管理連接器生命週期與憑證注入。
  • 即時 UI 事件饋送: 您正在建構需要歷史與即時更新的介面;可從游標重播事件日誌條目,然後透過 SSE 即時串流事件。

常見問題

  • Linchpin 需要特定模型提供者嗎? 不需要。Linchpin 透過 OpenRouter 路由至多種雲端模型,也可透過 Ollama 執行本地模型,並可針對每個 agent 設定提供者選擇。

  • Agent 會話如何隔離? 每個會話在其專屬 Docker 容器中執行,預裝如 Python 和 Node 等工具。網路可依環境限制(無)或允許(開放出口)。

  • Agent 可使用哪些工具? Linchpin 內建八種工具(bashreadwriteeditglobgrepweb_fetchweb_search),並可透過 MCP 伺服器(stdio)或 HTTP 端點整合外部工具。

  • Linchpin 如何處理憑證? 憑證儲存於 Fernet 加密金鑰庫中,並以名稱於 agent 設定檔中參照。會話啟動時解密,且不會以明文寫入磁碟。

  • 能否將 agent 活動串流至前端? 可以。Linchpin 為每個會話維護僅追加事件記錄,並支援 SSE 訂閱,可從游標重播過去事件並即時串流新事件。

替代方案

  • 具沙箱化的自託管 agent 執行環境: 在隔離容器中執行 agent 的替代平台也能提供受控工具執行;差異通常在模型與工具整合方式(提供者路由、MCP/HTTP 支援,以及事件串流模型)。
  • 僅本地 agent 框架: 專注本地模型的框架(例如圍繞本地推論建置者)可避免外部提供者路由,但可能提供不同程度的提供者切換與工具/憑證管理。
  • 專注 MCP 的工具連接器: 若主要需求為 MCP 連線,可找到強調 MCP 工具整合的替代方案;相較 Linchpin,需評估其會話隔離、憑證儲存與串流處理方式。
  • 自訂 SSE/事件記錄實作: 有些團隊在 agent 系統周圍建置自家事件記錄與 SSE 串流;權衡在於需更多工程努力以重現基於游標的重播、僅追加會話記錄,以及一致的 agent 工具行為。