MGS3024: a hook names no agent host
A hook script (magus-command, magus-path, magus-observe or
magus-checkpoint, in either its sh or Buzz form) ran without being told which
agent host called it:
[MGS3024] this hook did not pass --agent-name, so magus cannot tell which agent
host it is answering, and nothing was judged. Run `magus agent harness
apply` to rewrite the host's hook configuration; the commands it writes name the host.
On a guard surface the call is denied. On the observe and checkpoint surfaces nothing is recorded and the message goes to stderr.
Why
The glue picks the reply a host can parse from the host's name. Claude Code
takes permissionDecision: "ask" and prompts; Codex marks the same reply a
failed hook and runs the call. So a reply chosen for the wrong host can let a
call through that should have been stopped.
magus does not work the host out from the event's shape or default to one
host. The host says who it is, and the configuration magus agent harness apply writes for each host passes its name, the harness spell's own
mgs_getName(), on every hook command: -- --agent-name claude-code after a
Buzz script, --agent-name codex after an sh one. See
Told, never guessed.
What to do
Run magus agent harness apply --id <host> to rewrite the configuration, or
add --agent-name <host> to the hook command by hand if you wrote the
configuration yourself.