skill
safari-webkit-skill
Claude skill for Safari/WebKit compatibility, diagnoses bugs, reviews code, and fixes iOS/Next.js issues that only break in Safari. Works with Claude.ai, Claude Code, and the API.
Set up
Skills are installed by placing their folder where your agent loads skills.
The download comes from github.com/K8Cill/safari-webkit-skill itself, not from our server, so what you get is exactly what its author published.
Install instructions come from the README
README
synced Oct 22, 2026🧭 Safari/WebKit Skill for Claude
A professional-grade Claude skill that turns Claude into a Safari/WebKit compatibility expert. Built for developers using Next.js, React, TypeScript, and modern web tooling who are tired of "works in Chrome, broken in Safari."
What It Does
Once installed, Claude automatically activates this skill when it detects Safari/WebKit-related work. It can:
- Diagnose Safari-specific bugs from symptoms alone
- Review code for WebKit compatibility issues before they ship
- Fix CSS, JS, and React/Next.js bugs with minimal, targeted patches
- Explain why something behaves differently in WebKit vs Chromium
- Optimize performance for JavaScriptCore and WebKit's compositor
- Guide Mobile Safari quirks: viewport, keyboard, touch, safe areas, PWA
Skill Contents
safari-webkit-skill/
├── SKILL.md # Core skill — workflows, checklists, behavior rules
└── references/
├── bug-patterns.md # 30+ confirmed bugs with fixes (CSS, JS, Next.js, media...)
├── compat-tables.md # Feature support across Safari 14–18 + WebKit vs Blink table
├── nextjs-safari.md # Next.js-specific: hydration, App Router, Tailwind, auth, fonts
└── mobile-safari.md # iOS Safari: viewport, keyboard, touch, PWA, ITP, debugging
Installation
Claude.ai (Web / Desktop / Mobile)
Requires a Pro, Max, Team, or Enterprise plan with Code Execution enabled.
- Go to Settings → Capabilities and enable Code execution and file creation
- Go to Customize → Skills
- Click Upload skill and select
safari-webkit-skill.skill
(or zip the folder yourself — see below) - Toggle the skill on
That's it. Claude will automatically load it when relevant.
Claude Code (CLI)
# Personal install — available across all your projects
cp -r safari-webkit-skill ~/.claude/skills/
# Or project-local install
cp -r safari-webkit-skill .claude/skills/
Claude Code discovers and invokes the skill automatically based on context.
Manual ZIP upload
If you cloned this repo and need a .zip:
zip -r safari-webkit-skill.zip safari-webkit-skill/
Then upload the zip in Customize → Skills.
Usage
The skill activates automatically. Just describe your problem naturally:
"My video component works in Chrome but won't autoplay on iOS"
"Safari is rendering my flexbox layout differently than Chrome"
"I'm getting a hydration mismatch in Next.js but only in Safari"
"Review this component for Safari compatibility"
"My position: fixed header flickers on iPhone while scrolling"
You can also be explicit:
"Use the safari-webkit skill to audit this CSS"
Example Fixes Included
100vh+ Mobile Safari toolbar →dvhfallback patternposition: stickybroken insideoverflow: hidden→overflow: clipnew Date('2024-01-15 10:00:00')→Invalid Datein Safari (the silent killer)- Flexbox
gapnot working on iOS 14 →@supportspattern - Video autoplay blocked on iOS →
muted+playsinlinerequirement useLayoutEffectSSR warning → isomorphic hook patternbackdrop-filtermissing →-webkit-backdrop-filterprefix- Input zoom on focus →
font-size: 16pxminimum - Soft keyboard pushing layout →
VisualViewportAPI pattern - Safari ITP blocking auth cookies →
sameSite: laxconfig
Compatibility Tables Included
Quick-reference tables for:
- CSS features across Safari 14 → 18
- Web APIs across Safari 14 → 18
- PWA/Service Worker features on iOS 14 → 18
- Media format support
- WebKit vs Chromium/Blink engine differences
Built With
Created using the skill-creator skill and the Agent Skills open standard.
Contributing
Found a Safari bug that's not covered? PRs welcome.
Add it to references/bug-patterns.md following the existing format:
### X.Y Short descriptive title
**Symptom**: What the developer sees
**Before (broken in Safari):**
[minimal code that reproduces]
**After (fixed):**
[corrected code]
License
MIT