image

image is a skill for Claude Code from HarKro753/claude-copy. It costs 186 tokens per session (1,801 once invoked), scanned A, original, MIT.

A workflow for rebuilding one flat image—such as a screenshot, poster, or graphic—as a self-contained HTML page. It uses the image’s exact pixel size and checks the rendered page against the reference image.

In plain words
What is it for?
Use it to recreate a single supplied image as an offline HTML page, including fixed-size graphics, posters, carousel slides, and simple UI mockups.
Why use it?
It provides a way to copy a visual design when there is no existing HTML or page structure to inspect. The whole result is checked as one picture rather than as separate interface elements.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: reads .claude/ paths.

Part of the clone plugin — 3 skills, 1 hook shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/harkro753/claude-copy/image
Any agent
npx skills add HarKro753/claude-copy --skill image
Clone the repo
git clone --depth 1 https://github.com/HarKro753/claude-copy

Made for: Claude Code.

Or install clone, the plugin that ships this one along with the rest of its 3 skills, 1 hook.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for image

README.md
[![agentmods](https://agentmods.dev/badge/skills/harkro753/claude-copy/image.svg)](https://agentmods.dev/skills/harkro753/claude-copy/image)
Your own site
<a href="https://agentmods.dev/skills/harkro753/claude-copy/image"><img src="https://agentmods.dev/badge/skills/harkro753/claude-copy/image.svg" alt="Measured on agentmods" height="20"></a>
Per session 186 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,801 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00186 $0.01801
Opus 5 $0.00093 $0.00901
Sonnet 5 $0.00037 $0.00360
Haiku 4.5 $0.00019 $0.00180

Measured 6d ago against content hash 535f4b101608, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

image scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (render.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/clone/skills/image/SKILL.md · 126 lines

How it starts

The opening of the file, as written. The whole thing — 126 lines — stays where its author put it; the contents beside it link to each section on GitHub.

clone:image — one picture → one verified HTML page

In: a single image file (whatever the user attached). Out: apps/<name>/index.html, a self-contained page that renders to look like the image, checked by rendering it at the image's exact pixel size and comparing the two pictures.

There is no DOM here and no per-box oracle. The entire check is does my render look like the picture — a whole-image compare you read with your own eyes and iterate against. That is enough for flat graphics, which is what this is for.

Setup

mkdir -p apps/<name>
cp <the image> apps/<name>/ref.png

Read ref.png and note its pixel size (also python3 -c "from PIL import Image; print(Image.open('apps/<name>/ref.png').size)"). That size is your canvas.

Author apps/<name>/index.html

Start from the template — copy template.html (next to this file) to apps/<name>/index.html and set --w / --h to the image's pixel size. It is one self-contained file (inline <style>, no external requests, no build) whose job is a fixed design canvas that fits any screen: you author at exact pixels inside .stage, and a five-line script scales the stage to fit whatever viewport it is opened in — a phone, a laptop, a 4K monitor — with no scrollbar. render.py sets the viewport to the canvas size, so the render is always at scale 1 and stays pixel-exact; the scaling only ever kicks in for a humqan viewer. Do not size the body or drop the wrapper — a raw fixed-px body overflows every screen smaller than the image, which is the whole thing this avoids.

  • Author inside .stage, in px. Everything is position:absolute (or flow) in CSS px equal to the image's pixels. .stage is already the exact canvas.
  • Rebuild, don't slice. Text is text, boxes are divs, highlights are background colours, gradients are CSS gradients. Never embed a crop of ref.png as an <img> — if the render only matches because it contains the reference, you have cloned nothing.
  • Measure the geometry, don't guess it. Eyeballing positions is how a clone ends up subtly wrong everywhere. Read the pixels: a coloured block's exact rect, a rule's y and width, the background colour — a few lines of PIL over ref.png gives you real numbers to author against. On the confidence poster, scanning for bright-yellow rows gave every highlight box to the pixel; that is the difference between "roughly there" and right.
  • Fonts: identify by side-by-side, and webfonts DO load here. Do not settle for a generic stack — a wrong font makes every letter width wrong and the whole thing reads off. Crop the reference word, render 4–6 candidates at matched size, screenshot, and look: is it a slab serif (flat serifs — Bitter, Roboto Slab), an old-style serif (pointed, some contrast — Noto Serif), a grotesque? Pick the match, load it with a Google Fonts <link> (they load in this headless renderer — verified), and weight it to match (these graphics run heavy, 700–900). Fall back to a system stack only when nothing fits.
  • Rebuild texture in CSS too. Paper grain, noise, a gradient wash — an SVG feTurbulence data-URI background is real texture, not a slice of the reference. A flat fill where the original has grain is a visible miss.
  • What CSS genuinely can't rebuild is the ONE exception. A photograph or a detailed illustration (the man at the podium, a product photo) is not reconstructable. If it sits on the page background (no frame), just leave the background showing through and say the illustration is omitted — a grey slab is its own wrong. If it has a distinct frame/fill, a neutral block in its dominant colour is fine. Either way, do not grind the loop trying to converge on it.

Read the full file on GitHub · 126 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 126 lines · 186 tokens per session scan A 535f4b101608

Subscribe to this mod's changes

image is a skill published in the GitHub repository HarKro753/claude-copy (17 stars, last pushed 1mo ago), licensed MIT. It adds 186 tokens to every session and 1,801 once invoked, about $0.0009 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

scroll-craft

Build premium scroll-driven landing pages for service, product, food, and drink brands. Plan the visitor journey, page grammar, emotional peak, and bespoke signature move. Create dimensional heroes with independent visual planes, restrained motion, and separate mobile composition. Use supplied photos and footage or…

nateherkai/scroll-craft · 177 tokens

top-design

Create award-winning, immersive web experiences at the level of Awwwards-featured agencies. Use when the user mentions "Awwwards quality", "make my site stunning", "scroll animations", "parallax storytelling", "cinematic web design", "portfolio site", or "brand experience". Also trigger when elevating a standard…

wondelai/skills · 113 tokens

web-typography

Select, pair, and implement typefaces for web projects. Use when the user mentions "font pairing", "which typeface", "line height", "responsive typography", "web font loading", "type hierarchy", "variable fonts", "FOUT/FOIT", "typographic scale", or "the text is hard to read". Also trigger when choosing between system…

wondelai/skills · 128 tokens

migrate-bootstrap

Migrates a traditional Power Pages site from Bootstrap 3 to Bootstrap 5. Downloads the site, runs the pac pages bootstrap-migrate engine, reviews the change report, applies AI-assisted fixes for the residual hierarchy/CSS changes the engine only flags, uploads the migrated site (which auto-enables the Bootstrap 5…

microsoft/power-platform-skills · 116 tokens

designlang-tokens

Use when styling UI for cal.com — references the extracted design system tokens instead of inventing colors, spacing, or typography.

Manavarya09/design-extract · 30 tokens

refactoring-ui

Audit and fix visual hierarchy, spacing, color, and depth in web UIs. Use when the user mentions "my UI looks off" (or amateur/unprofessional), "fix the design", "Tailwind styling", "color palette", "visual hierarchy", "design system", "spacing scale", or "component styling". Also trigger when building consistent…

wondelai/skills · 132 tokens