Part of Foresite’s From Prototype to Production series, exploring building multi-agent systems in Google Cloud SecOps. What’s Coming in This 5-Part SeriesBuilding on Chris Martin’s foundation of Bring Your Own Agents in Google SecOps SOAR, this series will open up the engineering patterns, mathematical frameworks, and hard-earned lessons from running multi-agent workflows at production scale:
|
Recently, Chris Martin (@thatsiemguy) published an exceptional, must-read blueprint for the security community: "Bringing Your Own Agents into SecOps SOAR Playbooks with Google ADK".
In his article, Chris demystified what it actually means to build an agent - drawing a clean line between simple prompt wrappers and genuine autonomous loops - and demonstrated how Google’s Agent Development Kit (ADK), Model Context Protocol (MCP) tooling, and SecOps SOAR playbooks come together. Near the end of his post, Chris dropped a truth bomb that every security practitioner needs to hear:
"The moment you cross the autonomy threshold, you trade a human-in-the-loop for a metric-in-the-loop. Evals are that metric. Without evals you haven’t crossed the production threshold, you just have a demo that worked the day you showed it."
We couldn't agree more.
At Foresite, we have spent the past year running an ADK-native, multi-agent triage, assess and verdict generation (TAV) engine in live production on Google Cloud Security. Our system processes high-volume, multi-tenant alerts across diverse EDR, SIEM, and cloud environments 24/7. When you take agents out of the lab and into a real Security Operations Center (SOC), you quickly discover that the hardest engineering problem isn't getting an LLM to produce a clever investigation when everything goes right. The hardest problem is what your system does when things are ambiguous, incomplete, noisy, or failing.
Welcome to Part 1 of our 5-part series: "Building Effective Multi-Agentic Security Workflows in Google Cloud Security: Software and AI Engineering Best Practices." Today, we’re tackling the single most critical, least-discussed metric in AI security: When and how your AI says "I don't know."
If you browse the marketing brochures of modern "autonomous SOC" tools, you’ll see impressive claims: 99% accuracy, sub-minute resolution, and total autonomous closure. Yet, talk to any Tier 1, 2, or 3 SOC analyst who has triaged alerts alongside a black-box LLM, and you will hear a different story:
BENIGN because "no malicious IOCs were identified": a classic absence-of-evidence fallacy that masks real intrusion activity.MALICIOUS verdict with near-certainty, even though the script was legitimate administrative maintenance.UNKNOWN with a clear explanation of why the system couldn't decide. But an analyst who is burned by a hallucinated BENIGN or an uncalibrated MALICIOUS verdict will immediately lose trust in the entire agentic system and turn it off.
To make an autonomous agent work in production, you cannot design solely for the developer writing prompts. An Agentic SOC must meet four distinct stakeholders where they actually operate:
Analysts don’t want an AI that acts as an infallible judge; they want a tireless junior partner that surfaces verified facts, extracts signal from noise, and highlights gaps.
UNKNOWN or SUSPICIOUS, alongside actionable continuity notes: "Skipped endpoint deep-dive due to telemetry gap; Stage 2 / human analyst should verify peer host logs and MITRE lateral movement signals."SOAR playbooks require rigid reliability. If an agent endpoint errors out or returns unexpected schema variants, playbooks break.
In production, LLMs experience latency spikes, provider outages, and token quota exhaustion.
(RESOURCE_EXHAUSTED), our agent doesn't drop the alert. It gracefully sheds load to deterministic heuristics, recording the state in a structured degraded_at: [quota_429] telemetry tag.A security leader cannot defend a black-box hallucination to a board or regulatory body.
MALICIOUS, SUSPICIOUS, BENIGN, UNKNOWN) from the operational Judgement (TRUE_POSITIVE, BENIGN_POSITIVE, FALSE_POSITIVE, INCONCLUSIVE). A legitimate administrative script triggering an alert is accurately classified as BENIGN + BENIGN_POSITIVE, rather than being dismissed as a broken rule.
Benign plus benign-positive is a rule doing its job. Filed as a false positive, the same case becomes a tuning ticket that removes a working detection.
How does this look in practice when deployed with Google ADK in Google Cloud?
The models produce observations. The deterministic engine produces the score. A named practitioner authorises anything irreversible.
When evaluating an Agentic SOC in production, the primary metric isn't how fast the agent says "Malicious" on known malware samples. The primary metric is its abstention fidelity:
First verdicts, July 2026. n = 3,724 agent first verdicts, not the 5,445 incident population: coverage reached 94% only in week four.
When an AI agent is calibrated:
What this means for security leadership: Adopting an agentic SOC isn't about gambling on black-box autonomy-it is about establishing a defensible, mathematically auditable operational multiplier that safely scales analyst capacity without introducing silent blind spots.
Are you experimenting with Google ADK, building custom SOAR integrations, or wrestling with autonomous agent reliability in your SOC? Let me know your comments. Let’s connect on LinkedIn.
Stay tuned for Part 2, where we break down the two-stage pipeline architecture and the mathematics of count-ratio scoring!
Foresite's Catalyst Triage Agent returned an explicit "unknown" verdict on about 12% of first verdicts in July 2026, 439 of 3,724, each escalated to a named analyst. Few vendors publish this figure, so no industry benchmark exists. The useful test is whether a vendor measures it at all.
No. It is an escalation rate, and those cases are still resolved by people. In Foresite's July 2026 census the Catalyst Triage Agent returned unknown on 439 of 3,724 first verdicts, alongside 58% benign, 26% suspicious and 4% malicious. A system that never returns unknown is answering questions it cannot answer.
Investigation and reasoning can run autonomously; irreversible or high-impact actions should not. Foresite grants autonomy where actions are reversible and read-only, and requires a named practitioner to authorise anything consequential before it executes. Where that line sits is a design decision, not a limitation of the technology.
A false positive means the detection rule fired on something it was never built to catch. A benign positive means the rule correctly caught the activity it was designed to catch, and that activity turned out to be legitimate. Foresite records the two separately so working detections do not get tuned away.
Yes. The ADK Runner can be invoked from a Python action inside a Google SecOps SOAR playbook, so an autonomous agent executes alongside deterministic automation steps. Chris Martin of Google Cloud documented the pattern in detail, as a community prototype rather than an official Google Cloud release.
Three questions. What is the system allowed to say when it does not know, and at what rate? Where does the autonomy boundary sit, and who drew it? How would a specific automated decision be reconstructed and defended months later? A vendor who cannot answer all three on a call is describing a roadmap.