Moli Skill:AI Agent 专用的 Rust 无头浏览器,按需渲染为何成为浏览器 Agent 新范式
Moli 是一个专为 AI Agent 打造的 Rust 编写的无头浏览器,核心创新是”结构优先、按需渲染”架构——大多数自动化请求不需要视觉渲染,Moli 只在真正需要时才触发布局和绘制,大幅降低资源消耗。9 月初登 GitHub Trending 日榜,单周增长 +475 星,是当前浏览器 Agent 赛道增速最快的开源项目之一。
功能与设计原则
Moli 解决的是 AI 浏览器 Agent 的一个根本痛点:传统方案(无头 Chrome)为每个 Agent 维护一个持续渲染的完整浏览器状态,成本极高。Moli 的设计原则是DOM/样式状态为单一真相来源,布局和像素只在 Agent 明确需要时才生成。
三个核心能力:
– 完整 Web 运行时:流式 HTML 解析、原生 DOM、V8 JavaScript(模块/定时器/微任务/事件)、iframe 和 workers、CSS 级联、Fetch/XHR/WebSocket、Cookie、WebCrypto、本地存储
– 提取优化输出:CLI 直出 HTML、Markdown、JSON、语义文本树,支持 selector/script/response 等待和网络追踪
– 统一自动化二进制:CDP、WebDriver Classic、WebDriver BiDi 共享同一内核,无需单独 ChromeDriver 或浏览器安装
认可度
截至 2026-09-18,Moli 在 GitHub 约有 1,700 星(9 月初 ~1,699 星,9 月中旬 AISignal 记录 966 星,趋势仍在上升),51 个分支,Apache-2.0 开源许可。2026-09-04 登 GitHub AI Agent Trending 日榜,9 月单周增长 +475 星。Discord 社区活跃(discord.gg/4eXGtdWWnq)。
链接
GitHub:https://github.com/lexmount/moli
原作者
lexmount(GitHub username),Moli 是 Lexmount 公司的开源产品;Lexmount Browser 是基于 Moli 的托管云运行时和控制平面,开源版本完全可独立使用。
介绍
Moli 诞生于 2026-08-10,本质是一个生产可用的无头浏览器,专门为 AI Agent 场景优化。传统无头浏览器方案(如 Puppeteer/Playwright 驱动无头 Chrome)为每个 Agent 维护持续渲染状态,成本高昂。Moli 采用了截然不同的思路:结构优先,像素按需。
其核心是 On-Demand Layout & Rendering 架构:默认模式(LayoutPolicy::Mock)提供确定性几何信息,不触发真实布局或绘制;只有在使用 --layout 显式启用后,才会执行真实布局、几何计算、坐标输入、截图和 DevTools 屏幕录制。这种按需触发的成本模型尤其适合爬虫、browser-use Agent、信息检索管道、评估环境和强化学习等工作负载。
同一二进制同时支持 CDP、WebDriver Classic 和 WebDriver BiDi 三种协议,Playwright 可直接通过 CDP 连接,无需额外部署浏览器或驱动程序。
特点
- Rust 编写,性能优异:编译为单一静态二进制,Linux/macOS/Windows 全平台支持,无需运行时依赖
- 按需渲染,成本模型最优:大多数 Agent 请求只需页面结构,从不触发布局或绘制;截图/PDF 等视觉操作显式 opt-in,避免持续资源消耗
- 提取优化,直出 AI 友好格式:CLI 一行命令输出 Markdown、语义树、HTML、JSON,无需二次解析
- 三种自动化协议统一:CDP + WebDriver Classic + WebDriver BiDi,Playwright/Puppeteer/Selenium 生态零迁移成本接入
- 真实视觉能力按需开启:添加
--layout即获得完整盒模型计算、坐标输入、截图、DevTools 屏幕录制;布局是快照而非持续状态,无状态累积开销
使用方法
安装(Linux/macOS):
curl --proto '=https' --tlsv1.2 -fsSL
https://github.com/lexmount/moli/releases/latest/download/moli-installer.sh | sh
安装(Windows PowerShell):
powershell -ExecutionPolicy ByPass -c "irm https://github.com/lexmount/moli/releases/latest/download/moli-installer.ps1 | iex"
基础页面抓取(输出 Markdown):
moli fetch
--dump markdown
--wait-until done
https://example.com
语义树输出(AI 最优格式):
moli fetch
--dump semantic_tree_text
--wait-selector body
https://example.com
截图模式:
moli fetch --layout --dump screenshot https://example.com > page.png
启动自动化服务(供 Playwright 等调用):
moli serve
# 或启用完整布局能力
moli serve --layout
使用场景与人群
适用场景:
– AI 浏览器 Agent 的底层运行时(browser-use、OpenBot 等)
– 网页内容抓取与提取(Markdown/HTML/JSON 多格式输出)
– Web 自动化测试与监控
– 信息检索管道和 RAG 数据采集
– 强化学习环境中的浏览器交互
目标用户:
– 开发 AI 浏览器 Agent 的工程师
– 构建爬虫/数据采集系统的开发者
– 需要为 Agent 提供可靠浏览器能力的框架作者
输入与输出案例
案例 1:页面 Markdown 提取
输入命令:
moli fetch --dump markdown --wait-until done https://example.com
输出(部分):
# Example Domain
This domain is established to be used for illustrative examples in...
**输出格式**:干净 Markdown,无多余标签,AI 可直接使用
案例 2:Playwright CDP 直连
import { chromium } from "playwright";
const browser = await chromium.connectOverCDP("http://127.0.0.1:9222");
const context = browser.contexts()[0];
const page = context.pages()[0] ?? await context.newPage();
await page.goto("https://example.com");
console.log(await page.locator("body").innerText());
await browser.close();
**输出**:纯文本内容,Agent 可直接处理,无需维护完整 Chrome 实例
GitHub: https://github.com/lexmount/moli
评论区
登录后可评论。