.env file. The installer creates these files and populates them during the credential walkthrough, but you can edit them at any time.
Where configuration lives
Meridian uses a single env file at the repository root, shared by the Rust daemon and the Python agents:install.sh creates this file from .env.example on first run and writes any values you supply during the credential walkthrough back to the same file. Nothing is read from outside the repository.
Editing configuration
To open the config in your$EDITOR, run:
.env. After saving, restart Meridian for the change to take effect:
Environment variable reference
Core daemon settings
These variables control how the Rust daemon reads screenpipe data and classifies sessions. All of them are optional — the defaults work out of the box.Setting
CLASSIFICATION_ENABLED=false lets you run Meridian in activity-tracking mode. The daemon still reads screenpipe frames, builds app sessions, and assigns activity categories — it just skips the ticket-linking step and doesn’t require the MLX server to be running. This is useful if you’re not ready to configure PM credentials or just want to explore the session data first.Jira
All three credential variables are required to enable the Jira connector.JIRA_PROJECT_KEYS is optional — omitting it syncs across all projects your account can access.
GitHub
Both credential variables are required to enable the GitHub connector.GITHUB_REPOS is optional — omitting it covers all repositories in your org.
Linear
The API key is required to enable the Linear connector.LINEAR_TEAM_IDS is optional.
Minimal working configuration
The smallest configuration that enables activity tracking, session categorisation, and Jira ticket sync is:<repo>/.env
Re-running credential prompts
The installer skips any variable that already has a value in the repo-root.env. To re-prompt for a specific credential, delete that line from the file and re-run the installer:
--skip-env: