You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
IPC Whitelist — All renderer-to-main communication goes through explicit IPC channel whitelist in preload scripts. Renderer processes cannot directly require() Node.js modules
safeStorage Encryption — API keys encrypted with Electron's safeStorage API; keys never stored in plaintext on disk
Preload Sandbox — Separate preload scripts for each window type (main, lyrics, diagnostic, model-settings, setup-wizard), each exposing only the APIs needed
v2.0.4+ — Credential Hygiene
Hardcoded credentials removed — 5 files cleaned of API keys, tokens, and personal paths
Runtime config — gateway-client.js reads tokens from ~/.openclaw/openclaw.json at runtime, not at module load
Asar audit — Verified 0 secret leaks in packaged .asar build artifact
Runtime Security Modules
Module
Purpose
SecureStorage
Encrypts/decrypts sensitive config values using Electron safeStorage
LogSanitizer
Strips tokens, keys, and PII from log output before writing to disk
IpcValidator
Validates IPC channel names against whitelist; rejects unknown channels
GatewayGuardian
Monitors gateway process health; prevents unauthorized restarts
Dependency Security
Minimal dependencies — Only ws (WebSocket) as production dependency
Electron — Kept up to date (currently v28.x)
Run npm audit to check for known vulnerabilities
Best Practices for Users
Never share your pet-config.json — it may contain API keys
Use .env for sensitive configuration (see .env.example)
Keep KKClaw updated to get the latest security fixes
Review permissions before granting microphone/file access in Setup Wizard