Docs
Vane is a native macOS browser in the shape of Arc, built on WebKit. This page is how it works day to day.
Getting started
- Install. Download the DMG from the latest release, drag Vane to Applications, and open it. Vane is in active development; review the release notes and distribution status before installing. Requires macOS 26 or later.
- Default browser. Vane offers once to become the default; later it is Sites → Make Vane the Default Browser. Links from Mail, Slack and
open -a Vaneland in a tab. - Address bar. ⌘L or ⌘T opens the bar over the page. It decides between navigation and search: bare hosts,
localhost:3000, IPs, file paths and~/paths navigate; anything else searches. A leading!g,!ddg,!bpicks a search engine for that one query. Suggestions come from history and bookmarks. - Coming from Arc? See Import from Arc. Import bookmarks and history, and bring passwords over from a CSV export.
Spaces
- Switching. Swipe horizontally on the sidebar with two fingers, use ⌥⌘→ / ⌥⌘←, ⌃1–⌃9, or click a dot in the footer. The page changes the moment the swipe commits.
- Creating. On the last Space, keep pulling left: a plus at the sidebar's edge fills, then the circle behind it fills solid, and you land on Create a Space with a name field, a profile, and a theme. Swipe right or press ⎋ to cancel. Spaces → New Space… does the same from the menu.
- Theme. Right-click the Space name or its dot for the theme editor: colours, a gradient, grain, and light or dark. The whole window takes the colour.
- Kept alive. A window keeps the Spaces it has visited loaded behind the one on screen, so swiping back puts the same pages in front of you. Idle pages are unloaded on the usual clock and restore their saved page state where supported.
- Library. ⇧⌘L shows every Space and the Archive, and lets you move Spaces between profiles.
Live Folders
A Live Folder is a pinned folder that fills itself. Today it has one source: GitHub pull requests.
- Make one from the Space name's menu or the dot's menu: New Live Folder…. The first time, Vane signs you in to GitHub in a tab; one click, no token to paste. A build from source without the OAuth secret asks for a personal access token instead.
- What it shows. Every open pull request you are involved in, or one repository's, optionally only the recent ones. Rows appear and vanish as pull requests open and close; a row you take out stays out. Each row is named after its pull request.
- Refresh. Every five minutes, when the folder is unfolded, and on Refresh Now. A folder that GitHub refuses says so in a toast; if GitHub has revoked the sign-in Vane forgets it and Edit Live Folder offers to connect again.
Import from Arc
Use File → Import History & Bookmarks… and select an Arc profile. Vane reads its history and bookmarks without changing the original browser’s data.
For passwords, export a CSV and use Import Passwords. Cookies, logged-in sessions, and Arc’s full Space setup are not migrated by the current importer.
Other imports
- History and bookmarks from Chrome, Chromium, Edge, Brave, Vivaldi, Opera, Arc, Firefox and Safari: File → Import History & Bookmarks…. Read-only.
- Passwords from a CSV export of Chrome, Edge, Brave, Opera, Vivaldi, Arc, Firefox, Safari, macOS Passwords, 1Password or Bitwarden: Passwords → Import Passwords….
Passwords
- Saved as ordinary Internet keychain items, per profile, that only Vane can read. Nothing syncs.
- Autofill offers only over
httpsand never submits for you. ⌥⌘L fills the focused form; with several accounts saved, a chooser appears on the field. - Manage Saved Passwords… opens the list; deleting there deletes the keychain item.
Privacy and blocking
Read the privacy policy for local data, outgoing requests, optional services, retention, and contact information.
- Ad and tracker blocking uses WebKit's own declarative blocker, so blocked requests never leave the machine and nothing is injected into pages. On by default, per profile: Sites → Block Ads and Trackers. Add Filter List… accepts EasyList-style files from disk.
- Private windows (⇧⌘N) get a data store that is never written to disk.
- Camera and microphone are asked per site and remembered per origin and profile; Reset Camera & Microphone Permissions… forgets them.
- Certificates. A bad certificate shows a two-step alert with the fingerprint; an exception is tied to that exact certificate, so a swapped one asks again.
- Profiles keep everything apart: data store, history, passwords, favicons, pins, session, extensions and Spaces.
Little Vane and splits
- Little Vane (⌥⌘N) is a small single-page window for a quick look, the way a link from another app opens. Its menu can move the page into your main window.
- Split view. ⌃⇧+ puts a second page beside the current one; up to four panes in one card, one row in the sidebar. ⌃⇧N moves between panes and ⌃⇧_ removes the split.
- Picture in picture (⌥⌘P) detaches the page's video; a tab playing in that window is never unloaded.
- Reader (⌥⌘R) shows the article alone, with adjustable size and a serif toggle.
Keyboard shortcuts
Every one of these can be rebound in Settings → Keyboard. AppKit's own chords (⌘C, ⌘Q, ⌘H and friends) are left alone. ⇧⌘P searches commands by name or by shortcut.
Tabs and windows
| Command | Shortcut |
|---|---|
| New Tab | ⌘T |
| Reopen Closed Tab | ⇧⌘T |
| Archive Tab | ⌘W |
| New Window | ⌘N |
| New Private Window | ⇧⌘N |
| New Little Vane Window | ⌥⌘N |
| Close Window | ⇧⌘W |
| Next Tab / Previous Tab | ⌥⌘↓ / ⌥⌘↑ |
| Tab Switcher | ⌃⇥ |
| Select Tab 1–8 | ⌘1 … ⌘8 |
| Select Last Tab | ⌘9 |
| Pin Tab | ⌘D |
| Mute Tab | ⌥⌘M |
| Clear Tabs | ⇧⌘K |
| Tidy Tabs | ⌃⌘T |
| Add Split View | ⌃⇧+ |
| Remove Split | ⌃⇧_ |
| Next Pane | ⌃⇧N |
| Minimize | ⌘M |
Navigation
| Command | Shortcut |
|---|---|
| Open Location | ⌘L |
| Back / Forward | ⌘[ / ⌘] |
| Reload Page | ⌘R |
| Reload Ignoring Cache | ⇧⌘R |
| Find… | ⌘F |
| Find Next / Previous | ⌘G / ⇧⌘G |
| Copy Page URL | ⇧⌘C |
| Bookmark This Page | ⌥⌘D |
| Fill Password | ⌥⌘L |
| Open File… | ⌘O |
| Save Page As… | ⇧⌘S |
| Print… | ⌘P |
Spaces
| Command | Shortcut |
|---|---|
| Next Space / Previous Space | ⌥⌘→ / ⌥⌘← |
| Go to Space 1–9 | ⌃1 … ⌃9 |
| New Space | Pull past the last Space, or Spaces → New Space… |
View
| Command | Shortcut |
|---|---|
| Toggle Sidebar | ⌘S |
| Search… (command palette) | ⇧⌘P |
| Search Tabs… | ⇧⌘A |
| Show Library | ⇧⌘L |
| Show Reader | ⌥⌘R |
| Picture in Picture | ⌥⌘P |
| Zoom In / Out / Actual Size | ⌘+ / ⌘− / ⌘0 |
| Enter Full Screen | ⌃⌘F |
| View History | ⌘Y |
| Downloads | ⇧⌘J |
| Settings… | ⌘, |
Develop
| Command | Shortcut |
|---|---|
| Show Web Inspector | ⌥⌘I |
| Show JavaScript Console | ⌥⌘C |
| View Source | ⌥⌘U |
Developer
- Extensions. Extensions → Install Extension… takes an unpacked MV2 or MV3 extension folder containing
manifest.json, one set per profile. - Inspector. Web Inspector (⌥⌘I), JavaScript console (⌥⌘C), View Source (⌥⌘U), a user-agent picker, and Allow Web Inspector for pages.
- Build from source.
swift build -c release && ./make-app.shon macOS 26../.build/release/vane selfcheck --pureruns the offline checks. The development guide has the rest.
Updates
Vane checks for a new release on launch and then quietly; when one is ready a toast waits for you, and the updater validates and replaces the installed bundle. Clean-machine installation and upgrade verification remain part of release testing. Vane → Check for Updates… asks now. Releases and notes are on GitHub.
Something missing or wrong here? Open an issue.