Auto Stops Asking
Operator Brief
Autonomy stopped asking. Three providers shipped default-on autonomy in the same fortnight, and three providers moved permission policy out of session flags into versioned, org-managed files.
- Upgrade / check
- Claude Code 2.1.149+ closes a PowerShell
cd..workspace-boundary bypass and a git-worktree sandbox over-scope bug. Treat as a security advisory the changelog does not flag. Signal - Claude Code 2.1.152 makes Auto mode default-on. Managed deployments must re-audit what Auto now classifies as safe. Signal
- OpenHands main branch (no in-window release) fixes a cross-org credential leak in MCP server and
acp_envconfigurations. Multi-tenant SaaS operators on pre-2026-05-22 deployments may have already cross-contaminated. Signal - Codex CLI 0.134.0 rejects legacy profile configs with migration guidance. Move scripts to
--profileas the canonical handle before upgrade. Signal
- Claude Code 2.1.149+ closes a PowerShell
- Try
- Codex: point goal mode at an hours-or-days objective on 26.519 + CLI 0.133.0 and watch the dedicated storage / progress-tracking surface. Signal
- OpenHands: enable
ENABLE_ACPagainst Claude Code, Codex, or Gemini CLI as the back-end agent. Observe the greyed-out LLM/Condenser/MCP settings and the unified/api/conversationsendpoint. Signal - Agent Zero v1.17: enable
computer_use_remoteon a non-critical host and observe the vision-verification stop flow: every state-changing action requires a fresh screenshot. Signal - Hermes v0.14.0: install via
pip install hermes-agentand route Codex CLI / Aider / Cline / Continue throughhermes proxyagainst a single OAuth provider. Distribution · Proxy
- Watch
- Three providers moved the same way this fortnight: Claude Code Auto mode default-on, Codex goal mode default-on across surfaces, Gemini CLI Auto modes collapsed + shell-redirect auto-approval in
AUTO_EDIT. The pattern is autonomy moving from opt-in to baseline. Bet for the quarter, not a passing release-note theme. Claude Code · Codex · Gemini CLI - Policy is moving into versioned files. Codex managed
requirements.toml, Gemini PolicyEngine-in-ACP, OpenHands org-level LLM profiles. The common shape: policy lives in a versioned, org-managed file the runtime consults instead of per-session flags. Codex · Gemini · OpenHands - Authority over inputs is generalising through three surfaces in parallel: OpenClaw at the inbound-sender layer (pre-dispatch allowlists, prompt-marker spoofing), Agent Zero at the host-runtime layer (vision-verified host actions), OpenHands at the org-member layer (per-member private MCP and ACP env). Same primitive, three surfaces. OpenClaw · Agent Zero · OpenHands
- Three providers moved the same way this fortnight: Claude Code Auto mode default-on, Codex goal mode default-on across surfaces, Gemini CLI Auto modes collapsed + shell-redirect auto-approval in
- Uncertain
- Codex
requirements.tomldistribution and signing model: not documented in the release notes. Enterprise adopters must confirm the trust path before depending on enforcement. Signal - Gemini PolicyEngine-in-ACP default posture: per-session enforcement by default, or only when configured? Release notes frame it as a deadlock fix. Signal
- Agent Zero ephemeral-capture default: where does host-action audit evidence land? Operators cannot inspect on-disk caches by default. Signal
- Hermes
hermes proxybind and auth model: PR body does not detail loopback-only binding or shared-token requirement. Default-loopback is the safe assumption to verify, not assume. Signal - Gemini remote session invocation target: stable protocol exists but where remote invocations actually run (Google-hosted, operator-hosted, both) is undocumented. Signal
- Codex
Until late May, turning an AI coding agent loose still took a deliberate click. You switched on the mode that let it run commands without stopping to ask, and you knew you had done it. Then Claude Code shipped version 2.1.152, and the click disappeared: Auto mode, the setting that lets the agent act first and report after, became the default for everyone.
Three makers flipped the same switch inside two weeks. Claude Code made Auto mode default-on; Codex graduated its long-horizon "goal mode" out of beta and turned it on across app, IDE, and command line; Gemini CLI folded a menu of Auto variants into one and began auto-approving shell redirects. The permission ceremony that used to stand between an operator and an autonomous agent is no longer the thing you opt into. It is the thing you opt out of, and the only decision left is how to fence it in.
Fencing it in was the fortnight's other half. Once an agent runs by
default, signing off on its actions one prompt at a time stops scaling,
and three providers reached for the same replacement: a versioned,
org-managed policy file the runtime reads before it acts. Codex shipped
profile inheritance and a managed requirements.toml; Gemini pushed its
policy engine down into the session protocol; OpenHands moved permissions
onto org-level profiles. The unit of control is migrating from the session
flag you set and forget to the file you check in and review.
Breaking Changes: Check These Before Upgrading
Claude Code v2.1.149: a PowerShell permission bypass and a worktree
sandbox scope bug. Windows operators with PowerShell allowlists are
affected by PowerShell built-in cd functions (cd.., cd\, cd~,
X:) defeating the workspace boundary undetected. Git worktree
workflows are affected by the sandbox write allowlist over-scoping the
main repository root instead of the shared .git directory. Anthropic
ships these as ordinary changelog entries; the changelog is the de-facto
advisory surface, but no separate page exists. Upgrade past 2.1.149
before deploying. v2.1.147 closes adjacent forceLoginOrgUUID and
forceLoginMethod enforcement gaps against third-party-provider and
API-key sessions; v2.1.148 closes a Vertex AI provider bypass.
Claude Code v2.1.152: Auto mode no longer requires opt-in consent. Auto mode (the permission classifier that runs safe actions without prompting and blocks risky ones) is now the default permission posture across the install base. Admins relying on the consent dialog as a visible posture check have lost that surface. Re-audit managed settings and decide where the equivalent check now lives.
Codex CLI 0.134.0: legacy profile configs rejected with migration
guidance. --profile is the canonical permission selector across
CLI, TUI, and sandbox flows. Scripts using older permission flag-soup
must migrate before upgrade.
OpenHands main (pre-2026-05-22 SaaS deployments): MCP server and
acp_env cross-org credential leak. Before
PR #14528, MCP
server configurations added by an org member were broadcast to every
other member's row. The fix splits agent settings into shared and
private halves and strips legacy leaked values on read. Multi-tenant
SaaS operators on pre-fix deployments should rotate MCP credentials
added before that date and confirm they are on a post-fix main
build (no in-window tagged release yet).
Hermes Agent v0.14.0: PyPI distribution, lazy adapter install, and
the proxy. Installation moves to
pip install hermes-agent;
the [all] extras are removed in favor of lazy install of heavy
adapters on first use. Cold-start drops ~19s. A native Windows beta
ships. The hermes proxy command exposes a local OpenAI-compatible
endpoint backed by whichever OAuth provider the operator is signed
into. The PR body does not specify the proxy's bind address or auth
model; default-loopback-only is the safe assumption to verify, not
assume.
What "default-on" actually means
The three flips are not the same flip, and the differences are where the
operator decisions hide. Claude Code's
Auto mode
is the broad case: a classifier runs the actions it judges safe and stops
on the ones it judges risky, with the line between them defined at runtime
rather than written down. The same release hands authors two new levers
that point in opposite directions, a disallowed-tools field that lets a
skill subtract from the agent's tool surface, and a MessageDisplay hook
that can rewrite or hide assistant text before the operator sees it. One
narrows what the agent can do; the other narrows what the human is shown.
Codex's goal mode is the long-horizon case. The 26.519 launch took it out of experimental across the app, IDE, and CLI, and CLI 0.133.0 turned goals on by default with their own storage and progress tracking, so an operator can hand Codex an objective measured in "hours or even days" and walk away. The same launch let Codex drive a Mac after the screen locks, hedged with short-lived authorization, covered displays, and an automatic relock on any local input. The locked-host capability is real; the safeguards are policy choices layered on top, not a wall.
Gemini CLI's change was the quietest and, in its way, the most telling.
Its
stable v0.44.0
collapsed a fan of Auto variants into a single mode, billed as
simplification, erasing whatever distinctions those variants used to
carry. It also began auto-approving shell redirects in AUTO_EDIT, a
convenience that doubles as a wider attack surface the moment an agent is
steered toward a path it should not write.
The benefit and the bill arrive together. An operator who never bothered to enable Auto mode now gets its speed for free; an operator who treated the consent dialog as a last manual look before something irreversible has to rebuild that checkpoint somewhere else, in managed settings, a hook, or out-of-band review. Every default-on change this fortnight made the tools easier to use and a standing authority check harder to see, in the same motion.
The policy file becomes the unit of control
Once an agent runs by default, the interesting question is no longer whether it may act but within what bounds, and bounds do not belong in a flag that lives for one session. Three providers said so in the same fortnight, each moving policy into a file that outlives the session and that the runtime treats as authoritative.
Codex went furthest. CLI 0.133.0 added profile
inheritance, so a
permission profile can derive from a base and layer changes on top instead
of redeclaring every grant, and paired it with a managed requirements.toml
the release calls enforcement, not advice. CLI 0.134.0 then made
--profile the single selector across the CLI, its terminal UI, and the
sandbox, and began rejecting the old flag-soup configs outright. Gemini
took a narrower but deeper cut, pushing its
PolicyEngine into ACP sessions;
the changelog files it as a deadlock fix, which undersells it, because
enforcement now reaches into the very protocol layer the docs hold up as
the delegation primitive.
OpenHands showed what this looks like with the schema visible. Its
org-level LLM profiles
land as an encrypted column on the organization table, six endpoints under
/api/organizations/{org_id}/profiles, and a two-tier permission split:
one role reads settings, another creates, edits, and, the load-bearing
verb, activates them. Activation flips the org's live profile and the
acting member's settings in a single locked transaction, the database
admitting that "which policy is in force" is now contested, shared state
worth serializing.
For anyone running a team the takeaway is the same in all three: stop keeping policy in per-session flags. Write a base, derive the per-team variations, and treat the checked-in file as the source of truth. The one thing none of the three has documented is how that file is distributed and whether it is signed, which is the gap to close before leaning on it for real enforcement.
One idea, three doors
The fortnight's quietest thread was also its sharpest. Three providers, working on parts of the stack that have nothing to do with one another, landed on the same instinct: put a structural gate at the exact spot where untrusted input crosses into the agent, rather than trying to talk the agent out of misbehaving once the input is already inside.
OpenClaw put its gate at the front door, where messages arrive. Sender allowlists now run before the agent is dispatched rather than blocking it afterward; browser snapshots check SSRF policy before they read a tab's URL; queued system text is scrubbed so a hostile plugin or channel label cannot forge the markers the model reads as instructions. The through-line is to deny an unauthorized sender any chance to shape the agent's behavior at all, instead of catching specific actions once it has already been nudged.
Agent Zero
put its gate at the host, where actions land. Its new computer_use_remote
tool drives the operator's real desktop, outside the container, through
the platform's own accessibility APIs, and it refuses to trust its own
work: every state-changing action stays unverified until a fresh
screenshot confirms it, and the agent must stop when no screenshot is
available. A denied approval on macOS routes to a flow that has to be
re-armed by hand, not a silent retry.
OpenHands
put its gate between tenants, where credentials had been leaking. Until the
fix, an MCP or acp_env setting added by one member of an organization was
written to every member's row; now agent settings split into a shared half
and a private one, secrets follow only the member who set them, and the
old leaked values are stripped on read so the contamination ends with the
upgrade.
A front door, a host, a tenancy boundary: three different doors, one idea. Each provider decided that the way to keep bad input out is a gate at the boundary it crosses, enforced by the system, not a paragraph of prompt asking the model to behave.
Provider Notes
Codex (26.519, CLI 0.131 to 0.134) ran the window's most coordinated
release train: goal-mode graduation and the CLI's default-on landed the
same day, with profile inheritance and the managed requirements.toml
arriving alongside -- capability and its governance shipped as one move,
which no other provider managed this fortnight. The rest is
quality-of-life at the edges: remote computer use after Mac lock,
Appshots, plugin marketplace sharing, codex doctor diagnostics, Python
SDK authentication, codex exec resume --output-schema, history search,
and read-only MCP concurrency via readOnlyHint.
Gemini CLI (v0.44.0) shipped stable LocalSessionInvocation /
RemoteSessionInvocation protocols (closing the "tests but no observed
remote target" gap on the prior AgentProtocol), first-wins
prioritize-project agent registration, OAuth refresh preservation
during rotation, keychain auth for --list-sessions and
non-interactive mode, and MCP OAuth token refresh on
re-authentication. Two weeks of What's-New digests (Weeks 21 and 22) are
not yet published, so the changelog and release notes are the trailing
surface.
OpenHands (main branch, no tagged release in window) shipped the ACP agent settings UI, organization-level LLM profiles, scoped MCP/ACP env to acting org members, Azure DevOps via Microsoft Entra ID OAuth/OIDC, Bitbucket DC and Jira DC integrations with KOTS-managed service accounts, and a batched CVE remediation cluster (9+ deps). The shape is consolidation as the enterprise-self-hosted shell around third-party agents and Data Center source control.
Agent Zero (v1.15 to v1.18) shipped host-machine desktop control with
vision verification, ephemeral context-scoped capture by default,
speech as independent built-in plugins (breaking removal of legacy
APIs), document_artifact renamed to office_artifact, dedicated
Markdown editor plugin, file-browser routing formalization,
configurable max_active_skills, MCP multimodal content handling
fix, and skill visibility controls (operators can hide skills from
the model-facing catalog).
OpenClaw (v2026.5.18 to v2026.5.26) put its weight where its risk
is: the content-boundary hardening suite, reaction-based approvals
across Signal, iMessage, and WhatsApp, and an on-by-default gateway
auth rate-limiter for configs that never set gateway.auth.rateLimit.
Around that core, transcripts became a first-class source path with a
Meeting Notes plugin, model login profiles gained credential
migrations, realtime Talk became inspectable and cancellable across
Web UI and Discord voice, and releases now carry verification stanzas
with full CI run URLs -- a vendor showing its receipts.
Hermes Agent (v0.14.0) is the Foundation Release: PyPI
distribution, lazy adapter install with supply-chain advisory
checker, native Windows beta, Zed ACP Registry listing, the
OpenAI-compatible local hermes proxy, Honcho identity-mapping with
peer-id in cache signatures, isolated credential pool on provider
fallback, and a sustained fix(kanban) corruption-hardening wave
post-release.
Paperclip (v2026.513, v2026.517, v2026.525) shipped scoped agent
permissions and protected assignments via a real authorization
service, routine env secrets with agent < project < routine
precedence, board-managed document locks, Modal as a first-party
sandbox plugin, and an ACPX-Claude adapter that resolves bare Claude
model IDs, surfaces real diagnostic detail, and respects user
~/.claude/settings.json permissions.
Pi coding agent (v0.74.1 to v0.76.0) shipped supply-chain
hardening (npm shrinkwrap, lifecycle-script controls, isolated
install smoke tests), --session-id explicit session naming and
excludeFromContext flag for the bash RPC, plus provider retry and
timeout bounds. Supply-chain posture lands the same fortnight as
Hermes's lazy-install advisory work, two different providers
converging on the same hygiene.
Flue (Tier 2; v0.6.0 to v0.8.0) shipped the agents-vs-workflows
category split (persistent agents/ via createAgent vs finite
workflows/ via run), local() sandbox factory with env
allowlist, Cloudflare Shell sandbox replacing the previously
misleading R2 model, run observability with bare runId routes, an
OpenAPI sub-app, and a read-only admin sub-app. The runs-as-workflow-
only choice is the cleanest "what is the receipt?" answer this cycle.
What To Try
- Codex operators: point goal mode at an objective spanning hours or days on 26.519 + CLI 0.133.0; observe the dedicated storage and progress-tracking surface. If you have multiple teams, draft a base permission profile and derive per-team variations using the new inheritance.
- Claude Code operators: audit managed settings before upgrade to
2.1.152 if you relied on the Auto mode consent dialog as a manual
posture check. Skill authors should evaluate
disallowed-tools. - OpenHands evaluators: enable
ENABLE_ACPand point it at Claude Code, Codex, or Gemini CLI as the back-end. Observe how LLM/Condenser/MCP settings grey out, as authority shifts to the back-end agent and the UI reflects the transfer. - Agent Zero operators (host adopters): enable
computer_use_remoteon a non-critical host. Test the vision-verification stop flow: trigger a state change, withhold a screenshot, observe whether the agent halts as the release notes describe. - Hermes adopters: try
pip install hermes-agentand route Codex CLI, Aider, Cline, or Continue throughhermes proxyagainst a single OAuth subscription. Confirm the proxy's bind address before exposing it. - OpenClaw operators: verify your
gateway.auth.rateLimitsetting; the unset case is now ratelimited by default. Test the pre-dispatchallowFromallowlist with a sender outside your trust set.
What Remains Uncertain
- Codex managed
requirements.tomldistribution and signing: the release notes describe org-level enforcement but not how the file reaches the runtime, whether it is signed, or whether tampering is detectable. Enterprise adopters cannot rely on enforcement without this answer. - Gemini PolicyEngine-in-ACP default posture: per-session enforcement by default, or only when an operator has configured a policy? Release notes frame it as a deadlock fix. The structural shift implied by the change is larger than that framing suggests.
- Agent Zero ephemeral-capture audit evidence: where does host-action evidence land for audit when screenshots are ephemeral? Operators cannot browse on-disk caches to confirm what the agent saw.
- Hermes
hermes proxybind and auth model: PR body does not detail loopback-only binding or shared-token requirement. Default-loopback is the safe assumption to verify, not assume. - Gemini remote session invocation target: the protocol is stable but where remote invocations actually run (Google-hosted, operator-hosted, both) is undocumented.
- OpenHands no-tagged-release operators: the strategic positioning, the org-LLM-profile feature, and the cross-org credential leak fix are all main-branch-only. Operators tracking the 1.x release channel see none of this until the next release consolidates.
- Products that front other products: an OpenHands ACP UI driving
Claude Code, Codex, or Gemini CLI as the back-end agent, and
Paperclip's ACPX-Claude adapter that respects a user's
~/.claude/settings.json, are the same shape: one tool wrapping another's agent. Whether authority and settings flow cleanly across that boundary is the thing to watch as more products compose this way. - Claude Code's own What's-New digests are two weeks behind (Weeks 21 and 22 are unpublished). For this fortnight Claude Code's primary write-up surface is missing, so this read leans on the changelog alone.
Revised 2026-07-02 (artifact_version 2): editorial pass on two provider notes (judgment-first framing). Claims and receipts unchanged.
Top signals from this issue
- Claude Code Auto mode becomes the default permission posture
- Codex Goal mode graduates default-on; remote computer use after lock ships
- Gemini CLI Auto modes collapse and PolicyEngine reaches into ACP sessions
- Codex Permission profiles get inheritance and an org-managed enforcement file
- OpenHands OpenHands becomes the GUI shell for other harnesses, with org-level LLM profiles
- Paperclip Scoped agent permissions, layered routine secrets, document locks
- Agent Zero Host desktop control with required visual verification
- OpenClaw Content-boundary hardening suite across inbound surfaces
- Claude Code Three de-facto security advisories without a separate advisory surface
- Hermes Agent Hermes ships PyPI, lazy adapter install, native Windows beta
- Hermes Agent `hermes proxy`: local OpenAI-compatible endpoint backed by operator OAuth
- Hermes Agent Honcho identity mapping and credential-pool isolation
- Gemini CLI Local and remote session invocation protocols land stable
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.
- commit diff reviewedPR #14401: Settings → Agent ACP page (merged 2026-05-15)github.com/OpenHands/OpenHands/pull/14401commit diff reviewedPR #14406: organization-level LLM profile storage (merged 2026-05-27)github.com/OpenHands/OpenHands/pull/14406commit diff reviewedPR #14528: MCP/ACP env scoped to acting org member (merged 2026-05-22; pre-fix cross-org leak)github.com/OpenHands/OpenHands/pull/14528
- release noteAgent Zero v1.17 release notes — host desktop control with vision verification (2026-05-23)agent0ai/agent-zero / v1.17release notev1.16 — ephemeral capture default; speech as plugins; document_artifact → office_artifact (2026-05-22)agent0ai/agent-zero / v1.16release notev1.18 — configurable skills cap; MCP multimodal fix (2026-05-26)agent0ai/agent-zero / v1.18
- release noteOpenClaw v2026.5.26 release notes (2026-05-27)openclaw/openclaw / v2026.5.26commit diff reviewedBrowser snapshot SSRF policy (PR #78526)github.com/openclaw/openclaw/pull/78526commit diff reviewedSystem-event text sanitization vs prompt-marker spoofing (PR #87094)github.com/openclaw/openclaw/pull/87094commit diff reviewedClickClack allowFrom sender allowlists pre-dispatch (PR #83741)github.com/openclaw/openclaw/pull/83741
- release noteHermes Agent v0.14.0 'Foundation Release' (2026-05-16)NousResearch/hermes-agent / v2026.5.16commit diff reviewedPR #26593: PyPI distributiongithub.com/NousResearch/hermes-agent/pull/26593commit diff reviewedPR #25969: hermes proxy (OpenAI-compatible local proxy)github.com/NousResearch/hermes-agent/pull/25969commitHoncho identity-mapping commits (week of 2026-05-21): 0bac8809, 58987cb8, c03960de, 6feb2afdgithub.com/NousResearch/hermes-agent/commits/main
- release notePaperclip v2026.525.0 release (scoped agent permissions, routine env secrets, Modal sandbox)paperclipai/paperclip / v2026.525.0commit diff reviewedPR #6386: scoped agent permissions and protected assignmentsgithub.com/paperclipai/paperclip/pull/6386commit diff reviewedPR #6212: routine env secrets with agent < project < routine precedencegithub.com/paperclipai/paperclip/pull/6212commit diff reviewedPR #6009: board-managed document locks (v2026.517.0)github.com/paperclipai/paperclip/pull/6009