Web Artifacts Builder
anthropics/skills
Builds multi-component claude.ai HTML artifacts as a small React, TypeScript and Tailwind project, then bundles it into one shareable HTML file.
Reproduce a live website from its URL as a clean, deployable Vite + React project by running the complete agent-driven Perfect Web Clone harness: capture source evidence, plan the full page, author…
$ npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ericshang98/perfect-web-clone-skill perfect-web-clone --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
Claude Code skills documentation · loads skills from .claude/skills/
Install the "perfect-web-clone" agent skill from https://github.com/ericshang98/perfect-web-clone-skill/tree/main into .claude/skills/perfect-web-clone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "perfect-web-clone", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ericshang98/perfect-web-clone-skill perfect-web-clone --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "perfect-web-clone" agent skill from https://github.com/ericshang98/perfect-web-clone-skill/tree/main into .agents/skills/perfect-web-clone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "perfect-web-clone", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ericshang98/perfect-web-clone-skill perfect-web-clone --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "perfect-web-clone" agent skill from https://github.com/ericshang98/perfect-web-clone-skill/tree/main into .cursor/skills/perfect-web-clone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "perfect-web-clone", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ericshang98/perfect-web-clone-skill perfect-web-clone --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "perfect-web-clone" agent skill from https://github.com/ericshang98/perfect-web-clone-skill/tree/main into .gemini/skills/perfect-web-clone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "perfect-web-clone", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ericshang98/perfect-web-clone-skill perfect-web-cloneInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "perfect-web-clone" agent skill from https://github.com/ericshang98/perfect-web-clone-skill/tree/main into .github/skills/perfect-web-clone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "perfect-web-clone", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ericshang98/perfect-web-clone-skill perfect-web-clone --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "perfect-web-clone" agent skill from https://github.com/ericshang98/perfect-web-clone-skill/tree/main into .opencode/skills/perfect-web-clone/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "perfect-web-clone", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
perfect-web-cloneReproduce a live website from its URL as a clean, deployable Vite + React project by running the complete agent-driven Perfect Web Clone harness: capture source evidence, plan the full page, author…
Perfect Web Clone is an agent skill from ericshang98/perfect-web-clone-skill. Reproduce a live website from its URL as a clean, deployable Vite + React project by running the complete agent-driven Perfect Web Clone harness: capture source evidence, plan the full page, author every section, implement common interactions, build, compare, repair, and hand the measured result to the user for review. Use whenever the user asks an agent to clone, copy, reproduce, replicate, rebuild, or 复刻 a website or web page, including a minimal request containing only an action and URL. The user gives one…
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `README.md`, `README_CN.md` and `references/harness-contract.md`).
It works with Vite and React. The repository describes itself as: Pixel-perfect webpage cloning playbook. Paste a URL, get a measured Vite + React replica. The licence is MIT.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 9de21d1. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pipplaywrightFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Perfect Web Clone loads about 2.7k tokens when it runs, and up to ~3.7k if it reads all its reference files. Until then it costs about 165 tokens; SKILL.md has 1,343 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from ericshang98/perfect-web-clone-skill at commit 9de21d1, republished under its MIT licence (© ericshang98). 1,343 words, ~2,689 tokens.
.claude/skills/perfect-web-clone/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Pixel-perfect cloning is this skill. The current agent is the harness runtime.
pwc is the deterministic hands and eyes: it captures, persists, builds,
renders, replays, and measures. It never calls another model. You understand
the evidence, author code, and choose targeted repairs.
A single natural-language request such as “复刻 https://example.com” authorizes the entire local reproduction workflow. Treat it as one user operation even though the harness performs many internal tool calls and repair iterations.
Do not ask for routine confirmation when the request contains a usable URL. Infer that a full-page clone is the default. Continue across phases without returning control merely to announce progress or request ordinary implementation choices. Ask only when a missing fact would materially change scope, when credentials or new authority are required, or when the user must resolve an external blocker.
Deployment is never implicit. Produce a local build and review URL by default; deploy only when the user explicitly asks.
Use one owning agent for the whole page so global visual context survives across sections. Do not delegate unless the user explicitly asks.
ok or success flag and its error evidence. Never invent a
tool result.ready_for_user_review or failed_with_residuals.
Only the user can accept the result.Read references/harness-contract.md before starting a new run or resuming one. It defines the progress ledger, terminal states, evidence vocabulary, and exact stop rules.
Install the measured core if pwc is missing:
pip install "git+https://github.com/ericshang98/Perfect-Web-Clone.git"
playwright install chromiumEvery pwc command prints JSON. ok: false is a stop-and-fix signal.
.pwc/run.json. Resume rather than restart when
its URL matches and its status is non-terminal. Start a fresh run when the URL
differs.pwc extract <url>ok: true and
summary.capture_integrity.status == "passed".source_id; use the same value for all later commands.capture_residuals and the site_classification ceiling. If the page
relies on WebGL, runtime canvas drawing, or scroll choreography that cannot be
captured faithfully, continue only within the measured ceiling and keep it as
a residual.failed_with_residuals if source integrity remains red after the
extractor's retry budget. Never generate from guessed or partial content..pwc/run.json.pwc plan <source_id>#main children as section and repair units.required_structure entry as a hard anchor, even when nested
inside a large parent section..pwc/run.json.pwc assemble <source_id>Missing section files are expected on this first call. Assembly initializes
.pwc/run.json; read, update, and rewrite that ledger as the agent advances.
For each planned section, in order:
pwc section <source_id> <section_name>src/components/sections/<namespace>/..pwc/run.json.Maintain whole-page layout tokens across sections. Reuse localized assets from the capture. Never ship source-framework markup, source-specific class fingerprints, hotlinked media, or an image snapshot in place of real content. Use real text, images, links, video, and controls.
Apply these authoring requirements:
data-pwc-critical="<anchor>" to each required structural region.data-pwc-section wrapper for every section.For each interaction contract:
data-pwc-interaction="<contract id>" to the control.data-pwc-controlled="<contract id>" to the controlled surface where
applicable.An unresolved asset, region, or behavior becomes an explicit residual.
pwc assemble <source_id>
pwc buildmissing_section_files.success: true plus a produced dist/.Never run acceptance scoring against a broken or stale build.
Start a local preview of dist/ and retain its URL for user review. Verify at
the captured breakpoints and observable states.
Run:
data-pwc-critical anchor exists.pwc fingerprints <dist_dir>pwc weight <dist_dir>pwc score --ref <source.png> --cand <clone.png>
Use --sections with per-section bounds when heights differ.Do not treat one aggregate SSIM number as acceptance. Structure, interaction, and each required breakpoint/state remain individually visible in the result.
While a required gate is red and budget remains:
pwc section <source_id> <name>..pwc/run.json with the attempt, measurement delta, and evidence
paths.Use at most five repair attempts per breakpoint × state. Stop early after one non-improving retry followed by a second attempt that also fails to improve the same metric. Preserve the best measured candidate; do not leave a regression as the final artifact.
Set ready_for_user_review only when:
Otherwise set failed_with_residuals and list every residual with its gate,
section/state, expected value, measured value, evidence, attempts, and reason for
stopping.
Return the local review URL, source project path, dist/ path, evidence/report
paths, gate summary, and residuals. Say “ready for your review,” never “accepted”
or “pixel-perfect.” The user's visual and functional review is the final
decision.
| Purpose | pwc command |
|---|---|
| Capture | pwc extract <url> |
| Plan | pwc plan <source_id> |
| One section's evidence | pwc section <source_id> <name> |
| Shell | pwc assemble <source_id> |
| Build | pwc build |
| Fingerprints | pwc fingerprints <dist> |
| Weight | pwc weight <dist> |
| Visual score | pwc score --ref <png> --cand <png> |
Authoring writes src/components/sections/<namespace>/ in the assembled
project. Preview is a local server on dist/. Interaction replay is done in
that preview; a visually similar but inert control fails.
Deterministic codegen (html_to_jsx) is a starting point, not the default path
for client-quality work.
© ericshang98, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (references) in the repository root of ericshang98/perfect-web-clone-skill.
Open the folder on GitHubat commit 9de21d1
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders. This page covers the copy in ericshang98/perfect-web-clone-skill, which our catalogue first saw on October 7, 2026.
Perfect Web Clone next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Perfect Web Clone this skillericshang98/perfect-web-clone-skill | 182 | — | ~2.7k | Automated safety check: Pass | MIT | |
| Web Artifacts Builderanthropics/skills | 180k | 41 repos | ~769 | Automated safety check: Pass | Apache-2.0 | |
| React Router Developmentremix-run/react-router | 57k | 1 repos | ~1.5k | Automated safety check: Pass | MIT | |
| Chakra UI v3 Builderchakra-ui/chakra-ui | 41k | — | ~3.1k | Automated safety check: Pass | MIT | |
| Creative Tim UI Blockscreativetimofficial/ui | 12k | — | ~2.1k | Automated safety check: Notes | MIT | |
| React Router Data Modehalo-dev/upage | 554 | 1 repos | ~927 | Automated safety check: Pass | MIT |
anthropics/skills
Builds multi-component claude.ai HTML artifacts as a small React, TypeScript and Tailwind project, then bundles it into one shareable HTML file.
remix-run/react-router
Guides work on React Router apps by first identifying whether the app uses Framework, Data or Declarative mode, then loading the matching reference and the installed package docs.
chakra-ui/chakra-ui
Builds responsive, accessible Chakra UI v3 components and layouts, sets up Chakra in new or existing projects, and designs themes with tokens, semantic tokens and recipes.
creativetimofficial/ui
Helps install, generate and review Creative Tim UI blocks: shadcn/ui-based React and Tailwind sections that follow a restrained, production-minded design philosophy.
halo-dev/upage
Build React applications using React Router's data mode with createBrowserRouter and RouterProvider.
langbot-app/LangBot
Covers developing the LangBot core backend and web UI: dev setup, repo layout, API auth types, adding endpoints, migrations and keeping the MCP server in step.
Reproduce a live website from its URL as a clean, deployable Vite + React project by running the complete agent-driven Perfect Web Clone harness: capture source evidence, plan the full page, author…. Perfect Web Clone is an agent skill from ericshang98/perfect-web-clone-skill. Reproduce a live website from its URL as a clean, deployable Vite + React project by running the complete agent-driven Perfect Web Clone harness: capture source evidence, plan the full page, author every section, implement common interactions, build, compare, repair, and hand the measured result to the user for review.
Perfect Web Clone fits situations like: the user asks an agent to clone; including a minimal request containing only an action and URL.
Run `npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a claude-code`. Or copy the skill folder (the ericshang98/perfect-web-clone-skill repository) into .claude/skills/perfect-web-clone in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a codex`. Or copy the skill folder (the ericshang98/perfect-web-clone-skill repository) into .agents/skills/perfect-web-clone in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ericshang98/perfect-web-clone-skill --skill perfect-web-clone -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/perfect-web-clone, .gemini/skills/perfect-web-clone, .github/skills/perfect-web-clone and .opencode/skills/perfect-web-clone in your project.
Going by SKILL.md and its folder, Perfect Web Clone needs the command-line tools its instructions call (pip and playwright). Our summary lists: Python 3.
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Perfect Web Clone is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Perfect Web Clone: Web Artifacts Builder (anthropics/skills, 180k stars), React Router Development (remix-run/react-router, 57k stars), Chakra UI v3 Builder (chakra-ui/chakra-ui, 41k stars) and Creative Tim UI Blocks (creativetimofficial/ui, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ericshang98 (a GitHub user) maintains it in ericshang98/perfect-web-clone-skill, which has 182 GitHub stars. The repository was last updated on August 22, 2026.
Source: ericshang98/perfect-web-clone-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.