In sessions running under the babylon environment, a guard hook intercepts outward/destructive Bash operations — notably git push — and blocks them. This is expected, not a failure. Local git add / git commit are NOT gated.
Symptom
A git push (or other outward/destructive op) errors with something like:
gated destructive op … run it directly via
!or setBABYLON_GUARD=0. Do not retry or route around it.
What is and isn’t gated
- Gated: outward / destructive Bash ops —
git pushis the headline case. - Not gated: local
git add,git commit.
Resolution (two sanctioned paths)
- Hand the user a
!one-liner to run in-session, e.g. give them the exact! git push ...command to execute. - User sets
BABYLON_GUARD=0, after which the agent can push.
Do not route around the guard
NEVER prepend
BABYLON_GUARD=0to the command yourself, and never split the push into pieces to sneak it past the guard. The guard’s own message forbids retrying or routing around it — doing so is exactly the behavior it exists to stop. Wait for the user to either run the!one-liner or set the env var themselves.