Visual Ralph Skill
SkillMediaVisual Ralph orchestration for frontend UI from generated references, static references, or live URL targets, using $ultragoal with built-in visual verdict and pixel-diff evidence until the implementation matches and leaves a reproducible design system. It is a skill that guides an AI agent through building or restyling a web or app interface against an approved visual target. The agent takes screenshots during development, scores how closely the curr
Available today. Use it from your connected AI after setup.
No other account needed.
Have a frontend repository with a known package manager, framework, routes, and styling conventions.
Then ask your AI: use the Visual Ralph Skill skill
What your AI can do with it
- Build or restyle a frontend UI from an approved reference image or live URL
- Capture screenshots and score visual match against the reference
- Use pixel diffs to locate and fix mismatched areas
- Iterate with $ultragoal until the visual verdict reaches 90
- Record reusable design tokens for colors, spacing, and typography
- Preserve URL, viewport, fidelity, and interaction notes for URL cloning
Getting started
- Have a frontend repository with a known package manager, framework, routes, and styling conventions.
- Provide an approved reference: a generated mockup, a static image, or a live URL with viewport and scope notes.
- Copy the approved reference into the project artifacts directory as reference.png.
- Run the $visual-ralph skill to start the implementation and visual comparison loop.
- Review the visual verdict and pixel-diff evidence, then accept the result once the score reaches 90.
What this skill tells your AI
The instructions your AI receives, as published by yeachan-heo/oh-my-codex in skills/visual-ralph/SKILL.md and read by ahel’s review.
Use $visual-ralph for measured frontend implementation from an approved generated reference, static image, or live-URL baseline. The loop is:
description / URL -> approved reference -> $ultragoal implementation -> Visual Ralph verdict + pixel diff -> reusable design system.
For URL cloning, this skill owns the migrated $web-clone use case; preserve URL, viewport, fidelity, and interaction notes here. Do not invoke standalone $web-clone.
Shared operating, delegation, state, hook, team, cancellation, and verification invariants live in templates/AGENTS.md. Follow that source instead of duplicating its rules here.
Use when
- The user wants a web/app UI built or restyled against a visual target.
- A live URL or generated raster mockup needs measured implementation and pixel-level iteration.
- The result must leave reusable repo-native tokens/components, not only a matching screenshot.
Do not use it for a durable DESIGN.md brief ($design), non-visual backend work, comparison-only fixes that can be executed directly, or deterministic SVG/code-native assets.
Workflow
1. Ground the repository
Inspect package manager/scripts, frontend framework and routes, styling/token conventions, screenshot tooling, and reusable components. Choose stack-specific commands only when repository evidence supports them.
2. Establish a reference
For a live URL, capture or document an artifact containing source URL and permission/scope, viewport(s), route/state, seed/login assumptions, baseline screenshot path or capture command, visible-control parity notes, and exclusions (backend/API/auth, personalized data, crawling, third-party widgets).
For a generated concept, use $imagegen with classification ui-mockup, viewport/aspect ratio, surface, layout hierarchy, typography, color mood, exact text, no logos/watermarks/unrequested marks, and readable/feasible UI details. In OMX runtime, queue the continuation checkpoint before the built-in image tool:
omx imagegen continuation <session-id> --artifact <slug-or-filename> --generated-dir "$CODEX_HOME/generated_images/<session>" --work-dir ".omx/artifacts/visual-ralph/<slug>"
Copy the approved reference into .omx/artifacts/visual-ralph/<slug>/reference.png; do not leave it only under $CODEX_HOME/generated_images.
3. Approval gate
Stop after generation or URL capture and obtain approval of one reference image/state (or a targeted regeneration/capture adjustment). Before approval, do not implement or invoke $ultragoal. After approval, the image/baseline is the visual source of truth; major pivots require an explicit user request.
4. Hand off to $ultragoal
Pass the approved reference/baseline, URL and permission note when applicable, viewport/content state, interaction parity and exclusions, user description, detected frontend context, screenshot command/viewport, and the completion checklist. The active Ultragoal execution lane edits, runs, captures, and iterates after approval until matched or blocked.
5. Verdict before every edit
For each iteration, capture the current screenshot with viewport/state, run Visual Ralph verdict (using vision when needed), and treat its JSON as authoritative. If score < 90, turn differences[] and suggestions[] into the next edit plan and rerun before editing. Required verdict keys: score, verdict, category_match, differences[], suggestions[], reasoning.
6. Secondary diff evidence
Use pixel diff/pixelmatch overlays only to locate hotspots and translate them into edits; they never replace the verdict. Record final reference, screenshot, and diff artifacts for auditability.
7. Reusable design system
Encode the match in existing repo-native CSS variables, theme tokens, config, component variants, stories, or DESIGN.md updates. Capture applicable colors, spacing, typography/weights, radii, shadows/elevation, and important variants/states. Extend existing patterns rather than adding a parallel layer.
Completion evidence and stop conditions
Do not declare done until the approved reference/baseline and reproduction command (viewport, route, state, output path) are saved; final verdict is >= 90; secondary diff evidence is recorded; reusable tokens/components exist; equivalent build/lint/test verification passes; no unapproved pivot occurred; and remaining differences are documented. Stop at the approval gate or report a concrete blocker when evidence cannot satisfy these conditions.
Handoff template
$ultragoal "Implement the approved frontend reference.
Reference: <workspace reference or URL-derived artifact>
Source URL and permission/scope: <when applicable>
Viewport/content state: <viewport, route/state, seed/login assumptions>
Interaction parity and exclusions: <visible controls and known limits>
Route/surface: <route or component>
Screenshot command: <command and viewport>
Run Visual Ralph verdict before every next edit; pass threshold >= 90.
Use pixel diff only as secondary evidence.
Extract reusable tokens/components for colors, spacing, typography, radii, shadows, and variants.
Run the repository's equivalent verification before completion.
Do not make major design pivots unless explicitly requested."
Task: {{ARGUMENTS}}
Signals
- GitHub stars
- 33k
- Forks
- 3k
- Last commit
- Oct 2026
Questions
- What kind of reference can I use?
- You can use a generated mockup, a static image, or a live URL target. For a live URL, capture the source URL, viewport, route, and any login or scope assumptions before starting.
- How does it know when the UI matches?
- It takes screenshots during development, scores how closely the current version matches the reference, and uses pixel diffs to find problem areas. It keeps iterating until the score reaches 90.
Advanced
- Item type
- skill
- Key
visual-ralph- Source
- github.com/yeachan-heo/oh-my-codex