/SKILL.md
Connect agent-browser to an existing logged-in Chrome session via Chrome DevTools Protocol (CDP). Use when you need to automate browsers with existing login sessions (X/Twitter, Skool, Gmail, etc.) without re-authenticating. Triggers on "logged in browser", "existing session", "Chrome CDP", "bypass login", or "use my Chrome".
npx skillsauth add aden232003/cdp-skill browser-auth-cdpInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Connect agent-browser to your existing Chrome with all login sessions intact.
# 1. Copy Chrome profile (required - CDP needs non-default data dir)
rm -rf /tmp/chrome-debug-profile 2>/dev/null
mkdir -p /tmp/chrome-debug-profile
cp -r "$HOME/Library/Application Support/Google/Chrome/Default" /tmp/chrome-debug-profile/Default
# 2. Kill existing Chrome
killall "Google Chrome" 2>/dev/null; sleep 2
# 3. Launch Chrome with debugging
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \
--remote-debugging-port=9222 \
--user-data-dir=/tmp/chrome-debug-profile \
--no-first-run &
# 4. Wait and verify CDP is ready
sleep 5
curl -s http://127.0.0.1:9222/json/version
# 5. Connect agent-browser
agent-browser --cdp 9222 open https://x.com
agent-browser --cdp 9222 snapshot -i
Or use the helper script: scripts/launch_chrome_cdp.sh
--user-data-dir for remote debugging--cdp 9222: All agent-browser commands need this flag when using CDPagent-browser --cdp 9222 open https://x.com
agent-browser --cdp 9222 snapshot -i | grep -i "profile\|account\|logout"
agent-browser --cdp 9222 snapshot -i | grep -q "Maybe later" && \
agent-browser --cdp 9222 click @e4
agent-browser --cdp 9222 open "https://x.com/user/status/123456"
sleep 2
TBOX=$(agent-browser --cdp 9222 snapshot -i | grep 'textbox "Post text"' | grep -oE 'e[0-9]+')
agent-browser --cdp 9222 fill @$TBOX "Your reply"
RBTN=$(agent-browser --cdp 9222 snapshot -i | grep 'button "Reply"' | grep -v disabled | head -1 | grep -oE 'e[0-9]+')
agent-browser --cdp 9222 click @$RBTN
LOG="/tmp/browser_log.txt"
echo "=== Session $(date) ===" > "$LOG"
for url in "${URLS[@]}"; do
agent-browser --cdp 9222 open "$url"
# ... perform actions ...
echo "$url - DONE" >> "$LOG"
done
| Issue | Solution |
|-------|----------|
| "Failed to connect via CDP" | Kill all Chrome: killall "Google Chrome", relaunch |
| "requires non-default data directory" | Must use --user-data-dir=/tmp/chrome-debug-profile |
| Port 9222 not listening | curl http://127.0.0.1:9222/json/version to verify |
| Login session missing | Re-copy Chrome profile: cp -r ... /tmp/chrome-debug-profile/ |
| Element refs changed | Re-run snapshot -i after any page navigation |
Chrome path: /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
Profile path: ~/Library/Application Support/Google/Chrome/Default
Chrome path: /usr/bin/google-chrome or /opt/google/chrome/chrome
Profile path: ~/.config/google-chrome/Default
Chrome path: C:\Program Files\Google\Chrome\Application\chrome.exe
Profile path: %LOCALAPPDATA%\Google\Chrome\User Data\Default
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
A CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.