Answers from the documentation; checking which model is on duty
Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
visual-verdict - Skill - OpenSmartRoute
Skillv1.0.0
visual-verdict
Structured visual QA verdict for screenshot-to-reference comparisons
Imported from yeachan-heo/oh-my-claudecode (skills/visual-verdict/SKILL.md) via skills.sh. Install upstream with npx skills add yeachan-heo/oh-my-claudecode --skill visual-verdict. Copyright stays with the author.
<Use_When>
The task includes visual fidelity requirements (layout, spacing, typography, component styling)
You have a generated screenshot and at least one reference image
You need deterministic pass/fail guidance before continuing edits
</Use_When>
<Output_Contract>
Return JSON only with this exact shape:
suggestions[]: actionable next edits tied to the differences
reasoning: 1-2 sentence summary
<Threshold_And_Loop>
Target pass threshold is 90+.
If score < 90, continue editing and rerun /oh-my-claudecode:visual-verdict before any further visual review pass.
Do not treat the visual task as complete until the next screenshot clears the threshold.
</Threshold_And_Loop>
<Debug_Visualization>
When mismatch diagnosis is hard:
Keep $visual-verdict as the authoritative decision.
Use pixel-level diff tooling (pixel diff / pixelmatch overlay) as a secondary debug aid to localize hotspots.
Convert pixel diff hotspots into concrete differences[] and suggestions[] updates.
</Debug_Visualization>
Task: {{ARGUMENTS}}
Installed into a catalogue, chosen by a router
Install visual-verdict and it becomes one more candidate the router can pick - when it fits.
A listing is a routing target with a manifest: what it does, which domains it covers, what it costs and who publishes it. Once installed it sits beside your own models and tools, is scored like any other candidate for each request, and shows up in the trace when it wins. Ratings come from workspaces that installed it, one per account.
When a provider is down or over quota the request moves on; the trace says it did.
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
# after Install: the listing is in your workspace's routing pool - a plan picks it for its slotcurl-s-X POST https://api.opensmartroute.ai/api/v1/route -H 'Authorization: Bearer $OSR_API_KEY' -H 'Content-Type: application/json' -d '{"text": "...", "plan": true}'
Manifest
An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.
{
"ocm": "1",
"id": "yeachan-heo-oh-my-claudecode-visual-verdict",
"kind": "skill",
"name": "visual-verdict",
"description": "Structured visual QA verdict for screenshot-to-reference comparisons",
"publisher": "yeachan-heo",
"version": "1.0.0",
"capabilities": {
"domains": [
"coding",
"medical"
],
"tags": [
"skill-md",
"skills-sh"
],
"languages": [
"en"
]
},
"quality_prior": 0.6,
"examples": [
"Structured visual QA verdict for screenshot-to-reference comparisons"
],
"primary": false,
"metadata": {
"source": {
"provider": "skills.sh",
"repository": "https://github.com/yeachan-heo/oh-my-claudecode",
"path": "skills/visual-verdict/SKILL.md",
"ref": "HEAD",
"url": "https://www.skills.sh/yeachan-heo/oh-my-claudecode/visual-verdict",
"key": "yeachan-heo/oh-my-claudecode/skills/visual-verdict/SKILL.md"
}
},
"instructions": "<Purpose>\nUse this skill to compare generated UI screenshots against one or more reference images and return a strict JSON verdict that can drive the next edit iteration.\n</Purpose>\n\n<Use_When>\n- The task includes visual fidelity requirements (layout, spacing, typography, component styling)\n- You have a generated screenshot and at least one reference image\n- You need deterministic pass/fail guidance before continuing edits\n</Use_When>\n\n<Inputs>\n- `reference_images[]` (one or more image paths)\n- `generated_screenshot` (current output image)\n- Optional: `category_hint` (e.g., `hackernews`, `sns-feed`, `dashboard`)\n</Inputs>\n\n<Output_Contract>\nReturn **JSON only** with this exact shape:\n\n```json\n{\n \"score\": 0,\n \"verdict\": \"revise\",\n \"category_match\": false,\n \"differences\": [\"...\"],\n \"suggestions\": [\"...\"],\n \"reasoning\": \"short explanation\"\n}\n```\n\nRules:\n- `score`: integer 0-100\n- `verdict`: short status (`pass`, `revise`, or `fail`)\n- `category_match`: `true` when the generated screenshot matches the intended UI category/style\n- `differences[]`: concrete visual mismatches (layout, spacing, typography, colors, hierarchy)\n- `suggestions[]`: actionable next edits tied to the differences\n- `reasoning`: 1-2 sentence summary\n\n<Threshold_And_Loop>\n- Target pass threshold is **90+**.\n- If `score < 90`, continue editing and rerun `/oh-my-claudecode:visual-verdict` before any further visual review pass.\n- Do **not** treat the visual task as complete until the next screenshot clears the threshold.\n</Threshold_And_Loop>\n\n<Debug_Visualization>\nWhen mismatch diagnosis is hard:\n1. Keep `$visual-verdict` as the authoritative decision.\n2. Use pixel-level diff tooling (pixel diff / pixelmatch overlay) as a **secondary debug aid** to localize hotspots.\n3. Convert pixel diff hotspots into concrete `differences[]` and `suggestions[]` updates.\n</Debug_Visualization>\n\n<Example>\n```json\n{\n \"score\": 87,\n \"verdict\": \"revise\",\n \"category_match\": true,\n \"differences\": [\n \"Top nav spacing is tighter than reference\",\n \"Primary button uses smaller font weight\"\n ],\n \"suggestions\": [\n \"Increase nav item horizontal padding by 4px\",\n \"Set primary button font-weight to 600\"\n ],\n \"reasoning\": \"Core layout matches, but style details still diverge.\"\n}\n```\n</Example>\n\nTask: {{ARGUMENTS}}",
"cost": {
"context_tokens": 577
}
}
Fetch it by URL: GET /api/v1/registry/yeachan-heo-oh-my-claudecode-visual-verdict/manifest?version=1.0.0
Reviews
Star ratings from people who tried it. One review per account; edit yours any time.
No reviews yet. Install it, try it, and be the first to rate it.