Capture live browser UI edits as structured mutation intent for Codex.
Browser Mutation has 5 tools with basic schemas and descriptions, but significant gaps limit production readiness. Tool names lack clear action verbs (browser_mutation_* prefix is repetitive). Descriptions are present but generic (10-60 chars, below the 50-200 char baseline for LLM optimization). Parameter descriptions exist but lack detail on constraints, formats, and dependencies. Output schemas are not documented. Error handling and recovery guidance are absent. The snap and spacing tools have complex nested object parameters (rect, candidates) with minimal guidance on structure. No evidence of input validation, permission checks, or audit logging.
Fetch the latest captured mutation data from an active session
Calculate snap alignment guides for moving UI elements
Measure spacing between UI elements
Start a browser mutation capture session on a target URL
Submit captured mutations and notes to the mutation collector
Tool names lack action verbs. All 5 tools use 'browser_mutation_*' prefix, which is repetitive and does not convey distinct actions. Names should start with verbs: start_capture, get_mutations, submit_mutations, calculate_snap_guides, measure_spacing.
Descriptions are too short (10-60 chars) and lack context. LLM baseline is 50-200 chars. Missing: WHEN to use each tool, WHAT it returns, and HOW it differs from similar tools. E.g., browser_mutation_snap lacks explanation of snap alignment algorithm or output structure.
Complex parameter objects (rect, candidates) lack structural documentation. No schema shows what fields rect must contain (left, top, width, height?). Candidates array structure is undefined. LLMs cannot infer nested object shapes from names alone.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 36 | 2026-07-28+ | v2 |
No output schemas documented. Tools return data but LLMs have no way to know what fields to expect. E.g., browser_mutation_latest returns 'captured mutation data', what is the structure? What fields can the agent extract?
No error handling or recovery guidance. If browser_mutation_start fails (invalid URL, connection refused), the tool provides no actionable error message or next steps. No distinction between retryable and fatal errors.