Skip to content

Releases: sweefbrowser/sweef

Sweef 0.1.0-alpha.6 (alpha)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Oct 14:28
e4ed703

Sweef 0.1.0-alpha.6 (ALPHA)

This is an alpha release. Sweef is a young independent browser engine. Expect missing features,
sites that do not render correctly, and rough edges. Sweef offers to open such pages in your system
browser. Please do not rely on it for banking or other sensitive browsing yet.

Commit: e4ed703dc838

Install

Platform File Notes
Linux (Debian/Ubuntu) sweef_0.1.0-alpha.6_linux_<arch>.deb sudo apt install ./sweef_...deb
Linux (Fedora/openSUSE) sweef_0.1.0-alpha.6_linux_<arch>.rpm sudo dnf install ./sweef_...rpm
Linux (any) sweef_0.1.0-alpha.6_linux_<arch>.AppImage chmod +x and run
Linux (any) sweef_0.1.0-alpha.6_linux_<arch>.tar.gz, or install.sh user-level install, no root
macOS 12+ sweef_0.1.0-alpha.6_darwin_universal.dmg unsigned alpha: Gatekeeper will block it, see docs/install.md
Windows 10/11 sweef_0.1.0-alpha.6_windows_<arch>_setup.exe or .zip unsigned alpha: SmartScreen will warn (see docs/install.md)

<arch> is amd64 or arm64. Full instructions, uninstall steps and the unsigned-binary
workarounds are in docs/install.md.

Verify your download

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo sweefbrowser/sweef    # build provenance (SLSA)

Known alpha limitations

  • Installers are unsigned: macOS Gatekeeper and Windows SmartScreen will show warnings, and Linux packages are not GPG-signed.
  • No automatic updates yet: download the new version to update.
  • See the README for rendering-fidelity numbers and known gaps.

Changes

  • perf: faster DOM bridge, browser-like load settling, lazy font collections (e3708f5)
  • chore(sdk): pin engine 0.1.0-alpha.5 for SDK 0.2.1 (a640166)

Sweef 0.1.0-alpha.5 (alpha)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 Oct 01:53
55791d0

Sweef 0.1.0-alpha.5 (ALPHA)

This is an alpha release. Sweef is a young independent browser engine. Expect missing features,
sites that do not render correctly, and rough edges. Sweef offers to open such pages in your system
browser. Please do not rely on it for banking or other sensitive browsing yet.

Commit: 55791d0ab705

Install

Platform File Notes
Linux (Debian/Ubuntu) sweef_0.1.0-alpha.5_linux_<arch>.deb sudo apt install ./sweef_...deb
Linux (Fedora/openSUSE) sweef_0.1.0-alpha.5_linux_<arch>.rpm sudo dnf install ./sweef_...rpm
Linux (any) sweef_0.1.0-alpha.5_linux_<arch>.AppImage chmod +x and run
Linux (any) sweef_0.1.0-alpha.5_linux_<arch>.tar.gz, or install.sh user-level install, no root
macOS 12+ sweef_0.1.0-alpha.5_darwin_universal.dmg unsigned alpha: Gatekeeper will block it, see docs/install.md
Windows 10/11 sweef_0.1.0-alpha.5_windows_<arch>_setup.exe or .zip unsigned alpha: SmartScreen will warn (see docs/install.md)

<arch> is amd64 or arm64. Full instructions, uninstall steps and the unsigned-binary
workarounds are in docs/install.md.

Verify your download

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo sweefbrowser/sweef    # build provenance (SLSA)

Known alpha limitations

  • Installers are unsigned: macOS Gatekeeper and Windows SmartScreen will show warnings, and Linux packages are not GPG-signed.
  • No automatic updates yet: download the new version to update.
  • See the README for rendering-fidelity numbers and known gaps.

Changes

  • sdk: regression tests for the tester's failures (title, first/last/nth, click then type, rewriting select) (ce22448)
  • engine: free pages on navigation; an enforced memory budget; honest numbers (c1172e9)
  • docs: install from releases, the SDKs or a clone; go install @latest cannot work (db270d1)
  • engine: inline style numbers serialize like browsers; Optimizely Cleanse regression test (d7c7eff)
  • engine: click then type reaches the focused field on every surface (ad9c52a)
  • engine: Page.title follows document.title; no control characters in tab state (01a4a3a)
  • engine: Playwright-style selector chaining (A >> B, nth=N, visible=, has-text=) (df02180)
  • engine: keep option selectedness apart from script-written selected attributes (d47a7c7)
  • sdk 0.2.1: install the sweef engine automatically (verified download into a per-user cache, sweef command, sweef-install) (93c7f1d)
  • fix(engine): browser UI pages measure from script on the finished layout; agentbridge tests read the starting page from the task (2188be7)
  • ci: publish-sdks workflow (npm @sweef/browser, PyPI sweef-browser); manual, dry run by default (ad0eff3)
  • bench, README: Mode B on the new build (Sweef 119/120 at 5.2 s and $0.0009 per success; Chromium agent 119/120 at 5.0 s) (deedc84)
  • bench: Mode B 2026-10-16 progress (in progress) (958feef)
  • bench: Mode B 2026-10-16 progress (in progress) (57804db)
  • bench: Mode B 2026-10-16 recovered parts (198 runs) (8160a5a)
  • bench: Mode B 2026-10-16 recovered parts (162 runs); supervisor restarted for the remaining tasks (c3b5056)
  • bench: Mode B 2026-10-16 progress (in progress) (4a912c0)
  • bench: Mode B 2026-10-16 progress (in progress) (43a25bd)
  • bench: Mode B 2026-10-16 part1b (72 runs recovered from the last snapshot) (8b619ec)
  • bench: Mode B 2026-10-16 progress (in progress) (584dbae)
  • bench: Mode B 2026-10-16 progress (new build, in progress) (6544166)
  • engine: decode early-prefetched images as they arrive (99fc492)
  • README, CHANGELOG: the gap work and its measured results (6321309)
  • bench/realsites: owner-site report after the gap work (1a5d879)
  • bench/surfaces: re-run after the gap work, with sweef-cli in the CLI rows (0caaed7)
  • bench/realsites: owner-site screenshot fidelity re-run after the gap work (2e484cc)
  • bench/realsites: replay table (5 runs, median and spread) and resource use through bench/replay (397eea0)
  • bench/realsites: Mode A after the gap work (47 tasks x 3 fresh runs, live network) (e183bac)
  • engine: a frame whose load is about to start counts as loading (828e02b)
  • cmd/sweef: run the session CLI smoke test on Windows (c31a28e)
  • engine: screenshots encode PNG with one row filter, RGB when opaque (02f46a2)
  • engine: agent mode also blocks self-hosted analytics and developer-site ad networks (53a8074)
  • bench/replay: record pages with their subresources once, serve them from localhost (a233dbd)
  • sweef-cli: the session commands without the engine, in half the start time (98e4457)
  • agent, mcp: build regexps and the MCP tool table on first use, not at init (34f82f5)
  • engine: the compiled prelude is embedded; the first VM waits for a pool build in progress (4c58221)
  • agent: pages keep running between model turns in sweef agent (89b17c7)
  • engine: a headless load settles for 600 ms, not the 1.5 s action budget (7ebc9bc)
  • engine: test that precompiled modules and scripts run from their bytecode (84eabd1)
  • render: the first layout of a container-query page keeps its first pass when a second could not differ (a4b3dd3)
  • engine: compile scripts and modules on other cores as they arrive (d8d3be6)
  • bench/realsites: Mode B report shows uncached, cache-read and cache-write tokens per agent (47c330e)
  • engine: input actions drain what they started instead of a full settle (f0a07ba)
  • agent: starting page rides with the task; system prompt and tool schema cut to a quarter (3ee6ce3)
  • engine, rpc: pushState moves the tab URL; batch waits honour their timeouts (2b5de02)
  • engine: a layout forced by page script does not wait for the network (16902bc)
  • engine: prefetch only module-like import specifiers; SWEEF_CPUPROFILE for the daemon (4918703)
  • bench: Mode B re-run on the merged build, real Haiku 5.5, 40 tasks x 3 runs (Sweef 119/120, Chromium agent 119/120) (63ebb09)
  • engine: style-only mutations do not keep a headless settle from going quiet (ec8867d)
  • bench: Mode B re-run part 2 (in progress) (966e9d6)
  • engine: headless loads start image downloads when the document is parsed (5df58ee)
  • engine: a headless settle does not wait for router prefetches (09c6d16)
  • render, style: cheaper SVG scenes and stylesheet reuse across layout passes (82364f4)
  • engine: scan module sources for static imports without regexp (d50a1f0)
  • style, render: ancestor bloom filter for selector matching (9526230)
  • bench: Mode B re-run part 1 (5 tasks; run restarted under a supervisor) (22b3cca)
  • bench: Mode B re-run progress (merged build, in progress) (dca9bbf)
  • bench/surfaces: Sweef MCP/SDK/CLI vs @playwright/mcp, playwright-core, agent-browser; docs (9a7d705)
  • engine: warm VM pool builds in parallel; mcp and serve keep two VMs ready (2c2d803)
  • font: cache the system font index in the engine cache directory (b574eff)

Sweef 0.1.0-alpha.4 (alpha)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Oct 20:50
242975a

Sweef 0.1.0-alpha.4 (ALPHA)

This is an alpha release. Sweef is a young independent browser engine. Expect missing features,
sites that do not render correctly, and rough edges. Sweef offers to open such pages in your system
browser. Please do not rely on it for banking or other sensitive browsing yet.

Commit: 242975a0eff0

Install

Platform File Notes
Linux (Debian/Ubuntu) sweef_0.1.0-alpha.4_linux_<arch>.deb sudo apt install ./sweef_...deb
Linux (Fedora/openSUSE) sweef_0.1.0-alpha.4_linux_<arch>.rpm sudo dnf install ./sweef_...rpm
Linux (any) sweef_0.1.0-alpha.4_linux_<arch>.AppImage chmod +x and run
Linux (any) sweef_0.1.0-alpha.4_linux_<arch>.tar.gz, or install.sh user-level install, no root
macOS 12+ sweef_0.1.0-alpha.4_darwin_universal.dmg unsigned alpha: Gatekeeper will block it, see docs/install.md
Windows 10/11 sweef_0.1.0-alpha.4_windows_<arch>_setup.exe or .zip unsigned alpha: SmartScreen will warn (see docs/install.md)

<arch> is amd64 or arm64. Full instructions, uninstall steps and the unsigned-binary
workarounds are in docs/install.md.

Verify your download

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo sweefbrowser/sweef    # build provenance (SLSA)

Known alpha limitations

  • Installers are unsigned: macOS Gatekeeper and Windows SmartScreen will show warnings, and Linux packages are not GPG-signed.
  • No automatic updates yet: download the new version to update.
  • See the README for rendering-fidelity numbers and known gaps.

Changes

  • test(app): context-menu search test uses a local search engine, not the live site (242975a)
  • feat(engine): YouTube renders and plays (shadow DOM polyfill, Popover API, template inertness, layout and script timeout fixes) (188dc76)

Sweef 0.1.0-alpha.3 (alpha)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Oct 19:35
19b0c47

Sweef 0.1.0-alpha.3 (ALPHA)

This is an alpha release. Sweef is a young independent browser engine. Expect missing features,
sites that do not render correctly, and rough edges. Sweef offers to open such pages in your system
browser. Please do not rely on it for banking or other sensitive browsing yet.

Commit: 19b0c47b9665

Install

Platform File Notes
Linux (Debian/Ubuntu) sweef_0.1.0-alpha.3_linux_<arch>.deb sudo apt install ./sweef_...deb
Linux (Fedora/openSUSE) sweef_0.1.0-alpha.3_linux_<arch>.rpm sudo dnf install ./sweef_...rpm
Linux (any) sweef_0.1.0-alpha.3_linux_<arch>.AppImage chmod +x and run
Linux (any) sweef_0.1.0-alpha.3_linux_<arch>.tar.gz, or install.sh user-level install, no root
macOS 12+ sweef_0.1.0-alpha.3_darwin_universal.dmg unsigned alpha: Gatekeeper will block it, see docs/install.md
Windows 10/11 sweef_0.1.0-alpha.3_windows_<arch>_setup.exe or .zip unsigned alpha: SmartScreen will warn (see docs/install.md)

<arch> is amd64 or arm64. Full instructions, uninstall steps and the unsigned-binary
workarounds are in docs/install.md.

Verify your download

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo sweefbrowser/sweef    # build provenance (SLSA)

Known alpha limitations

  • Installers are unsigned: macOS Gatekeeper and Windows SmartScreen will show warnings, and Linux packages are not GPG-signed.
  • No automatic updates yet: download the new version to update.
  • See the README for rendering-fidelity numbers and known gaps.

Changes

  • fix(app): repair merged JS helpers (syntax error), context-menu undo state and delete via the new editor (19b0c47)
  • feat(app,engine): fast banded page painter, selection and clipboard (text/html), smooth scroll (6fd02ce)
  • feat(devtools): Developer Tools v1 (Console, Network, Elements, Sources, Application) (815b6b5)

Sweef 0.1.0-alpha.2 (alpha)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Oct 18:16
6eef32a

Sweef 0.1.0-alpha.2 (ALPHA)

This is an alpha release. Sweef is a young independent browser engine. Expect missing features,
sites that do not render correctly, and rough edges. Sweef offers to open such pages in your system
browser. Please do not rely on it for banking or other sensitive browsing yet.

Commit: 6eef32a18d67

Install

Platform File Notes
Linux (Debian/Ubuntu) sweef_0.1.0-alpha.2_linux_<arch>.deb sudo apt install ./sweef_...deb
Linux (Fedora/openSUSE) sweef_0.1.0-alpha.2_linux_<arch>.rpm sudo dnf install ./sweef_...rpm
Linux (any) sweef_0.1.0-alpha.2_linux_<arch>.AppImage chmod +x and run
Linux (any) sweef_0.1.0-alpha.2_linux_<arch>.tar.gz, or install.sh user-level install, no root
macOS 12+ sweef_0.1.0-alpha.2_darwin_universal.dmg unsigned alpha: Gatekeeper will block it, see docs/install.md
Windows 10/11 sweef_0.1.0-alpha.2_windows_<arch>_setup.exe or .zip unsigned alpha: SmartScreen will warn (see docs/install.md)

<arch> is amd64 or arm64. Full instructions, uninstall steps and the unsigned-binary
workarounds are in docs/install.md.

Verify your download

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo sweefbrowser/sweef    # build provenance (SLSA)

Known alpha limitations

  • Installers are unsigned: macOS Gatekeeper and Windows SmartScreen will show warnings, and Linux packages are not GPG-signed.
  • No automatic updates yet: download the new version to update.
  • See the README for rendering-fidelity numbers and known gaps.

Changes

  • ci: rerun a failed test package once on Linux (6eef32a)
  • feat(ui): right-click context menus for pages, new tab, internal pages, chrome and Sidekick (dee4642)
  • fix(ui): regenerate web.zar after the chrome.css change (994b299)
  • fix: Windows launcher name collision, double title bar, 8 MiB response cap (50d1ce7)
  • fix(app): skip UI state for pages without the sweef bridge; write crash.log for the GUI (103e3bb)

Sweef 0.1.0-alpha (alpha)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Oct 15:57
5af96f7

Sweef 0.1.0-alpha (ALPHA)

This is an alpha release. Sweef is a young independent browser engine. Expect missing features,
sites that do not render correctly, and rough edges. Sweef offers to open such pages in your system
browser. Please do not rely on it for banking or other sensitive browsing yet.

Commit: 5af96f74b4f6

Install

Platform File Notes
Linux (Debian/Ubuntu) sweef_0.1.0-alpha_linux_<arch>.deb sudo apt install ./sweef_...deb
Linux (Fedora/openSUSE) sweef_0.1.0-alpha_linux_<arch>.rpm sudo dnf install ./sweef_...rpm
Linux (any) sweef_0.1.0-alpha_linux_<arch>.AppImage chmod +x and run
Linux (any) sweef_0.1.0-alpha_linux_<arch>.tar.gz, or install.sh user-level install, no root
macOS 12+ sweef_0.1.0-alpha_darwin_universal.dmg unsigned alpha: Gatekeeper will block it, see docs/install.md
Windows 10/11 sweef_0.1.0-alpha_windows_<arch>_setup.exe or .zip unsigned alpha: SmartScreen will warn (see docs/install.md)

<arch> is amd64 or arm64. Full instructions, uninstall steps and the unsigned-binary
workarounds are in docs/install.md.

Verify your download

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo sweefbrowser/sweef    # build provenance (SLSA)

Known alpha limitations

  • Installers are unsigned: macOS Gatekeeper and Windows SmartScreen will show warnings, and Linux packages are not GPG-signed.
  • No automatic updates yet: download the new version to update.
  • See the README for rendering-fidelity numbers and known gaps.

Changes

  • ci(release): macOS packaging may fail without blocking the release (5af96f7)
  • ci(release): do not block the release on the macOS ad-hoc signature check (c458529)
  • ci(release): run the same platform-split tests as ci.yml (ff03500)
  • fix(media): MediaRecorder start/pause/resume events never trail data or stop (cd3633c)
  • chore(release): v0.1.0-alpha (373cc2a)
  • feat(intl): match Node 22 for dates, numbers, calendars and collation (0328fa5)
  • perf(size): compress embedded data and trim the release binary by 4 MiB (abc8662)
  • feat(media): MediaRecorder and BlobEvent (WebM VP8/Opus, Ogg Opus) (5015e32)
  • fix(crypto): generate RSA keys of at least 2048 bits (018e275)
  • docs(readme): binary size, Intl, voice processing, Fullscreen/Media Session/Clipboard and the MediaRecorder gap (e98109a)
  • feat(web): Intl on CLDR data, voice processing, Fullscreen and Media Session, Async Clipboard, native WebSocket (2f6e522)
  • test(app): wait for the first paint before asserting a page pixel (9c2f335)
  • test(net): give non-Linux runners a 300 ms bound for the large-page snapshot cost (e552873)
  • docs(readme): bring the claims up to date with the web platform work (fe4f700)
  • fix(media): WebCodecs gets I420 planes from H.264 and VP9 again (7171b55)
  • perf(media): real-time 1080p H.264 with frame threads, faster kernels and a fast video blit (e9c4bae)
  • fix: range check at the Atomics.wait conversion, script-URL helper for window targets, regexp loopback guard in the fidelity tool (0fd53ba)
  • fix: bound frame sizes in the CDM protocol, wrap Atomics.wait values arithmetically, loopback-only fetches in the fidelity tool (7a1f74c)
  • test(cdm): keep Widevine discovery tests away from the machine's own Chrome (1c28a80)
  • fix(engine): one host-call dispatcher per VM instead of one callback per host function (32ee325)
  • frames/popups: same-origin location reads, BroadcastChannel and storage events across windows, window.close only for script-opened windows, docs and changelog (dcbd64d)
  • EME Clear Key with CENC decryption in MSE; docs for threads, WebCodecs and EME (3997891)
  • feat(media): CDM backends for EME (Clear Key, Widevine host, PlayReady and FairPlay stubs) (92d172a)
  • fix(ui): strip markup and control characters from internal-page query parameters (d4b5fbf)
  • feat(webcodecs): VideoDecoder/Encoder, AudioDecoder/Encoder, VideoFrame, AudioData, ImageDecoder (ae8b773)
  • app: frames and popups in the desktop browser; frame policy (X-Frame-Options, frame-ancestors, schemes, agent read filter) (705ed19)
  • ci(codeql): show the source locations of each finding (08013c0)
  • engine: render and drive <iframe> documents, add window.open, popups and cross-window messaging (5ef94b7)
  • fix(ui): only numbers and known icon names reach SVG markup (86ed742)
  • style: gofmt wasm.go (98ff25a)
  • feat(wasm): threads - shared memories, atomics, and posting Modules and Memories to workers (1d463cb)
  • feat(js): cross-origin isolation, SharedArrayBuffer and Atomics across VMs (2a44929)
  • perf(canvas): move getImageData/putImageData pixels as ArrayBuffers (a1fa974)
  • fix(ui): call only settings sections from the fixed list; append strings as text (f94ade2)
  • fix(ui): guard state merges against prototype keys, append only real nodes, look up settings sections safely (aac8593)
  • fix(render): layout self-check compares geometry, not the computed-style pointer (a612039)
  • fix: escape selector strings, keep download names inside the downloads dir, block vbscript and top-level data: link navigation (d64620d)
  • fix: RPC result shapes and single first load, getComputedStyle from the cascade, variable font weight, flex abspos alignment, quirks body fill, compatMode (84e06bc)
  • ci(codeql): list findings in the job log (a9b7b00)
  • ci(security): accept the Go project's patent grant in dependency review (425c575)
  • test: make pulse path and PLI tests portable to Windows (518be1b)
  • fix(engine,render): real img load/error events and natural size, max-width:100% images in shrink-to-fit boxes (77348e1)
  • fix(audio): pure-Go PulseAudio playback on Linux so the binary stays statically linked (85bef87)
  • fix(ci): Windows: case-insensitive loopback interface filter, bounded ICE gathering in tests, shut test stores down before TempDir cleanup (e51e79f)
  • fix(style): keep case of grid area and line names (f54d8fe)
  • test(media): allow for the frames a looping clip loses at each pass (c0ddfc0)
  • fix(sync): arm persisted registrations when their origin loads, time waits from attempt start, race-free test log (7b81413)
  • docs(media): audio output and media streaming; inline event handler attributes; portable test timers (ed8fd18)
  • perf(media): resynchronise a late decoder on the newest due key frame (dd4f6cc)
  • fix(js): send request headers and binary bodies, XML documents, SVG and EME interfaces, special-scheme relative URLs (9410674)
  • fix(security): compare funcref handle as uint64 (3105136)
  • fix(security): funcref values never reach JavaScript as raw pointers (handle table) (44eac00)
  • fix(security): guard IDB key-path injection inside the loop, bound function refs; make the open/close leak test settle (f52147a)
  • perf(media): decode ahead of the clock, skip late non-reference frames, parallel H.264 deblocking (0069dec)
  • fix(security): CodeQL findings: IDB key-path prototype pollution guard, RSA key at least 2048 bits, bounded integer conversions in wasm, vbscript: iframe scheme (0d3ecaa)
  • feat(js): CompressionStream, Streams, microtask checkpoint between scripts; fix mute fade-in and pause/resume (47be1ef)
  • fix(sw): list clients in creation order so WindowClient.navigate/focus hit the right tab (95bf54d)
  • docs(storage): state partitioning policy table, frames, workers, changelog (a29bd34)
  • feat(push): chrome prompt, site info entry, settings page, sweef pushd, docs and previews (1b8fb7b)
  • feat(notify): permission prompt, site settings, Do not disturb and window hooks in the app (30d87c1)

Update manifests (machine use)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Oct 15:57
5af96f7

Rolling release holding latest.json for the auto-updater. Not a download page.