Agent skill

Non-Destructive Chrome Automation

by glebis in glebis/claude-skills

Automates a dedicated, logged-in Chrome instance per profile without ever closing the user's own open tabs or browser windows.

MITAuto-check passedProductivity & Automation

Install Non-Destructive Chrome Automation

skills CLI
$ npx skills add glebis/claude-skills --skill browser-mate -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install glebis/claude-skills browser-mate --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/glebis/claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/browser-mate .claude/skills/browser-mate && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
browser-mate
GitHub stars
388
Token cost
~973 tokens
SKILL.md length
305 words
Files
4 (incl. scripts, references, assets)
Skills in repo
91
Repo updated
First seen
Licence
MIT

At a glance

Automates a dedicated, logged-in Chrome instance per profile without ever closing the user's own open tabs or browser windows.

  • Automating an authenticated site like ChatGPT or LinkedIn without closing your tabs
  • SKILL.md covers The one invariant (never…, Usage, Profiles and Authentication, plus 1 more section
  • Runs Python scripts from its folder; calls python3 and osascript; reaches chatgpt.com
  • Running a browser automation task that needs a persistent logged-in session

What it does

This skill solves a specific conflict: driving Chrome through a remote-debugging session normally means launching it with that flag on, which a sibling skill achieves by quitting the user's Chrome first. This skill instead launches its own dedicated Chrome instance with a separate profile folder and port, which Chrome allows to run alongside the user's main browser without any quitting.

One rule governs the whole skill: it never quits or kills any browser, and its stop command sends a termination signal only to a process matched by both its own dedicated profile folder and its own debug port. Each named profile keeps its own login state after a one-time manual sign-in, since the skill cannot and does not enter passwords itself, and the debug port only listens locally, with a note that this kind of connection carries no authentication of its own for whoever can reach it on that machine.

When your agent uses it

  • Automating an authenticated site like ChatGPT or LinkedIn without closing your tabs
  • Running a browser automation task that needs a persistent logged-in session
  • Keeping a dedicated automation browser profile separate from your daily browsing

Example prompts

  • “Open ChatGPT in automation mode without touching my regular Chrome tabs.”
  • “Check my LinkedIn notifications using the automation profile.”
  • “List which browser-mate profiles are currently configured.”

Requirements

  • macOS
  • The agent-browser CLI
  • Python 3 to run the bundled browser script

What it can do on your machine

Read from SKILL.md and the folder at commit 7524dff. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • osascript

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • chatgpt.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Non-Destructive Chrome Automation loads about 973 tokens when it runs, and up to ~1.9k if it reads all its reference files. Until then it costs about 157 tokens; SKILL.md has 305 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~157
When it runs · the whole SKILL.md, loaded when a task matches
~973
With references · SKILL.md plus every file in references/, read only if the agent opens them
~1.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from glebis/claude-skills at commit 7524dff, republished under its MIT licence (© glebis). 305 words, ~973 tokens.

Download SKILL.mdSave it as .claude/skills/browser-mate/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
browser-mate
description
Use when automating a real, logged-in Chrome WITHOUT disturbing the user's open tabs — e.g. authenticated sessions like ChatGPT, LinkedIn, or any site needing a persistent login. Launches or reuses a dedicated debug Chrome instance per named profile that coexists with the user's main browser; it never quits or kills any browser (unlike real-browser, which closes Chrome Beta's tabs). Trigger on "automate this site without closing my tabs", "use my logged-in session", "open ChatGPT/LinkedIn in automation", or when a browser task must preserve the user's existing windows. macOS, requires the agent-browser CLI.

browser-mate

Non-destructive Chrome automation. The problem it solves: to attach a CDP/agent-browser session, Chrome must run with --remote-debugging-port. The real-browser skill achieves this by quitting Chrome Beta first, destroying the user's open tabs. browser-mate instead runs a dedicated debug Chrome instance (its own --user-data-dir + port) that coexists with the user's main browser — Chrome permits concurrent instances when the data dirs differ, so no quit is needed.

The one invariant (never violate)

Never quit, pkill, or osascript quit any browser. The skill only ever launches a new dedicated instance or reuses an existing one. The single stop path sends SIGTERM only to a process matched by BOTH our dedicated user_data_dir AND our debug port — never the user's browser.

Usage

bash
# Ensure a profile's debug Chrome is up (launch or reuse); prints the PORT on stdout
PORT=$(python3 scripts/browser.py chatgpt)

# Then drive it with agent-browser (always pass --cdp $PORT). See references/agent-browser.md
SID=$(LC_ALL=C tr -dc 'a-z0-9' < /dev/urandom | head -c 6)
agent-browser --cdp $PORT --session $SID open "https://chatgpt.com/"
agent-browser --cdp $PORT --session $SID snapshot -i

Other subcommands:

bash
python3 scripts/browser.py list              # configured profiles
python3 scripts/browser.py status [profile]  # up/down
python3 scripts/browser.py stop chatgpt      # SIGTERM OUR instance only (graceful)

For the full agent-browser command set (click, fill, upload, screenshot, reliability, upgrade gotchas), read references/agent-browser.md.

Profiles

Config: ~/.config/browser-mate/profiles.json (auto-created from assets/profiles.example.json on first run). Each profile:

json
{ "default": "automation",
  "profiles": {
    "automation": { "binary": "<chrome binary>", "user_data_dir": "~/.browser-mate/automation", "port": 9222 },
    "chatgpt":     { "binary": "<chrome binary>", "user_data_dir": "~/.browser-mate/chatgpt", "port": 9223, "default_url": "https://chatgpt.com/" }
  } }
  • Each profile keeps its own login state — log in once per profile, it persists.
  • Add a profile by editing the JSON: pick a unique port and a dedicated user_data_dir (the launcher validates uniqueness and refuses dirs that point at the user's real Chrome profile).

Authentication

Cannot enter passwords (and must not). For a first-time login, launch the profile, then ask the user to log in manually in that window once; the session persists in the profile's user_data_dir for all future runs.

Safety & limits

  • Loopback only. The debug port binds to 127.0.0.1 (Chrome default). CDP has no auth — anyone local can drive it. Use on trusted machines; never pass --remote-debugging-address.
  • Dedicated data dir. A profile's user_data_dir must never be the user's real Chrome profile (~/Library/Application Support/Google/Chrome*) — the launcher refuses these.
  • Locked dir. If a profile's dir is already open in a non-debug Chrome window, the launcher fails loudly rather than killing it.
  • Replaces real-browser's launch step; interaction still uses agent-browser.

© glebis, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts, references, assets) in browser-mate of glebis/claude-skills.

  • SKILL.md
  • assets/profiles.example.json
  • references/agent-browser.md
  • scripts/browser.py

Open the folder on GitHubat commit 7524dff

Compare with similar skills

Non-Destructive Chrome Automation next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Non-Destructive Chrome Automation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Non-Destructive Chrome Automation this skillglebis/claude-skills388—~973Automated safety check: PassMIT
Browser Automation Edge Casesaden-hive/hive11k—~1.8kAutomated safety check: PassMIT
Browser MCP Agentantibrow/anti-detect-browser-skills9141 repos~4.2kAutomated safety check: WarnMIT
Altic Studioaltic-dev/altic-mcp172—~3.3kAutomated safety check: PassApache-2.0
Unicliolo-dot-io/Uni-CLI273—~3.8kAutomated safety check: NotesApache-2.0
Drive Screencoleam00/skills670—~5.4kAutomated safety check: PassMIT

Similar skills

  • Step-by-step procedure for debugging browser automation failures on complex sites such as LinkedIn, Twitter/X, single-page apps and Shadow DOM pages.

    11k GitHub stars~1.8k tokensUpdated 23 days ago
    Productivity & AutomationAuto-check passed
  • Browser MCP Agent

    antibrow/anti-detect-browser-skills

    Give an AI agent its own real browser over MCP tool calls - launch, navigate, click, fill, screenshot, extract text, run JS - with a kernel-level real-device fingerprint and a persistent profile, so…

    914 GitHub starsUsed in 1 repo~4.2k tokens
    Productivity & AutomationAuto-check: warnings
  • Altic Studio

    altic-dev/altic-mcp

    macOS automation skill for AppleScript actions and Chrome browser control via MCP CDP tools.

    172 GitHub stars~3.3k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Unicli

    olo-dot-io/Uni-CLI

    Comprehensive guide to Uni-CLI — the open Agent-Computer Interface runtime for real software.

    273 GitHub stars~3.8k tokensUpdated 2 days ago
    Productivity & AutomationAuto-check: notes
  • Drive Screen

    coleam00/skills

    Take real control of the desktop - list and focus windows, type, paste, click, scroll, and screenshot - on Windows, macOS or Linux, and drive other coding-agent sessions running in terminals.

    670 GitHub stars~5.4k tokensUpdated 19 days ago
    Productivity & AutomationAuto-check passed
  • Bright Data MCP

    brightdata/skills

    Bright Data MCP handles ALL web data operations. An agent skill from brightdata/skills.

    264 GitHub starsUsed in 1 repo~3.7k tokens
    Productivity & AutomationAuto-check passed

More from glebis/claude-skills

All 91 skills in this repo
  • Runs a human-first workflow for labeling PII spans in a transcript, then scores inter-annotator agreement and drafts an adjudicated gold set.

    388 GitHub stars~1.3k tokensUpdated 11 days ago
    Auto-check passed
  • Deep Research

    glebis/claude-skills

    This skill should be used when conducting comprehensive research on any topic using the OpenAI Deep Research API.

    388 GitHub stars~2.6k tokensUpdated 11 days ago
    Auto-check: notes
  • Elimination Research

    glebis/claude-skills

    This skill should be used for elimination-style research where the user wants to choose from a shortlist of products, tools, services, vendors, or other options using explicit criteria, numeric…

    388 GitHub stars~1.6k tokensUpdated 11 days ago
    Auto-check passed
  • Narrated HTML Presentations

    glebis/claude-skills

    Generates a self-contained HTML presentation with article and slides modes, ElevenLabs voiceover narration and optional GPT Image 2 illustrations.

    388 GitHub stars~2.3k tokensUpdated 11 days ago
    Auto-check: notes
  • Writes fictional but realistic coaching or therapy session transcripts for evals, demos and few-shot examples, in several modalities and export formats.

    388 GitHub stars~2.9k tokensUpdated 11 days ago
    Auto-check passed
  • The Goal Automation Diagnostic

    glebis/claude-skills

    Walks through Goldratt's Five Focusing Steps to find the real bottleneck in your work, then recommends one automation aimed at it and a list of what not to automate.

    388 GitHub stars~2k tokensUpdated 11 days ago
    Auto-check passed

Works with

Questions about Non-Destructive Chrome Automation

What does Non-Destructive Chrome Automation do?

Automates a dedicated, logged-in Chrome instance per profile without ever closing the user's own open tabs or browser windows. This skill solves a specific conflict: driving Chrome through a remote-debugging session normally means launching it with that flag on, which a sibling skill achieves by quitting the user's Chrome first. This skill instead launches its own dedicated Chrome instance with a separate profile folder and port, which Chrome allows to run alongside the user's main browser without any quitting.

When should I use Non-Destructive Chrome Automation?

Non-Destructive Chrome Automation fits situations like: automating an authenticated site like ChatGPT or LinkedIn without closing your tabs; running a browser automation task that needs a persistent logged-in session; keeping a dedicated automation browser profile separate from your daily browsing.

How do I install Non-Destructive Chrome Automation in Claude Code?

Run `npx skills add glebis/claude-skills --skill browser-mate -a claude-code`. Or copy the skill folder (browser-mate in glebis/claude-skills) into .claude/skills/browser-mate in your project. Claude Code loads it when a task matches its description.

How do I install Non-Destructive Chrome Automation in Codex?

Run `npx skills add glebis/claude-skills --skill browser-mate -a codex`. Or copy the skill folder (browser-mate in glebis/claude-skills) into .agents/skills/browser-mate in your project. Codex loads it when a task matches its description.

Can I use Non-Destructive Chrome Automation in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add glebis/claude-skills --skill browser-mate -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/browser-mate, .gemini/skills/browser-mate, .github/skills/browser-mate and .opencode/skills/browser-mate in your project.

What does Non-Destructive Chrome Automation need to run?

Going by SKILL.md and its folder, Non-Destructive Chrome Automation needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and osascript). Our summary lists: macOS; The agent-browser CLI; Python 3 to run the bundled browser script.

Does Non-Destructive Chrome Automation access the network?

SKILL.md names 1 domain. In commands or code: chatgpt.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Non-Destructive Chrome Automation safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Non-Destructive Chrome Automation use?

Non-Destructive Chrome Automation is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Non-Destructive Chrome Automation use?

About 973 tokens (SKILL.md is roughly 3.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 973 tokens, read only when the agent opens those files.

What are the alternatives to Non-Destructive Chrome Automation?

Skills that share tags, products or a category with Non-Destructive Chrome Automation: Browser Automation Edge Cases (aden-hive/hive, 11k stars), Browser MCP Agent (antibrow/anti-detect-browser-skills, 914 stars), Altic Studio (altic-dev/altic-mcp, 172 stars) and Unicli (olo-dot-io/Uni-CLI, 273 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Non-Destructive Chrome Automation?

glebis (a GitHub user) maintains it in glebis/claude-skills, which has 388 GitHub stars. The repository holds 91 skills in this directory. The repository was last updated on September 26, 2026.

Source: glebis/claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.