Configuration

Recoder reads its settings from environment variables. With Docker, copy .env.example to .env and fill in what you need. Model settings saved in the app take priority over the variables.

Server

VariableDefaultWhat it does
PORT3001Port the server listens on.
PUBLIC_API_URLhttp://localhost:3001Server address the browser uses. Docker builds it into the web image.
FRONTEND_URLhttp://localhost:3000Public address of the web app. Docker passes it to the web container as ORIGIN.
RECODER_DATA_DIR~/.recoder/dataWhere settings, tokens and guidelines are saved. Docker uses a volume at /app/data.
RECODER_WORKDIR/tmp/recoder-workWhere pull requests are checked out.

Reviews

VariableDefaultWhat it does
RECODER_REVIEW_MAX_FILE_CHARS12000Most characters returned by one file read.
RECODER_REVIEW_EXCLUDEnoneComma-separated text. Files whose path contains any of it are left out of the review.
RECODER_LLM_CONCURRENCY8Most model requests running at once.
RECODER_LLM_RETRIES5Retries for a failed model request.

Commands

VariableDefaultWhat it does
RECODER_ALLOWED_COMMANDSecho,git,gh,glab,bunPrograms the server may run. They run without a shell. The Docker default leaves out glab.
RECODER_COMMAND_TIMEOUT_MS120000Time limit for each command.