root-heavy-command
Off by default: once a workspace turns it on, it reports a main thread running delegable commands one after another without spawning.
What it catches
A main thread running delegable commands one after another without spawning.
Why
A recursive search, a whole-file read of source, a full diff, a target run or a web fetch is work a subagent does from a small context, returning only what matters. Each delegable call since the main thread last spawned or continued a subagent counts; at standard it advises once at the eighth, and at strict at the fifth. It never refuses, and it judges only a session with no record of handing work out: it is the nudge to start, and a session already orchestrating is judged by orchestrator-groundwork. Spawning, the final gate, loading a skill, reading Markdown and editing never count, and neither does a command whose output is a ref or one line: the bootstrap build command, magus run or magus affected with -s or --silent, magus run go-build or go::go-build, magus job fork, exit, apply and wait, magus query output --identity, any magus command asked for -o name or -o template=, git commit, cherry-pick and branch, git status -s, and git log --oneline with a count (-n, --max-count or -N). Reading a run's whole output with magus query output does count. A calls parameter replaces the level's count.
Default and override
By default this rule takes the decision off. A workspace sets it by name, in its root
magusfile, to advise or off:
magus\guard.builtins({"root-heavy-command": "advise"})
A loosening takes effect once it is committed; a tightening applies at once.
Seeing it
A verdict names its rule in brackets, which is how you got here:
advise [root-heavy-command]: ...
magus describe rule root-heavy-command prints the same entry at a terminal, and
magus describe rules lists every rule this workspace enforces.
See also
- All rules - what this workspace enforces, deny first
- The guard - how a verdict is reached and wired
- Setting a built-in rule - how a workspace changes this default