RainForest於GitHub公開了純国産AI資安基礎架構「Senda-Argus」的技術預覽版,名為「Senda-Argus Hooks」,此為AI Agent專用的日誌收集函式庫,用於稽核AI Agent的判斷、根據及執行。與Senda-Argus相關的AI Agent執行軌跡收集、判斷過程重構、以及Runtime Audit Event的關聯分析等部分技術,目前正在日本國內申請專利中。 GitHub: https://github.com/rainforest-tokyo/senda_argus_hooks 生成式AI的應用已從單純的聊天功能,進化到透過RAG引用內部資料、透過MCP整合外部工具,以及AI Agent的自主判斷與執行。同時,在企業的資安營運上,「AI Agent為何選擇該工具,以及實際執行了什麼」的稽核與驗證機制變得日益重要。 Senda-Argus Hooks是一款Collector,用於記錄與分析AI Agent利用LLM選擇工具、參考RAG、並呼叫MCP等外部工具的整個流程,以step為單位進行。它能取得LLM輸出的task_summary、reason_summary、selected_tool,並與Agent decision及實際的MCP Tool Call進行比對,從而能夠稽核AI Agent「判斷為何種任務」、「為何選擇該工具」,以及「實際呼叫了哪個MCP工具」。 此外,對於可能包含公司內部重要資訊的資料,如RAG context、prompt本文、MCP result等,預設不會儲存,而是以messages_hash、context_hashes、result_hash、purpose_id等雜湊值(HASH)與元資料(metadata)為中心進行記錄。此舉旨在實現企業環境中Privacy-Safe的AI Agent稽核。 背景:AI Agent時代所需的新型資安稽核 AI Agent透過LLM的判斷,參考RAG,並透過MCP或API呼叫外部工具,能夠比傳統應用程式更靈活且自主地執行業務。 然而,在資安市場上,以下課題已日益顯現: 無法得知LLM為何選擇特定工具 難以追蹤RAG引用了哪些內部文件或知識 難以確認Agent decision與實際Tool Call的一致性 儲存prompt或RAG context會引發機密資訊、個人資訊、客戶資訊的處理問題 透過MCP或外部工具整合,AI Agent的執行範圍不斷擴大 Senda-Argus旨在針對這些課題,成為一個能夠橫跨AI Agent的「判斷」、「根據」、「執行」進行記錄與分析的AI資安基礎架構。 Senda-Argus Hooks的主要特點 1. 記錄LLM的工具選擇理由 Senda-Argus Hooks會取得LLM在選擇工具時回傳的以下資訊: task_summary: LLM如何理解任務 reason_summary: 為何選擇該工具 selected_tool: LLM選擇的工具 selected_tool.arguments: 呼叫工具所需的引數資訊 如此一來,便能稽核「LLM理解了什麼,為何選擇該工具」,而不僅僅是「工具被呼叫了」。 2. 比對Agent decision與實際MCP Tool Call LLM選擇的工具會被記錄為Agent decision,之後再與實際的MCP Tool Call進行比對。 Senda-Argus Hooks透過使用selected_tool_purpose_id與mcp.tool_call.purpose_id,可以確認以下事項: LLM選擇的工具是否與Agent decision一致 Agent decision是否與實際的MCP Tool Call一致 所選工具的目的ID是否與實際呼叫的MCP Tool的目的ID一致 當selected_tool為null時,是否發生了不必要的MCP Tool Call 如此便能確認AI Agent的判斷與執行的整合性。 3. 以Privacy-Safe方式追蹤RAG引用根據 RAG可能引用公司內部文件、知識庫、資安調查資料等重要資訊。 Senda-Argus Hooks預設不會儲存RAG context本文,而是以以下雜湊值(HASH)與元資料(metadata)為中心進行記錄: query_hash context_hash context_hashes document_ids_hash chunk_ids_hash result_hash data_source_hash retriever_name collection_name vector_store score range 如此一來,便能在不儲存本文的情況下,確認使用了哪個R