Envidence
Documentation menu

Guide

Configuration

Envidence stores its configuration next to the evidence. You can use the default data directory, keep everything inside a project, or pass a store path to each command.

Store location

The default store is:

  • Windows: %LOCALAPPDATA%\Envidence
  • macOS and Linux: $XDG_DATA_HOME/envidence or ~/.local/share/envidence

The store choice follows this order:

  1. --store <path> on the command.
  2. The ENVIDENCE_HOME environment variable.
  3. The default platform data directory.

Per project

shell
# One command at a time.
evd init --store ./.envidence
evd watch --store ./.envidence -- npm test

# Or set a base for the shell session.
export ENVIDENCE_HOME=./.envidence
evd init

On PowerShell:

PowerShell
$env:ENVIDENCE_HOME = "./.envidence"
evd init
evd watch -- npm test

Keep the store out of Git

A project-local store can contain paths, environment values, command output, and machine history. Add the directory to .gitignore before you commit.

Configuration file

Each store has a config.json. Use evd config path to print its location. The file is created by evd init or the first command that uses the store.

shell
evd config path
evd config list
evd config get profile
evd config get collectors.tasks
evd config set profile fast
evd config set ui.port 4317

Values are parsed as booleans, numbers, arrays, or JSON when possible. Changes apply to future commands. Existing snapshots are not rewritten.

Useful settings

KeyPurpose
profileDefault collector profile, fast or full. init uses full unless you pass --fast.
redactionDefault report redaction level.
retention.keepNumber of recent snapshots to keep during pruning. Default is 50.
retention.olderThanDaysOnly prune snapshots older than this many days. Default is 30.
collectors.*Turn individual collectors on or off, such as services, tasks, programs, wsl, or vscodeExtensions.
project.maxFilesMaximum project source files to inspect for metadata and environment references. Default is 200.
project.maxBytesMaximum bytes read per project file. Default is 524288.
ui.portDefault dashboard port. The server falls back to a free port if it is taken.
rollback.safetySnapshotTake a pinned full snapshot before applying a rollback. Keep this on.

Collector profiles

Fast skips slower collectors and is the default for evd watch. Full collects the broadest set and is the default for evd init. If a failure may involve services, tasks, programs, hotfixes, or WSL, use --full for the watched run.

shell
evd snap --full
evd watch --full -- npm test
evd config set profile full

Retention and pruning

The default policy keeps the newest 50 snapshots and snapshots younger than 30 days. Pins, baselines, snapshots used by runs or cases, and safety snapshots are protected.

shell
# Preview what would be removed.
evd prune

# Keep fewer or more snapshots.
evd prune --keep 30 --days 14
evd prune --keep 30 --days 14 --yes

Pinned snapshots can be created with evd snap --pin. Baselines are also protected by the store.

Delete the store

Deleting the store removes snapshots, cases, baselines, rollback records, and the evidence needed to review them. Generated report files are separate.

PowerShell
# Windows
Remove-Item -Recurse -Force ./.envidence
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\Envidence"
POSIX
# macOS and Linux
rm -rf ./.envidence
rm -rf "${XDG_DATA_HOME:-$HOME/.local/share}/envidence"

The store is sensitive

The database and blobs are not encrypted at rest. Protect them with normal OS permissions and full-disk encryption. Read Privacy before sharing a store or report.

For collector details and secret handling, see Privacy. For server and rollback controls, see Security.