Repository navigation
Somnia gains multiple windows and a per-window proxy for hiding your IP.
✨ Highlights
- Multiple windows — open independent browser windows with ⌘N or by right‑clicking the Dock icon → New Window. Each window has its own tabs, spaces, and proxy state.
- Per‑window proxy — route a window through a SOCKS5 or HTTP proxy to hide your IP from the sites you visit. Configure the endpoint once in Customize, then flip it on/off per window from the toolbar shield or from settings.
🪟 Multi‑window
- New window via ⌘N or the Dock icon's right‑click menu; reopening from the Dock brings a window back when none are open.
- Menu commands act on the focused window; each window is independent. The first window restores your saved session.
- Windows release their web views and timers on close (no leaks when opening/closing many).
🛡️ Proxy
- SOCKS5 and HTTP CONNECT, with optional username/password.
- Per‑window toggle over a globally‑configured endpoint — window A can browse direct while window B goes through the proxy.
- Proxied browsing uses a separate cookie jar (it isn't tied to your logged‑in sessions). Private tabs in a proxied window are routed through the proxy too.
- WebRTC/STUN blocked while proxied, to prevent your real IP leaking around the proxy.
- A banner warns when the proxy connection fails — pages never silently fall back to a direct connection.
🔧 Other
- The Customize panel now scrolls, so every setting stays reachable.
- Tests are isolated via
SOMNIA_DATA_DIRand no longer touch your real config.
ℹ️ Notes
- Requires macOS 14+. Still zero external dependencies — a single native binary.
- You supply the proxy endpoint (your VPN's SOCKS, a commercial proxy, or a local Tor at
127.0.0.1:9050). - The proxy hides your IP from destination sites; it is not a full anti‑fingerprinting solution.
Full changelog: v0.3.0...v0.4