Terminal-based browser launcher for Linux with profile and container support.
# Quick install (recommended)
curl -sSL https://raw.githubusercontent.com/kyhou/bopen/main/install.sh | sh
# Options
curl ... | sh -s -- -d /usr/local/bin # custom directory
curl ... | sh -s -- --skip-desktop # skip desktop file
curl ... | sh -s -- --version v1.1.0 # specific version
curl ... | sh -s -- -y # skip confirmations
# From source (requires Rust)
git clone https://github.com/kyhou/bopen.git && cd bopen
cargo build --release && sudo cp target/release/bopen /usr/local/bin/bopen # open launcher
bopen https://... # pre-fill URLbopen supports automatic browser/profile selection based on URL patterns:
# If a pattern matches, browser opens directly without TUI
bopen "https://github.com/user/repo"Configure patterns in the Pattern Manager (Ctrl+P).
| Key | Action |
|---|---|
TAB / Arrows |
Navigate |
ENTER |
Select / Open |
c |
Copy URL |
i |
Toggle incognito |
w |
Toggle new window |
Ctrl+P |
Open Pattern Manager |
q |
Quit |
| Key | Action |
|---|---|
a |
Add new pattern |
e |
Edit selected pattern |
d / Delete |
Delete pattern |
↑ / ↓ |
Navigate patterns |
q / Esc |
Close |
Ctrl+C |
Close (alternative) |
| Key | Action |
|---|---|
← / → |
Move cursor |
Backspace |
Delete before cursor |
Delete |
Delete after cursor |
| Type | Insert at cursor position |
- Automatic browser detection — Discovers all installed browsers
- Profile selection — Firefox, Chromium, Chrome, Brave, Edge, etc.
- Firefox containers — Personal, Work, Banking, Shopping
- URL Pattern Matching — Auto-launch browsers based on URL patterns
- Pattern Manager — TUI for managing URL patterns (Ctrl+P)
- Incognito and new window — Quick toggle options
- Persistent configuration — Saves preferences and patterns
Access the Pattern Manager by pressing Ctrl+P in the main UI.
Patterns use regular expressions to match URLs:
Pattern: .*github\.com.*
Browser: Firefox
Profile: work
Container: (optional, Firefox only)
Options: [ ] Private [ ] New Window
| Pattern | Browser | Profile | Container | Use Case |
|---|---|---|---|---|
.*github\.com.* |
Firefox | work | Work repositories | |
.*youtube\.com.* |
Chrome | Personal | Entertainment | |
.*bank.* |
Firefox | default | Banking | Secure banking |
.*reddit\.com.* |
Brave | default | Private browsing |
Configuration is stored in ~/.config/bopen/config.json:
{
"last_browser": "Firefox",
"last_profile": "Personal",
"url_patterns": [
{
"pattern": ".*github\\.com.*",
"browser": "Firefox",
"profile": "work",
"container": null,
"incognito": false,
"new_window": false
}
]
}curl ... | sh # installer asks this automatically
# or manually:
cp data/bopen.desktop ~/.local/share/applications/
xdg-mime default bopen.desktop x-scheme-handler/http
xdg-mime default bopen.desktop x-scheme-handler/httpsrm ~/.local/bin/bopen # (or your install path)
rm -rf ~/.config/bopen
rm ~/.local/share/applications/bopen.desktopMIT
