一键导入
sweetlink
Use when the task needs a real authenticated browser tab via SweetLink for screenshots, smoke tests, or DevTools telemetry.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when the task needs a real authenticated browser tab via SweetLink for screenshots, smoke tests, or DevTools telemetry.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when setting up or reviewing a development environment, especially Varlock env schemas, gitignored env files, macOS Keychain/local secret storage, SOPS/age optional GitOps secrets, CI secret access, dotenv bootstrapping, or secure local dev onboarding.
Use when the repo has .beans or the user mentions beans, beans-prime, flat-file issues, task tracking, or issue status changes.
Opinionated JB GitHub Actions release-attempt workflow. Use only when the repo already has .github/workflows/jb-release-v1.yaml (or equivalent JB release-attempt workflow) or the user explicitly asks to set it up. Do not use for ordinary local releases; use jb-local-release instead.
Use when the user asks to run a local release flow: prepare version/changelog changes, run local checks, commit, tag, and optionally publish only when explicitly requested.
Query MDN Web Docs through the official MDN MCP server using a persistent mcporter config, avoiding a direct MCP connection in the agent harness. Use when checking current web platform docs, CSS/HTML/JavaScript/Web API behavior, MDN browser compatibility data, Baseline support, or when the user asks whether a browser feature is supported.
Use when the user asks for Chrome MCP/DevTools MCP via mcporter, existing Chrome tabs, console/network inspection, screenshots, or performance traces.
| name | sweetlink |
| description | Use when the task needs a real authenticated browser tab via SweetLink for screenshots, smoke tests, or DevTools telemetry. |
| homepage | https://github.com/steipete/sweetlink |
| metadata | {"clawdbot":{"emoji":"🍭","requires":{"bins":["sweetlink"]},"install":[{"id":"node","kind":"node","package":"sweetlink","bins":["sweetlink"],"label":"Install SweetLink (pnpm)"}]}} |
Connect your AI agent to a real browser tab. Like Playwright, but works in your current tab.
# From source (requires pnpm)
cd ~/Develop/bjesuiter/sweetlink
pnpm install
pnpm build
# Or globally
pnpm add -g sweetlink
# Trust CA for TLS
sweetlink trust-ca
# Start the SweetLink daemon (runs on https://localhost:4455)
sweetlink daemon start
# Check status
sweetlink daemon status
# Stop daemon
sweetlink daemon stop
# List active sessions
sweetlink session list
# Reconnect after hot reload
sweetlink session reconnect <session-id>
# Open browser with DevTools (from main profile)
sweetlink browser open --profile default
# Open incognito profile
sweetlink browser open --profile incognito
# Get browser status
sweetlink browser status
# Tail console logs (last 50 entries)
sweetlink devtools console --tail 50
# Tail network requests
sweetlink devtools network --tail 50
# Clear buffers
sweetlink devtools clear
# Capture screenshot
sweetlink screenshot --output screenshot.png
# Get DOM snapshot
sweetlink dom snapshot --output dom.json
# Query element (CSS selector)
sweetlink dom query ".submit-button" --property textContent
Use with Codex, Claude, or Cursor once a session is live:
# Example: Check if element exists
sweetlink dom query "#login-form" --exists
# Example: Click button
sweetlink dom click ".submit-btn"
# Example: Type in input
sweetlink dom type "#email" "user@example.com"
# Example: Get page title
sweetlink browser title
sweetlink daemon start
sweetlink trust-ca # First time only
sweetlink browser open --profile default
# Agent uses these commands:
sweetlink dom query ".product-card" --property outerHTML
sweetlink screenshot --output products.png
sweetlink devtools console --tail 100
sweetlink session list
sweetlink session reconnect <session-id>
# Navigate to app
sweetlink browser open --profile default
# (manually navigate to http://localhost:3000)
# Check for console errors
sweetlink devtools console --tail 0
# Capture full page
sweetlink screenshot --full-page --output test.png
# Capture specific element
sweetlink dom query ".hero" --screenshot hero.png
sweetlink dom type "#name" "Test User"
sweetlink dom type "#email" "test@example.com"
sweetlink dom click "#submit"
sweetlink dom query "#success" --exists
GET /api/sweetlink/status — Check daemon health + TLS trustPOST /api/sweetlink/session — Create new sessionGET /api/sweetlink/sessions — List sessions| Command | Description |
|---|---|
sweetlink daemon start|stop|status | Manage daemon |
sweetlink browser open|close | Control browser |
sweetlink session list|reconnect | Manage sessions |
sweetlink devtools console|network | DevTools access |
sweetlink dom query|click|type|screenshot | DOM operations |
sweetlink screenshot | Capture screenshots |
# Check if port is in use
lsof -i :4455
# Kill existing process
sweetlink daemon stop
sweetlink daemon start
# Re-run trust
sweetlink trust-ca
# Open browser to accept
open https://localhost:4455
# List sessions
sweetlink session list
# Reconnect
sweetlink session reconnect <session-id>