SocialHub.AI
工程參考 · Socialhub Harness

運行所有 AI 執行器的運行時環境

模型賦予您語言。但它本身無法可靠地基於您的真實數據,無法選擇正確的工具並正確調用,無法在調用失敗時恢復,無法完成多步驟任務,也無法留下可重現的軌跡。 Socialhub Harness 是 企業代理運行時,它能完成所有這些——它是將功能強大的模型轉化為可靠代理的執行引擎。

每個人工智慧演員 Flash ——行銷、忠誠度和風險管理人員、會員服務專員以及所有幕後工作人員——都是 代理定義:一個結構化的藍圖(模型路由、上下文來源、技能、工具,每個都有其範圍), MCP 表面、工作流程、記憶體和循環策略) 這 運行時執行。由於每個參與者都透過同一個運行時運行,因此治理不是一個獨立的產品,而是統一執行的結構屬性: 模型提供語言;運行時提供行動;統一的運行時免費提供治理。

此參考是開發人員對該運行時的看法 - 它在執行時做什麼、它執行的定義類型及其軸、技能如何組成執行的步驟、每次運行發送到事件日誌中的可重現軌跡,以及在一個地方運行所有內容的防護措施。有關業務概述,請參閱Socialhub Harness產品頁面。

運行時在執行時執行的操作

從這裡開始,因為這就是整個系統的意義。當運行開始時,Harness 運行時會完成語言模型本身無法完成的工作——按順序完成以下五件事——結果就是完成一項任務和一個你可以重播的軌跡。

1 · Context assembly

運行時為參與者提供基礎:它會在每次運行中整合簡報和真實的業務資訊——任務、成員/細分匯總、品牌工具包、指標——並最大限度地減少個人識別資訊 (PII)。模型不會猜測您的數據;它直接接收數據。

2 · Model routing

運行時會根據定義名稱,決定每個步驟由哪個推理引擎執行(以及備選方案)。路由是運行時的任務,而不是提示器的任務。

3 · Skill composition into steps

運行時會將組合技能的有序步驟和決策指導注入到提示中,因此執行的是已命名的、版本化的流程,而不是模型即興生成的任何內容。

4 · The tool loop

運行時驅動選擇-調用-觀察循環:它選擇一個受管理的工具,檢查權限,調用它,讀取結果,並在失敗時恢復或升級——這是裸模型調用所缺乏的可靠性。

5 · A reproducible trajectory

每個步驟都會按順序記錄到僅追加的事件日誌中,並帶有運行 ID 和確切的藍圖版本,因此運行過程可審計,並且可以逐步重播。

模型提供語言;運行時提供行動;統一的運行時免費提供治理。 以下所有內容——運行時執行的定義、技能的組成方式、生成的事件日誌以及所採取的措施——都源於這五個步驟,它們在一個地方對所有參與者統一運行。

代理定義剖析-運行時執行的操作

執行時間執行一個定義:一個結構化的藍圖——不是程式碼,也不是自由格式的提示——它由以下部分組成。編輯其中任何部分都會產生一個新的版本化藍圖,運行時會在下次運行時使用該藍圖;版本資訊會標記在每次運行時發出的每個事件上。

藍圖部分它的組成
模型路由執行每個步驟的推理引擎 — 以及回退方案。它指定模型名稱;運行時負責解析模型。
上下文來源操作者從任務、會員/細分市場匯總、品牌工具包、指標等資訊出發,每次運行都會進行匯總,並最大限度地減少個人識別資訊 (PII) 的洩漏。
技能建構到參與者身上的結構化劇本(見下文)。命名流程,而非自由格式提示。
工具受監管的行為-每項行為都有其適用範圍。定義中僅列出工具名稱,並未授予任何使用權。資料庫是最終的權威來源。
MCP平台哪些工具透過模型上下文協定公開給持有範圍金鑰的外部代理,以及在哪些齒輪下。
工作流程運行時驅動的有序步驟或圖表——聲明、閱讀、決策、行動、完成——適用於工作清單和協調參與者。
記憶體參與者可能在不同步驟和運行中保留哪些訊息,以及每次都必須重新讀取哪些資訊。有界數據,並非個人識別資訊 (PII) 的草稿紙。
循環策略停止規則:最大步數、預算上限和升級到人工幹預的條件。運行時強制執行此規則;參與者無法擴展此規則。

它命名功能;它從不授予權限。 定義可以引用工具、模型或資料來源,但此工作區和此鍵是否實際可以使用它們,由運行時在呼叫時根據資料庫進行解析。藍圖是組合表面;由於運行時在一個地方解析權限,因此下面的保護措施可以自動生效。

一種定義類型,從三個維度進行描述

每個 Actor 都只有一個 Definition 型。它不會根據角色進行分支——它是沿著正交軸 描述 的,因此無論 Actor 是外部代理、Flash 循環內部的 Actor 還是單次生成器,都適用相同的運行時、事件日誌和保護機制。

Axis值它捕獲了什麼
runtimeFormmcp_external · server_orchestrator · inline_function定義的執行方式。 mcp_external = 持有作用域鍵的外部代理,透過 MCP 呼叫。 server_orchestrator = 執行時期逐步驅動的 Flash 內部循環。 inline_function = 在螢幕流程中呼叫的單次產生器。
agentTypeemployee · chatbot · function對企業而言,員工 = 您管理的指定員工(目標、任務、回饋)。聊天機器人 = 基於真實數據的對話式介面。函數 = 沒有角色的單一用途產生器或分類器。
技術類agent · generator · embedded · custom · workflow藍圖的工程分類-可以是組合式多步驟代理、內嵌生成器、嵌入式功能、工作區自訂定義或多步驟工作流程圖。
業務領域8 個域之一(右側)服務以下業務部門:行銷與活動、忠誠度與顧客維繫、風險與合規、會員服務、內容與創意、顧客洞察、分析與洞察、研究與模擬。

40 多位受管參與者,一個模型。 即時名冊包含 5 個組合代理(多步驟、伺服器編排:四個管理器加上成員服務專員),28 個內聯函數(貫穿整個產品的單次產生器和分類器),以及 8 個嵌入式功能(螢幕上的流程輔助工具)。它們都屬於相同的定義類型,僅在上述維度上有所不同。

技能:編寫到代理上的資料庫權威劇本

技能是一種 結構化操作手冊這些資訊儲存在資料庫中,並像發給新員工標準作業程序 (SOP) 一樣,被加入到代理人的工作流程中。它不是一段提示文本,而是一份包含以下部分的文本記錄:

trigger

此技能適用於目前運行的條件。

required state

成員/業務狀態是技能正常運作的必要條件-如果缺少此狀態,則技能將無法正常運作。

tool allowlist

此技能可使用的代理工具子集-是藍圖現有允許範圍的縮小,而非擴大。

ordered steps

運行時按順序執行的過程。

verifier rules

步驟完成前必須通過的檢查。

decision guidance

如何選擇——包括何時暫停或升級——以指導性語言呈現,而非硬編碼分支。

在運行時,運行時 - 因此執行的不是“模型提出的任何內容”,而是您的團隊可以閱讀和批准的命名的版本化過程。由於技能是​​資料庫權威的,因此相同的技能可以組合到多個代理上,並且更改它會更改使用它的每個代理 - 無需重新部署。

運行時的輸出:可復現的軌跡

產生可重播軌跡是運行時執行的第 5 步——它也是您的稽核證據。無論參與者是誰,無論它如何運行,每次運行都會向單個僅追加事件日誌 (event log)) 中發出事件流。每個事件都帶有運行 ID (run ID) 和產生它的精確藍圖(定義)版本 (exactious blueprint (defineition) version) 的標記——因此,每次運行都是可審計和可重播的。運行發出的事件類型如下:

01運行開始02用戶意圖03上下文已載入04已選擇型號05提示已組裝06原因07權限檢查08工具名稱09工具結果10行動/結果11成本12運行結束

除此之外,日誌還記錄了 鏡像 MCP 工具調用 (當演員開車時) Flash 超過 MCP)以及結尾 業務成果 ——因此,從意圖到結果的軌跡,就存在於一個地方。

// one run's trajectory (abbreviated — every event carries runId + definitionVersion)
{
  "runId": "run_a1f9…",
  "definition": "loyalty-manager",
  "definitionVersion": 4,
  "events": [
    { "type": "run_started",     "at": "2026-08-26T09:14:02Z" },
    { "type": "user_intent",     "intent": "work the win-back worklist" },
    { "type": "context_loaded",  "sources": ["task", "member_rollup", "churn_signal"] },
    { "type": "model_selected",  "model": "…" },
    { "type": "prompt_assembled","skill": "winback-worklist-execution" },
    { "type": "reasoning",       "summary": "high value, at-risk, consented" },
    { "type": "permission_check","tool": "issue_coupon", "result": "allowed" },
    { "type": "tool_called",     "tool": "issue_coupon", "args": { "value": 10 } },
    { "type": "tool_result",     "ok": true },
    { "type": "cost",            "tokens": 3120, "usd": 0.04 },
    { "type": "run_ended",       "outcome": "coupon issued · within budget" }
  ]
}

透過 Flash 應用程式查看跑步軌跡。按 ID 取得單次跑步紀錄,或列出最近跑步紀錄:

# one run's full trajectory
GET https://flash.socialhub.ai/api/flash/agent-runs/{runId}

# list recent runs
GET https://flash.socialhub.ai/api/flash/agent-runs

日誌條目永遠不會被編輯,只會追加——它完整記錄了每個參與者的操作及其原因,可以根據帶有印章的運行 ID 和藍圖版本逐步還原。

免費治理:五項故障關閉防護措施

這是統一運行時的回報。由於每個參與者的執行都經過一個運行時,因此安全層不必固定在每個代理上 - 它是所有操作都經過的單一位置的結構屬性。這五個守衛是代碼擁有的,在每個動作中都在每個演員的領導下運行,沒有任何設定可以關閉它們。定義的組成——它的技能、工具、模型和上下文——是您在AI員工控制台中配置的;下面的守衛則不然。

守護它強制執行的內容
授權範圍 × 計劃級別每次工具呼叫都會根據鍵的作用域和工作區的計畫層級進行檢查。定義中指定了工具的名稱;執行該工具的權限儲存在資料庫中,並在呼叫時解析。鍵無法存取的工具會被隱藏。
寫入值上限+比率價值轉移寫入(積分、優惠券)受每次呼叫價值上限和每個鍵入速率限制的約束,這兩個限制均在伺服器端強制執行,且與參與者的提示或用戶端確認聲明無關。
預算帳簿每次運行都在代幣+成本預算內執行,預算在參與者行動之前預先充值,並在運行過程中消耗。當帳本耗盡時,運作停止——參與者永遠不會揮霍無度。
終止開關任何參與者——無論是整個定義還是單一操作——都可以立即暫停。預設關閉,開啟時會設定上限,並且可以隨時停止。
審核每個步驟都會連同運行 ID 和確切的藍圖版本一起寫入僅追加的事件日誌。 Actor 的任何操作都不會被遺漏,也沒有任何設定可以阻止日誌條目的產生。

在 /flash/agents. 配置組成。 AI 員工控制台用於編輯角色的技能、工具、模型和上下文——產生新的版本化藍圖。但您永遠無法在此處編輯安全底線:上述五項安全措施是在程式碼中強制執行的,而不是在設定中。

Harness 與平台其餘部分的配合

Harness 是每個 AI 執行器的執行執行時間環境,並且由於所有操作都透過它運行,因此它也是治理層。兩個相鄰的參考資料涵蓋了它所依賴的組件:

  • MCP 表面。 mcp_external 參與者持有作用域金鑰,並透過模型上下文協定呼叫 Flash 的受管工具。端點、驗證、用戶端設定和完整的工具目錄位於 MCP 整合指南 中。
  • 授權機制與審核。 操作級授權機制(自動/審核/禁止)、待處理/已拒絕的寫入語意以及位於授權保護層之上的審批生命週期,均在 AI 治理:內省與審批 中有詳細說明。