Go to opens on All instead of the source you're in, so a search finds anything at once. ctrl+s again in Go to narrows to that source, and once more goes back to All; the hint names it. g/G go to the top and bottom of a list while browsing, and the tabs are Search, Favourites, Recent. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
7.9 KiB
Keys
? lists every key with what it does, the focused pane's first; type to
filter, enter runs one. The help bar at the bottom shows the most useful
keys for where you are. Every key can be rebound.
The rule: a letter in the lists, ctrl+ that letter where you type a filter
(f stars, ctrl+f stars while filtering).
Moving around
| Key | Action |
|---|---|
j/k, ↑/↓ |
move |
g/G |
top / bottom |
tab, shift+tab/h |
next / previous pane |
l |
the details of what's selected, on the right (h goes back) |
1–4 |
jump to pane |
enter / esc, ⌫ |
drill in / back (also clears a filter or leaves the versions view) |
[ / ] |
previous / next tab of the focused pane: Sources and Favourites in Sources; Secrets, Keys, Certs in Secrets |
/ |
filter the focused list by name or note (how it matches); enter keeps it, esc clears it. While typing: ctrl+j/ctrl+k move, ctrl+y copies, ctrl+r reveals, ctrl+f stars |
` |
switch the Sources pane between grouped by provider and a flat list; enter/space on a provider folds it |
r |
refresh the focused pane |
q, ctrl+c |
quit |
Searching
/ in a pane, Go to, ? and other popups with a text field all search
the same way, with fzf's scoring (the
same as snacks.nvim's picker): letters at the start of a word or in one
run count far more than letters scattered through a name, matches in an
item's own name more than in its path or note, and equally good matches
put the shorter name first.
| Query | Finds |
|---|---|
dbpw |
fuzzy: db-password |
pass prod |
both terms, in any order |
smtp | key |
either |
'prod |
exactly prod, not fuzzy |
^kv- / -dev$ |
names starting / ending with it |
!test |
without test |
Lowercase ignores case; typing an uppercase letter makes that term match case exactly.
Secrets
| Key | Action |
|---|---|
space |
reveal / hide the selected value (public material for keys and certificates) |
y |
copy the value without revealing it; cleared from the clipboard after 30s. On an Azure account's row: its object ID; in its pane, the selected field |
Y |
copy the reference (@Microsoft.KeyVault(...), key/certificate URL, {{secrets/scope/key}}) |
v |
versions of the selected item (Azure); space/y/Y then act on that version; esc, ⌫ or v to go back |
o |
open the selected item in the browser (over SSH: copy the link) |
e |
open the selected SOPS or .env file, or a secret's file at its line (how) |
s / S |
copy a link to the selected item / share menu |
ctrl+o |
open a link or reference (or just paste one) |
x |
custom commands |
L |
sign in again (shown when a login has expired) |
U |
a newer lazysecrets: its changelog, and update in place (restart to use it); or look for one |
A revealed value is shown as it reads best: JSON indented, and PEM
certificates as their subject, issuer, dates, names and thumbprint, with
any other PEM block (a private key) named but not shown. y still copies
it exactly as stored.
A revealed value hides again after revealTimeout (60s) and when the
terminal loses focus (hideOnBlur); see config.
Stars and notes
| Key | Action |
|---|---|
f |
star the selected source, vault or secret: it gets a ★ and sorts first in its list |
n |
write a short note on it, shown dimmed on its row and in the detail pane |
A star belongs to the account you starred the item under; a note shows under every account. Both are kept in the state file.
Go to
ctrl+s opens Go to on its Search tab, F on Favourites (everything you
starred) and R on Recent (what you used last). enter goes to the
selected item.
Search has the scope on the left (All; all of Azure, Databricks or repos;
or one source; with ○ ◐ ● for how much of it is loaded) and what's in
it on the right. All repos searches every repo without asking Azure or
Databricks for anything. It opens on All; ctrl+s again narrows it to
the source you're in, and once more goes back to All. Typing a search
loads what it covers: everything on All, else the source picked;
results appear as lists arrive. That's once each time Go to opens, and
only what isn't loaded yet; ctrl+a loads again, lists that failed
included.
Like a pane, Go to is either browsing or typing a filter:
| Browsing | Typing | Action |
|---|---|---|
j/k |
ctrl+j/ctrl+k |
move |
g/G |
top / bottom | |
ctrl+s |
ctrl+s |
only the source you're in / All |
h/l, tab |
ctrl+h/ctrl+l, tab |
scope list / results |
[ / ] |
previous / next tab | |
f |
ctrl+f |
star |
r |
ctrl+r |
load the selected item, or the scope when nothing is selected |
a |
ctrl+a |
load everything in the scope (again) |
/ |
esc |
start typing / clear it and go back to browsing |
esc, q |
close |
Favourites and Recent come from the state file, so they work before anything loads.
Layout
The pane on the right describes what's selected in the pane you're in: the
account or subscription in Sources, the vault in Vaults, the secret in
Secrets. Going into it (l, or 4) keeps it on that; there j/k,
/ and y work on its rows, and h goes back. A value you reveal stays in view whichever pane you're in, until
it's hidden.
On top, the status pane (0) shows the version, a newer release and how
your accounts are doing. Focused, the right pane lists more under the
logo (when there's room): the version and updates (U), each account
(L on one that needs it signs in), what's expiring (enter goes to
it), this session's errors, newest first (what a pane showed, or the
footer flashed before you moved on; not kept after quitting), the config,
state and cache files (e opens one in your editor), and links to the
docs, source, issues, releases and changelog (o opens one; on the
version or update, its release), then the changelog of every release up
to yours, built in so it needs no network: / filters it (/fixed,
/search). y copies any row.
| Key | Action |
|---|---|
ctrl+←/ctrl+→ or </> |
move the divider between the left panes and the detail pane |
ctrl+↓/ctrl+↑ or }/{ |
make the focused left pane taller / shorter |
+ / _ |
zoom the focused pane: normal → half → full screen, and back |
= |
reset the layout (divider, heights, zoom) |
The divider and pane heights are remembered (zoom isn't). macOS uses
ctrl+arrows for Mission Control and switching desktops by default, hence
the < > { } alternatives.
Rebinding keys
Every action can be rebound in the config, per context:
keybinding:
lists: # the panes, when not typing
star: [x] # replaces f
versions: [] # unbound
filter: # typing a filter in a pane
star: [ctrl+x]
popup: # popups with a text field: help, notes, open link, Go to while typing
down: [ctrl+j, down]
menu: # popups without a text field
search: # Go to's own actions while typing (on top of popup)
goto: # Go to while browsing
An action you set gets exactly the keys you list, replacing its defaults;
[] unbinds it. Actions you don't set keep their defaults, also across
layered config files. lazysecrets keybindings prints every action with
its keys (your config applied), ready to copy and edit. A key bound to two
actions that apply together is an error at startup, naming both. The help
bar, ? and every hint show the keys you bound. Fixed: the letters inside
menus (they're part of each entry), and ctrl+c, which always quits.
Without the kitty keyboard protocol (or tmux extended-keys), some
combinations never reach a terminal app, such as ctrl+shift+x, ctrl+1
or ctrl+enter.