Getting Started
Launch the Browser
dumber browse
Or use the desktop entry after running dumber setup.
Basic Navigation
Dumber uses modal keybindings inspired by Zellij:
| Mode | Activation | Purpose |
|---|---|---|
| Pane Mode | Ctrl+P |
Split, close, focus panes |
| Tab Mode | Ctrl+T |
Create, close, switch tabs |
| Vim Mode | Ctrl+Y |
Scroll, navigate headings, and focus page inputs with Vim-style commands; arrow keys stay native and page focus stays inside the page while other app shortcuts wait until exit |
| Resize Mode | Ctrl+N |
Resize pane splits |
| Session Mode | Ctrl+O |
Session management |
Press Escape or Enter to exit any mode.
Vim Mode stays local to the active pane and automatically leaves the mode when focus moves into the omnibox, find bar, overlays, or a page editable.
Pane Mode Quick Reference
- Press
Ctrl+Pto enter pane mode - Use arrow keys or
hjklto split in that direction Shift+arrowsto focus adjacent panesXto close current pane
Vim Mode Quick Reference
- Press
Ctrl+Yto enter Vim Mode - Use
h,j,k,lto scroll left, down, up, or right - Use
Shift+J/Shift+Kfor faster vertical jumps - Arrow keys continue to use the browser engine's native page navigation while Vim Mode is active
- Use
gito cycle through visible page inputs; use]]and[[to move through headings TabandShift+Tabtraverse focusable page controls while a page input is focused- Other app-level shortcuts stay suspended until you leave Vim Mode
- Press
EscapeorEnterto leave the mode Ctrl+Ycan activate Vim Mode even when a page input or editor is already focused
Engine behavior: CEF and WebKit execute Vim Mode scroll steps with the shared
BuildPageScrollByJSresolver (viewport-center start, nested-scroller handoff, document fallback). The application repeater owns held-key cadence; each engine runs one immediate step per tick. Cross-origin frames are best-effort. CEF may use native precision-wheel input only before the browser frame is ready.
Omnibox
Press Ctrl+L to open the omnibox for:
- URL navigation
- Search (uses default search engine)
- Bang shortcuts (
!g queryfor Google,!gh queryfor GitHub)
Floating Pane
- Press
Alt+Fto toggle the floating pane. - Press
Ctrl+Wto close the active pane; if the floating pane is active, this fully releases it so the next open starts fresh. - Some
Alt+<key>bindings can conflict with browser-engine shortcuts or desktop-level handlers.
See Floating Pane for profile shortcuts and configuration.
Configuration
Edit ~/.config/dumber/config.toml or use:
dumber config open
See Configuration for all options.
Launcher Integration
Use with rofi or fuzzel:
dumber dmenu | rofi -dmenu -show-icons | dumber dmenu --select
Website Permissions
Dumber includes a built-in permissions system for camera, microphone, and screen sharing:
- Custom dialog - Clean permission prompts replace native GTK dialogs
- Persistent choices - "Always Allow" and "Always Deny" are saved per-origin
- Privacy-focused - All permissions stored locally
- Camera & Microphone - Fully working on Wayland/PipeWire
⚠️ WebKit fallback note: Screen sharing does not currently work on Wayland with WebKitGTK 6.0. This is a known WebKitGTK limitation and does not describe the default CEF backend.
When a website requests camera or microphone access, you'll see a permission dialog with options to allow once, always allow, deny, or always deny.
See Website Permissions for details.
Crash Reporting
If Dumber exits unexpectedly, crash reports are automatically generated:
# List all crash reports
dumber crashes
# View the latest crash report
dumber crashes show latest
# Generate GitHub issue payload
dumber crashes issue latest
See Session Exit Classification for troubleshooting.
Next Steps
- Configuration Reference - All settings
- Keybindings - Full keyboard shortcuts
- CLI Commands - Command-line tools