Urgent.News

What's breaking now, across thousands of outlets.

Tech

Moli treats browser layout as a disposable snapshot for AI agents

My reading of the moli README is that its central bet concerns when a browser does visual work. It ships a full rendering stack, yet by default it runs no real layout or paint at all. Geometry comes back mocked unless you pass --layout , and even with that flag on, layout is a snapshot the browser builds, freezes, and holds only until the next rebuild. If your agent reads pages instead of looking…

Moli, a browser kernel developed by Lexmount, operates on the principle of treating browser layout as a disposable snapshot for AI agents. Instead of rendering visual content continuously, Moli only builds and freezes a layout tree when necessary, such as when an agent reads a page or clicks on elements. The browser stack includes libcurl for network transport, html5ever for HTML parsing, V8 for JavaScript, Servo/Stylo for selectors and cascade, Taffy and Parley for layout, and AnyRender/Vello with usvg for software rendering.

By default, Moli's request table directly accesses runtime state without triggering layout or paint. The LayoutPolicy::Mock default offers deterministic geometry without actual layout or paint, while LayoutPolicy::OnDemand enables real layout calculations only for specific operations like querying element boxes or sending coordinate input.

Screenshot capturing rebuilds the frozen tree and renders a fresh frame, discarding paint state afterward. The architecture discards the working tree, layout caches, and paint state after each refresh to maintain efficiency. Moli serves CDP, WebDriver Classic, and WebDriver BiDi protocols through a single endpoint, eliminating the need for separate browser installations.

The tool offers various dump targets, including Markdown, semantic tree, and screenshots. Benchmarking shows Moli's performance closely matching Chrome Headless in terms of median time and success rate, with lower memory usage and faster CDP ready times. Moli is suitable for crawling, browser-use agents, retrieval pipelines, evaluation environments, and reinforcement-learning workloads that don't rely heavily on screenshots.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Your README's demo link is dead and nobody told you.

Launch day. Your README is live, the demo link everyone clicks first goes nowhere — the repo moved, the docs page got renamed, nobody noticed during review. Link rot is quiet until it isn't.

  • README's demo link was dead
  • Link rot went unnoticed
  • md-link-check reveals broken links

The 12 HTML checks my accessibility scanner runs — and what each one can't see

The 12 HTML checks my accessibility scanner runs — and what each one can't see I build AuditReady, an accessibility scanner that runs 12 deterministic checks over a page's HTML and turns the findings…

  • The scanner performs 12 HTML checks on webpages
  • Each check verifies specific WCAG 2.2 criteria
  • Automated tools can't catch all WCAG issues

I Wanted YouTube's Simplicity in VLC — So I Built My Own Media Player

I Wanted YouTube's Simplicity in VLC — So I Built My Own Media Player I use VLC because it plays almost everything. MKV. MP4. WebM. AVI. MOV. Multiple audio tracks. Subtitles. You name it.

  • Author created "Simple YT Style Player" seeking YouTube-like simplicity in VLC
  • Media player supports MKV, MP4, WebM, AVI, MOV formats with audio/subtitle customization
  • Lightweight, open-source design functions as native app on Windows, Android, mobile

Summing RSS Is Not Your WSL2 Memory Usage

Task Manager says "VmmemWSL" is holding 8 GB, while inside Ubuntu, "htop" shows something closer to 2 GB. At first, the difference is difficult to interpret because both numbers look perfectly…

  • Task Manager shows 8 GB memory used by VmmemWSL
  • Htop inside Ubuntu reports around 2 GB memory usage
  • RSS values from multiple processes do not equal WSL2 memory usage

More from Thursday 1 October →