Playwright Debug
voicetreelab/voicetree
This skill should be used when the user asks to "debug the electron app", "connect playwright to VoiceTree", "take screenshots of the running app", "interact with the live UI", "inspect the running…
Launch the project's Electron app on a scratch profile and drive it: click, type, screenshot, run renderer or main-process code, read logs.
$ npx skills add sickn33/agentic-awesome-skills --skill electron-drive-skill -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install sickn33/agentic-awesome-skills electron-drive-skill --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/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/electron-drive-skill .claude/skills/electron-drive-skill && 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 "electron-drive-skill" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/electron-drive-skill into .claude/skills/electron-drive-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "electron-drive-skill", 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/sickn33/agentic-awesome-skills/tree/main/skills/electron-drive-skillType 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 sickn33/agentic-awesome-skills --skill electron-drive-skill -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install sickn33/agentic-awesome-skills electron-drive-skill --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/electron-drive-skill .agents/skills/electron-drive-skill && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "electron-drive-skill" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/electron-drive-skill into .agents/skills/electron-drive-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "electron-drive-skill", 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 sickn33/agentic-awesome-skills --skill electron-drive-skill -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install sickn33/agentic-awesome-skills electron-drive-skill --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/electron-drive-skill .cursor/skills/electron-drive-skill && 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 "electron-drive-skill" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/electron-drive-skill into .cursor/skills/electron-drive-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "electron-drive-skill", 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/sickn33/agentic-awesome-skills.git --path skills/electron-drive-skill--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 sickn33/agentic-awesome-skills --skill electron-drive-skill -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install sickn33/agentic-awesome-skills electron-drive-skill --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/electron-drive-skill .gemini/skills/electron-drive-skill && 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 "electron-drive-skill" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/electron-drive-skill into .gemini/skills/electron-drive-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "electron-drive-skill", 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 sickn33/agentic-awesome-skills electron-drive-skillInstalls 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 sickn33/agentic-awesome-skills --skill electron-drive-skill -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/electron-drive-skill .github/skills/electron-drive-skill && 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 "electron-drive-skill" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/electron-drive-skill into .github/skills/electron-drive-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "electron-drive-skill", 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 sickn33/agentic-awesome-skills --skill electron-drive-skill -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install sickn33/agentic-awesome-skills electron-drive-skill --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/electron-drive-skill .opencode/skills/electron-drive-skill && 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 "electron-drive-skill" agent skill from https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/electron-drive-skill into .opencode/skills/electron-drive-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "electron-drive-skill", 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.
electron-drive-skillLaunch the project's Electron app on a scratch profile and drive it: click, type, screenshot, run renderer or main-process code, read logs.
Electron Drive Skill is an agent skill from sickn33/agentic-awesome-skills. Launch the project's Electron app on a scratch profile and drive it: click, type, screenshot, run renderer or main-process code, read logs. Use to verify UI changes end to end.
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including scripts (for example `README.md` and `package.json`).
It sits in Testing & QA. It works with Electron and Playwright. The repository describes itself as: AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and planning, backed by 2,400+ agentic skills. Includes… The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 680176d. 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 4 files in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
yarnnodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use yarn, which can reach the network depending on how they are called.
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.
Electron Drive Skill loads about 2.5k tokens when it runs. Until then it costs about 49 tokens; SKILL.md has 1,215 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 sickn33/agentic-awesome-skills at commit 680176d, republished under its MIT licence (© sickn33). 1,215 words, ~2,472 tokens.
.claude/skills/electron-drive-skill/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.scripts/drive.mjs launches the project's Electron app under Playwright in a
background daemon and keeps it running between commands, so each action
(click, type, snapshot, screenshot, eval) is one fast shell call. Every launch
uses a scratch profile, so the agent can check a UI change or reproduce a bug
in the real app, not only in unit tests, without touching the user's data.
scripts/drive.mjs, in this skill's directory, finds the project by the
nearest package.json, so run it from anywhere inside the project. Set DR
to its absolute path.
It needs electron and playwright-core (1.49 or later) installed in the
project. If start says either is missing, tell the user rather than
installing it yourself. Launch settings come from drive.config.json at the
project root (see Step 4); with no file, it runs electron ..
DR=<this skill's directory>/scripts/drive.mjs
$DR start # last build, profile 'default'; prints status
$DR snapshot # accessibility tree: find what to click, by role and name
$DR click 'role=button[name="Get started"]'
$DR fill 'role=textbox[name="Email"]' 'test@example.com'
$DR wait 'text=Welcome'
$DR screenshot # prints a PNG path; Read it to see the window
$DR logs --lines 80 # main and renderer console, plus the config's logFile
$DR stop # ALWAYS, before finishing--build: run the config's build command first. Needed after any
source change if the app runs from a build, because the build is
otherwise stale; start prints its age.--fresh: wipe the scratch profile, which gives you the app's first-run
state.--profile <name>: a separate scratch profile.--dev: see Step 5.role=button[name="…"] from
snapshot output, then text=…, then CSS.-- ends the flags. Put it before text that starts with dashes:
$DR fill 'role=textbox[name="Args"]' -- --verbose.select <target> <value|label>, press <key>,
status, screenshot --selector <css>. $DR help lists everything.eval <js> runs in the renderer, main <js> in the main process
(electron and process are in scope, require is not). Use a bare
expression, or a body with return. - reads the code from stdin, which
avoids quoting entirely. The result comes back as JSON, so return plain data:
a DOM node or a function comes back as undefined or {}.
To exercise IPC, call whatever the app's preload exposes through eval. That
goes through the real preload bridge, as the app's own renderer code does.
drive.config.json at the project root; every field is optional:
{
"build": "npm run build",
"args": ["."],
"env": { "APP_DATA_DIR": "{profile}/data" },
"logFile": "logs/main.log",
"dev": {
"args": ["."],
"env": { "ELECTRON_RENDERER_URL": "http://localhost:5173" },
"url": "http://localhost:5173"
}
}args: what Electron is launched with: an app directory whose
package.json main is the built entry point, or the entry file itself.env: added to the app's environment. {profile} becomes the scratch
profile directory (in env values only, not in args). This is how data
kept outside userData is redirected: APP_DATA_DIR is only an example
name, and it has an effect only if the app reads it. Check the app's source
for the variable it actually uses.logFile: a log file relative to the profile directory, shown by logs.If a project has no config and start fails or launches the wrong thing,
work out these values from the project's package.json and build setup,
then suggest a drive.config.json to the user.
For a fast loop on renderer code, with hot reload and source maps:
start/dev scripts launch
Electron too, and two instances would share state. The config's
dev.url is checked before launch.$DR start --dev launches Electron with dev.args and dev.env, and
NODE_ENV=development.$DR start --build --fresh
$DR snapshot
$DR click 'role=button[name=/Next/]'
$DR screenshot
$DR logs --lines 40
$DR stopecho "return document.querySelectorAll('button').length" | $DR eval -
$DR eval "window.api.getSettings()"$DR main "electron.app.getVersion()"
$DR main "electron.BrowserWindow.getAllWindows().length"snapshot or screenshot first. The same
profile can open differently on a second launch (past the first-run
screens), and a click that times out usually means the screen is not what
you assumed.logs for [renderer:error] and [renderer:pageerror] after
each step.stop, including after a failure. stop reports how the app
went down; anything but "quit via app.quit()" (a hung quit, a SIGKILL) is
worth a line in your report.yarn drive). Run the
script directly. yarn 1 re-splits arguments and drops inner quotes, which
silently breaks most JavaScript passed to eval and main.electron or playwright-core yourself; ask the user.status shows which window that is; a
splash screen is current until it closes.start refuses while one is running.node scripts/drive.mjs. The process-tree kill that
stop falls back to is POSIX only.electron and playwright-core 1.49+ in the project, and Node.js
18+.127.0.0.1 with a random per-session
token. Nothing is sent to third-party services.--user-data-dir set to a scratch profile under
$TMPDIR/electron-drive/<project>/profiles/<name>, which moves
app.getPath('userData'). Data the app keeps elsewhere (a documents
folder, a path from an env var) is only redirected if drive.config.json
sets it through env. Check that before doing anything that writes data.
If the app would touch real user files, stop and tell the user.eval and main run arbitrary code with the app's privileges; the
main process has full Node.js access. Only run code needed for the task,
and never code that deletes files or makes network calls outside the app's
normal behavior without the user's confirmation.start --build runs the build command from drive.config.json in a
shell. Read the config before the first --build in a project you did
not set up.--fresh deletes the scratch profile directory only, never the app's
real userData.start fails.
Solution: Read the daemon log it prints. Common causes are a missing
build (--build), electron or playwright-core not installed, or wrong
args.logs, then stop, then start.start --build.arrow_forward).
Solution: Use a regex name: role=button[name=/Next/].$DR stop cleans up the daemon, the app and the state file,
even when the daemon is already gone.@electron-development - For building and packaging the Electron app
itself; use this skill to verify the result in the running app.@systematic-debugging - Pair with this skill to reproduce and narrow down
a bug in the real app.© sickn33, MIT. 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 8 other files (scripts) in skills/electron-drive-skill of sickn33/agentic-awesome-skills.
Open the folder on GitHubat commit 680176d
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in sickn33/agentic-awesome-skills, which our catalogue first saw on October 7, 2026.
Electron Drive Skill 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 |
|---|---|---|---|---|---|---|
| Electron Drive Skill this skillsickn33/agentic-awesome-skills | 47k | 1 repos | ~2.5k | Automated safety check: Pass | MIT | |
| Playwright Debugvoicetreelab/voicetree | 923 | — | ~1.2k | Automated safety check: Pass | Custom licence | |
| Run Freedomsolardev-xyz/freedom-browser | 163 | — | ~1.2k | Automated safety check: Pass | MPL-2.0 | |
| Electron App Screenshotkeybase/client | 9.3k | — | ~476 | Automated safety check: Pass | BSD-3-Clause | |
| Vasu Playwright Utilsvasu31dev/playwright-ts-template | 139 | — | ~4.7k | Automated safety check: Notes | None | |
| Take Screenshotsankitvgupta/exo | 496 | — | ~1.2k | Automated safety check: Pass | Custom licence |
voicetreelab/voicetree
This skill should be used when the user asks to "debug the electron app", "connect playwright to VoiceTree", "take screenshots of the running app", "interact with the live UI", "inspect the running…
solardev-xyz/freedom-browser
Launch and drive the Freedom Electron app headlessly (xvfb + Playwright + the in-process test harness), reach specific UI states, and take screenshots.
keybase/client
Takes a screenshot of a running Electron desktop app through playwright-cli over remote debugging, shrinks it and shows it so you can check the UI visually.
vasu31dev/playwright-ts-template
Use the vasu-playwright-utils library for Playwright browser automation with simplified action, assertion, locator, element, page, and API utilities.
ankitvgupta/exo
Capture screenshots of the Exo Electron app workflows using Playwright in demo mode.
PostHog/code
Drive the real running PostHog Electron app (live tRPC, workspace-server, real data) over CDP with agent-browser.
sickn33/agentic-awesome-skills
Implements an interface in one of two named color modes, iridescent white or colorful black, from a parameterized starter that reports measured color intensity.
sickn33/agentic-awesome-skills
Saves a user's project decisions, rules and preferences into a project-local mdbase so later sessions and other agents can recover the intent.
sickn33/agentic-awesome-skills
Keeps project decisions, research and verified results available across coding-agent sessions through LWC memory, a document Wiki graph and a CodeGraph code index.
sickn33/agentic-awesome-skills
Guides an agent through assessing its own owner for cofounder fit, publishing an approved profile, and ranking complementary profiles other agents published for their owners.
sickn33/agentic-awesome-skills
Integracao com WhatsApp Business Cloud API (Meta). An agent skill from sickn33/agentic-awesome-skills.
sickn33/agentic-awesome-skills
Acts as a proxy for the Cline CLI, dispatching coding tasks one at a time, monitoring runs by hard evidence, relaying decisions to you and learning per-project preferences.
Works with
Categories
Launch the project's Electron app on a scratch profile and drive it: click, type, screenshot, run renderer or main-process code, read logs. Electron Drive Skill is an agent skill from sickn33/agentic-awesome-skills. Launch the project's Electron app on a scratch profile and drive it: click, type, screenshot, run renderer or main-process code, read logs.
Electron Drive Skill fits situations like: verify UI changes end to end.
Run `npx skills add sickn33/agentic-awesome-skills --skill electron-drive-skill -a claude-code`. Or copy the skill folder (skills/electron-drive-skill in sickn33/agentic-awesome-skills) into .claude/skills/electron-drive-skill in your project. Claude Code loads it when a task matches its description.
Run `npx skills add sickn33/agentic-awesome-skills --skill electron-drive-skill -a codex`. Or copy the skill folder (skills/electron-drive-skill in sickn33/agentic-awesome-skills) into .agents/skills/electron-drive-skill 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 sickn33/agentic-awesome-skills --skill electron-drive-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/electron-drive-skill, .gemini/skills/electron-drive-skill, .github/skills/electron-drive-skill and .opencode/skills/electron-drive-skill in your project.
Going by SKILL.md and its folder, Electron Drive Skill needs JavaScript for the scripts in its folder and the command-line tools its instructions call (yarn and node). Our summary lists: Node.js.
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.
Electron Drive Skill is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 9.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Electron Drive Skill: Playwright Debug (voicetreelab/voicetree, 923 stars), Run Freedom (solardev-xyz/freedom-browser, 163 stars), Electron App Screenshot (keybase/client, 9.3k stars) and Vasu Playwright Utils (vasu31dev/playwright-ts-template, 139 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
sickn33 (a GitHub user) maintains it in sickn33/agentic-awesome-skills, which has 47,379 GitHub stars. The repository holds 1,493 skills in this directory. The repository was last updated on October 9, 2026.
Source: sickn33/agentic-awesome-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.