openclaw - ✅(Solved) Fix nonInteractivePermissions needs an 'allow' option — currently only deny/fail [1 pull requests, 1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#59663Fetched 2026-04-08 02:41:57
View on GitHub
Comments
1
Participants
2
Timeline
5
Reactions
0
Author
Timeline (top)
referenced ×3commented ×1cross-referenced ×1

Fix Action

Fixed

PR fix notes

PR #59717: feat(acpx): add allow option to nonInteractivePermissions

Description (problem / solution / changelog)

Summary

Fixes #59663

nonInteractivePermissions only accepted deny or fail, making it impossible to auto-approve permission prompts for trusted automated agents running via ACP in headless/non-interactive contexts.

  • Adds "allow" as a valid value for nonInteractivePermissions in ACPX_NON_INTERACTIVE_POLICIES
  • Updates the plugin JSON schema (openclaw.plugin.json) to include "allow" in the enum
  • Documents the new option in docs/tools/acp-agents.md with a usage note
  • Adds two tests: one verifying "allow" is accepted, one verifying unknown values are still rejected with the updated error message

Root Cause

ACPX_NON_INTERACTIVE_POLICIES in extensions/acpx/src/config.ts was hard-coded to ["deny", "fail"]. The value is passed directly as --non-interactive-permissions <value> to the acpx CLI binary, so OpenClaw's own validation was the only blocker.

Changes

  • extensions/acpx/src/config.ts — add "allow" to the policies array (cascades to type, Zod schema, and error message automatically)
  • extensions/acpx/openclaw.plugin.json — add "allow" to the JSON schema enum
  • docs/tools/acp-agents.md — document allow in the reference table and troubleshooting row
  • extensions/acpx/src/config.test.ts — regression tests for allow acceptance and unknown-value rejection

Why This Is Safe

Existing deny and fail behavior is unchanged. The allow value is opt-in and passes through to acpx verbatim, matching how deny and fail already work.

Changed files

  • docs/tools/acp-agents.md (modified, +9/-6)
  • extensions/acpx/openclaw.plugin.json (modified, +1/-1)
  • extensions/acpx/src/config.test.ts (modified, +22/-0)
  • extensions/acpx/src/config.ts (modified, +1/-1)
RAW_BUFFERClick to expand / collapse

Problem

When using --permission-mode bypassPermissions with agents like Codex (Knots worker), the nonInteractivePermissions config only supports deny or fail — there's no allow option.

This means ACP-spawned coding agents either:

  • Get denied on every file operation and can't work
  • Fail entirely on permission checks

Expected Behavior

A nonInteractivePermissions: allow option that auto-approves file operations in non-interactive/headless contexts. This is essential for automated coding agents running via ACP where a human can't approve each operation.

Use Case

We run Codex as a build engineer ("Knots") via OpenClaw ACP. It receives surgical edit briefs and needs to read/write files without interactive approval. Currently we work around this with --permission-mode bypassPermissions in the CLI, but the ACP runtime doesn't respect this flag consistently.

Environment

  • OpenClaw 2026.4.1
  • ACP runtime with Codex agent
  • macOS (Apple Silicon)

extent analysis

TL;DR

Modify the nonInteractivePermissions config to support an allow option for automated coding agents in non-interactive contexts.

Guidance

  • Investigate modifying the ACP runtime to respect the --permission-mode bypassPermissions flag consistently.
  • Consider implementing a custom permission handler for the Codex agent to auto-approve file operations in non-interactive contexts.
  • Review the OpenClaw documentation for any existing configuration options or workarounds that may enable the desired behavior.
  • Evaluate the feasibility of submitting a feature request to add an allow option to the nonInteractivePermissions config.

Example

No code snippet is provided as the issue does not imply a specific code-based solution.

Notes

The solution may require modifications to the ACP runtime or the Codex agent, and may not be possible with the current version of OpenClaw.

Recommendation

Apply a workaround, such as implementing a custom permission handler, as the current version of OpenClaw does not support the desired behavior.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING