Open-source browser · macOS · Chromium

The browser that knows you write code.

A Chromium browser with a vertical sidebar, Spaces and a command bar that understands gh 482, JWTs and staging URLs. Your coding agent can see your tabs. Everything stays on your Mac.

Free and open source · Apple silicon · Intel and other downloads

gh 483
  • oprimo/api#483Open pull request or issue
  • GFix checkout redirect #482Switch to tab
  • Goprimo/api · Pull requestsHistory
ProjectFlecha DrawingMain window, command bar open Scale1 : 1 @ 1000 px Rev1.0
  • Real ChromiumGoogle sign-in and Chrome extensions just work
  • 100% localno account, nothing about you sent to Flecha
  • Zero telemetrythe app sends nothing about you
  • Open sourcea small patch set and a TypeScript shell

Command bar · ⌘T

Type like you're in a terminal.

One box for tabs, history, commands and the sites you open fifty times a day. It decodes the strings you would otherwise paste into some random website. This demo runs the same rules as the app. Try it.

gh
repo, PR number in the current repo, or search
npm
package page or search
mdn caniuse so
docs, support tables, answers
env
jump to this page on another environment
boost
edit this site's Boost
eyJ… 1761…
JWTs and Unix times, decoded on your Mac
  • flecha-browserSearch GitHub

Tokens are decoded inside the browser. They never leave your machine.

Dev tools

The parts of your day that happen in a browser.

Built for the loop of edit, reload, check staging, ask the agent, ship.

⌥⌘E

One key between local, staging and production.

Group a project's origins once in Settings. The same page then opens on the next environment with its path and query intact, and the address bar shows a LOCAL, STAGING or PROD badge so you never edit production by accident.

locallocalhost:3000/checkout?step=2⌥⌘E
stagingstaging.acme.dev/checkout?step=2⌥⌘E
prodacme.com/checkout?step=2⌥⌘E

⌥⌘M

Phone and desktop, side by side.

A 393 px phone with touch and a mobile user agent next to the full page. It follows every navigation.

Separate logins per Space.

Turn on separate cookies for a Space and it gets its own sessions. Stay signed in to two GitHub accounts, or test as admin and as a customer side by side.

Your dev servers, already in the sidebar.

Servers running on this Mac show up on their own, named after their page title. Local tabs count their console errors; click the badge to open the Console.

⌥⌘B

Boosts: your own code on any site.

A Boost is your own TypeScript or CSS for a site, named after it: github.com.ts, github.com.css, or all.css for every site. Edit it on Flecha’s Boosts page and press ⌘S: CSS applies live, scripts reload the site’s tabs. Boosts are saved in your Flecha profile.

Flecha › Boosts

// github.com.ts · runs on every github.com page
export {};

const lockfiles = document.querySelectorAll<HTMLElement>(
  '[data-path$=".lock"]',
);
for (const file of lockfiles) file.hidden = true;
/* all.css · every site, applied live */
:root { font-synthesis: none; }
::selection { background: #3aa6d9; }

MCP · Model Context Protocol

Let your coding agent see and drive your tabs.

Turn on the bridge in Settings and Flecha serves MCP on 127.0.0.1, behind a token. Claude Code, Cursor and other agents can list tabs, read pages and console logs, take screenshots, click, type and run JavaScript. The sidebar shows what the agent is doing while it works.

  • list_tabs
  • read_page
  • console_logs
  • screenshot
  • click
  • type
  • press_key
  • evaluate
  • navigate
  • wait_for
~/acme/web

$ claude mcp add --transport http flecha http://127.0.0.1:…/mcp

› why does checkout redirect twice?

● flecha · console_logs localhost:3000/checkout

● flecha · evaluate performance.getEntriesByType('navigation')

● flecha · screenshot checkout.png

The auth middleware runs before the session cookie is set, so the first request has no session. Moving setSession() above requireAuth() fixes it.

The browser

A calm place for a hundred tabs.

The sidebar, Spaces, Peek and split view you liked in Arc, rebuilt from scratch.

⌥⌘N

Flechinha for links from other apps.

A link from Slack or Mail opens in a small, focused window instead of piling into your Spaces. Like it? ⌘O moves it into Flecha.

Peek before you open.

Links from pinned tabs and favorites open in a floating card over the page. Esc closes it; one click turns it into a tab.

⌃⇧=

Split view, two pages side by side.

Drag a tab onto the left or right half of the page to split it, and drag the gap to resize. Each Space remembers its split.

  • Pinned tabs, folders and favoritesper Space, dragged wherever you want them.
  • Today tabs tidy themselvesarchived after 12 hours, still searchable. ⇧⌘K clears them now.
  • Spaces with a swipetwo fingers sideways on the sidebar, or ⌃1–⌃9. Each with its emoji and colour.
  • Site controlspermissions, zoom, clear site data and copy a screenshot of the page.
  • A start screen that helpssearch, your top sites and your running dev servers.
  • Settings you can searchand a Tabs & Spaces manager to reorganise everything at once.
  • Light and darkFlecha's theme also sets prefers-color-scheme for pages.
  • Downloads and find in pagestraight to your folder, listed in the sidebar. ⌘F to find.
  • Back where you left offwindow, tabs, history and scroll position come back on launch.

Under the hood

Real Chromium, not a wrapper.

Flecha is a Chromium fork. Pages render exactly as they do in Chrome, Google sign-in works, and every extension from the Chrome Web Store installs, including content blockers and password managers that talk to their desktop app.

The fork stays small on purpose: a short list of patches for the window, sidebar panel, shortcuts, Peek and Flechinha. Everything you see is a built-in TypeScript extension, so updating Chromium stays easy.

Flecha shell chromium/shell

sidebar · command bar · Settings · Boosts · MCP bridge · import

Flecha patches chromium/patches

window frame · left sidebar panel · shortcuts · Peek · Flechinha · split view

Chromium

Blink · V8 · extensions · Google sign-in · updates from upstream

Privacy

Local by design. Flecha collects nothing.

There is no account and nowhere for your data to go. Flecha only talks to flecha.dev to check for updates. Don't take our word for it: the code is public. Read the privacy policy.

Your Mac

Flecha

  • Tabs, Spaces, settingsyour Flecha profile
  • Historyyour Flecha profile
  • Boostsyour Flecha profile
  • Cookiesone jar per Space, if you want
  • Ad and tracker blockerruns locally

Claude Code, Cursor

reach Flecha over MCP on 127.0.0.1, with a token

Other browsers' data

read once, when you import

The web

sites you visit, your search engine, extension updates

flecha.dev

update checks and downloads only, nothing about you

Sent to Flechabytes

  • Usage analytics0
  • Crash reports0
  • Browsing history0
  • Account or sign-innone

Network traffic is the sites you open, your search engine, extension updates, update checks against flecha.dev, and the services built into Chromium itself. The ad and tracker lists ship inside the app.

  • Your data is files on your Mac

    Tabs, Spaces, history and settings live in your Flecha profile. Back them up, delete them or move them to a new Mac.

  • Trackers blocked out of the box

    Ad and tracker blocking is built in and on by default, with the EasyList and EasyPrivacy lists.

  • Agents only when you say so

    The MCP bridge is off until you turn it on, listens only on 127.0.0.1 and needs a token. You see every action in the sidebar.

  • Spaces can keep secrets

    Give a Space its own cookie jar and its sessions stay invisible to your other Spaces.

Keyboard first

Everything has a shortcut. Make them yours.

Record your own keys for any command in Settings. Conflicts are caught before they bite.

  • ⌘TCommand bar
  • ⌘LEdit current URL
  • ⌘SHide sidebar
  • ⌘DPin or unpin tab
  • ⇧⌘CCopy URL
  • ⇧⌘KClear today's tabs
  • ⇧⌘TReopen last tab
  • ⌃1–9Switch Space
  • ⌃⇧=Split view
  • ⌥⌘NNew Flechinha
  • ⌥⌘ENext environment
  • ⌥⌘MResponsive view
  • ⌥⌘BBoosts
  • ⌘FFind in page
  • ⌘,Settings
  • ⌘OFlechinha → Flecha

Switching

Bring everything with you. Arc included.

Arc stops working on December 22, 2026, and Flecha keeps the ideas worth keeping. Import picks up the browsers it finds on your Mac, and a short welcome tour shows you around with your own shortcuts.

Welcome tour → Bring your stuff over · How to switch from Arc

BrowserSpacesPinned tabs and favoritesBookmarksHistory
Arc—
Chrome, Brave, Edge and other Chromium browsers——
Firefox——
Safari——

Bookmarks arrive as a Space of pinned tabs, and history is merged and searchable. Everything is read from files on your Mac; nothing is uploaded.

Download

Pick the build for your computer.

Each link is always the latest version. After that, Flecha keeps itself up to date.

macOS · Apple silicon

Macs with an M1, M2, M3, M4 or newer chip.

Flecha.dmg Download

Soon

macOS · Intel

Macs with an Intel processor.

Flecha-x64.dmg Download

Soon

Windows

Not available yet.

Download

Soon

Linux · .deb

Not available yet.

Download

Not sure which Mac you have? Open the Apple menu → About This Mac. “Chip” means Apple silicon; “Processor” means Intel.

Looking for an older version? Previous versions are archived on GitHub.

Free and open source

A browser you can read, build and fork.

Browsers backed by a company can disappear when the company changes its plans. Flecha's code is public, so if the project ever stops, your browser keeps working and anyone can pick it up.

flecha-browsermain
chromium/
  patches/      # the small Chromium patch set
  shell/        # the UI, as a built-in extension
    sidebar.ts
    features/     # boosts, environments, servers…
  native-host/  # import and the MCP bridge
  scripts/      # apply.sh · build.sh · run.sh
src/
  renderer/     # sidebar, command bar, Settings
  shared/

Issues and ideas are welcome on GitHub.