Day 29 · Bonus 12 May 15, 2026

Agent Sandboxing & Secure Execution

The containment layer. An agent that can call bash on your laptop, write files in your repo, and reach the public internet is a remote-code-execution primitive walking around without supervision. The 2026 stack quietly answered "what stops it?" — microVMs, capability-scoped tokens, intent-flow tracking, and runtime policy enforcement now sit between the model and the operating system. This is the layer your security team will ask about first, and the layer most demoware skips.

Read: ~23 min Level: Senior engineer accuracy Day 29 · Bonus 12
Curriculum progress
29 / 29
01 — Core Concept

If your agent can execute, it must execute somewhere it cannot hurt you

Every production agent eventually crosses the same line: it stops describing what to do and starts doing it — running a shell command, writing a file, calling a paid API, hitting your database. The instant it crosses that line, the model becomes an unauthenticated remote actor inside whatever environment runs the call. That environment is the sandbox, and the sandbox is the only thing standing between a hallucinated rm -rf / and a real one.

Analogy first. Think of a hotel kitchen. The chef (the agent) is brilliant but unsupervised, sometimes confused, and occasionally fed instructions slipped under the door by strangers (prompt injection). You do not give the chef the keys to the safe, the master key to every room, and the wiring closet. You give them: one prep station (filesystem), one set of knives (allow-listed tools), a phone that only dials known suppliers (egress allowlist), a manager who reviews unusual orders (policy engine), and a cleaning crew that resets the station between guests (ephemeral state). That kitchen — not the chef's personality — is what keeps the hotel from burning down. The 2025-2026 industry conclusion is that alignment is the chef, sandboxing is the kitchen, and you need both.

Now precise. Production agent containment is a stack of four mostly-independent layers, each closing a different attack class. Conflating them is how teams ship insecurely while believing they "have a sandbox."

1Layer 1 — Isolation primitive (kernel boundary)

This is the hardware/virtualization boundary that says "code running here cannot read host memory, host disk, or other tenants." The 2026 production-grade default is a microVM — AWS's Firecracker, Google's Kata, or a derivative — which gives each sandbox its own kernel inside a KVM-backed virtual machine, with boot times around 125ms and per-instance memory floors near 5MB. The next tier down is gVisor, a userspace re-implementation of the Linux syscall surface in Go that intercepts and re-services syscalls without exposing the host kernel; faster to start (~50ms) but a wider syscall-compatibility surface to vet. Below that, Docker/runc namespaces share the host kernel and are explicitly insufficient for untrusted agent output — a single kernel CVE breaks isolation for every tenant.

"We use Docker" is not a sandbox claim for agent-generated code. It is a process-isolation claim. The CVE history on container escapes (runc, containerd) is long enough that no mature platform — E2B, Modal, Cloudflare, Daytona, Vercel, Ramp — uses bare runc for untrusted code in 2026.

2Layer 2 — Resource & egress policy (what's reachable)

Kernel isolation stops the sandbox from reading your laptop's SSH key. It does not stop the sandbox from making an HTTPS request to attacker.example.com with that key in the URL — if the key was ever inside the sandbox. Egress policy is the second containment layer: an allowlist of outbound hostnames, an auth proxy that holds credentials outside the sandbox, CPU/memory/wallclock budgets, and disk quotas. The 2026 consensus is "deny all egress by default, allowlist hostnames per task." LangSmith Sandboxes, Cloudflare Sandbox SDK, and Modal Sandboxes ship this; the auth proxy pattern (credentials never enter the sandbox) was popularized by LangChain in March 2026 and is now reference architecture.

3Layer 3 — Capability binding (what the agent is allowed to ask for)

Isolation + egress still allow the agent to do anything its tool surface exposes. Capability binding is the third layer: each tool call carries a capability token that names the resource, the operation, and the data the call is allowed to touch. A summarization agent gets read:email[2026-05-15]; it never receives send:email or write:filesystem. The 2026 reference for this layer is Google DeepMind's CaMeL design (arXiv:2503.18813) — capabilities are propagated alongside data through the agent's planner, so untrusted strings can never silently flow into tool arguments. The motivating finding from arXiv:2604.11839 is that summarization tasks today are routinely overprovisioned by 15× — they receive shell exec, sub-agent spawn, and credential read scopes they will never need.

4Layer 4 — Intent-flow / dual-LLM control (what the model is allowed to plan)

The deepest defense is structural: split the agent into a privileged planner that sees trusted user input only, and a quarantined worker that processes untrusted data but cannot make decisions. The planner emits a typed plan; the worker fills in values from untrusted retrieval; tool calls run only against the planner's structure. This is the "Dual LLM Pattern" (Beurer-Kellner et al., arXiv:2506.08837), and it is what Simon Willison has argued — for over two years — is the only known structural defense against indirect prompt injection. Without it, every retrieved email, document, web page, or MCP-tool output is a potential instruction-source the model cannot distinguish from your prompt.

Layers 1–2 are infrastructure (your platform team). Layers 3–4 are application architecture (your agent team). A vendor "sandbox" demo that ships only Layer 1 is solving the easy half of the problem.

The reference architecture — one diagram

AGENT CONTAINMENT STACK (2026) USER PROMPT ──────┐ HOST / LAPTOP │ ▲ ▼ │ reads ┌────────────────────────────────────────────────────────┐ │ only │ L4 PLANNER LLM (trusted input only) │ │ what │ emits typed plan : [tool, arg_schema, capability] │ │ policy └────────────────────────────────────────────────────────┘ │ allows │ │ ▼ │ ┌────────────────────────────────────────────────────────┐ │ │ L3 CAPABILITY ENGINE policy : allow / deny │ ────┘ │ binds : (subject, verb, object, ttl) │ └────────────────────────────────────────────────────────┘ │ ┌─────────────────────┐ ▼ │ L2 EGRESS PROXY │ ┌────────────────────────────────────────────────────┴──┐ allowlist + auth │ │ L1 MICROVM (Firecracker / Kata) │ credentials hidden│ │ ┌──────────────────────────────────────────────────┐ └─────────────────────┘ │ │ WORKER LLM (untrusted data : retrieved text, │ ▲ │ │ email body, web page, tool output) │ │ │ │ ↓ │ │ │ │ bash / python / file IO (ephemeral fs, no key) │ ───────────┘ │ └──────────────────────────────────────────────────┘ only via proxy │ reset on every turn · ~125ms cold start │ └────────────────────────────────────────────────────────┘ │ ▼ OBSERVABLE TRACE → policy audit, replay, eval

Two reading rules. First, each layer's failure mode is independent — defeating L1 (escape the VM) does not get you past L3 if the tool call never had the capability. Second, L4 is the only layer that addresses the semantic attack: a perfectly isolated sandbox will still happily exfiltrate data if the planner can be tricked into calling send_email(attacker, secret). This is why Willison's "lethal trifecta" framing — private data + untrusted content + egress — keeps surfacing: it is exactly the L4 + L2 + L3 alignment failure.


02 — Papers to Know

Three papers that defined the containment vocabulary

Seminal ICLR 2024 Spotlight
Identifying the Risks of LM Agents with an LM-Emulated Sandbox
Yangjun Ruan, Honghua Dong, Andrew Wang, Silviu Pitis, Yongchao Zhou, Jimmy Ba, Yann Dubois, Chris J. Maddison, Tatsunori Hashimoto · arXiv:2309.15817
Introduces ToolEmu, a framework where a strong language model (GPT-4) emulates tool execution against a curated benchmark of 36 toolkits, 311 tools, and 144 risky test cases — letting researchers stress-test an agent's safety before wiring it to real systems. It gives the field a way to surface failure modes (a banking tool deleting accounts, a code tool wiping disks) without running real banking or real disks. Empirically, 68.8% of failures the LM-emulator flagged corresponded to genuine real-world failures.
Why it matters: Before ToolEmu, "is this agent dangerous?" was a vibes question. After it, the field had a reusable benchmark, a reproducible severity score, and a defensible answer to "did you test it on something risky?" — which is precisely what every enterprise procurement form started asking in 2025.
arXiv:2309.15817
2025 arXiv preprint
Defeating Prompt Injections by Design
Edoardo Debenedetti, Ilia Shumailov, Tianqi Fan, Jamie Hayes, Nicholas Carlini, Daniel Fabian, Christoph Kern, Chongyang Shi, Andreas Terzis, Florian Tramèr (Google DeepMind) · arXiv:2503.18813 · March 2025
Introduces CaMeL (CApabilities for MachinE Learning), a system layer that wraps any LLM and explicitly separates control flow from data flow. CaMeL extracts the control plan from the trusted user query; data fetched from untrusted sources (emails, web pages, retrieval) is tagged with capability metadata and cannot redirect program flow. Capability checks at tool invocation prevent exfiltration to unauthorized destinations. On AgentDojo, CaMeL solves 77% of tasks with provable security against prompt injection, versus 84% for an undefended baseline — a small utility cost for a hard security guarantee.
Why it matters: CaMeL is the first credible answer to "can we have indirect-prompt-injection-proof agents at all?" Critically, the answer is yes, but it requires re-architecting how planning and execution split — not a wrapper or filter. This is the technical foundation under "dual LLM" and "intent-flow" buzzwords you'll hear in 2026.
arXiv:2503.18813
2025 arXiv preprint
Design Patterns for Securing LLM Agents against Prompt Injections
Luca Beurer-Kellner, Beat Buesser, Ana-Maria Creţu, Edoardo Debenedetti, Daniel Dobos, Daniel Fabian, Marc Fischer, David Froelicher, Kathrin Grosse, Daniel Naeff, Ezinwanne Ozoani, Andrew Paverd, Florian Tramèr, Václav Volhejn · arXiv:2506.08837 · June 2025
A practitioner-facing catalog of six design patterns — Action-Selector, Plan-then-Execute, Map-Reduce, Dual-LLM, Code-then-Execute, and Context-Minimization — with concrete trade-offs for utility vs. provable injection resistance. The paper formalizes what production engineers had been doing ad hoc since 2024: structurally constrain what the agent can do before it sees untrusted data, instead of trying to filter the data after.
Why it matters: This is the playbook your engineering team should read before designing a new agent. Simon Willison's "lethal trifecta" tells you when you're in danger; this paper tells you which six patterns get you out — and how much utility each costs.
arXiv:2506.08837
A useful reading order: ToolEmu to learn the threat surface, the Design Patterns paper to learn the responses, CaMeL to see the strongest known response implemented end-to-end.

03 — GitHub Pulse

Where the sandbox layer is being built

firecracker-microvm/firecracker ~33K ★
AWS's KVM-based microVM monitor — boots in ~125ms, <5MB memory floor. Runs Lambda and Fargate in production.
The default isolation primitive under every serious agent sandbox cloud. If a vendor doesn't use this or Kata, ask why.
google/gvisor ~17K ★
Userspace Linux-compatible application kernel in Go that intercepts syscalls before they reach the host.
Faster cold start than microVMs but wider syscall-compatibility surface to audit. Powers Cloud Run / App Engine / Cloud Functions.
e2b-dev/E2B ~11K ★
Open-source Firecracker-based sandbox cloud aimed at AI agents. Reports ~150ms cold start from pre-warmed snapshot pools.
The reference "agent code interpreter" stack. Raised $21M Series A in July 2025 — pricing pressure on every closed competitor.
daytonaio/daytona ~72K ★
Secure, elastic infrastructure for running AI-generated code. Stateful snapshots, ~200ms startup, AGPL-licensed.
Pivoted from dev-environments to AI sandbox in 2025; benefits from the inherited star history but the product is now squarely agent-runtime.
cloudflare/sandbox-sdk Actively maintained
Edge-network sandbox SDK callable from Workers. Native bindings for OpenAI Agents, Claude Code, and gpt-oss code-interpreter.
First sandbox primitive that lives in the same isolate runtime as the agent itself — sub-100ms RTT between agent and tool execution.
kubernetes-sigs/agent-sandbox Actively maintained
SIG-sponsored Kubernetes controller for isolated, stateful, singleton workloads designed for agent runtimes.
The "agent sandbox as first-class K8s primitive" play. Watch this — if it lands as a stable API, enterprise sandboxing becomes a kubectl problem.
ryoungj/ToolEmu Actively maintained
Reference implementation of the ICLR 2024 emulated-sandbox safety benchmark. 36 toolkits, 311 tools, 144 risk scenarios.
Don't ship a high-stakes agent without running it through this. It's the closest thing the field has to a UL-listing for tool-using agents.
google-research/camel-prompt-injection Actively maintained
Reference implementation of CaMeL — capability propagation through agent planners as a prompt-injection defense.
The CaMeL paper's code drop. If you're building a high-trust agent, this is the architectural baseline to copy.
Counts as of mid-May 2026. Star counts on infrastructure repos move slowly; verify before quoting in a board deck. The Daytona number is unusually high because of the pre-pivot history.

04 — Community Pulse

What the practitioners are saying right now

Simon Willison — "The lethal trifecta for AI agents" · June 16, 2025 (referenced through May 2026)
"Any time you have an LLM system that combines access to private data, exposure to untrusted content, and the ability to externally communicate, an attacker can trivially trick that system into stealing your data on their behalf."
Willison's formulation became the standard mental model in 2025–2026 — every agent security postmortem this year (IBM Bob, Superhuman AI, Notion AI, Claude Cowork in January 2026 disclosures) traced to one trifecta combination. Source: simonwillison.net/2025/Jun/16/the-lethal-trifecta/
Harrison Chase — LangSmith Sandboxes launch · 2026
Chase has argued that there are two distinct architectures for sandboxing agents — agent-inside-sandbox (your whole loop runs in the VM, fast iteration) versus sandbox-as-tool (the agent stays on the host, the VM is just one tool it calls, easier credentials handling) — and that most teams pick the wrong one for their threat model. LangSmith Sandboxes ships hardware-virtualized microVMs with an Authentication Proxy so credentials never enter the sandbox.
Paraphrased from the LangSmith Sandboxes launch post on the LangChain blog (May 2026). The auth-proxy pattern is the architectural detail to copy regardless of vendor.
Simon Willison — on coding-agent sandboxing · 2026
Willison has argued that coding agents should run in a robust sandbox by default that restricts file access and network connections deterministically, rather than relying on prompt-based or model-side protections. Claude Code's /sandbox command (Seatbelt on macOS, bubblewrap on Linux) is his current example of OS-level isolation done right.
Position taken across multiple May 2026 entries on simonwillison.net; consistent through the Code w/ Claude 2026 live blog of May 6, 2026.
OWASP Agentic AI Top 10 · referenced May 2026
The 2026 guidance states explicitly: never execute agent-generated code without strict sandboxing, input validation, and allowlisting; code execution sandboxes should run in isolated containers with no network access and minimal system privileges by default.
OWASP's framing is the one your CISO will quote. Translating it: deny-egress-by-default is no longer optional in enterprise procurement.

05 — Platform Deep-Dive

How the four frontier platforms ship containment in 2026

Claude
Anthropic
Cowork mode runs each session inside an independent Linux VM using Apple's Virtualization Framework — kernel-level isolation between your computer and the agent. Claude Code ships a native /sandbox command using OS-level primitives (Seatbelt on macOS, bubblewrap on Linux) for filesystem + network restriction. Bash tool output is sandboxed in an Ubuntu 22 container with a fixed mount layout. After the January 2026 Cowork prompt-injection disclosure, Anthropic published a hardening guide and tightened the default egress allowlist. The architectural bet: VM-per-session for general agents, OS-primitive sandbox for coding agents.
OpenClaw
Open ecosystem
SKILL.md skills are loaded into hub-and-spoke runtimes that increasingly require declared capability scopes (required_scopes in frontmatter). The 9 CVEs of 2025 and the 1,184 malicious-skill takedown drove the ecosystem to mandate skill signing, deny-by-default outbound, and per-skill capability tokens. Skills now ship with an explicit allowed_egress list; runtimes that ignore it (still common in self-hosted setups) remain the soft underbelly. This is exactly the L3 + L2 layers above, retro-fitted to a plugin ecosystem.
Codex / GPT-5.4
OpenAI
The April 2026 Agents SDK update added a first-party sandbox primitive — a managed code-execution environment with explicit allowlists and network policies — addressing the long-standing gap that Code Interpreter only covered Python in a single fixed image. Apps SDK components render in sandboxed iframes; tool calls return typed results, not raw HTML, which closes the (a)-mode XSS surface from Day 28. The architectural bet: standardize on a single managed sandbox plus the Apps SDK component contract, push everyone toward Layer 3 capability binding via tool schemas.
Gemini 3.1
Google DeepMind
CaMeL (arXiv:2503.18813) is the research lineage; the productized version surfaces as capability metadata on every tool call in Gemini's agent runtime — data tagged at retrieval-time, capability checks enforced at the tool boundary. Combined with Vertex AI sandboxed code execution (gVisor-based) and A2UI's declarative-render constraint, Gemini's stack is the most explicitly capability-flow-aware of the four. The bet: structure the prompt-injection problem out of existence at the architecture level.
Cross-platform pattern: the agents that handle untrusted retrieval well in 2026 ship both a microVM-class isolation primitive and a capability/tag system on the tool surface. Vendors with only one of the two ship demos, not production.

06 — Vocabulary

10 terms to use precisely

microVM (Firecracker, Kata) 微虚拟机
A KVM-backed virtual machine stripped down to seconds-or-faster boot and tens-of-MB memory, with its own kernel. Each tenant gets a fresh kernel; container escapes don't traverse.
⚠ Common misuse: calling a Docker container a "microVM." Docker uses Linux namespaces and shares the host kernel — totally different threat model.
"We give every agent run its own Firecracker microVM; cold start is ~150ms after we added snapshot pools."
gVisor 用户态内核沙箱
A Go-written userspace kernel that intercepts syscalls before they hit the host. Lighter than a microVM, wider compatibility surface to audit.
⚠ Common misuse: treating gVisor as equivalent to a microVM for adversarial workloads. gVisor's syscall surface is the audit boundary; an unimplemented or buggy syscall is the escape path.
"Cloud Run uses gVisor by default — fast cold starts at the cost of a Go-implemented syscall layer to vet."
Lethal trifecta 致命三件套
Simon Willison's 2025 framing: an agent with (private data) + (untrusted content) + (egress) is structurally exfiltratable, regardless of prompt-level defenses.
⚠ Common misuse: "we have a sandbox, so the trifecta doesn't apply." Sandboxing addresses code execution, not data flow. The trifecta is about which data can leave, not which code can run.
"Our connector pulls Notion, the LLM reads web pages, and we allow outbound HTTPS — that's full trifecta exposure, ship-blocking."
Capability token 能力凭证
A typed, scoped credential bound to a specific operation, resource, and TTL. The agent presents it on every tool call; the runtime allows or denies based on the binding.
⚠ Common misuse: confusing capability tokens with OAuth scopes. OAuth scopes live with the user identity; capability tokens are per-task, often per-tool-call.
"The planner emitted capability:read:gmail.threads[2026-05-15] with a 60-second TTL — the worker can't escalate it."
Dual-LLM pattern 双 LLM 模式
A privileged planner LLM sees only trusted input and emits a typed plan; a quarantined worker LLM processes untrusted data and fills variables in the plan, but cannot redirect control flow.
⚠ Common misuse: stacking two ordinary LLM calls and calling it "dual LLM." The pattern requires the planner's output to be a typed plan with bound capabilities — not free text.
"We refactored to dual-LLM after the Notion injection — the planner never sees retrieved content, only summaries with capability tags."
Egress allowlist 出站白名单
An explicit list of destinations the sandbox is permitted to reach. Default deny — any other DNS lookup, TCP connect, or HTTP request fails.
⚠ Common misuse: allowlisting *.googleapis.com because "Google services are safe." Drive, Sheets, and Apps Script are all on that wildcard — and any of them can host attacker-controlled documents.
"The sandbox can hit our API and PyPI mirror — that's the entire allowlist, and even those go through the auth proxy."
Auth proxy / credential proxy 凭证代理
A proxy that sits between the sandbox and external services; secrets live in the proxy, not the sandbox. The sandbox makes unauthenticated calls; the proxy authenticates them on the way out.
⚠ Common misuse: "we just mount the secrets as env vars in the VM." If the worker LLM can be tricked into reading $OPENAI_API_KEY, the proxy was the whole point.
"After the May 2026 LangSmith update we moved every secret behind the auth proxy — the sandbox VM has no keys anywhere on disk."
Snapshot pool 快照池
Pre-booted microVM snapshots ready to be cloned on demand, dropping effective cold start from seconds to ~100-200ms.
⚠ Common misuse: implying snapshot reuse is multi-tenant by default. Each clone is its own copy-on-write; what you must verify is the pool's warm-up image contains no secrets.
"E2B's 150ms p50 isn't from raw Firecracker boot — it's from snapshot-pool cloning."
Ephemeral state 易逝状态
Filesystem and memory state that is destroyed at the end of every task. Required to prevent stored prompt-injection from one user persisting into the next.
⚠ Common misuse: confusing "no persistent volume" with "ephemeral" — if the VM is reused across users, the /tmp directory is a covert channel.
"Cowork mode wipes the workspace between sessions — ephemeral by default, persistent only by explicit user folder mount."
Indirect prompt injection 间接提示注入
Adversarial instructions embedded in data the agent retrieves (an email, a webpage, a tool output) — not in the user's prompt — that hijack the agent's behavior.
⚠ Common misuse: defending against direct prompt injection (user types "ignore previous instructions") and claiming the indirect variant is handled. They are different attack surfaces and need different defenses.
"The Notion AI exfil from January 2026 was textbook indirect prompt injection — instructions embedded in a teammate's page."

07 — Expert Questions

Five questions that earn "good question" from a security architect

Q1
Where does your egress allowlist live — in the sandbox image, in the host, or in a proxy — and which one survives the worker LLM being prompt-injected to disable it?
If the worker can iptables -F, the allowlist was decoration. Real allowlists live outside the sandbox's authority — usually in the host's network namespace or a separate egress proxy.
Q2
In your dual-LLM split, where exactly is the trust boundary — at retrieved-string ingestion, at tool-call construction, or somewhere in between? And what enforces that boundary at runtime?
"Dual LLM" is meaningless without a typed plan with bound capabilities. The answer should be: planner emits a structured plan with capability tokens, worker fills values, runtime validates that tool calls match the typed schema. Anything fuzzier is rhetoric.
Q3
What's your sandbox cold-start budget for an interactive agent turn, and what's the architectural trade you made to hit it — snapshot pools, warm reuse, or a lighter isolation tier?
Reveals whether they understand the cold-start-vs-isolation pareto frontier. Snapshot pools (E2B, Modal) buy you ~150ms at full VM isolation; warm reuse hits 10ms but introduces cross-task contamination risk; gVisor sits in between.
Q4
How do you handle the case where a sandbox VM legitimately needs to call your own API — does your auth proxy issue a per-task scoped token, or does the VM carry a long-lived credential?
A long-lived credential inside a sandbox that reads attacker-controlled data is the lethal trifecta with extra steps. The right answer involves an STS-style flow: the proxy mints a short-TTL, narrowly-scoped token bound to the specific task.
Q5
What's your eval methodology for the sandbox itself — ToolEmu? AgentDojo? An internal red-team set? And what's the failure-rate you ship with?
"We tested it manually" is not an answer. ToolEmu (arXiv:2309.15817) and AgentDojo are the public benchmarks for tool-use safety; CaMeL's 77%-with-provable-security number is the bar to beat. A serious team will know which benchmark, which version, and their score relative to baseline.

08 — CGO Lens

What this means for botlearn.ai's positioning

Agent sandboxing has moved from "security checkbox" to "the procurement question that gates every enterprise deal." The CISO is now in every agent purchase loop, and the questions converge: where does the code run, who controls egress, where do secrets live, and what happens when the model is wrong? botlearn.ai's product surface — wherever it executes generated code or reaches the customer's data — needs answers ready in slide form.

PProduct positioning — turn the sandbox into a feature, not a footnote

The current default in the market is to bury sandbox architecture in a security whitepaper buyers never read. The winning move in 2026 is the opposite: lead with a one-page architecture diagram (use the L1–L4 stack from Section 1) and let CISOs feel like they're talking to engineers, not salespeople. Borrow from how Modal, LangSmith, and Cloudflare market their sandbox primitives — explicit microVM mention, explicit egress-allowlist behavior, explicit secret-handling. Botlearn's pitch deck slide on "where does the code run" should match that bar.

SSales — the L1–L4 question ladder is your discovery framework

When an enterprise prospect surfaces an "agent security concern," they almost always mean one of the four layers — usually L2 (data exfiltration via egress) or L4 (prompt injection from their own internal docs). Map their concern to a layer, name the layer, name the defense; you'll close faster than the vendor who launches into a 40-slide compliance pack. Practical script: "Are you worried about (a) the code escaping the sandbox, (b) the agent calling places it shouldn't, (c) it doing the wrong thing with the right access, or (d) someone hiding instructions in your knowledge base?" Each maps to exactly one layer.

CCompetitive — frame the lethal trifecta against connector-heavy competitors

Every competitor pitching "we connect to all your tools" is selling more lethal-trifecta surface area without saying so. botlearn.ai can flip this: instead of "we connect to N tools," lead with "every connector ships with capability scoping and egress allowlisting by default." The OWASP Agentic AI Top 10, the January 2026 Notion/Superhuman/Cowork disclosures, and Willison's trifecta framing are all reusable air-cover for that pitch. The buyer's existing fear is your selling weapon.

RRoadmap — three asks for engineering this quarter

If you're choosing where to spend engineering cycles for the next 90 days based on this curriculum, the sandbox layer is the highest-leverage place: (1) document and diagram your L1–L4 stack today, even if some layers are thin — naming them is half the sales pitch; (2) implement the auth-proxy pattern if you haven't (no credentials in any execution environment, ever); (3) run your most exposed agent through ToolEmu and AgentDojo before your next CISO conversation so you can quote a number rather than a vibe. None of these is months of work; all three are differentiators in the May-July procurement cycle.

Boardroom-ready sentence: "Our containment layer is a hardware-virtualized microVM per task with deny-by-default egress, capability-scoped tool tokens, and a dual-LLM control split — that's why our enterprise prompt-injection eval beats undefended baselines by 30+ points." Three sentences from here gets you to a renewal.

09 — Curriculum Tracker

29 days into the agent stack

D01Full Agent Stack
D02Memory Architecture
D03Planning & Tool Use
D04RAG Deep Dive
D05Agent Frameworks
D06Benchmarks & Eval
D07Multi-Agent Systems
D08Computer Use Agents
D09Code Agents
D10Long-Horizon Tasks
D11Agent Safety
D12Agent Economics
D13Research Frontiers
D14OpenClaw Deep-Dive
D15A2A Protocols
D16Agentic Commerce
D17Synthesis
D18Reasoning Models & TTC
D19Agent Observability
D20Voice & Realtime Agents
D21Agent RL & Fine-tuning
D22Context Engineering
D23Open-Weight Agent Models
D24Deep Research Agents
D25Async Agents
D26Agentic Browsers
D27Embodied & VLA Models
D28Generative UI & Agent Interfaces
D29Agent Sandboxing & Secure Execution
Day 29 closes the security trilogy started on Day 11 (Agent Safety) and reinforced on Day 14 (OpenClaw's CVE story). Day 11 was the threat landscape; Day 14 was a case study; Day 29 is the infrastructure response. Tomorrow's directions on the table: agent identity & authn protocols (the natural sequel — who is this agent and what is it allowed to be?), vertical agents (legal/medical/finance go-to-market), or world models for planning. Pick the one your next enterprise conversation will turn on.