diff options
| author | Olcan <[email protected]> | 2025-06-10 08:58:37 -0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-06-10 08:58:37 -0700 |
| commit | e38d2078cc70b0453ef70523a8ad38279941aca2 (patch) | |
| tree | b5a4024d1c006a2d116631ac7a51bb5b0eaf34a6 /packages/cli/src/utils/sandbox-macos-permissive-proxied.sb | |
| parent | 895c1f132f9d1cc88bd56584e461fd22a5f23394 (diff) | |
restricted networking for all sandboxing methods, new seatbelt profiles, updated docs, fixes to sandbox build, debugging through sandbox (#891)
Diffstat (limited to 'packages/cli/src/utils/sandbox-macos-permissive-proxied.sb')
| -rw-r--r-- | packages/cli/src/utils/sandbox-macos-permissive-proxied.sb | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/packages/cli/src/utils/sandbox-macos-permissive-proxied.sb b/packages/cli/src/utils/sandbox-macos-permissive-proxied.sb new file mode 100644 index 00000000..861e503d --- /dev/null +++ b/packages/cli/src/utils/sandbox-macos-permissive-proxied.sb @@ -0,0 +1,31 @@ +(version 1) + +;; allow everything by default +(allow default) + +;; deny all writes EXCEPT under specific paths +(deny file-write*) +(allow file-write* + (subpath (param "TARGET_DIR")) + (subpath (param "TMP_DIR")) + (subpath (param "CACHE_DIR")) + (subpath (string-append (param "HOME_DIR") "/.gemini")) + (subpath (string-append (param "HOME_DIR") "/.npm")) + (subpath (string-append (param "HOME_DIR") "/.cache")) + (subpath (string-append (param "HOME_DIR") "/.gitconfig")) + (literal "/dev/stdout") + (literal "/dev/stderr") + (literal "/dev/null") +) + +;; deny all inbound network traffic EXCEPT on debugger port +(deny network-inbound) +(allow network-inbound (local ip "localhost:9229")) + +;; deny all outbound network traffic EXCEPT through proxy on localhost:8877 +;; set `GEMINI_SANDBOX_PROXY_COMMAND=<command>` to run proxy alongside sandbox +;; proxy must listen on 0.0.0.0:8877 (see scripts/example-proxy.js) +(deny network-outbound) +(allow network-outbound (remote tcp "localhost:8877")) + +(allow network-bind (local ip "*:*")) |
