01Safety
0.0 / 30
What changed in the harness
Selection accuracy 98→98, token cost up 16%, 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
25.9 / 30
20.0 / 20
12.3 / 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
12 defects 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 |
|---|---|---|
browser_navigate |
no_return_description |
Open the given URL in the browser, wait for the page to load, and return the resulting page state so subsequent snapshot-based interactions target the newly loaded page. |
browser_go_back |
no_return_description |
Navigate to the previously visited page in the browser history and return the resulting page state after the navigation completes. |
browser_go_forward |
no_return_description |
Navigate to the next page in the browser's forward history (if present) and return the resulting page state after the navigation completes. |
browser_snapshot |
no_return_description |
Capture and return the accessibility snapshot of the current page, including references (refs) to interactive elements that can be passed to interaction tools such as browser_click, browser_hover, and browser_type. |
browser_click |
no_return_description |
Simulate a click on the page using the exact target element reference (ref) from the snapshot, with a human-readable element description for confirmation, and return the updated page state after the click is applied. |
browser_hover |
no_return_description |
Hover over the element identified by the exact snapshot reference (ref), using the human-readable element description for confirmation, and return the updated page state after the hover is applied. |
browser_type |
no_return_description |
Type the given text into the editable element identified by the snapshot reference (ref); when submit is true, press Enter afterwards. Return the resulting page state after typing and any submission. |
browser_select_option |
no_return_description |
Select one or more option values in the dropdown identified by the snapshot reference (ref), using the human-readable element description for confirmation, and return the resulting page state after the selection is applied. |
browser_press_key |
no_return_description |
Press the specified key or generate the given character (e.g. ArrowLeft or a) on the current page and return the resulting page state after the key is processed. |
browser_wait |
no_return_description |
Pause execution for the specified number of seconds to allow page content to settle, then return a confirmation once the wait completes. |
browser_get_console_logs |
name_restates_behavior no_return_description |
Retrieve the browser console output accumulated on the current page (for example errors, warnings, and other logged messages) and return the list of console log entries for debugging. |
browser_screenshot |
no_return_description |
Capture the current page as a screenshot and return the resulting image data (for example a base64-encoded image) for visual inspection. |
Selection evidence
1 pair where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
browser_snapshot |
browser_screenshot |
high | 'snapshot' and 'screenshot' are near-synonyms in everyday language, so a task like 'capture a snapshot of the current page' or 'save the page' maps plausibly to either tool; both take no arguments, and only close reading of the descriptions (accessibility tree vs image) disambiguates them. |
Compare the field