A Claude skill that switches output from markdown to a single self-contained HTML file when the deliverable is spatial, comparative, interactive, or long-lived.
Based on Thariq Shihipar's The unreasonable effectiveness of HTML (https://thariqs.github.io/html-effectiveness/).
When you ask Claude for an implementation plan, a code review, a design exploration, a status report, an explainer, a post-mortem, a prototype, or a throwaway editor, this skill makes Claude produce an .html file you can open, scan, and share, instead of a 600-line markdown wall.
A built-in decision prompt tells Claude when HTML wins and when to stay in markdown.
mkdir -p ~/.claude/skills/html-artifacts
cp SKILL.md ~/.claude/skills/html-artifacts/SKILL.mdRestart your Claude Code session. The skill loads automatically when its description matches your prompt.
Drop SKILL.md into your team's skills repo (e.g., your-org/agent-skills) under skills/html-artifacts/SKILL.md. Distribute via npx skills or your preferred installer.
claude.ai does not load skill files directly. Use the global decision prompt instead:
- Open
decision-prompt.md. - Copy the section between the
---markers. - Paste into Settings → Profile → Personal Preferences (or into a Project's custom instructions).
This gives Claude the same decision logic as a skill installation. It does not give Claude the full SKILL.md body, but the decision prompt is the part that changes behavior most.
Paste the section from decision-prompt.md into your system parameter. Pair with Anthropic API artifacts or write the HTML to a file in your application code.
If you want the full SKILL.md scoped to one Project, paste the SKILL.md body (everything below the frontmatter) into the Project's instructions field.
| File | Purpose |
|---|---|
SKILL.md |
The full skill. Use in Claude Code or paste into Project instructions. |
decision-prompt.md |
A condensed pasteable version of the decision logic. Use in claude.ai User Preferences, API system prompts, or CLAUDE.md. |
index.html |
The landing page. Demonstrates the skill on itself. Hosts at https://omerakben.github.io/html-artifacts/ once GitHub Pages is enabled. |
evals.json |
Test prompts for triggering accuracy. Useful if you want to evaluate or iterate on the description. |
README.md |
This file. |
After pushing the repo, enable GitHub Pages:
# Settings → Pages → Source: Deploy from a branch → main / (root)
# Or via the gh CLI:
gh api repos/omerakben/html-artifacts/pages -X POST -f source[branch]=main -f source[path]=/Wait two minutes. The page will be live at https://omerakben.github.io/html-artifacts/. That URL is the link to put in the tweet.
The skill is a single Markdown file with no executable code, no network calls, and no dependencies. To share, link to the repo or paste the SKILL.md content directly.
A short version for social posts:
Got tired of agents producing 600-line markdown plans I never reread. Built a Claude skill that switches to a single self-contained HTML file when the deliverable is spatial — implementation plans, post-mortems, design systems, prototypes, status reports. Has a built-in markdown-vs-HTML decision prompt you can paste into User Preferences for any Claude session. Pattern credit: Thariq Shihipar (https://thariqs.github.io/html-effectiveness/).
Try these prompts in a session that has the skill installed. The first three should produce HTML files. The last three should stay as markdown or chat replies.
Should produce HTML:
- "Write me an implementation plan for migrating our Selenium tests to Playwright."
- "Explain how rate limiting works in this repo."
- "Compare three approaches for handling auth in our app."
Should stay in markdown:
- "What's the difference between
useMemoanduseCallback?" - "Fix this typo on line 42."
- "Write a haiku about deployment day."
If any of the first three return markdown, the skill is undertriggering — open SKILL.md and make the description more pushy on the matching trigger phrase. If any of the last three return HTML, the skill is overtriggering — tighten the negative-trigger list.
Pattern: Thariq Shihipar (CC0 / treat as inspiration). Skill text: do whatever you want with it.