Welcome to [Renovate](https://github.com/renovatebot/renovate)! This is an onboarding PR to help you understand and configure settings before regular Pull Requests begin. 🚦 To activate Renovate, merge this Pull Request. To disable Renovate, simply close this Pull Request unmerged. 📚 See our [Reading List](https://docs.renovatebot.com/reading-list/) for relevant documentation you may be interested in reading. 🔡 Do you want to change how Renovate upgrades your dependencies? Add your custom config to `renovate.json` in this branch. Renovate will update the Pull Request description the next time it runs. --- ### Detected Package Files * `.gitea/workflows/ci.yml` (github-actions) * `.gitea/workflows/pr-title.yml` (github-actions) * `.gitea/workflows/release.yml` (github-actions) * `go.mod` (gomod) * `renovate.json` (renovate-config) * `.gitea/workflows/release.yml` (regex) * `.gitea/workflows/ci.yml` (regex) ### Configuration Summary Based on the default config's presets, Renovate will: - Start dependency updates only once this onboarding PR is merged - Enable Renovate Dependency Dashboard creation. - Use semantic commit type `fix` for dependencies and `chore` for all others if semantic commits are in use. - Ignore `node_modules`, `bower_components`, `vendor` and various test/tests (except for nuget) directories. - Group known monorepo packages together. - Use curated list of recommended non-monorepo package groupings. - Show only the Age and Confidence Merge Confidence badges for pull requests. - Apply crowd-sourced package replacement rules. - Apply crowd-sourced workarounds for known problems with packages. - Ensure that every dependency pinned by digest and sourced from Forgejo contains a link to the commit-to-commit diff - Ensure that every dependency pinned by digest and sourced from Gitea contains a link to the commit-to-commit diff - Ensure that every dependency pinned by digest and sourced from GitHub.com and Github enterprise contains a link to the commit-to-commit diff - Ensure that every dependency pinned by digest and sourced from GitLab.com contains a link to the commit-to-commit diff - Correctly link to the source code for golang.org/x packages - Link to pkg.go.dev/... for golang.org/x packages' title - Provide a link to octochangelog's improved breakdown for Renovate's changelogs - Use semantic prefixes for commit messages and PR titles. - If Renovate detects semantic commits, it will use semantic commit type `chore` for all commits. - The shared Renovate policy: repos extend it with local>keb/renovate. - Run Renovate on following schedule: before 6am on monday --- ### What to Expect With your current configuration, Renovate will create 3 Pull Requests: <details> <summary>chore(deps): update 0.x minor</summary> - Schedule: ["before 6am on monday"] - Branch name: `renovate/0.x-minor` - Merge into: `main` - Upgrade [golang.org/x/mod](https://go.googlesource.com/mod) to `v0.41.0` - Upgrade [golang.org/x/term](https://go.googlesource.com/term) to `v0.47.0` </details> <details> <summary>chore(deps): update non-major</summary> - Schedule: ["before 6am on monday"] - Branch name: `renovate/non-major` - Merge into: `main` - Upgrade [charm.land/bubbletea/v2](https://github.com/charmbracelet/bubbletea) to `v2.1.0` - Upgrade [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) to `v1.23.3` - Upgrade [github.com/charmbracelet/x/ansi](https://github.com/charmbracelet/x) to `v0.11.9` - Upgrade [gopkg.in/ini.v1](https://gopkg.in/ini.v1) to `v1.67.3` </details> <details> <summary>chore(deps): update azure-sdk-for-go monorepo to v2</summary> - Schedule: ["before 6am on monday"] - Branch name: `renovate/major-azure-sdk-for-go-monorepo` - Merge into: `main` - Upgrade [github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/keyvault/armkeyvault](https://github.com/Azure/azure-sdk-for-go) to `v2.1.0` - Upgrade [github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armsubscriptions](https://github.com/Azure/azure-sdk-for-go) to `v2.0.0` </details> 🚸 PR creation will be limited to maximum 2 per hour, so it doesn't swamp any CI resources or overwhelm the project. See [docs for `prHourlyLimit`](https://docs.renovatebot.com/configuration-options/#prhourlylimit) for details. --- > > ⚠️ **Warning** > > Please correct - or verify that you can safely ignore - these dependency lookup failures before you merge this PR. > > - `Could not determine new digest for update (go package github.com/charmbracelet/x/exp/golden)` > > Files affected: `go.mod` --- ❓ Got questions? Check out Renovate's [Docs](https://docs.renovatebot.com/), particularly the Getting Started section. If you need any further assistance then you can also [request help here](https://github.com/renovatebot/renovate/discussions). --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-config-hash:42b8771e0e792cb00b73533dcfa07b6c34d2c882632e57c0db725713586c855e--> Reviewed-on: #32 Co-authored-by: Renovate Bot <renovate-bot@noreply.git.kebcloud.no>
lazysecrets
A terminal UI for finding, reading and sharing secrets. Inspired by the fantastic lazygit.
Main features
- Read-only: lazysecrets never creates, changes or deletes a secret. That's by design and may stay that way.
- Zero setup: uses the logins you already have (
az, the Databricks CLI,sops,git). No config file needed. - Search everything:
ctrl+ssearches every source at once, with fzf-style matching. - Share links: Share
lazysecrets://links with colleagues. A colleague opens it with their own access, from the terminal or with a click in the browser or chat. - Neovim integration: via lazysecrets.nvim
- Careful with values: values stay hidden until you reveal them, and copied values are cleared from the clipboard after 30 seconds.
- Scriptable:
lazysecrets get <link>prints a value for scripts and pipes. - Favourites: star the secrets you use most for easy access.
- Expiry warnings: secrets, keys and certificates that expire soon are marked, listed together in the status pane.
- Your way: rebind any key, pick a theme, and add custom commands to run on a secret.
- Try it first:
lazysecrets --demoruns on built-in sample data. - Supported platforms: Azure Key Vault, Databricks secret scopes, and SOPS and
.envfiles in your git repos.
Early development: expect rough edges. See CHANGELOG.md for what's new.
Install
On macOS or Linux (arm64 or x86_64):
curl -fsSL https://git.kebcloud.no/keb/lazysecrets/raw/branch/main/install.sh | sh
It installs the latest release, from GitHub or else
git.kebcloud.no, into
~/.local/bin after checking it against the release's checksums.
sh -s -- v0.2.0 installs a given version, LAZYSECRETS_INSTALL_DIR
somewhere else.
lazysecrets looks for a newer release once a day: the footer then shows
↑ v0.2.0, and U shows its changelog and updates in place (or run
lazysecrets update).
Or build it yourself:
go install git.kebcloud.no/keb/lazysecrets/cmd/lazysecrets@latest.
Get started
az login # login with azure cli
lazysecrets # start lazysecrets
lazysecrets --demo # test with demo data
Pick a source on the left, then a vault, then a secret. With nothing signed in yet, the right pane says how to get started. The keys you'll use most:
| Key | Action |
|---|---|
j/k, enter, esc |
move, drill in, back |
l / h |
the details of what's selected / back |
/ |
filter the list you're in |
space |
reveal / hide the value |
y |
copy the value (cleared from the clipboard after 30s) |
ctrl+s |
Go to: search everything and jump there |
f / F |
star / your favourites |
s |
copy a link to share |
? |
every key, searchable |
q |
quit |
Docs
- Keys: every key, Go to, the layout, and rebinding keys
- Azure Key Vault: accounts, permissions, pinned vaults
- Databricks: profiles and Key Vault-backed scopes
- SOPS and .env files: which repos and files, decrypting
- Links: sharing, opening,
lazysecrets getin scripts, and opening links from the browser and chat - Custom commands: run your own commands on a secret
- Config: every option, themes, layered configs, the state file
- Development: building, tests, pull requests and releasing
Privacy
lazysecrets never stores, caches or sends your secret values. It keeps the
names and metadata of what you've loaded in a cache file readable only by
you, to show it at once next time (cache: false turns it off). It talks
only to the services you use it with, and collects no usage data. The one
call of its own is a daily check for a new release, on GitHub or else
git.kebcloud.no, which updateCheck: false turns off.
Repositories
The main repo of this codebase is at git.kebcloud.no. The GitHub mirror is for discoverability, issue-tracking and releases. It also makes it possible to give a ⭐ if you like lazysecrets!
Contributing
I don't take pull requests as I don't have time to review and test them. But bug reports and ideas are very welcome! Open an issue on GitHub and I'll have a look.
AI disclosure
Built with help from an agentic coding assistant. Every change is requested, reviewed and tested by me before it's merged.
License
Copyright © 2026 Karl-Einar Bergstrøm.
lazysecrets is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. See LICENSE.
