Every command in Canopy can be reached from the keyboard. Below is the complete list of bindings that have a listener behind them. The app ships the same table in Settings → Shortcuts, where you can filter it.
Settings → Shortcuts: the same reference, searchable.
On Windows and Linux, read ⌘ as Ctrl. The handlers accept either modifier.
Which of ⏎ and ⌘⏎ a dialog uses isn't arbitrary. A dialog whose only field is a name commits on ⏎. A dialog with prose fields or several inputs takes ⌘⏎, so a stray ⏎ in a textarea can't fire something destructive.
A few rules the app follows, worth knowing if a key seems dead:
A dialog owns the keyboard.⌘N and ⌘, stand down while a dialog is open, so you never get a new surface stacked behind one, with two scrims and no way to tell which has focus.
⏎ never steals from typing. The next-action binding is skipped when focus is in an input, textarea, contenteditable, or a terminal.
Text zoom always works, even inside a field or with the palette open, since ⌘+, ⌘- and ⌘0 can't collide with text entry.
Onboarding binds ⌘N itself for its add-repository screen, so the main window's ⌘N stands down while onboarding is up.
⌘\ obeys its setting. Turn Show the Switch-branch action off and the shortcut does nothing too, otherwise turning the feature off would only hide the button.