Back to README · Product guide · Troubleshooting
This repository contains the runnable Nextbrowser desktop application built with Electron, React, TypeScript, and Vite.
| Path | Purpose |
|---|---|
src/ |
React UI, application state, agent adapters, browser-session control, analytics, and tests. |
electron/ |
Electron main process, preload bridge, process execution, persistence, updates, and SSH configuration discovery. |
scripts/ |
Icon generation, release-version synchronization, and documentation validation. |
build/ |
Desktop icons and macOS entitlements used by Electron Builder. |
docs/ |
Product, browser-control, configuration, troubleshooting, and translated README documentation. |
.github/ |
CI, release automation, Issue Forms, and pull-request guidance. |
Desktop source and release automation are maintained in this repository.
Use the current product documentation and the setup flow included with the installed release to configure the browser environment, local agent, and API key. Restart Nextbrowser after changing a runtime or agent path.
Do not commit an API key, place it in a reusable prompt, or paste it into an issue. Redact credentials, account identifiers, cookies, tokens, private URLs, and personal data before sharing diagnostics.
| State | Owner |
|---|---|
| Browser account and profiles | Browser environment configured for the installed release. |
| Browser sessions | Browser runtime selected by Nextbrowser. |
| Conversations and schedules | Nextbrowser application data. |
| Custom scripts | Nextbrowser application data and skill synchronization. |
| Agent skills | Agent-specific skill or plugin directories. |
| Application update state | Nextbrowser application data. |
The Electron main process stores app-owned state in the platform application-data directory returned by app.getPath("userData"). Do not remove that directory unless you intend to delete local app state.
The desktop build enables its configured GA4 stream by default. Events include an application instance identifier and operational metadata described in ANALYTICS.md. The analytics implementation does not send prompt text, target URLs, or page domains.
Override the measurement stream for a special build with VITE_GA4_MEASUREMENT_ID. A blank value disables collection for that build.
Install dependencies and start the Electron/Vite development process:
npm ci
npm run devFor a dev build that must use a non-production API/backend, set the backend base URL before launching:
NEXTBROWSER_DEV_API_BASE_URL=http://127.0.0.1:18098 npm run devNEXTBROWSER_DEV_API_BASE_URL has priority over production API settings in the desktop process.
For a dedicated non-production entity service without changing browser runtime traffic, use
NEXTBROWSER_ENTITY_API_BASE_URL. NEXTBROWSER_RUNTIME_API_BASE_URL controls only browser
runtime traffic. Production defaults remain core.nextbrowser.com for workspace/Automation
entities and api.nextbrowser.com for browser sessions.
Before submitting application changes, run:
npm test
npm run build
npm run packCI runs install, tests, build, and unpacked packaging on macOS and Windows. Release automation publishes platform artifacts for tags matching v*.