Skip to content

fix(agents): stop permission prompts for agent workers - #370

Merged
odsod merged 2 commits into
mainfrom
agy-auto-approve
Oct 23, 2026
Merged

odsod merged 2 commits into
mainfrom
agy-auto-approve

Conversation

@odsod

@odsod odsod commented Oct 23, 2026 •

Copy link
Copy Markdown
Owner

Why

Orchestrators start workers with herdr agent start, which passes no agent
arguments. Each CLI keeps its own defaults, and those defaults stop a worker
for approval on a plain read or edit while nobody watches the pane. Herdr has
no per-kind default arguments.

This machine had already relaxed codex (approval_policy = "never",
sandbox_mode = "danger-full-access") and cursor (approvalMode: "unrestricted"). Pi does not ask before tool calls at all. agy and claude
still asked.

The live antigravity settings file also holds machine state that cannot be
committed: trustedWorkspaces lists local paths, and model follows /model.
The old drift check diffed the whole file, so every such write failed the gate
and the next resolve wiped the list.

What

  • antigravity/settings.json: set toolPermission and
    artifactReviewPolicy to always-proceed. This covers every launch path:
    Herdr panes, agy subagents, resumed sessions, and manual starts.
  • claude/settings.json: set permissions.defaultMode to
    bypassPermissions. skipDangerousModePermissionPrompt was already true.
  • antigravity:check now compares only keys present in the repo file, and
    antigravity:resolve merges those keys into the live file. Machine state
    stays local and no longer fights the gate.
  • Update the AGENTS.md drift bullet and the mise run apply --force help.
  • codex:check and codex:resolve are unchanged and still compare the whole
    file.
  • No skill changes. This repo provisions the agent configs, so every machine
    that loads the agent-team skill already has these settings. The skill does
    not repeat them.

Trade-off

Both settings apply to every session, not only Herdr panes. A manual agy or
claude session also stops asking before it edits files or runs commands.
That matches how codex and cursor were already configured here.

Verification

  • claude -p write probe before the change: the command was stopped for
    approval and the file was not created. After: it runs.
  • agy -p "Run rg --version ..." ran the tool and printed ripgrep 15.2.0.
    The same call is auto-denied in headless mode without the setting.
  • Sandbox HOME: an extra live key passes the antigravity check, a drifted
    managed key fails it, and resolve restores the managed key while keeping the
    extra one.
  • mise run antigravity:check exits 0 on this machine while the live file
    keeps its six trustedWorkspaces entries.
  • oxfmt --check on the changed files, shfmt -d and shellcheck -x on
    tasks/apply.sh.

@odsod odsod changed the title fix(antigravity): stop approval prompts for agy workers fix(agents): stop permission prompts for agent workers Oct 23, 2026
odsod added 2 commits October 23, 2026 07:24
Herdr starts agents without arguments, and agy defaults to request-review,
so an orchestrated worker stalls on a plain read such as rg while nobody
watches the pane. Set toolPermission and artifactReviewPolicy to
always-proceed in the managed settings file.

Compare and merge only repo-managed keys, so live machine state such as
trustedWorkspaces stays local and no longer fails the drift gate. Document
the per-kind launch args the agent-team skill must pass.
Claude Code prompts before every write or mutating shell command, so an
agent-team worker spawned in a pane stops on a trivial edit with nobody to
answer. Set permissions.defaultMode to bypassPermissions in the managed
settings file, matching codex (approval_policy never) and cursor
(approvalMode unrestricted).
@odsod
odsod merged commit 57b79ea into main Oct 23, 2026
1 check passed
@odsod
odsod deleted the agy-auto-approve branch October 23, 2026 05:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant