A native macOS web browser.
![]() |
![]() |
swift run Quartzswift buildCreate a local macOS app bundle:
Scripts/package-macos-app.sh
open dist/Quartz.appThe default package is ad-hoc signed for local development. If macOS blocks a downloaded ad-hoc build with "Apple could not verify...", remove the quarantine attribute from the copy you trust:
xattr -dr com.apple.quarantine /path/to/Quartz.appPublic downloads require a Developer ID certificate and Apple notarization:
SIGN_IDENTITY="Developer ID Application: Your Name (TEAMID)" ZIP_APP=1 Scripts/package-macos-app.sh
xcrun notarytool submit dist/Quartz.zip --keychain-profile <profile> --wait
xcrun stapler staple dist/Quartz.app- WebKit-powered browsing
- Tiny built-in ad blocker for obvious third-party ad resources
- Reading mode for article-focused pages
- Facet side-panel agent powered by the local Codex CLI
- Optional Chromium-format WebExtension installation on macOS 15.4+, including Chrome Web Store downloads
- Address/search field
- Back, forward, reload, stop, home, reading, and Facet controls
- Basic keyboard menu items
Facet is a docked AI agent panel inside Quartz. Open it from the sparkles toolbar button or View > Show Facet, choose a Codex model and reasoning level if you want to override the defaults, then ask a question. When Current page is enabled, Quartz sends the active page URL, title, selected text, description, and a bounded visible-text excerpt to Codex as context.
Facet uses the local codex CLI in read-only, non-interactive mode. Make sure codex is installed and authenticated before using it in Quartz.
Quartz installs Chromium-format WebExtensions from the Chrome Web Store, an unpacked extension folder, a .zip archive, or a .crx package.
Users can opt into extensions from a Chrome Web Store listing with the native Install button that appears in the Quartz toolbar, or with Extensions > Install This Web Store Extension. Users can also choose Extensions > Install from Chrome Web Store... and paste a store listing URL or extension ID. Local packages are still available through Extensions > Install Extension from File.... Quartz copies installed extensions into Application Support and restores them on launch.
Quartz includes a tiny built-in blocker for a few obvious third-party ad resources. The former larger bundled ad-blocking filters now live in a separate Quartz Ad Blocker extension package.


