Open-source Arc alternative for macOS: a Chromium browser for developers with Spaces, a dev command bar and a built-in MCP server for coding agents.
# Add to your Claude Code skills
git clone https://github.com/lucianodiisouza/flecha-browserGuides for using ai agents skills like flecha-browser.
See how flecha-browser compares with popular alternatives.
flecha-browser is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by lucianodiisouza. Open-source Arc alternative for macOS: a Chromium browser for developers with Spaces, a dev command bar and a built-in MCP server for coding agents. It has 81 GitHub stars.
flecha-browser's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/lucianodiisouza/flecha-browser" and add it to your Claude Code skills directory (see the Installation section above).
flecha-browser is primarily written in TypeScript. It is open-source under lucianodiisouza on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh flecha-browser against similar tools.
No comments yet. Be the first to share your thoughts!
Available after the catalog security scan passes.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
An Arc-style browser for developers, built on a Chromium fork. Arc's interface ideas are rebuilt from scratch; no Arc code is used.
Arc's vertical sidebar, Spaces and Peek are hard to give up, and Arc is no longer where the work is happening. Flecha is a replacement that keeps those ideas and adds tools for the people who build websites.
It is a Chromium 158 fork rather than an Electron app because Google blocks sign-in in Electron. Flecha is real Chromium, so Google sign-in, Chrome Web Store extensions and the rest of the web platform work as they do in Chrome. Flecha started as an Electron app; that version is gone from the repo (it's in the git history before the move to chromium/).
Sidebar and tabs
Spaces
Command bar
gh owner/repo, gh 123 (in the current tab's repo), npm react, mdn grid, caniuse :has, so ..., and envboost to open the Boosts pagePeek, split view and Flechinha
Boosts
github.com.ts, github.com.css, all.css), kept in Flecha and edited on the Boosts page. CSS applies live; scripts reload the page. ⌥⌘B edits the current site's boostFor developers
Privacy and the rest of the browser
Not there yet in the Chromium build: choosing the downloads folder from Settings, and the welcome tour.
Flecha-<version>.dmg from Releases. Releases are signed with a Developer ID and notarized by Apple. They are Apple Silicon (arm64) only for now; Intel is planned.git clone https://github.com/lucianodiisouza/flecha-browser.git && cd flecha-browser
chromium/scripts/install-native-host.sh --app /Applications/Flecha.app
Browsers can't read other browsers' files or open a local port, so Flecha ships a small native messaging host (a bundled Node, in the app). The script registers it with Chromium for Flecha's profile folder. It allows only Flecha's own shell extension to talk to it. Run it again if you move the app.
You need:
PATHnode:sqlite) and npm ci at the repo rootFetching the Chromium checkout isn't scripted here; follow Chromium's macOS build instructions. Build on an APFS volume: env.sh expects the checkout on APFS because siso treats every output as stale on HFS+ (one-second file times) and rebuilds everything.
chromium/scripts/env.sh says where things live, and every script reads it. Override with CHROMIUM_SRC (the checkout's src), DEPOT_TOOLS, FLECHA_DISK, FLECHA_VOLUME and FLECHA_PROFILE (the dev profile). Its defaults assume a disk image that it mounts for you, so set these for your own layout.
npm ci
chromium/scripts/build.sh # apply.sh (branding and patches), then autoninja -C out/Dev chrome
chromium/scripts/run.sh # launch out/Dev/Flecha.app with its own profile
node chromium/shell/build.mjs # shell-only change: rebuild, then relaunch run.sh
npm run typecheck
apply.sh is safe to run again: it first resets every file it touches. The dev build is a component build, so a change relinks one small library. run.sh loads the shell from chromium/shell/dist through --flecha-shell-dir, so UI work needs no Chromium build at all (npm run shell:watch rebuilds on save).
export FLECHA_SIGN_IDENTITY="Developer ID Application: Your Name (TEAMID)"
export FLECHA_NOTARY_PROFILE=flecha-notary # made once with: xcrun notarytool store-credentials
chromium/scripts/build-release.sh --dmg
build-release.sh builds the shell, applies the patches, stages the shell into the checkout, writes out/Release/args.gn from chromium/build/release.gn, builds (3 to 6 hours, resumable) and calls package-release.sh. That copies the app, adds the native host with its Node, signs everything innermost first (hardened runtime, timestamp and Chromium's entitlements when FLECHA_SIGN_IDENTITY is set; ad hoc otherwise), makes the dmg with an installer window, and with FLECHA_NOTARY_PROFILE notarizes it and staples the ticket. Releases use target_cpu = "arm64" and no proprietary codecs (H.264 and AAC), which need patent licences.
chromium/
patches/ the native changes to Chromium, as numbered unified diffs
branding/ app icon, logo, BRANDING, the dmg background
build/ dev.gn and release.gn (the GN args)
scripts/ apply, build, run, env, build-release, package-release,
install-native-host, dmg-layout.py
shell/ the MV3 component extension that draws the window
background.ts service worker: the Store, tabs, windows
features/ ad blocking, boosts, console errors, local servers, responsive view
ui/ sidebar, command bar, settings and Flechinha pages
lib/ URLs, shortcuts, environments, settings rules, tab manager
shared/ types and the sidebar model, used by the shell and the host
native-host/ the native messaging host (Node)
Flecha is Chromium plus two layers: a small set of patches, and an extension that draws the browser.
flowchart LR
subgraph Chromium["Chromium 158 + Flecha patches"]
Frame["Window frame view<br/>(hides tab strip and toolbar)"]
API["chrome.flechaPrivate"]
end
subgraph Shell["Shell (MV3 component extension)"]
BG["background.ts<br/>Store, tabs, fea