Fix failing tests
You ask: Run the tests in ~/code/app and fix whatever is broken.
A coding task needs execution and local writes.
What AgentsFence does
Section titled “What AgentsFence does”- With the LLM compiler, running commands and editing files are authorized, and writes are limited to
~/code/appbecause you named it. Writing~/.bashrcis blocked. - Pushing (
git push) was never requested, so it asks. Deleting (rm -rf …/.git) was never requested, so it is blocked. - The agent can never disable its own fence:
hermes plugins disable agentsfence, editing Hermes’ config, and writing to AgentsFence’s state are blocked in every task. - The offline rules compiler grants no execution, so every command asks you.
Decision by decision
Section titled “Decision by decision”| The agent tries | Offline rules compiler | LLM compiler |
|---|---|---|
terminal(command="pytest -q", workdir="~/code/app") |
ASK_USER unauthorized-execution |
ALLOW policy-allow |
patch(mode="replace", path="~/code/app/src/x.py", old_string="a", new_string="b") |
ASK_USER unauthorized-local_write |
ALLOW policy-allow |
write_file(path="~/.bashrc", content="…") |
ASK_USER unauthorized-local_write |
BLOCK path-not-authorized |
terminal(command="git push origin main") |
ASK_USER unauthorized-external_write |
ASK_USER unauthorized-external_write |
terminal(command="rm -rf ~/code/app/.git") |
BLOCK unauthorized-delete |
BLOCK unauthorized-delete |
terminal(command="hermes plugins disable agentsfence") |
BLOCK self-protection |
BLOCK self-protection |
Compiled policy (LLM compiler)
Task: fix_testsAllowed: reading/searching; local file writes, running code / shellPaths: ~/code/appNot authorized (blocked or needs your approval): sending / external writes, deleting, purchases & payments, sharing & permission changes- Once you authorize execution, what runs inside a command is opaque. AgentsFence classifies obvious cases (
rm,curl -d,git push,sudo, write options on “safe” commands), but it can’t see inside a script. Run coding tasks in a Hermes container backend. - Approving a command grants that exact command, not the terminal.