skillfed

external-electron-apps

Control Electron-based desktop applications programmatically by connecting through Chrome DevTools Protocol. This skill enables automation of popular tools like Slack, Discord, and VS Code, letting you interact with their UI elements and workflows as if you were using them directly. Built on reliable browser automation foundations for consistent, repeatable interactions.

external-electron-apps lets you control Electron-based desktop applications programmatically by connecting through Chrome DevTools Protocol (CDP). You can automate popular tools like Slack, Discord, VS Code, and Figma by interacting with their UI elements and workflows as if you were using them directly. The skill builds on reliable browser automation foundations to enable consistent, repeatable interactions with any user-installed Electron app on your machine.

AI-generated summary based on this skill's SKILL.md

841 66 MIT updated by saffron-health

Install

saffron-health/libretto/external-electron-apps · repository language: TypeScript

CLI (skillfed)coming soon
git clone https://github.com/saffron-health/libretto
cp -r libretto/.agents/skills/external-electron-apps ~/.claude/skills/external-electron-apps

Frequently asked questions

AI-generated answers based on this skill's SKILL.md and metadata

How do I automate external Electron apps using external-electron-apps?

external-electron-apps lets you control Electron-based desktop applications programmatically by connecting through Chrome DevTools Protocol (CDP). You can automate popular tools like Slack, Discord, VS Code, and Figma by interacting with their UI elements and workflows as if you were using them directly. The skill builds on reliable browser automation foundations to enable consistent, repeatable interactions with any user-installed Electron app on your machine.

What is the process for remote debugging Electron apps with external-electron-apps?

external-electron-apps supports remote debugging by allowing you to set up remote debugging and connect to an external Electron app using Libretto CLI. Once you establish the connection to your desktop application's CDP port, you can inspect and control the app's windows and pages remotely. This approach lets you debug and automate applications running locally while maintaining full programmatic control over their behavior.

Can external-electron-apps control multiple windows or pages in a local desktop Electron app?

Yes, external-electron-apps is designed to interact with and control multiple windows and pages in a local desktop Electron application. This capability allows you to manage complex workflows that span across different windows or tabs within a single Electron app, making it suitable for automating sophisticated user interactions across the entire application interface.

How do I connect Libretto to a desktop app for automation?

external-electron-apps enables you to connect Libretto CLI to your desktop application by setting up the remote debugging connection. The process involves identifying your Electron app's CDP debugging port and using Libretto to establish a session. Once connected, you gain full programmatic access to the app's DOM, windows, and UI elements for automation purposes.

What desktop applications can external-electron-apps automate?

external-electron-apps can automate any user-installed Electron desktop application, including Slack, Discord, VS Code, Figma, Notion, and Spotify. Since these applications are built on Electron and expose Chrome DevTools Protocol, external-electron-apps provides a unified approach to controlling them programmatically. You can capture screenshots, inspect DOM content, and interact with UI elements across all supported Electron-based apps.

How does external-electron-apps help troubleshoot connection issues with desktop apps?

external-electron-apps addresses troubleshooting by helping you manage connection issues and session management for desktop app automation. When connecting to a local Electron application, proper CDP port configuration and Libretto CLI setup are essential. The skill provides the foundation for diagnosing connection problems, verifying remote debugging is enabled, and maintaining stable sessions with your external Electron apps.

SKILL.md

rendered from the published skill — quoted content, verbatim

External Electron App Automation

Use this skill for external Electron desktop apps running on the user's machine. Do not default to this for this repository's own Electron app unless the user explicitly asks.

Core workflow

  1. Quit the app if it is already running.
  2. Relaunch the app with --remote-debugging-port=<port>.
  3. Connect with npx libretto connect http://127.0.0.1:<port> --session <session>.
  4. Verify targets with npx libretto pages --session <session>.
  5. Run interactions with npx libretto exec "<code>" --session <session>.
  6. Capture evidence with npx libretto snapshot --session <session>.

Launch examples

macOS

```bash open -a "Slack" --args --remote-debugging-port=9222 open -a "Visual Studio Code" --args

(truncated - see the full file via the links below)

Read as markdown · JSON record · Browse the source repository

File tree — 1 file
.agents/skills/external-electron-apps/SKILL.md

Related skills

Tags

desktop-automation cdp-debugging electron-control local-app-scripting remote-debugging-protocol cross-platform-desktop app-interaction-testing session-management