AI 寫的程式碼,卻沒有保管鏈
您程式碼庫中由代理草擬的比例正逐漸升高——而軌跡稀薄。是哪位工程師啟動了工作階段?哪個模型?代理讀取、變更或刪除了哪些檔案?它執行了哪些命令、針對哪些系統?對多數團隊而言,誠實的答案是一聳肩,而一聳肩撐不過一次 SOC 2 稽核、一次資安事件,或一位監管者的提問。
代理在工程師的筆電上、以工程師的帳號、用工程師的存取權運作。從外部看,一個代理的提交與一個人類的提交難以區分——直到出了問題,您需要精確重建到底發生了什麼,卻沒有任何東西可供重建。
當一個 AI 代理寫程式、執行命令、碰觸您的 Repo 時,「是 AI 做的」並不是您的稽核員會接受的答案。Bromure 讓每一次工作階段都成為一筆結構化、可歸因的紀錄:誰執行了哪個代理、針對什麼、確切碰了什麼。
您程式碼庫中由代理草擬的比例正逐漸升高——而軌跡稀薄。是哪位工程師啟動了工作階段?哪個模型?代理讀取、變更或刪除了哪些檔案?它執行了哪些命令、針對哪些系統?對多數團隊而言,誠實的答案是一聳肩,而一聳肩撐不過一次 SOC 2 稽核、一次資安事件,或一位監管者的提問。
代理在工程師的筆電上、以工程師的帳號、用工程師的存取權運作。從外部看,一個代理的提交與一個人類的提交難以區分——直到出了問題,您需要精確重建到底發生了什麼,卻沒有任何東西可供重建。
由於代理在一台 Bromure VM 內執行,每一個動作都在邊界被擷取:它建立、修改與刪除的檔案連同 diff;它執行的每一道 shell 命令;它呼叫的每一項工具;它觸及的每一個端點——全都綁定到工程師的身分與所用的模型,集中保存。
完整的對話也一併存檔——提示、模型回應、工具呼叫、整段逐字紀錄——存放於雲端,可供安全部門審閱、工程主管抽樣,並可匯出至您原本就為郵件與聊天保存所餵入的同一座歸檔。AI 輔助的工作變得和您組織所做的任何其他事情一樣可稽核。
按工作階段、按 Repo、按工程師——確切建立、修改或刪除的檔案集合,連同 diff,對應到啟動該工作階段的人與其使用的模型。
代理在 VM 內執行的每一道 shell 命令、讀過的每一個檔案、呼叫過的每一項工具、打過的每一支 API——隨工作階段執行即時擷取。
提示、回應與工具呼叫集中保存,可依團隊、Repo 或模型查詢,並可匯出至您既有的保存歸檔。
每一筆紀錄都帶有工程師的 SSO 身分與裝置,寫入一條僅可附加的串流,您的 SIEM 可以像攝取人類活動一樣攝取它。
當代理人讀取的內容——一個檔案、一個抓回的網頁、工具輸出——或它信任的某份 CLAUDE.md 夾帶了被注入的指令時,Bromure 在裝置端的偵測會把它記錄下來:來源、片段,以及這個請求是被記錄、被標記,還是被攔下。
一次安全審查問了一個簡單的問題:有沒有任何代理曾碰過支付模組,如果有,它做了什麼?沒有 Bromure,那是一個散落在數十台筆電上、無從回答的問題。有了它,那是一次查詢。
每一次代理工作階段都在一台 Bromure VM 內執行,並把它的活動串流到企業伺服器:工程師的身分、模型、每一次檔案讀寫連同 diff、每一道命令、每一個網路目的地,以及完整的提示/回應逐字紀錄。審查者篩選到支付 Repo,就得到每一個碰過它的工作階段——共三個、兩位工程師,連同確切的變更與產生那些變更的對話。
他們抽樣那些逐字紀錄,確認變更已透過正常流程審查並合併,然後把匯出檔附到稽核檔案上。本來會是一場長達數天的鑑識大亂鬥,如今是一次十分鐘的查詢——而由於紀錄防竄改,它能作為證據站得住腳,而不是僅憑回憶。
將 Bromure 指向您自己的 SIEM 或 OpenTelemetry Collector,整份紀錄就會一併過去。代理活動、瀏覽器工作階段與管理稽核軌跡會以 OTLP/HTTP 日誌形式轉發——每個事件都是帶有 OTel 語意屬性、以及您的告警已能理解之嚴重程度的 LogRecord。Bromure 從自己儲存的事件以滾動游標送出,因此端點短暫中斷也不會遺失任何東西。
將您的 OTLP/HTTP 日誌端點告訴 Bromure,若您的 Collector 需要,再提供一組驗證標頭——bearer 權杖、Datadog 金鑰,它要什麼都行。該值以信封加密儲存,且不再顯示。您可選擇要轉發三條串流中的哪幾條。
[otlp]
endpoint = "https://otel.acme.com/v1/logs" # https only
auth_header_name = "Authorization"
auth_header_value = "Bearer <token>" # envelope-encrypted at rest
[otlp.streams]
agentic_coding = true # tool calls, credential use, injection, supply chain
web_sessions = true # managed-browser request metadata
audit = true # admin actions + ingest auth failures每個代理動作都對應到一筆 LogRecord,載有工程師的 SSO 身分、模型、Repo 與動作——並帶有您的 SIEM 可據以告警的嚴重程度。被封鎖的提示注入嘗試會以 WARN 形式抵達,您的偵測管線已在路由它。
{
"severityText": "WARN",
"body": { "stringValue": "prompt_injection · tool output · blocked" },
"attributes": {
"enduser.id": "[email protected]",
"bromure.session.id": "f3a9…ce21",
"bromure.repo": "acme/payments",
"bromure.model": "claude-opus-4-8",
"bromure.event.type": "prompt_injection"
}
}Bromure 從自己儲存的事件、以每條串流的游標轉發,而非從即時攝取路徑。若您的 Collector 當機,保存期內不會遺失任何東西——它恢復後會從最後確認的位置繼續投遞。
stream cursor last forward status
agentic_coding seq:184201 2s ago ok
web_sessions ts:17:42:08 2s ago ok
audit id:90412 2s ago ok
# endpoint outage → backoff + retry, cursor holds
# at-least-once · no loss within retention行銷話術到此為止。以下是每一次 Bromure 部署所仰賴的技術基底——不論您保護的是 BYOD 員工,或是在受監管機構內隔離機密等級,底層都是同一套。
每個設定檔在自己的輕量 Linux VM 中運行,底層是 Apple 的 Virtualization.framework——擁有與主機分離的核心、檔案系統與網路堆疊。基底映像檔是一份經簽章、可重現的 Alpine 建置,透過 APFS 寫時複製在工作階段啟動時複製(磁碟成本近乎為零)。主機無法讀取 VM 記憶體;VM 也無法讀取主機的剪貼簿、檔案系統或網路介面卡,除非設定檔政策明確允許。
註冊與工作階段啟動由您組織已經在用的兩項要素把守。對 Google Workspace、Okta、Microsoft Entra 或 Authentik 的 OIDC / SAML 識別使用者。由您 PKI 簽發、綁定此安裝的每裝置 mTLS 用戶端憑證識別機器。撤銷任一項,下一次工作階段就開不起來——沒有代理程式可以被動手腳、沒有本機政策可以繞過。
工作設定檔——允許的 SaaS 清單、下載/剪貼簿/螢幕截圖姿態、VPN 設定、鍵盤配置、根 CA、網路出站規則——是一份經簽章的宣告式成品。在 Git 裡做版本控管。透過您的 MDM 或 Bromure 設定端點推送。被竄改的設定檔會在簽章驗證時失敗,工作階段拒絕啟動。在使用者機器上執行的內容,與您撰寫的逐位元一致。
每個設定檔擁有自己的虛擬 NIC。可選擇透過主機 NAT、橋接至實體介面,或透過 WireGuard、IKEv2 / IPsec、Cloudflare WARP 建立通道——全都終結於 VM 內部,對主機不可見。再往上可疊加 DNS 覆寫、出站連接埠白名單、LAN 隔離與 HTTP 代理。分段由 hypervisor 強制執行,而不是靠防火牆上的一張貼紙。
每一個請求——時間戳、動詞、URL、狀態、使用者、設定檔、裝置——都在 VM 外部以防竄改的 JSON Lines 串流擷取,送到您既有的記錄匯出端(SIEM、資料湖、保存歸檔)。可選擇僅記錄標頭,或對可疑流量進行完整主體的工作階段錄製。穩定的結構、文件化的欄位,不會因格式被綁在特定廠商身上。
關閉視窗,VM 就被摧毀。權杖、Cookie、快取、下載,以及工作階段中落下的任何惡意軟體都隨之消失。需要保留狀態的設定檔——一組書籤、一個已保存的工作階段、一個已登入的 SaaS——可以選擇加入以 macOS Keychain 鍵控的 LUKS 加密持久磁碟。金鑰永遠不離開使用者的裝置。
Git 顯示最終提交的 diff。Bromure 顯示產生它的整個工作階段——代理讀過但沒改的檔案、它跑過的命令、那些死路、網路呼叫,以及驅動它的對話。Git 告訴你什麼東西落地了;Bromure 告訴你它是怎麼來的,以及一路上還發生了什麼。
是的。工作階段在執行時就串流到您企業伺服器上一條僅可附加的日誌,帶著工程師的 SSO 身分與裝置憑證。工程師無法在事後悄悄修改他的代理做過什麼。
可以——透過 OpenTelemetry 原生支援。將 Bromure 指向您的 SIEM 或 OpenTelemetry Collector 的 OTLP/HTTP 日誌端點,代理活動、瀏覽器工作階段與稽核軌跡就會以帶有 OTel 語意屬性的 OTLP 日誌紀錄形式流入。逐字紀錄則另行匯出至您原本就用來保存郵件與聊天的同一座歸檔。
不會。擷取發生在 VM 邊界,不擋工程師的路。他們照舊執行 Claude Code 或 Codex;紀錄自動累積。