Skip to content

Configuration

Echo reads echo.config.json from the checkout, then applies environment overrides. Edit the file and restart Echo for changes to apply.

echo.config.json

{
"bind": "127.0.0.1:3000",
"dataDir": ".echo-data"
}
KeyDefaultMeaning
bind127.0.0.1:3000IP and port to listen on. It must be a loopback IP, such as 127.0.0.1:3000 or [::1]:3000; Echo refuses to start on any other interface
dataDir.echo-dataThe library folder. A relative path resolves against the checkout
googleRedirectUriderived from bindOptional. Overrides the Google OAuth redirect URI; see calendar

Unknown keys are ignored with a warning in the log.

Environment variables

VariableEffect
ECHO_BINDOverrides bind. The scripts read it too
ECHO_DATA_DIROverrides dataDir
ECHO_CONFIG_FILERead this file instead of echo.config.json
ECHO_RESOURCE_ROOTThe folder that contains public/. Normally found automatically from the binary’s location or the checkout
GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRETYour Google OAuth client, for calendar
RUST_LOGLog level for the server, for example RUST_LOG=debug

.env in the checkout is loaded at start. Keep only the Google client there; copy .env.example to begin.

Changing the port

Set bind (or ECHO_BIND) to another loopback port, for example 127.0.0.1:3100, and restart. Then:

  • The extension finds Echo automatically only on ports 3000 to 3005. On another port, open Echo in the browser once (it announces itself to the extension), or enter the address under Advanced on the extension’s Setup page.
  • Whisper Turbo is cached per browser origin, so a new port downloads it again.
  • Update the Google redirect URI if you use calendar.

The data folder

Everything Echo stores is in the data folder: the encrypted database, audio, settings and downloaded Large V3 files. Settings → Storage shows its path. Only one Echo server can use a data folder at a time. The development server (scripts/dev.sh) uses .echo-dev-data, so it never touches your real library.

See backups and recovery for what is inside and how to move it.