AnyFrame – 為AI代理提供沙箱環境
AnyFrame是官方Python SDK,用於管理AI代理沙箱。它允許用户將代理指向代碼倉庫,並在沙箱中運行Claude Code。該SDK提供了代理管理、會話控制、技能配置、MCP連接器、構建和預覽等功能,支持異步操作,並內置了注意力軌道和錯誤處理機制。
AnyFrame 是 TinyHQ 推出的官方 Python SDK,旨在一站式管理 AI 代理的沙箱環境。通過該 SDK,開發者可以將一個 GitHub 倉庫指向代理,自動構建並啓動一個運行 Claude Code 的隔離沙箱。整個控制平面以 Python 接口呈現,同時兼容同步與異步編程模式。
快速上手
安裝只需一條命令 uv add anyframe,隨後在 Dashboard 中生成 afm_ 前綴的 API 密鑰即可。SDK 支持通過環境變量 ANYFRAME_API_KEY 完成身份驗證,並可選設置 ANYFRAME_BASE_URL。對於已經通過 Web UI 啓動的會話,SDK 可以像第二個客户端一樣附加到同一通道,發送消息並訂閲 SSE 事件流。
核心功能
代理管理
代理是沙箱內運行的基本單元,包含倉庫地址、系統提示、運行時(默認 Claude,也支持 Codex)及環境變量。創建後需要構建才能啓動會話。構建過程將依賴項打包為緩存鏡像,構建日誌可通過 URL 或實時流獲取。
技能與 MCP
技能(Skills)是代理啓動時加載的指令包,用於執行部署、審查 PR 等任務。MCP 服務器可通過代理級內聯配置,或通過用户級連接器(Connectors)統一管理。內置目錄收錄了 Linear、Sentry、Google 等常用服務,支持 OAuth 和 Bearer Token 兩種授權方式。連接器可在代理間切換啓用。
會話與聊天
會話即實時沙箱,生命週期包括啓動、運行、快照和終止。支持“設置會話”用於手動初始化文件系統,並將結果提升為代理的預熱鏡像。會話內提供完整的聊天接口,消息和響應直接代理到沙箱的聊天服務器,事件通過 SSE 實時推送,歷史記錄可隨時獲取。
預覽服務
沙箱內可啓動多個開發服務器,並通過隧道暴露端口。預覽支持命名或端口尋址,提供批量啓動、狀態查詢、日誌查看和停止功能。此接口替代了舊的 serve_* 方法。
高級特性
注意力軌道(Attention Rail)以最新優先的順序列出操作者需要關注的事件,包括待處理權限請求、空閒會話和已暫停會話。憑據管理支持設置 Claude OAuth、OpenAI Codex 令牌以及 GitHub PAT,所有令牌都僅顯示後四位。API 密鑰可通過 SDK 自身管理,創建時返回一次原始值,支持撤銷。
錯誤處理
所有異常都繼承自 anyframe.AnyFrameError,涵蓋 API 錯誤、認證錯誤、404、409 衝突、422 校驗、429 限速以及 5xx 服務端錯誤。限速錯誤明確提供重試等待時間。
AnyFrame 採用 MIT 許可,文檔見 docs.anyfrm.com,Bugs 或問題可通過 Discord 反饋。