Content
78%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A well-crafted, lean skill body with concrete commands, selectors, and a complete automation script, plus real validation checkpoints (port wait, response confirmation, known-good smoke prompt). The only material defect is the undeclared `inserted` variable in the code snippet's error branches, which breaks executability exactly when something goes wrong.
Suggestions
Fix the browser_eval snippet by declaring `const inserted = true;` after the paste (or replacing the bare `inserted` references with `inserted: true`), so the failure branches return cleanly instead of throwing a ReferenceError.
Add a short error-recovery loop after the Browser Tool Flow, e.g., "If no OpenWork target appears in browser_list, confirm the CDP port is listening (lsof) and that pnpm dev started successfully."
Drop or merge the "What I Do" bullets into the intro to remove the small amount of duplication with the description.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is lean and assumes competence: exact commands (pnpm dev with port overrides, nohup, lsof), exact URLs, and one focused code snippet, with no explanation of concepts Claude already knows. Minor trims are possible — the "What I Do" bullets partially duplicate the description, and the env-var-default shell block is slightly awkward presentation — matching anchor 4 rather than the every-token-earns-its-place anchor 5. | 4 / 5 |
Actionability | Guidance is concrete and near copy-paste ready: exact selectors ('[contenteditable="true"][data-lexical-editor="true"]'), a full browser_eval IIFE, and specific commands. However, the snippet's failure branches return an undeclared variable `inserted` ("reason: 'Run task not found', inserted"), which throws a ReferenceError in the error path, so the code is not fully executable — anchor 4, not 5. | 4 / 5 |
Workflow Clarity | The 6-step Browser Tool Flow is clearly sequenced and includes validation checkpoints: waiting for the CDP port with lsof, confirming the session response via document.body.innerText or URL, and a known-good smoke prompt with its expected response in Notes. It falls short of anchor 5 because there is no error-recovery loop (e.g., what to do if the OpenWork target is missing or the paste fails). | 4 / 5 |
Progressive Disclosure | No bundle files exist and none are needed: the ~100-line body keeps all content appropriately inline with clear, well-ordered section headers (setup, launch, flow, session, notes), making navigation easy. This matches anchor 5 — content appropriately split for its size with nothing that belongs in a separate reference file. | 5 / 5 |
Total | 17 / 20 Passed |