Give your AI Agent the power to control Safari on macOS. No extensions, no separate browser.
npx skills add https://github.com/sdlll/claude-for-safari --skill claude-for-safari使用 CLI 安装这个技能,并在你的工作区中直接复用对应的 SKILL.md 工作流。
Give your AI Agent the power to control Safari
Website · Quick Start · Features · FAQ
You want your AI Agent to help with browser tasks — then you discover:
You just want AI to use your Safari, as if you were doing it yourself.
Claude for Safari makes it one command:
npx skills add SDLLL/claude-for-safari
After installing, tell Claude "check what's open in my Safari" — it reads and controls your real browser directly.
If this saves you time, give it a ⭐ — it helps other developers discover the project!
Run this in your terminal:
npx skills add SDLLL/claude-for-safari
Then launch Claude Code:
claude
Say "show me what tabs are open in Safari". The agent will guide you through permission setup automatically.
Compatible with any AI Agent that supports Skills: Claude Code, Cursor, Windsurf, etc.
The agent auto-detects and guides you, but you can configure ahead of time:
Zero install. Pure macOS native capabilities. One Skill covers all browser operations:
| Capability | What the Agent Does | How |
|---|---|---|
| List tabs | List all windows and tabs with title & URL | AppleScript |
| Read pages | Extract text, structured data, simplified DOM | AppleScript + JavaScript |
| Execute JS | Run arbitrary JavaScript in page context | AppleScript do JavaScript |
| Screenshot | Capture Safari window — AI can "see" the page | screencapture |
| Navigate | Open URLs, new tabs, new windows | AppleScript |
| Click | Click elements (React/Vue/Angular compatible) | JavaScript dispatchEvent |
| Type | Fill forms, simulate keyboard input | JavaScript + System Events |
| Scroll | Scroll up/down, scroll to element | JavaScript scrollBy/scrollTo |
| Switch tabs | Switch by index or URL keyword | AppleScript |
| Wait for load | Wait until page is fully loaded | JavaScript readyState |
| Mode | Permission Required | Window Switch | Best For |
|---|---|---|---|
| Background | Screen Recording | No switch | Recommended, seamless |
| Foreground | None | Brief (~0.3s) | Default, auto-switches back |
Claude Code ──osascript──► Safari (reads/controls your real browser)
│
└──screencapture──► screenshot ──► Claude sees the page
No extensions. No proxy servers. No extra processes.
Everything runs through macOS native AppleScript and screencapture. Websites see a real user — no automation fingerprints.
No. This Skill relies entirely on macOS built-in AppleScript and screencapture. Just grant a few system permissions on first use.
Safari only. For other browsers, use Playwright MCP or Chrome ACP. Safari is the only macOS browser with full AppleScript automation support.
Claude Code's permission system asks for your confirmation before every sensitive action. You can approve individually or in bulk. All operations are visible in your terminal.
Without Screen Recording permission, Safari briefly activates (~0.3s) then switches back. Grant Screen Recording permission for fully background screenshots with zero window switching.
Any agent supporting Claude Code Skills: Claude Code, Cursor, Windsurf, etc.