With Go:
go install github.com/my-rv/hensu/cmd/hensu@latestmacOS, without Go:
brew install --cask MY-RV/tap/hensuOther channels and bare binaries: install.md.
$ hensu --version
0.1.0Default is ./.env in the current directory. Anything else goes in -f:
hensu -f source/service/presentation/service/.env keysGiven this .env:
PORT=8080
INTERNAL__SESSIONS__SECRET=s3cret-value-0123456789
$ hensu keys
[ "INTERNAL__SESSIONS__SECRET", "PORT" ]
$ hensu get PORT INTERNAL:SESSIONS:SECRET MISSING
{
"INTERNAL__SESSIONS__SECRET": { "value": "s3cr***6789", "defined": true },
"MISSING": { "value": null, "defined": false },
"PORT": { "value": "***", "defined": true }
}Values come back clipped: that is peek, the default. Note hensu on its own prints usage, not the config — there is no bulk read.
$ hensu exec -- go run .
listening on :8080The process gets the real values. You never saw them.
$ hensu -r trust read PORT
8080read refuses without -r trust, because printing bytes verbatim is its whole job.
hensu set PORT 9090
echo '{"A":"1","B":"2"}' | hensu set --json -Comments and layout survive; the write is atomic and mode 0600.