System Architecture
RemoteCtrl runs on a dual-process architecture defined by Electron, separated cleanly by a secure preload bridge. The application leverages React and TypeScript in the renderer, and Node.js for heavy automation tasks.
Main Process
- AI Agent Execution Engine
- Playwright Browser Wrappers
- Visual Cursor Overlay Injector
- Workflow Runner & Planner
- WebRTC Signaling & Storage
Renderer Process
- React UI Panels
- Zustand State Stores
- WebRTC Streaming Panel
- Drag-and-Drop Editor
- Floating Mini Controller
Development Setup
BASH
# Install dependencies
npm install
# Run renderer only (browser dev mode)
npm run dev:renderer
# Build main process
npm run build:main
# Run full Electron app
npm run devSecurity & Constraints
- No Node APIs in Renderer: The Renderer never accesses Node APIs directly. All communication happens exclusively through
window.RemoteCtrlAPI. - Zod Validation: All IPC payloads are strictly validated using Zod schemas in the main process before any logic is executed.
- Secure Key Storage: API keys are securely encrypted on disk using Electron's native
safeStorageAPI.