SteerPlane:為AI代理提供開源執行時護欄
SteerPlane 是一個開源執行時護欄工具,透過一行程式碼整合,為AI代理提供迴圈檢測、成本上限、策略執行和即時監控,支援多種框架和部署方式。
SteerPlane 是一個開源的執行時護欄工具,旨在為 AI 代理提供安全性和可控性。隨著 AI 代理能夠呼叫 API、執行程式碼、瀏覽網路並做出實際決策,它們也帶來了潛在的風險:一個配置錯誤的代理可能陷入無限迴圈,一夜之間消耗超過 10,000 美元的 API 費用,或者在沒有任何可見性的情況下執行破壞性操作。SteerPlane 透過一行程式碼即可解決這些問題。
工作原理
SteerPlane 提供了 Python 裝飾器和上下文管理器兩種 API。使用 @guard 裝飾器,開發者可以指定代理名稱、最大成本(如 10.00 美元)、最大步驟數(如 50)、禁止操作(如 delete_*)和執行模式。在代理執行時,SteerPlane 會靜默監控每一步,當達到財務或執行時限制時,可以暫停等待人工審批,而迴圈和策略違規則會立即終止。
核心功能
- 迴圈檢測:使用 O(W²) 滑動視窗演算法,在亞毫秒時間內檢測單動作、交替和多步重複模式,無需呼叫 LLM。
- 成本上限:每個執行(SDK)或每個會話(閘道器)設定美元限制,每一步後檢查,超限僅多一步。內建 25+ 模型(OpenAI、Anthropic、Google、Meta、Mistral)的定價。
- 流媒體閘道器:即時 SSE 塊轉發,支援流中段成本中止——如果預算在流中超出,SteerPlane 注入終止事件並切斷連線。
- 策略引擎:支援允許/拒絕列表(glob 模式)和滑動視窗速率限制。
- 閘道器代理:相容 OpenAI 的 API 代理,只需更改 base_url 即可實現零程式碼策略執行。代理透過閘道器傳遞其提供商的金鑰,所有流量在轉發前經過強制檢查。
- 即時儀表板:基於 Next.js,提供自動重新整理、動畫時間線、成本分解和策略管理。
- CLI 工具:管理執行、狀態、金鑰等。
- 配置檔案:
.steerplane.yml自動發現,無需在原始碼中硬編碼限制。 - 框架整合:支援 LangChain、OpenAI Agents SDK、CrewAI 和 AutoGen,零配置即插即用。
- Docker Compose:一鍵啟動 API、Dashboard 和 PostgreSQL。
- 優雅降級:API 不可用時,SDK 在本地執行所有限制,代理永不無保護。
部署方式
推薦使用 Docker:克隆倉庫,複製環境變數檔案,然後執行 docker compose up -d。API 執行在 localhost:8000,Dashboard 在 localhost:3000,PostgreSQL 自動配置。也可手動安裝 SDK 並啟動 API 和 Dashboard,或使用 CLI 工具。
框架整合示例
- LangChain:使用
SteerPlaneCallbackHandler作為回撥,傳入 agent_name、max_cost_usd 等引數。 - OpenAI Agents SDK:透過
SteerPlaneAgentHooks包裝代理的生命週期。 - CrewAI:使用
SteerPlaneCrewMonitor並設定 step_callback。 - AutoGen:使用
SteerPlaneAutoGenMonitor啟動聊天。
閘道器代理(零程式碼模式)
對於無法修改的代理,SteerPlane 提供相容 OpenAI 的閘道器代理,支援即時流和中段成本強制。代理只需將 base_url 指向閘道器,並在請求頭中傳遞真實的提供商金鑰。閘道器認證 SteerPlane 金鑰後,先執行策略、成本和迴圈檢測,再轉發請求。
策略引擎
策略引擎在產生任何成本之前執行,按嚴格優先順序順序執行:拒絕列表 → 允許列表 → 速率限制。拒絕列表使用 glob 模式,任意匹配立即阻止;允許列表若設定,動作必須匹配至少一個模式才能繼續;速率限制使用滑動視窗計數器,超過閾值後阻止。
執行模式
自託管免費版採用終止模式:任何違規立即確定性地終止。SDK 還提供 enforcement="alert" 選項(暫停 → 通知人工 → 批准/拒絕/延長 → 超時自動終止),這需要託管/企業版的後端支援。指向免費自託管 API 時,警報模式安全地終止執行並返回錯誤。
迴圈檢測和策略違規始終觸發立即終止,無論執行模式如何,這些是不可覆蓋的安全約束。
SteerPlane 的開源 SDK 和免費自託管版為開發者提供了強大的執行時控制,而託管/企業版則增加了人工審批工作流、服務端金鑰保管和 Redis 支援的多工作者閘道器狀態。