Browser Use
QwenLM/qwen-code-examples
Control browser pages using the Playwright MCP server. An agent skill from QwenLM/qwen-code-examples.
A skill your agent uses when an agent must inspect or operate an authenticated SAP web UI through an in-app Browser, Microsoft Edge CDP, or an existing Playwright client, especially when SAP SSO…
$ npx skills add secondsky/sap-skills --skill sap-browser-automation -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install secondsky/sap-skills sap-browser-automation --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/secondsky/sap-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/sap-browser-automation/skills/sap-browser-automation .claude/skills/sap-browser-automation && rm -rf skills-srcUse ~/.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/
Install the "sap-browser-automation" agent skill from https://github.com/secondsky/sap-skills/tree/main/plugins/sap-browser-automation/skills/sap-browser-automation into .claude/skills/sap-browser-automation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sap-browser-automation", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/secondsky/sap-skills/tree/main/plugins/sap-browser-automation/skills/sap-browser-automationType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add secondsky/sap-skills --skill sap-browser-automation -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install secondsky/sap-skills sap-browser-automation --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/secondsky/sap-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/sap-browser-automation/skills/sap-browser-automation .agents/skills/sap-browser-automation && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "sap-browser-automation" agent skill from https://github.com/secondsky/sap-skills/tree/main/plugins/sap-browser-automation/skills/sap-browser-automation into .agents/skills/sap-browser-automation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sap-browser-automation", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add secondsky/sap-skills --skill sap-browser-automation -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install secondsky/sap-skills sap-browser-automation --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/secondsky/sap-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/sap-browser-automation/skills/sap-browser-automation .cursor/skills/sap-browser-automation && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "sap-browser-automation" agent skill from https://github.com/secondsky/sap-skills/tree/main/plugins/sap-browser-automation/skills/sap-browser-automation into .cursor/skills/sap-browser-automation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sap-browser-automation", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/secondsky/sap-skills.git --path plugins/sap-browser-automation/skills/sap-browser-automation--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add secondsky/sap-skills --skill sap-browser-automation -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install secondsky/sap-skills sap-browser-automation --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/secondsky/sap-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/sap-browser-automation/skills/sap-browser-automation .gemini/skills/sap-browser-automation && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "sap-browser-automation" agent skill from https://github.com/secondsky/sap-skills/tree/main/plugins/sap-browser-automation/skills/sap-browser-automation into .gemini/skills/sap-browser-automation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sap-browser-automation", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install secondsky/sap-skills sap-browser-automationInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add secondsky/sap-skills --skill sap-browser-automation -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/secondsky/sap-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/sap-browser-automation/skills/sap-browser-automation .github/skills/sap-browser-automation && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "sap-browser-automation" agent skill from https://github.com/secondsky/sap-skills/tree/main/plugins/sap-browser-automation/skills/sap-browser-automation into .github/skills/sap-browser-automation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sap-browser-automation", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add secondsky/sap-skills --skill sap-browser-automation -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install secondsky/sap-skills sap-browser-automation --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/secondsky/sap-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/sap-browser-automation/skills/sap-browser-automation .opencode/skills/sap-browser-automation && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "sap-browser-automation" agent skill from https://github.com/secondsky/sap-skills/tree/main/plugins/sap-browser-automation/skills/sap-browser-automation into .opencode/skills/sap-browser-automation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "sap-browser-automation", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
sap-browser-automationA skill your agent uses when an agent must inspect or operate an authenticated SAP web UI through an in-app Browser, Microsoft Edge CDP, or an existing Playwright client, especially when SAP SSO…
Sap Browser Automation is an agent skill from secondsky/sap-skills. Use when an agent must inspect or operate an authenticated SAP web UI through an in-app Browser, Microsoft Edge CDP, or an existing Playwright client, especially when SAP SSO reuse, isolated Edge profiles, deterministic target selection, screenshots, or browser bootstrap recovery is required.
Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files, including scripts and reference files (for example `README.md`, `agents/openai.yaml` and `references/auth-state-bootstrap.md`).
It sits in Productivity & Automation, covering Browser automation, Authentication and Browser testing. It works with Playwright. The repository describes itself as: Production-ready plugins for SAP development with AI coding assistants — BTP, CAP, Fiori, ABAP, HANA, Analytics Cloud, Datasphere, and more. The licence is GPL-3.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 652a861. It shows what the files ask for, not the result of running them.
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.
Ships 6 files in scripts/ (JavaScript and PowerShell), which the agent can run.
Shell commands in SKILL.md call:
codexFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Sap Browser Automation loads about 3.3k tokens when it runs, and up to ~6.2k if it reads all its reference files. Until then it costs about 79 tokens; SKILL.md has 1,659 words of instructions outside code blocks.
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.
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.
The full file from secondsky/sap-skills at commit 652a861, republished under its GPL-3.0 licence (© secondsky). 1,659 words, ~3,313 tokens.
.claude/skills/sap-browser-automation/SKILL.md (or your agent's skills folder). This skill also uses 11 other files; get the full folder from GitHub.Use this skill as the shared browser layer for SAP-specific skills. It owns surface selection, authentication bootstrap, isolated Edge/CDP startup, state reuse, target verification, evidence, recovery, and cleanup. The consuming skill still owns the SAP action boundaries: story edits, planning writeback, model changes, Datasphere deployment, SQL execution, and test acceptance.
Use this skill whenever an agent must interact with an authenticated SAP web UI, select or inspect a browser target, start Edge with loopback CDP, reuse an approved Edge profile, transfer scoped browser state to an already-installed compatible client, or recover from browser bootstrap/authentication failure. Do not use it for code-only, API-only, CLI-only, or database-native tasks that do not need visible browser state.
| Need | Route |
|---|---|
| Manual SSO in the current browser | In-app Browser, then visible signed-in verification |
| Enterprise Edge or no Playwright installation | Fresh isolated Edge with copied profile and loopback CDP |
| Independent compatible browser context | Existing Playwright plus scoped storageState or CDP state transfer |
| Missing auth or failed browser bootstrap | User-assisted login, recovery, or specification-only handoff |
If the user names Chrome, Edge, Chrome DevTools MCP, CDP, or a local DevTools bridge, use only that browser and connection method. Do not silently switch to the In-app Browser, a ChatGPT browser extension, Playwright, Computer Use, another browser, or shell automation. If the requested surface is not available, report the exact blocker and stop at that boundary.
codex mcp get check alone does not make the MCP usable.list_pages, and verify that the returned pages belong to the requested browser. If the tools are missing after configuration, ask the user to restart Codex or open a new task before continuing.127.0.0.1; never expose the port, WebSocket endpoint, profile, or auth state to a network, repository, log, screenshot, or Oracle review.Load the focused references only when needed:
references/edge-cdp-control.md for Edge launch, CDP discovery, target selection, and recovery.references/auth-state-bootstrap.md for copying an authenticated Edge profile, exporting scoped state when available, and injecting it into compatible clients.references/in-app-browser-auth.md for manual in-app authentication and capability boundaries.scripts/edge-profile.ps1 for deterministic profile cloning, launch, status, and stop operations.scripts/cdp-agent.mjs for target discovery, inspection, interaction, screenshots, and authentication-state transfer. It requires Node.js 22 or newer and no npm packages.Record the target application, tenant/host, requested URL, read/write intent, evidence required, and whether the user approved profile reuse. Use this order:
Do not install Playwright, browser binaries, MCP servers, or extensions in an enterprise environment unless the user explicitly requests and approves that change. If Playwright is unavailable, Edge/CDP remains the primary automation surface.
When no other browser or connection was requested, open the target using the installed Browser skill. Inspect visible state. If the page requires SSO, pause for the user to complete the login manually through the supported secure auth flow. Verify a positive signed-in signal on the target domain and retain a screenshot or equivalent evidence when allowed.
Do not extract cookies, local storage, session storage, profile databases, passwords, or tokens from the in-app Browser. Its session is independent from Edge. If it cannot expose an authenticated page after manual login, record the failure and continue to the approved Edge path.
This route runs inside Codex or Claude Desktop. Its runtime validation is deferred to those desktop environments and is not part of the standalone Edge/CDP acceptance tests.
Before touching the user's normal Edge profile, state the intended scope and ask for confirmation:
I will capture the approved SAP session from the currently authenticated Edge target, close normal Edge, and clone its selected profile into an isolated automation directory. May I continue?
If the user declines, ask them to authenticate once in the isolated profile. If they approve:
Default or Profile N, target URL, tenant host,
target path/title, approved SAP origin, and local temporary state-file path.edge://inspect/#remote-debugging and enable Allow remote debugging for this browser instance.scripts/cdp-agent.mjs export-auth against the normal user-data directory. Require host, path,
and/or title filters that resolve exactly one approved page. Repeat --origin for approved SAP or
identity-provider cookie scopes.msedge.exe process still owns the source profile.scripts/edge-profile.ps1 -Action CloneLaunch with the selected profile name and a new or empty
automation root. The helper preserves Profile N, refuses non-empty clone destinations, launches
with --remote-debugging-port=0, and verifies the listener discovered through DevToolsActivePort.scripts/cdp-agent.mjs inspect and verify tenant, path, title, visible signed-in state, and page readiness.scripts/cdp-agent.mjs import-auth against the isolated target,
reload, and repeat the authenticated-state inspection.scripts/edge-profile.ps1 -Action LaunchExisting; never clone over a populated automation root.The complete Windows commands, path checks, CDP probes, and recovery matrix are in
references/edge-cdp-control.md and references/auth-state-bootstrap.md.
Use the isolated Edge instance directly. Run scripts/cdp-agent.mjs --help for the complete command
surface. The bundled driver supports deterministic targets, inspection/snapshot, navigation,
evaluation, selector or coordinate clicks, text entry, key presses, screenshots, and auth-state
export/import without Playwright. Use an existing Playwright installation only when the consuming task
needs it; do not install it for this workflow.
Authentication transfer uses CDP Storage.getCookies and Storage.setCookies plus page-scoped
localStorage and sessionStorage. Recheck SSO redirects, SameSite behavior, certificates, and visible
readiness after import. The in-app Browser remains a separate session.
Before changing anything, verify:
Capture page-specific evidence and explicit no-data/error states. Do not treat a spinner disappearing, CDP connecting, or a browser window opening as task completion.
Use the following fallback sequence:
DevToolsActivePort fallback.When the user explicitly named a browser or connection method, do not use this sequence to switch to a different surface. Stop when the requested surface is unavailable or its live handshake fails.
Report authentication as verified, missing, expired, blocked, or unknown; never infer success
from browser bootstrap alone.
Common failures are handled in the shared Edge reference: refused or missing CDP endpoints, 404
discovery responses, wrong targets, SSO redirects, copied profiles that are not authenticated, policy
blocks, and runtime/widget errors. When recovery cannot establish a verified authenticated target,
stop and hand off the missing evidence rather than guessing or claiming completion.
The public-source review and the distinction between documented behavior and unverified tenant behavior
are recorded in docs/project/sap-browser-automation-source-review-2026-07-14.md.
Profile copies and auth-state files may contain cookies, refresh tokens, saved passwords, history, extensions, and enterprise session data. Keep them in a user-local path with restricted access. Do not place them under the repository, commit them, send them to Oracle, include them in bug reports, or paste their contents into chat. Redact tenant IDs, story IDs, query strings, session-like URL values, cookie values, WebSocket endpoints, and unrelated tabs from evidence.
For any write-capable action, record the approving user, target, intended mutation, before/after verification, and rollback or cleanup status. The consuming SAP skill remains authoritative for whether the action itself is allowed.
© secondsky, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 11 other files (scripts, references) in plugins/sap-browser-automation/skills/sap-browser-automation of secondsky/sap-skills.
Open the folder on GitHubat commit 652a861
Sap Browser 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Sap Browser Automation this skillsecondsky/sap-skills | 462 | — | ~3.3k | Automated safety check: Pass | GPL-3.0 | |
| Browser UseQwenLM/qwen-code-examples | 143 | — | ~451 | Automated safety check: Pass | None | |
| Playwright Skilllackeyjb/playwright-skill | 3.2k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Playwright Skilltech-leads-club/agent-skills | 7k | — | ~3.6k | Automated safety check: Pass | Custom licence | |
| Open BrowserJasonHonKL/Openbrowser | 114 | — | ~1.6k | Automated safety check: Pass | MIT | |
| Playwright CLIfugazi/test-automation-skills-agents | 247 | — | ~2.2k | Automated safety check: Pass | MIT |
QwenLM/qwen-code-examples
Control browser pages using the Playwright MCP server. An agent skill from QwenLM/qwen-code-examples.
lackeyjb/playwright-skill
Complete browser automation with Playwright. An agent skill from lackeyjb/playwright-skill.
tech-leads-club/agent-skills
Complete browser automation with Playwright. An agent skill from tech-leads-club/agent-skills.
JasonHonKL/Openbrowser
A skill your agent uses whenever the task involves browsing web pages, extracting page content, clicking forms, or completing web workflows.
fugazi/test-automation-skills-agents
Drive a live browser from the CLI with playwright-cli to navigate, interact, snapshot, and capture evidence.
magnus919/agent-skills
Operate Playwright for browser automation end to end: author and debug E2E test suites (robust locators, network interception and mocking, parallel workers, accessibility snapshot checks), wire them…
secondsky/sap-skills
SAP-RPT-1-OSS local tabular prediction workflows for FI/CO prototype datasets.
secondsky/sap-skills
Secure dependency upgrades with supply chain protection, cooldowns, and staged rollout.
secondsky/sap-skills
Comprehensive ABAP development skill for SAP systems. An agent skill from secondsky/sap-skills.
secondsky/sap-skills
SAP dependency security and MCP executable trust policy with secure upgrades, cooldowns, staged rollout, and supply-chain protection.
secondsky/sap-skills
Comprehensive SAP ABAP CDS (Core Data Services) reference for data modeling, view development, and semantic enrichment.
secondsky/sap-skills
Guides development with SAP AI Core and SAP AI Launchpad for enterprise AI/ML workloads on SAP BTP.
Works with
Categories
A skill your agent uses when an agent must inspect or operate an authenticated SAP web UI through an in-app Browser, Microsoft Edge CDP, or an existing Playwright client, especially when SAP SSO…. Sap Browser Automation is an agent skill from secondsky/sap-skills. Use when an agent must inspect or operate an authenticated SAP web UI through an in-app Browser, Microsoft Edge CDP, or an existing Playwright client, especially when SAP SSO reuse, isolated Edge profiles, deterministic target selection, screenshots, or browser bootstrap recovery is required.
Sap Browser Automation fits situations like: an agent must inspect; operate an authenticated SAP web UI through an in-app Browser; microsoft Edge CDP; an existing Playwright client.
Run `npx skills add secondsky/sap-skills --skill sap-browser-automation -a claude-code`. Or copy the skill folder (plugins/sap-browser-automation/skills/sap-browser-automation in secondsky/sap-skills) into .claude/skills/sap-browser-automation in your project. Claude Code loads it when a task matches its description.
Run `npx skills add secondsky/sap-skills --skill sap-browser-automation -a codex`. Or copy the skill folder (plugins/sap-browser-automation/skills/sap-browser-automation in secondsky/sap-skills) into .agents/skills/sap-browser-automation in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add secondsky/sap-skills --skill sap-browser-automation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sap-browser-automation, .gemini/skills/sap-browser-automation, .github/skills/sap-browser-automation and .opencode/skills/sap-browser-automation in your project.
Going by SKILL.md and its folder, Sap Browser Automation needs JavaScript and PowerShell for the scripts in its folder and the command-line tools its instructions call (codex). Our summary lists: Node.js; PowerShell.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
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.
Sap Browser Automation is published under the GPL-3.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.3k tokens (SKILL.md is roughly 13k 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 2.9k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Sap Browser Automation: Browser Use (QwenLM/qwen-code-examples, 143 stars), Playwright Skill (lackeyjb/playwright-skill, 3.2k stars), Playwright Skill (tech-leads-club/agent-skills, 7k stars) and Open Browser (JasonHonKL/Openbrowser, 114 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
secondsky (a GitHub user) maintains it in secondsky/sap-skills, which has 462 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on October 5, 2026.
Source: secondsky/sap-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.