Spawning an agent with a bad command clamp list now fails immediately instead of running unclamped.
What's wrong with this entry?
The agent() spawn API gained a bashCommandClamp option: a list of Bash(...) permission rules that limits which shell commands the spawned agent may run. It is checked strictly at spawn time, so a malformed list, an entry that does not parse as a Bash rule, or one with empty or space-padded contents aborts the spawn instead of quietly running the agent with no clamp.
- Entries take the form
Bash(<command or prefix>), matching the usual permission rule syntax. - Rejection message when the option is not a list of non-empty strings:
agent() opts.bashCommandClamp must be an array of non-empty strings; got. - The option is now part of the serialized list of spawn options, alongside
disallowedTools.
agent("audit the build", { bashCommandClamp: ["Bash(npm test)", "Bash(git log:*)"] })agent() opts.bashCommandClamp must be an array of non-empty strings; got
Strings lifted out of the shipped bundle, so the claim above can be checked against them.