Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Build Electron desktop apps with secure architecture and common pitfall avoidance.
Build Electron desktop apps with secure architecture and common pitfall avoidance.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
nodeIntegration: false is mandatory β renderer with Node.js access means XSS = full system compromise contextIsolation: true is mandatory β separates preload context from renderer Whitelist IPC channels explicitly β never forward arbitrary channel names from renderer Validate all IPC message content β renderer is untrusted, treat like external API input Never use eval() or new Function() in renderer β defeats all security boundaries
contextBridge.exposeInMainWorld() is the only safe bridge β raw ipcRenderer exposure is vulnerable Clone data before passing across bridge β prevents prototype pollution attacks Minimal API surface β expose specific functions, not generic send/receive
webPreferences locked after window creation β can't enable nodeIntegration later Blocking main process freezes ALL windows β async everything, no sync file operations Each BrowserWindow is separate renderer process β can't share JS variables directly show: false then ready-to-show β prevents white flash, looks more native
Pre-built native modules won't work β must rebuild for Electron's specific Node version electron-rebuild after every Electron upgrade β version mismatch = runtime crash N-API modules more stable β survive Electron upgrades better than nan-based
Dev dependencies included by default β production builds bloat without explicit exclusion Code signing required for macOS auto-update β unsigned apps can't use Squirrel Windows notifications require app.setAppUserModelId() β silent failure without it ASAR isn't encryption β source readable with simple tools, don't rely on it for secrets
CORS blocks file:// protocol β use custom protocol (app://) or local server Windows needs NSIS or Squirrel for auto-update β installer format matters macOS universal binary needs --universal flag β ships both Intel and ARM
Unclosed windows leak memory β call win.destroy() explicitly when done Lazy load heavy modules β startup time directly affects perceived quality backgroundThrottling: false if timers matter when minimized
Main process: --inspect flag, connect via chrome://inspect Renderer: webContents.openDevTools() or keyboard shortcut electron-log for persistent logs β console.log vanishes on restart
Agent frameworks, memory systems, reasoning layers, and model-native orchestration.
Largest current source with strong distribution and engagement signals.