Appearance
Vibenv uses two layers for configuration:
@vibenv/env-managergenerates.envfiles from apackage.jsonenvModelcontract.@vibenv/envloads.envand applies typed defaults usingenvalid.
envModel basics
In package.json, define envModel values as numbers, booleans, or strings. Strings can include alternatives separated by |.
json
{
"envModel": {
"PORT": 3000,
"HOST": "localhost|127.0.0.1|0.0.0.0",
"DEBUG": true
}
}The env-manager CLI:
- Sorts keys alphabetically.
- Preserves existing
.envvalues when types are valid. - Falls back to defaults and prints warnings when types are invalid.
- Emits alternative values as comments when a string includes
|separators.
Runtime defaults
@vibenv/env registers defaults (for example MCP_SERVER_PORT, SHOPTET_SERVER_PORT, and CLI_AGENTS_REMOTE_HOST) and merges them with .env and process environment variables.