The web app is keyboard-first. Shortcuts that are single keys are ignored while you type in a field, while a modifier key is held, and while a dialog is open.
Everywhere
| Keys | Does |
|---|---|
Ctrl+K or ⌘K |
Open the command palette. |
Ctrl+J or ⌘J |
Open the assistant. |
g then a letter |
Go to a view (below). The second key must follow within about a second. |
Go to a view
const chords = { overview: "h", inbox: "n", releases: "l", projects: "p", issues: "i", runs: "r", reviews: "v", memory: "m", ci: "c", deploys: "d", observability: "o", settings: "s" };
assert.equal(Object.values(chords).length, new Set(Object.values(chords)).size);| Keys | View |
|---|---|
g h |
Overview |
g n |
Inbox |
g p |
Projects |
g i |
Issues |
g r |
Runs |
g v |
Reviews |
g m |
Memory |
g c |
CI |
g l |
Releases |
g d |
Deploys |
g o |
Observability |
g s |
Settings |
Issues
| Keys | Does |
|---|---|
f or / |
Focus the filter box. |
b |
Group by the next field. Press it again to cycle through the fields, then to remove grouping. |
c |
Create an issue (members and above). |
s |
Save the current filter and grouping as a view (members and above). |
See Saved views for the filter language.
The command palette
Open it with Ctrl+K or ⌘K, type to filter, use the arrow keys to move and Enter to run. It lists:
- every view, so you can jump without remembering the chord;
- On this page, the commands the current view offers, for example “New project”, “New memory”, “Filter issues” and “Group issues by status”.
Commands that change something appear only if your role can make that change. The service still refuses a change your role may not make; see Roles in the web app.