Skip to content

Add config option to allowGitHooks#271

Open
carderne wants to merge 3 commits into
anthropic-experimental:mainfrom
carderne:allow-git-hooks
Open

Add config option to allowGitHooks#271
carderne wants to merge 3 commits into
anthropic-experimental:mainfrom
carderne:allow-git-hooks

Conversation

@carderne

Copy link
Copy Markdown
Contributor

We already have allowGitConfig, this adds a flag to allow writing to .git/hooks.

Main reason to add this is that currently with the sandbox enabled, it's impossible to run git init.

More context in downstream issue here: carderne/pi-sandbox#44

carderne added 3 commits May 3, 2026 12:48
Programs that use the macOS system-configuration API (via SCDynamicStoreCreate)
to read network proxy settings crash inside the sandbox because the mach-lookup
to com.apple.SystemConfiguration.configd is blocked by default.

This affects Rust programs using the system-configuration crate (e.g. uv, cargo)
and other tools that query system proxy/network configuration on startup.

The service is read-only — it exposes network configuration state (proxy settings,
DNS servers, interface info) but cannot modify any system settings.
Add allowBrowserProcess option to the macOS sandbox profile. Chromium-based
browsers require significantly broader OS permissions than typical CLI tools —
Mach IPC for inter-process communication, bootstrap registration (Crashpad),
process-info for managing renderer/GPU/utility child processes, IOKit for GPU
and display access, and POSIX shared memory for renderer-GPU communication.

The new option grants mach*, process-info*, iokit-open, and ipc-posix-shm*
while keeping filesystem and network restrictions fully enforced. It is off by
default and intended for use with browser automation tools like agent-browser.

Updates sandbox-config schema, sandbox-manager wiring, macOS sandbox profile
generation, and README documentation including security considerations.
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