Assists with building cross-platform desktop applications using Electron. Use when architecting main/renderer process communication, configuring secure contexts, implementing auto-updates, or packaging apps for Windows, macOS, and Linux. Trigger words: electron, desktop app, browserwindow, ipc, auto-update, electron-builder.
Electron is a framework for building cross-platform desktop applications using web technologies. It combines a Node.js main process for system access and window management with Chromium renderer processes for the UI, communicating via IPC with context isolation and preload scripts for security.
contextBridge.exposeInMainWorld().ipcMain.handle() / ipcRenderer.invoke() for async request-response patterns, and webContents.send() for main-to-renderer push communication.contextIsolation: true and nodeIntegration: false (defaults), set CSP headers on all windows, sandbox renderer processes, and validate all IPC inputs in the main process.electron-builder or electron-forge to produce platform-specific installers (NSIS/MSI for Windows, DMG for macOS, AppImage/deb for Linux) with code signing and notarization.electron-updater with GitHub Releases or a custom server, configure delta updates for smaller downloads, and verify update signatures.User request: "Create an Electron app that browses and manages files with native dialogs"
Actions:
BrowserWindow and preload script exposing file system commandsdialog.showOpenDialog(), dialog.showSaveDialog(), and file operationsOutput: A cross-platform file manager with native OS dialogs and secure IPC-based file access.
User request: "Set up auto-updates for my Electron app using GitHub Releases"
Actions:
electron-builder with publish settings pointing to GitHub Releaseselectron-updater in the main process with update check on startupOutput: An Electron app that automatically checks for updates, downloads them in the background, and prompts the user to restart.
nodeIntegration in the renderer.ipcMain.handle() / ipcRenderer.invoke() for async operations over the older send/on pattern.default-src 'self'; script-src 'self'.renderer-process-gone event and monitor memory usage with process.memoryUsage().npx skills add TerminalSkills/electron下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer