Patched for Whom
Operator Brief
The whole field spent the week hardening the boundary around the agent -- path escapes, approval bypasses, self-approval, subagent containment -- and then split on who receives the hardening: OpenHands patched cloud-only while its OSS line stayed frozen, Hermes tagged none of its security wave, Gemini split within its own repo, and Codex kept its substance in alpha. The sharpest case is a lifecycle event: on June 18 Google discontinued consumer Gemini CLI, the auditable one, and force-migrated individuals to closed-source Antigravity, which hardened one approval gate and auto-opened another in the same release train. Quieter underneath: Claude Sonnet 5 became Claude Code's default and reached Pi within days.
- Upgrade / check
- OpenHands: determine your channel. The dependency-CVE fixes are tagged on cloud (1.39.0, 1.40.0) only; the OSS line is frozen at 1.8.0 and a new authlib CVE already sits untagged on main. On Cloud you are covered; on the 1.8.0 tag you are unpatched with no OSS tag to move to. Signal
- Claude Code: upgrade to 2.1.196+. It closes an MCP self-approval hole (
claude mcp list/getno longer spawn.mcp.jsonservers a repo self-approves) and binds Remote Control to the Anthropic host. Re-audit MCP trust in any workflow that opens untrusted repos. Signal - Gemini CLI (OSS): upgrade to v0.49.0 for the skill path-traversal fix (finally stable after two windows in preview) and migrate
coreTools->tools.core. If you were a consumer, this fix is not for you -- your service ended June 18 and your path is Antigravity. Signal - Codex: 0.142.2 gates uninspectable PowerShell behind approval. Re-audit unattended Windows pipelines before upgrading -- commands that ran silently may now prompt or refuse. Signal
- Try
- Paperclip: v2026.626.0 tags its previously master-only control plane. Wire the hard daily run-count and cost ceilings to bound runaway spend, and adopt the
skills:createpermission split (separated fromagents:create). Signal - Know your default model changed: Claude Code 2.1.197 makes Sonnet 5 the default with native 1M context, and Pi 0.80.3 adds support. If you pin models for cost or behavior, set it explicitly rather than inherit the new default. Signal
- Paperclip: v2026.626.0 tags its previously master-only control plane. Wire the hard daily run-count and cost ceilings to bound runaway spend, and adopt the
- Watch
- Whether the auditable path keeps closing. Google retired the open consumer Gemini CLI for the closed Antigravity binary, whose subagents can now auto-approve their own artifacts -- a control you must trust rather than read. Watch whether closed governance publishes anything a third party can verify. Signal
- Whether the channel split keeps widening. Hermes' security wave is main-only, OpenHands' fixes are cloud-only, Codex's substance is alpha-only: three providers, three different channels where the fix lives and the tagged binary does not. Signal
- Uncertain
- Antigravity's enforcement is unverifiable by inspection: it is closed source, so its approval and sandbox claims rest on a changelog, not readable code. The subagent auto-approve and strict-matching changes are quoted from release notes, not confirmed by a local probe.
- The OpenHands CVE IDs are read from release notes and a commit title; the fixes are verified present on the cloud tags and main, but each advisory was not independently resolved, and there is no fixed OSS tag to point self-hosters to.
- Whether Google keeps the open-source gemini-cli repo maintained now that its consumer service is gone. This window it shipped actively (v0.49.0, nightlies), but the announcement said nothing about the repo's long-term fate.
A coding agent is a machine for doing things you did not approve one at a time. The work of the last several months has been building the layer that decides which of those things it may do -- approvals, sandboxes, permission scopes, audit trails. This window that layer thickened almost everywhere at once. Hermes closed a path escape and a command-approval bypass. Claude Code sealed an MCP self-approval hole. Codex now gates PowerShell it cannot inspect. Gemini's open repo landed a path-traversal fix. Paperclip tagged budget caps and split one permission in two. eve capped how deep its subagents may recurse. The field is converging, independently, on the same class of fix: closing the gaps where an agent's own inputs could escalate past the boundary -- a model-chosen ID, an injected command, a self-approved config, a runaway subagent.
And then it split on who gets the fix. That is the story of the week, and it is
sharper than the merged-versus-shipped gap that ran through the last three digests.
The gap is no longer just when a fix ships; it is to which channel, and the
channel now differs per provider. OpenHands shipped its dependency-CVE batch to
its cloud tags and left the open-source line frozen. Hermes put an entire wave on
main and tagged none of it; Gemini pushed one patch to stable and held the newer
ones back; Codex patched stable and kept its substance in alpha. Same wave, four
different answers to the question an operator actually has: is the fix in the
thing I run?
The clearest case of the split is not a version number. It is a discontinuation.
Google retired the CLI you could read
On June 18, 2026, Google stopped serving requests
to consumer Gemini CLI -- Google AI Pro and Ultra, free individual Code Assist,
and new GitHub-organization installs. Enterprise Code Assist kept access. The
open-source gemini-cli repository stays Apache-2.0 and enterprise-serving. The
consumer path is now Antigravity CLI,
the agy binary: a closed-source Go rewrite.
We have tracked this succession for three windows -- the every-session upgrade
banner, the agy migration funnel, a note that Gemini CLI "may be entering a
managed succession." We under-called it. By the time Protected on Paper closed on
June 23, the consumer shutdown had already happened on the 18th, and we still wrote
it as prospective. The record moves forward: the retirement is executed, and it is
tiered -- consumer dark, enterprise kept, the open repo shipping on.
The lead is the trade it forces, not the shutdown. Gemini CLI was open: an approval rule or a sandbox boundary was, in principle, readable. Antigravity is not. The governance is real, and in a single release train it moved in both directions at once. Version 1.0.13 (June 27) hardened command permissions -- "Always Approve" rule matching is now strict and non-regex by default, closing a class of over-broad approve rules. Three days later, 1.0.14 (June 30) loosened them, adding an "always proceeds" mode that auto-approves a subagent's artifacts -- work the parent flow never confirmed. Both changes are quoted from a changelog. Neither can be checked against the code, because there is no code to check. For the tier that just got migrated, the authority layer did not weaken or strengthen. It became unauditable. The new Antigravity profile holds the full read; the Gemini CLI profile holds the other side.
The same fix, four channels
The item an operator must act on is OpenHands'. Last window's unreleased
dependency-CVE batch reached tags this window -- but only on the cloud channel:
cloud-1.39.0
(June 24) and cloud-1.40.0
(June 26). The open-source line got no new tag; the newest non-cloud release is
still 1.8.0 from June 10. A fresh
authlib CVE -- an
unauthenticated open redirect in its OIDC flow, the kind used to bounce a victim
through a trusted domain into a phishing page -- already sits on main
(commit e6fe505) after
cloud-1.40.0, untagged. So a managed OpenHands Cloud
tenant is patched; a self-hoster pinned to the 1.8.0 tag is not, and has no fixed
OSS tag to move to. Merged-versus-shipped became cloud-versus-self-host: a billing boundary.
Hermes ran the other extreme: everything, nowhere. A path-traversal
fix for model-supplied
tool-call IDs that could escape the tool-result directory, a
command-approval-bypass close,
and secret redaction in
approval prompts all landed on main. The bypass was the pointed one: GNU long-flag
abbreviations of chown --recursive and git push --force had been slipping past
the guard. The newest tag is still v2026.6.19, so if you run it, a rule you believed
blocked chown --recursive can be beaten by typing --rec.
Gemini's OSS repo split within itself: the skill path-traversal fix, stranded in
preview for two windows, reached stable in v0.49.0
(June 25), while newer @file path hardening (commit b5fc06e)
stayed on main. And Codex cut four stable 0.142.x patches while
0.143.0 held alpha-only
through alpha.31 -- the OTEL and Codex Apps MCP work is real, and it shipped to no one.
Where the hardening did reach the operator
The counter-current is that where controls did ship stable, they got more specific and better-aimed.
Claude Code 2.1.196
is a security release worth the upgrade: claude mcp list/get no longer spawn
.mcp.json servers that a repository self-approves -- closing a path where merely
inspecting MCP config in an untrusted repo could launch a repo-declared server --
and Remote Control is now disabled when ANTHROPIC_BASE_URL points at a
non-Anthropic host. Codex 0.142.2
gates PowerShell whose AST regions the classifier cannot inspect behind approval
rather than running it, and switches MCP tool discovery to
tool-search by default.
Paperclip v2026.626.0
finally tagged 128 commits of master-only control plane: hard daily run-count and
cost ceilings enforced before an adapter runs, and a
skills:create permission
split out from agents:create. OpenClaw
shipped /fast auto and approval-tool hardening to stable, with a channel-owner-only
approval-scope fix still on main.
The quiet story, and the counterexample
Two threads run under all this. The first: Sonnet 5 propagated in a week. Claude Code 2.1.197 made it the default with native 1M-token context, and Pi 0.80.3 added support the same week -- a new frontier model becoming a default and a cross-harness option within days. If you pin models, that default changed under you.
The second cuts against everything above. eve -- durability-first, human-in-the-loop-first -- spent the window making its governance more first-class, not less: it repaired its HITL approval-resume contract so a plain "approve" reply resolves a pending tool approval, and capped recursive subagent delegation at depth three with model-visible guards. Where the self-hostable harnesses shipped their governance fixes to main-but-not-tagged, the platform-hosted one shipped containment to its runtime. The axis from Governance, Sold Separately holds: govern-it-yourself-on-your-host versus govern-it-durably-on-a-platform. This window, the platform side was the one whose controls you could actually run.
Provider notes
Antigravity CLI (1.0.12-1.0.14) joins the watchlist as the consumer successor to Gemini CLI: closed-source Go, shipping a rapid stable train that hardened approve-rule matching (1.0.13) and added subagent auto-approval (1.0.14). The governance case and the closed-source-verifiability case in one entry.
Gemini CLI (stable v0.49.0) is now the tiered-retirement story: consumer service
dark since June 18, enterprise retained, OSS repo active -- shipping the skill
path-traversal fix to stable and a breaking coreTools -> tools.core rename.
OpenHands (OSS 1.8.0; cloud-1.40.0) shipped its CVE batch cloud-only; the OSS line is frozen and a new authlib CVE sits untagged on main.
Hermes Agent (v2026.6.19) landed a full slate of security fixes -- path escape, approval-bypass, secret redaction -- entirely on main, tagged nothing.
Claude Code (2.1.191-2.1.197) closed the MCP self-approval hole and Remote
Control host-binding (2.1.196), routed all shell through the auto-mode classifier
via autoMode.classifyAllShell (2.1.193), and made Sonnet 5 the default (2.1.197).
Codex (stable 0.142.4; 0.143.0 alpha.31) patched stable four times and gated uninspectable PowerShell; 0.143.0 stayed alpha.
Paperclip (v2026.626.0) tagged its master-only control plane: budget caps,
skills:create split, cross-company auth hardening.
Pi (v0.80.3) added Sonnet 5 support and read-only RPC session inspection for external orchestrators.
Agent Zero (v2.0/v2.1) tagged its ready-branch backlog: Responses API as the default transport, and a LiteLLM bump past CVE-2026-42271 -- LiteLLM's MCP-preview command injection (CVSS 8.8), which researchers chained to unauthenticated RCE and exploited in the wild, and which can leak every model-provider key the proxy holds. Below v2.0, upgrade.
OpenClaw (v2026.6.11) shipped /fast auto and approval-tool hardening; a
permission-boundary fix waits on main.
eve (0.17.1) repaired HITL approval-resume and capped subagent depth -- the governance-first foil.
Flue (Tier 2; 1.0.0-beta.9) iterated durability primitives on the preview line (append-only canonical stream, durable data parts). heypi had no material in-window change; its 0.2.0 line held at beta.
What to try
- OpenHands: determine whether you run Cloud or the OSS 1.8.0 tag. On Cloud you have the CVE batch; on the tag you do not, with no OSS tag to move to -- decide whether to track main or accept the exposure.
- Claude Code: upgrade to 2.1.196+ and re-audit MCP trust on any untrusted-repo workflow; confirm the new Remote Control base-URL binding matches your setup.
- Gemini CLI (OSS): upgrade to v0.49.0 and migrate
coreTools->tools.core. If you were a consumer, your migration is to Antigravity, not a version bump. - Paperclip: wire the daily run/cost ceilings and adopt the
skills:createpermission split. - Everyone on Claude Code or Pi: check whether you are now on Sonnet 5 by default, and pin explicitly if cost or behavior matters.
What remains uncertain
- Antigravity's enforcement is unverifiable by inspection. Closed source means its approval and sandbox claims rest on a changelog, not readable code. Treat a closed governance guarantee as unconfirmed until a local probe says otherwise.
- The OpenHands CVE resolutions. The fixes are verified present on the cloud tags and main; the individual advisories were not independently confirmed, and there is no fixed OSS tag.
- The open gemini-cli repo's future. It shipped actively this window, but Google said nothing about maintaining it long-term now that the consumer service is gone.
- Whether the channel split is structural. Four providers this window put the patch on a different channel than the binary an operator runs. If that is the steady state, posture depends entirely on the channel -- and naming it every week is the work.
Revised 2026-07-02 (artifact_version 2): operator-brief thesis compressed to the house standfirst standard. Body, claims, and receipts unchanged.
Top signals from this issue
- OpenHands OpenHands shipped its dependency-CVE fixes on the cloud channel; the OSS 1.8.0 line is frozen and a new CVE already sits untagged on main
- Claude Code Claude Code 2.1.196 closes an MCP self-approval hole and binds Remote Control to the Anthropic host
- Gemini CLI Gemini CLI's OSS repo shipped the skill path-traversal fix to stable (v0.49.0) and renamed coreTools -- fixes now landing in a CLI whose consumers were cut off
- Codex Codex 0.142.2 gates uninspectable PowerShell behind approval and switches MCP tool discovery to tool-search by default
- Paperclip Paperclip v2026.626.0 tags its master-only control plane: daily run/cost budget caps, a split skills:create permission, cross-company auth hardening
- Claude Code Sonnet 5 propagated across harnesses in one week: Claude Code makes it the default (1M context); Pi adds support
- Antigravity CLI Google retired consumer Gemini CLI (June 18) and force-migrated users to closed-source Antigravity -- which hardened one approval gate and auto-opened another the same week
- Hermes Agent Hermes landed a full security wave on main -- path-escape, command-approval-bypass, secret redaction -- and tagged none of it (still v2026.6.19)
Noted, not headlined
Items checked this window that do not demand a decision from you this week -- listed so the restraint is visible, not silent.
- agent-zeroThe ready-branch backlog we have watched for two issues finally tagged as v2.0/v2.1, making the Responses API the default transport and bumping LiteLLM past CVE-2026-42271 -- the actively exploited command-injection-to-RCE chain (CVSS 8.8) in LiteLLM's MCP preview endpoints. Severe upstream, but the action is a routine version bump; the provider note and the profile have the rest.
- openclawv2026.6.10/6.11 shipped /fast auto and approval-tool hardening to stable; a channel-owner-only approval boundary fix sits on main. Part of the same hardening wave but lower-stakes than the week's headline controls; the body covers it.
- eveeve repaired its HITL approval-resume contract and capped recursive subagent depth (maxSubAgentDepth=3) -- the governance-first foil doubling down while the self-hosters ship to main. A posture to understand and this issue's counterexample, not an operator action; the body and the eve profile read it in full.
- flueFlue's 1.0.0-beta.6 through beta.9 iterate rapidly on durability primitives (append-only canonical conversation stream, durable structured data parts). All preview-channel; a compaction/durability thread worth its own lens, not a weekly headline.
- codex0.143.0 held alpha-only through alpha.31; its OTEL and Codex Apps MCP work is real but shipped nothing to stable. Channel motion, not a shipped change.
Projects reviewed in this research run
Research artifacts and publication history are open in the repository.
Sources
Primary links, including exact changelog lines when available.