建構整合
Triggerfish 的設計就是為了擴展。無論您想連接新的資料來源、自動化工作流程、賦予代理新技能,或對外部事件做出反應,都有明確定義的整合路徑——而且每條路徑都遵循相同的安全模型。
整合路徑
Triggerfish 提供五種不同的方式來擴展平台。每種方式都服務於不同的目的,但都共享相同的安全保障:分類執行、汙染追蹤、策略鉤子和完整的稽核日誌。
| 路徑 | 用途 | 最適合 |
|---|---|---|
| MCP Gateway | 連接外部工具伺服器 | 透過 Model Context Protocol 標準化代理到工具的通訊 |
| Plugin SDK | 執行沙箱化的自訂程式碼 | 外部系統的 CRUD 操作、複雜資料轉換、工作流程 |
| Exec Environment | 代理自己撰寫和執行程式碼 | 建構整合、原型設計、測試和在回饋迴圈中迭代 |
| Skills | 透過指示賦予代理新能力 | 可重用行為、社群市場、代理自我編寫 |
| Browser Automation | 透過 CDP 控制瀏覽器實例 | 網頁研究、表單填寫、爬取、自動化網頁工作流程 |
| Webhooks | 接收來自外部服務的傳入事件 | 即時回應郵件、警報、CI/CD 事件、日曆變更 |
| GitHub | 完整的 GitHub 工作流程整合 | PR 審查迴圈、issue 分類、透過 webhooks + exec + skills 的分支管理 |
| Google Workspace | 連接 Gmail、Calendar、Tasks、Drive、Sheets | 內建 OAuth2 整合,包含 14 個 Google Workspace 工具 |
| Obsidian | 讀取、寫入和搜尋 Obsidian 庫筆記 | 分類閘控的筆記存取,含資料夾映射、wikilinks、每日筆記 |
安全模型
每個整合——無論路徑為何——都在相同的安全約束下運作。
一切從 UNTRUSTED 開始
新的 MCP 伺服器、外掛、頻道和 webhook 來源都預設為 UNTRUSTED 狀態。在擁有者(個人方案)或管理員(企業方案)明確為其分類之前,它們無法與代理交換資料。
UNTRUSTED --> CLASSIFIED (審查後,指定分類等級)
UNTRUSTED --> BLOCKED (明確禁止)分類貫穿全程
當整合回傳資料時,該資料帶有分類等級。存取分類資料會將 session 汙染升級以匹配。一旦被汙染,session 就無法輸出到分類等級較低的目的地。這就是禁止降級寫入規則——它是固定的,無法被覆蓋。
策略鉤子在每個邊界執行
所有整合動作都會通過確定性的策略鉤子:
| 鉤子 | 觸發時機 |
|---|---|
PRE_CONTEXT_INJECTION | 外部資料進入代理上下文(webhooks、外掛回應) |
PRE_TOOL_CALL | 代理請求工具呼叫(MCP、exec、瀏覽器) |
POST_TOOL_RESPONSE | 工具回傳資料(分類回應、更新汙染) |
PRE_OUTPUT | 回應離開系統(最終分類檢查) |
這些鉤子是純函式——沒有 LLM 呼叫、沒有隨機性、沒有繞過。相同的輸入永遠產生相同的決定。
稽核軌跡
每個整合動作都會被記錄:呼叫了什麼、誰呼叫的、策略決定是什麼,以及 session 汙染如何改變。這個稽核軌跡是不可變的,可供合規審查使用。
安全 LLM 無法繞過、修改或影響策略鉤子的決定。鉤子在 LLM 層以下的程式碼中執行。AI 請求動作——策略層做出決定。 :::
選擇正確的路徑
使用此決策指南來選擇適合您使用案例的整合路徑:
- 您想連接標準的工具伺服器——使用 MCP Gateway。如果工具使用 MCP 協議,這就是正確的路徑。
- 您需要針對外部 API 執行自訂程式碼——使用 Plugin SDK。外掛在具有嚴格隔離的雙層沙箱中執行。
- 您想讓代理建構和迭代程式碼——使用 Exec Environment。代理獲得一個具有完整寫入/執行/修復迴圈的工作區。
- 您想教代理一種新行為——使用 Skills。撰寫一個包含指示的
SKILL.md,或讓代理自己編寫。 - 您需要自動化網頁互動——使用 Browser Automation。CDP 控制的 Chromium 搭配網域策略執行。
- 您需要即時回應外部事件——使用 Webhooks。傳入事件經過驗證、分類和路由到代理。
這些路徑並非互斥。一個技能可能在內部使用瀏覽器自動化。一個外掛可能由 webhook 觸發。代理在 exec 環境中編寫的整合可以被保存為技能。它們自然地組合在一起。 :::
