I looked at the golang code, and it's only needed for caching? You should make it clearer that the code integration is optional.
One is envkey-source (https://docs-v2.envkey.com/docs/envkey-source), which contains core client-side decryption and verification logic. It can be used standalone from the shell like this:
# some-command runs with EnvKey vars in its environment
$ envkey-source -- ./some-command
Or like this: # EnvKey vars are set in current shell
$ eval $(envkey-source)
$ echo $SOME_ENVKEY_VAR
And second, envkey-source is also wrapped by our language-specific SDKs, including one for Go: https://github.com/envkey/envkey/tree/main/public/sdks/langu...It allows you to integrate with a Go project like this:
// main.go
import (
"os"
_ "github.com/envkey/envkeygo/v2"
)
// assuming you have GITHUB_TOKEN set in EnvKey
token := os.Getenv("GITHUB_TOKEN") // this will stay in sync
We're planning to do a docs-improvement pass soon so I'm very interested in how we could clear up any confusing aspects of how the different pieces fit together.We do try to mention in the docs for each SDK that envkey-source can be used from the shell instead, but I’m sure we can make it clearer. Thanks again!