Installs the Bitwarden Secrets Manager CLI (bws) binary from Bitwarden release assets.
"features": {
"ghcr.io/sliekens/devcontainer-features/bitwarden-secrets-manager:1": {
"version": "latest"
}
}Copy the block below into a chat with your coding agent:
Add
ghcr.io/sliekens/devcontainer-features/bitwarden-secrets-manager:1to this project's Dev Container. Follow https://github.com/sliekens/devcontainer-features/blob/main/src/bitwarden-secrets-manager/README.md. Use the collection's sharedinitializeCommandpipeline (devcontainer + jq + xargs overcustomizations.sliekens[].initializeCommand) for host bind pre-create; Unix/WSL2 only. Prefer that over hand-writtenmkdirunless asked.
| Option | Type | Default | Description |
|---|---|---|---|
version |
string | latest |
Version to install. Use latest or a release version like 2.0.0, v2.0.0, or bws-v2.0.0. |
| Host path | Container path | Purpose |
|---|---|---|
~/.config/bws |
/var/lib/bitwarden-secrets-manager |
Credentials and CLI state |
This directory is bind-mounted from the host so that credentials are preserved across container rebuilds.
Docker cannot bind-mount host paths that do not yet exist. Each feature in this collection that needs host paths declares a host init command under customizations.sliekens.initializeCommand. Wire a single initializeCommand in your devcontainer.json to run all of them (works for any number of features):
"initializeCommand": "devcontainer read-configuration --workspace-folder . --include-merged-configuration | jq -r '(.mergedConfiguration.customizations.sliekens // []) | .[] | .initializeCommand' | xargs -I{} bash -c {}"Requires devcontainer and jq on the host PATH.
Note: This host init pipeline runs only on Unix-like systems (Linux, macOS, and source code inside WSL2 on Windows). Native Windows (
cmd.exe) is not supported — the Dev Containers CLI runsinitializeCommandvia/bin/sh -con Unix andcmd.exe /con native Windows.
If you prefer not to automate with the Dev Containers CLI, jq, and xargs, pre-create the host paths yourself in initializeCommand:
"initializeCommand": "mkdir -p \"$HOME/.config/bws\""This feature is released under the MIT License.
The installed tool is subject to its own license: Bitwarden Secrets Manager CLI license.
- Declare
customizations.sliekens.initializeCommandfor composable host path pre-create; document automated and manualinitializeCommandwiring.
- Add trailing slash to bind mount source path to mark it explicitly as a directory.
- Use bind mount from host
~/.config/bwsinstead of a Docker volume for persistent state.
- Initial release.