01Safety
0.0 / 30
What changed in the harness
Selection accuracy 98→98, token cost up 6%, unconfirmed writes 0%→0%.
Category breakdown
Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.
0.0 / 30
28.8 / 30
20.0 / 20
10.5 / 20
Highest-impact fix
Estimated gain +30 pointsExpose machine-readable principal/tenant confirmation and a non-mutating permission check so agents can verify both before destructive actions.
Description evidence
1 defect found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.
| Tool | Defect types | Suggested rewrite |
|---|---|---|
purroxy_run_capability |
params_unexplained |
Execute a recorded browser automation capability by name. Purroxy launches a headless browser with saved session credentials, replays the recorded actions, and returns structured extracted data fields followed by the full page text content. Typical execution takes 5–30 seconds depending on the number of steps and page load times. Takes 'capability_name' (the exact, case-insensitive name of the capability to run, as shown by purroxy_list_capabilities) and an optional 'parameters' object of key-value string pairs supplying that capability's inputs — call purroxy_list_capabilities first to see which parameters each capability accepts, which are required, and what each means; omit 'parameters' or pass an empty object if the capability takes none. Possible failures: capability not found (check the name), Purroxy app not running, site session expired (user must re-login in Purroxy), or page structure changed (Purroxy will attempt automatic selector healing). Requires the Purroxy desktop app to be running on the local machine. |
Selection evidence
3 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
purroxy_list_capabilities |
purroxy_status |
low | Both are no-argument diagnostic-style calls, but their purposes are clearly distinct (listing automations vs. checking app connectivity); a request like 'is Purroxy working and what can it do' could momentarily blur which to call first, though descriptions make the distinction clear. |
purroxy_run_capability |
purroxy_status |
low | An agent troubleshooting a failed automation might consider calling status instead of run, but the tools serve very different purposes (execution vs. health check) and are unlikely to be confused for the same task. |
purroxy_list_capabilities |
purroxy_run_capability |
medium | A vague task like 'run the login automation' could tempt an agent to skip discovery and guess parameters for purroxy_run_capability directly, or conversely an agent might call list_capabilities when the user actually wanted execution; the explicit 'call this first' guidance mitigates but doesn't eliminate the ambiguity for a single-shot phrased request. |
Compare the field