alphav0.2.0-alpha.15 is out · macOS 26

Arc’s feel.
A fraction of
the weight.

den is an open-source macOS browser built on WebKit, the engine behind Safari, and made of plugins you can swap while it runs. It idles at 20 MB.

Alpha · macOS 26 Tahoe or later · MIT licensed

A tour of den

01 / 08

Tabs live on the side.

Pinned tabs remember their page. Today tabs tidy themselves away after a day.

02 / 08

Swipe to another space.

Two fingers, and you're in Work. Every space has its own theme and, if you want, its own profile.

03 / 08

One box for everything.

Find a tab in any space, a page you closed, a site, a search, a command or a setting.

04 / 08

Peek without leaving.

⇧-click a link and it floats in a card. Expand it into a tab, split it, or press Esc.

05 / 08

Drag a tab to split.

Drop a tab on the page for side by side. Up to four panes.

06 / 08

Hover to look inside.

Rest on a pull request: checks, reviews and conflicts. Nothing is fetched until you hover.

07 / 08

The video comes with you.

Switch tabs while a video plays and it floats off into the Mac's own picture in picture, on top of everything. Come back and it slides home, still playing.

08 / 08

Your morning, briefed.

Slack and GitHub, turned into a summary and a todo list by Apple's on-device model. Written on your Mac.

All of that, in a browser that idles at 20 MB.

20 MBidle, no tabs209 msto first window80 KBper unloaded tab16plugins, swappable live

Measured on a busy M3 MacBook Air, macOS 26.5. Conditions and comparisons

Download

Try the alpha.

It browses the web with the sidebar, spaces, split view and command bar. There are no downloads, import or sync yet. Expect rough edges, and please report them.

v0.2.0-alpha.15Oct 18, 2026pre-release

Requires macOS 26 Tahoe or later.

  1. 1Open the DMG and drag den to Applications.
  2. 2The first time, right-click den ▸ Open. It's signed ad hoc and not notarized yet.
  3. 3⌘T opens the command bar. That's most of den.

Or clear the quarantine flag from a terminal:

xattr -dr com.apple.quarantine /Applications/den.app

Get the next alpha as an update: add this to ~/.den/config.toml

[updates]
channel = "prerelease"

Prefer to build it? Build from source with Xcode 26 and an Embedded Swift toolchain.

Why den

The best browser interfaces got heavy, closed, or stopped moving.

den keeps the interface people loved in Arc and builds it on four rules.

Plugins, all the way down

The core is a small host. Tabs, the sidebar, split view, the command bar and connections are plugins you can swap while den runs.

Hot-swappable

Load, unload, update or replace any plugin while den runs. Your tabs stay put. Plugin updates swap in live; only den's small core needs a relaunch.

Lazy by default

Nothing loads until you need it: plugins, connections, web pages. Settings, previews and the briefing build nothing until you open them.

Minimal footprint

Idle tabs are unloaded and cost kilobytes, not a whole page in memory. Memory and energy regressions are treated as bugs, with budgets checked by a script.

Hot swap

Change a plugin. den keeps running.

Save a change to a plugin and den reloads just that piece, live. Your tabs stay put.

⌘Command barrunning
⌘Command barnew build · running

swi

swi — Search

Swift.org

The Swift Programming Language

switzerland

reloaded · tabs kept

Every feature is a plugin, swappable while den runs. How plugins work

  • Spaces
  • Tabs
  • Command bar
  • Peek
  • Hover previews
  • Themes
  • Quit
  • Dark mode
  • Passwords
  • Extensions
  • Page tools
  • Connections
  • Slack
  • GitHub
  • Briefing
  • Updates

Measured, not claimed

Numbers, with the conditions attached.

den, Dia and Arc, measured the same way, in turn, on the same Mac. Shorter bars are better.

Memory, idlelower is better
  • den20.0 MB

    no tabs open

  • Arc 1.166189 MB

    empty space

  • Dia 1.50615 MB

    fresh launch

Total memory of the app and all its helper processes, 10 s after the first window.

Memory, one pagelower is better
  • den79.8 MB
  • Arc 1.166367 MB

    in a Little Arc window

example.com open.

Launch to first windowlower is better
  • den209 ms
  • Dia 1.50653 ms
  • Arc 1.1662,147 ms

Warm launch: the median of the 6 quietest rounds, with the apps launched in turn.

page processes per unloaded tab
0
the page comes back when you click it
idle CPU, no tabs
0.2%
median; about one wakeup every 10 s
Dia idle, vs den idle
31×
Dia on a fresh launch
Arc idle, vs den idle
9.5×
Arc with an empty space
Conditions

Measured 2026-09-27 on a MacBook Air (M3, 16 GB), macOS 26.5, on AC power. Other builds were running the whole time, so absolute launch times are inflated; all three browsers were launched in turn under the same load. Memory depends much less on load. Cold launch and energy are not measured yet. Every run, raw value and command.

And more

The everyday things, done well.

Everything here works in today's build.

Tabs on the side. Spaces for everything else.

Favorites, pinned tabs that remember their page, and Today tabs that archive themselves after a day. Every space gets its own theme and, if you want, its own profile.

  • Two-finger swipe between spaces
  • Nested folders, drag and drop, ⌃Z undo
  • A searchable Library of everything you closed
Read the guide
den's sidebar with the space menu open

For your agent

Your browser is plain files. Let your agent change it.

den is configured in ~/.den and extended with small Swift plugins it reloads on save. The den skill teaches Claude Code, Codex and other agents exactly how, checked against den's source.

bunx skills add abhishakenp/den --skill den -g

The skills CLI finds skills/den in the repo and asks which agents to install it for.

  • Configure

    config.toml keys, shortcuts, site-search keywords, update channels and theme presets, all applied live.

  • Extend

    Embedded Swift plugins on CordisKit, built with cordis-build or dropped in as source den compiles for you.

  • Debug

    Where den logs, how plugin layers override each other, and how to rule out your customizations.

Read skills/den/SKILL.md
things to ask for
  1. Add an mdn search keyword.

    ~/.den/config.toml [search.keywords]

  2. Put next tab on ⌘⇧J.

    ~/.den/config.toml [shortcuts]

  3. Make me a warm amber theme.

    ~/.den/themes/ember.toml

  4. Write a plugin that copies my Today tabs as Markdown.

    ~/.den/plugins/copytabs/*.swift → hot-reloads

  5. Why didn't my plugin load?

    ~/.den/logs/plugins.log, build-<id>.log

Open source · MIT

Built in the open. Come build it with us.

den is early. Design feedback is the most useful contribution right now: open an issue to discuss an idea or challenge a decision. The roadmap says what’s done and what’s next.

git clone https://github.com/abhishakenp/den.git && cd den && scripts/install.sh

Builds, runs the tests, installs to /Applications. Needs Xcode 26 and an Embedded Swift toolchain.

den app icon