pub struct VerifyCommandTool { /* private fields */ }Expand description
The verify tool: runs the harness-configured verification command(s) in
the workspace and reports a structured, gate-able PASS/FAIL. Its two reasons
to exist over raw bash: (1) the command is configured by the harness (the
agent never guesses what “passing” means), and (2) the result is a
machine-greppable VERIFY_SENTINEL the goal judge / a deterministic gate
can key on. Commands run sequentially and fail-fast (stop at the first
non-zero exit), so the final sentinel is the overall verdict.
Trust model: the command is operator-configured, not agent-supplied, so it
runs with ambient authority — like a CI command — and is deliberately NOT
sandboxed the way the agent-facing bash tool is (it does not apply
BashTool::with_sandbox’s Landlock / EnvPolicy / CorePathPolicy). It
intentionally does not reuse BashTool for that reason: the agent’s bash
sandbox and the operator’s verify authority are kept separate, and the small
spawn/timeout plumbing here is the price of that separation.