BrowserOS:基于Chromium内核的开源AI浏览器操作系统深度解析
1. 项目概述:当浏览器遇上AI智能体
如果你和我一样,每天的工作都离不开浏览器——查资料、填表单、监控数据、在各种SaaS工具间来回切换,那你肯定也幻想过:要是浏览器自己能“看懂”网页,能“理解”我的指令,然后自动把那些重复、繁琐的点击、输入、复制粘贴的活儿给干了,该多好。
过去,这得靠写浏览器插件,或者用Puppeteer、Playwright这类自动化框架写脚本。门槛不低,维护起来也麻烦,网页结构一变,脚本可能就“瞎”了。现在,AI大模型的语言理解能力,让“用自然语言指挥浏览器”这件事从科幻走进了现实。市面上也出现了一些集成AI的浏览器,比如主打搜索的Perplexity,或者需要订阅的ChatGPT Atlas。但它们大多是闭源的“黑盒”,你的数据流向、模型选择,往往不由你做主。
这就是我今天想跟你深入聊聊的BrowserOS。它不是一个简单的“AI浏览器插件”,而是一个从Chromium内核层面进行改造的、开源的、隐私优先的浏览器操作系统。它的核心目标很明确:让你能用最自然的方式(说话或打字),指挥一个AI智能体(Agent)在浏览器里替你完成任务,并且所有数据处理,优先在你的本地机器上完成。
你可以把它理解为一个“Chromium Pro Max”版本。它继承了Chromium所有的性能和兼容性,同时植入了强大的AI Agent平台。这个Agent拥有超过53种浏览器自动化工具,能从“导航到某个网址”这种基础操作,到“提取这个表格里所有价格大于100美元的产品名称和链接”这种复杂任务。更关键的是,它支持MCP(Model Context Protocol),这意味着你可以从Claude Code、Cursor这类AI编程助手的聊天窗口里,直接向BrowserOS发号施令,实现开发工作流的深度自动化。
我花了一周时间,在macOS和Linux上深度体验了BrowserOS,从安装配置、连接各种AI后端(云端API和本地Ollama)、编写工作流,到通过CLI进行集成。下面,我就把我摸索清楚的核心逻辑、实操步骤、以及那些官方文档没细说但至关重要的“坑”和技巧,毫无保留地分享给你。
2. 核心设计思路:为何是“OS”而不仅是“浏览器”?
初次看到“BrowserOS”这个名字,你可能会觉得有点夸大其词。但深入使用后,我发现它的野心确实不止于做一个带AI功能的浏览器。它的设计思路清晰地体现在以下三个层面,这也能帮你理解它和普通浏览器的本质区别。
2.1 内核级集成:AI作为一等公民
大多数AI浏览器功能是通过扩展(Extension)实现的。扩展运行在沙盒中,权限和性能受限,与浏览器核心的交互需要经过复杂的API桥接,存在延迟和功能壁垒。
BrowserOS走了另一条路:直接分叉(Fork)Chromium。这意味着开发团队可以直接修改浏览器底层的C++代码。这种内核级集成带来了几个决定性优势:
- 无与伦比的性能与权限:AI Agent可以直接调用底层的Chrome DevTools Protocol (CDP),实现近乎零延迟的页面操作、DOM访问和网络请求拦截。它不需要像普通扩展那样,通过
chrome.tabs.executeScript来注入脚本,动作更流畅,能力也更底层。 - 统一的隐私模型:由于AI模块是内核的一部分,它可以更容易地实现“数据不出设备”的承诺。所有页面内容解析、数据处理都在浏览器进程内部完成,只有当用户明确选择使用云端AI(如GPT-4)时,必要的提示词(Prompt)才会被加密发送。对于本地模型(如通过Ollama),数据循环完全封闭在本地。
- 深度UI融合:你会发现BrowserOS的侧边栏、垂直标签页、AI聊天界面与浏览器本身浑然一体,不像一个后来安装的插件那样有割裂感。这种体验上的流畅性,源于其原生应用的开发模式。
注意:内核级修改也带来了更高的维护成本。BrowserOS团队需要持续跟进Chromium上游的更新,并重新应用自己的补丁。对于用户而言,这意味着你可能无法像安装普通扩展那样,在任何Chrome上使用BrowserOS的全部能力,你必须使用他们构建的独立浏览器应用。
2.2 平台化与连接器:MCP的核心角色
BrowserOS最具前瞻性的设计之一是全面拥抱MCP(Model Context Protocol)。MCP可以理解为AI模型(如Claude、GPT)与外部工具(如浏览器、文件系统、数据库)之间的一个标准化“插座”协议。
在BrowserOS的架构里,浏览器本身就是一个功能强大的MCP服务器。这个服务器向外暴露了50多个定义良好的“工具”(Tools),比如navigate_to_url,click_element,extract_text等。任何兼容MCP的客户端(比如Claude Desktop、Claude Code,甚至是未来其他AI助手)都可以连接到这个服务器,从而获得操控浏览器超能力。
这彻底改变了人机交互范式:
- 传统模式:你 -> 浏览器(手动操作)。
- AI插件模式:你 -> AI聊天框(输入指令)-> AI理解 -> 调用浏览器插件API -> 操作浏览器。
- BrowserOS MCP模式:你 -> Claude Code(直接输入“帮我总结这个页面的要点”)-> Claude Code通过MCP协议调用BrowserOS的
get_page_content和summarize工具 -> 结果直接返回到你的代码编辑器旁。
这种设计的好处是解耦和专业化。BrowserOS专注于做好“浏览器自动化工具库”这件事,并把它标准化成MCP服务。而AI模型(无论云端还是本地)则专注于理解和规划任务。你可以用最强的模型(如Claude 3.5 Sonnet)来规划复杂的多步骤操作,而BrowserOS负责可靠地执行每一步。你甚至可以在一个工作流中,让不同的模型负责不同的步骤。
2.3 本地优先与模型中立:你的数据,你的选择
隐私是BrowserOS的核心卖点,但它并非通过“阉割”功能来实现,而是通过提供丰富的、可控的连接选项。
- 本地模型(Ollama/LM Studio):这是隐私的终极形态。你可以在本地机器上运行Llama 3、Qwen等开源模型,BrowserOS的Agent将完全使用本地模型进行思考、规划和内容生成。所有网页数据、你的指令,100%不会离开你的电脑。这对于处理敏感的内部文档、机密数据或单纯注重隐私的用户来说是必选项。
- 自带密钥(BYOK - Bring Your Own Key):如果你需要更强大的云端模型能力(如GPT-4o的分析能力、Claude的长上下文),你可以直接填入自己的OpenAI、Anthropic、Google AI Studio等平台的API密钥。数据流向是透明的:提示词和页面相关上下文会发送到你指定的API端点。
- OAuth集成:对于像ChatGPT Plus、GitHub Copilot这类订阅制服务,BrowserOS提供了官方的OAuth登录流程。你无需暴露API密钥,通过官方授权即可使用这些服务。
这种“模型中立”的策略给了用户最大的灵活性。你完全可以根据任务敏感性、对模型能力的需求以及成本考量,在同一个BrowserOS实例中动态切换不同的AI后端。例如,用本地模型处理日常网页摘要,用GPT-4处理复杂的逻辑分析任务。
3. 从零开始:安装、配置与初体验
理论说再多,不如亲手装一遍。BrowserOS的安装过程已经做得相当友好,但其中一些配置细节决定了你后续的使用体验是否顺畅。
3.1 跨平台安装与数据迁移
访问BrowserOS官网的下载页面,选择对应你操作系统的安装包。目前它支持macOS (dmg)、Windows (exe)、Linux (AppImage和.deb包)。我分别在macOS和Ubuntu 22.04上进行了安装。
- macOS:下载dmg文件后,拖拽安装即可。首次打开时会遇到macOS标准的安全提示,需要在“系统设置”->“隐私与安全性”中允许运行。之后,BrowserOS会引导你进行初始设置。
- Linux (Debian/Ubuntu):使用
.deb包安装最方便。下载后,通过命令行安装:
安装后,可以在应用菜单中找到它。Linux版的一个小优点是,它通常能更好地集成到本地桌面环境中。sudo dpkg -i BrowserOS.deb # 如果提示依赖问题,运行 sudo apt-get install -f
安装完成后,首次启动会有一个非常贴心的数据导入向导。它可以直接从你现有的Chrome、Edge、Firefox或Brave浏览器中导入书签、保存的密码、历史记录甚至已安装的扩展(部分兼容)。这个过程是无损的,让你能几乎无缝地从旧浏览器过渡到BrowserOS,不用担心丢失任何重要数据。
实操心得:建议在导入扩展时有所选择。BrowserOS基于Chromium,对Chrome扩展的兼容性极佳。但一些深度修改浏览器UI或需要特殊权限的扩展,可能与BrowserOS自身的侧边栏、垂直标签页等功能产生冲突。我的做法是:先导入基础必备扩展(如密码管理器、翻译工具),观察BrowserOS运行稳定后,再按需手动安装其他扩展。
3.2 连接AI大脑:配置LLM提供商
数据导入后,就进入了核心环节——为BrowserOS配置“大脑”。点击浏览器侧边栏的AI图标(或按快捷键Cmd/Ctrl + I),会打开AI助手面板。在设置中,找到“LLM提供商”选项。
1. 配置云端API(以OpenAI为例)这是最快捷的方式,能立刻体验到强大的AI能力。
- 前往
platform.openai.com,登录后进入API Keys页面,创建一个新的密钥。 - 在BrowserOS的LLM提供商设置中,选择“OpenAI”。
- 将生成的API密钥粘贴进去。你还可以指定使用的模型(如gpt-4o, gpt-4o-mini)。
- 高级设置中,可以配置API基础URL(如果你使用代理或Azure OpenAI端点)、上下文长度和温度等参数。
2. 配置本地模型(以Ollama为例)这是实现完全本地化、隐私保护的关键步骤。
- 首先,安装并运行Ollama。前往Ollama官网,根据你的操作系统下载安装。安装后,在终端运行
ollama serve启动服务。默认会在localhost:11434提供API。 - 拉取模型。在另一个终端,运行
ollama pull llama3.2:3b(这是一个较小的模型,适合快速测试)。你也可以拉取更大的模型,如llama3.1:8b或qwen2.5:7b,但这需要足够的硬件资源(建议16GB以上内存)。 - 在BrowserOS中配置。在LLM提供商列表中选择“Ollama”。
- 通常,它会自动检测到本地的
http://localhost:11434。如果Ollama运行在其他地址或端口,手动修改即可。 - 在“模型”下拉框中,你应该能看到你刚刚拉取的模型(如
llama3.2:3b)。选择它。
3. 体验OAuth集成(以ChatGPT Plus为例)如果你有ChatGPT Plus订阅,可以使用更便捷的OAuth方式。
- 在LLM提供商中选择“ChatGPT Pro/Plus”。
- 点击“连接”按钮,会弹出一个授权页面,引导你登录OpenAI账户并授权BrowserOS访问。
- 授权成功后,你就可以直接在BrowserOS中使用GPT-4o等高级模型,而无需管理API密钥,计费方式与你直接使用chatgpt.com网站一致。
配置完成后,你可以在AI助手面板的下拉菜单中快速切换不同的AI提供商。例如,让一个简单的页面总结任务由本地的Llama 3执行,而让一个需要深度推理的代码分析任务交给GPT-4o。
3.3 初试牛刀:你的第一个AI自动化指令
配置好AI大脑后,让我们完成第一个自动化指令,感受一下它的威力。
- 打开一个新闻网站,比如
techcrunch.com。 - 激活AI助手面板(
Cmd/Ctrl + I)。 - 输入一个自然语言指令,例如:“请帮我列出当前首页上所有文章的标题,并总结今天科技领域的主要话题趋势。”
- 观察Agent的执行。BrowserOS的AI Agent会开始工作:
- 规划:它首先会“思考”,将你的指令拆解成步骤:“1. 获取页面所有文章标题元素。2. 提取文本。3. 分析文本,归纳主题。”
- 执行:你会看到浏览器自动滚动、高亮某些元素(这是它在定位和识别),整个过程是可视化的。
- 输出:最终,结果会以清晰的结构呈现在聊天窗口中,包括列表和总结。
这个简单的例子展示了Agent的核心能力:理解意图、规划步骤、调用工具(如提取文本)、生成结构化输出。它不再是一个简单的“网页内容提取器”,而是一个能根据你的目标进行推理和执行的数字助手。
4. 核心功能深度解析与实战应用
BrowserOS的功能相当丰富,远不止一个聊天式的AI助手。下面我挑几个最能体现其“操作系统”级能力的核心功能,结合具体场景,带你深入掌握。
4.1 AI Agent与53+自动化工具:超越宏录制
BrowserOS的AI Agent内置了超过53种工具(Tools)。这些工具是Agent与浏览器世界交互的“手”和“眼”。它们大致可分为几类:
- 导航与标签页:
navigate,go_back,new_tab,switch_tab,close_tab。 - 页面交互:
click,type_text,scroll,hover,press_key。 - 内容提取:
get_page_content,find_element(by CSS/XPath/text),extract_table,screenshot。 - 状态判断:
wait_for_element,check_url,get_cookies。 - 文件与系统(通过Cowork功能):
read_file,write_file,list_directory。
关键点在于:这些工具可以被AI模型动态组合和调用,以完成复杂任务。这与传统的浏览器自动化(如Selenium脚本或宏录制)有本质区别。传统自动化是确定性的:你预先写好“点击A,然后输入B,再点击C”。一旦页面结构(A、B、C的定位器)发生变化,脚本就失败了。
而BrowserOS的Agent是适应性的。当你下达指令“在这家电商网站搜索‘无线耳机’并按价格从低到高排序”时,Agent会:
- 理解“这家电商网站”指的是当前标签页。
- 理解“搜索”意味着要找到一个搜索框(可能是
<input>带placeholder='搜索',或一个按钮图标)。 - 它使用
find_element工具,结合对网页布局的通用理解,去定位搜索框,而不是依赖一个固定的CSS路径。 - 找到后,调用
type_text和press_key(Enter)进行搜索。 - 在结果页,它需要理解“排序”功能,可能是一个下拉菜单或按钮,再次定位并交互。
实战场景:自动化周报数据收集假设你每周需要从三个内部仪表盘(Grafana、内部CRM、Google Analytics)截图,并保存到本地指定文件夹。
- 传统方式:手动打开三个网页,调整视图,分别截图,命名,保存。枯燥且易错。
- BrowserOS方式:
- 在AI面板输入:“请依次打开我书签栏‘周报数据源’文件夹里的三个链接,等待每个页面加载完全后,对可视区域进行截图,并以‘日期_数据源名.png’的格式保存到‘~/WeeklyReports/’文件夹。”
- Agent会规划步骤:读取书签、循环导航、等待加载、截图、调用Cowork文件工具保存。
- 你甚至可以将其设置为定时任务(Scheduled Tasks),每周一上午9点自动运行。
4.2 MCP服务器集成:在IDE中操控浏览器
这是对开发者而言最具革命性的功能。通过MCP,你可以让你最喜欢的AI编程助手(如Claude Code)直接控制BrowserOS。
配置步骤:
- 安装BrowserOS CLI。这是连接的关键桥梁。打开终端,运行安装脚本:
# macOS/Linux curl -fsSL https://cdn.browseros.com/cli/install.sh | bash # Windows (Powershell) irm https://cdn.browseros.com/cli/install.ps1 | iex - 初始化CLI。确保BrowserOS浏览器正在运行,然后在终端执行:
这个命令会自动发现本地运行的BrowserOS实例,并建立连接。browseros-cli init - 配置Claude Desktop/Code。你需要编辑Claude的MCP配置文件。配置文件通常位于:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
- 在配置文件的
mcpServers部分添加BrowserOS服务器:{ "mcpServers": { "browseros": { "command": "browseros-cli", "args": ["mcp"], "env": {} } } } - 重启Claude Desktop或Claude Code。
实战场景:开发调试自动化现在,你可以在Claude Code的聊天窗口中直接操作浏览器。
- 你可以说:“在BrowserOS里打开
localhost:3000,点击那个蓝色的‘登录’按钮,然后在控制台里看看有没有错误日志。” - Claude Code会通过MCP协议,向BrowserOS发送指令序列。BrowserOS执行后,将结果(如控制台日志)返回给Claude Code,并显示给你。
- 这极大地简化了E2E测试和爬虫脚本编写的过程。你可以用自然语言描述测试用例或数据提取规则,让AI生成并执行可重复的浏览器操作序列,甚至可以将这些序列保存为工作流。
4.3 可视化工作流构建:无需代码的自动化蓝图
对于非开发者,或者希望将复杂自动化流程固化、分享的用户,BrowserOS的工作流功能是神器。它提供了一个低代码的图形化界面,让你通过拖拽节点的方式来构建自动化序列。
一个典型的工作流可能包含以下节点类型:
- 触发器:手动运行、定时任务、网页更新时。
- AI指令:执行一个自然语言指令。
- 浏览器操作:导航、点击、提取等具体工具。
- 条件判断:如果...那么...否则...
- 数据处理:文本处理、JSON转换。
- 文件操作(Cowork):读写文件。
- HTTP请求:调用外部API。
实战场景:竞品价格监控工作流
- 触发器:设置为每天上午10点。
- AI指令节点:“导航到竞品A的产品页,提取当前价格和库存状态。”
- 浏览器操作节点:将上一步提取的数据保存到变量
price_a。 - AI指令节点:“导航到竞品B的产品页,提取当前价格。”
- 浏览器操作节点:保存数据到变量
price_b。 - 条件判断节点:如果
price_a < price_b,则执行分支A,否则分支B。 - 分支A(我们更便宜):AI指令节点“给我写一封邮件草稿,主题是‘价格优势确认’,内容包含我们的价格和竞品价格对比”。接着,文件操作节点将草稿保存到
~/Marketing/PriceAlerts/今天日期.md。 - 分支B(我们更贵):AI指令节点“给我写一个降价策略建议”。同样保存为文件。
构建完成后,这个工作流就可以每天自动运行,为你生成报告。工作流还可以导出/导入,方便在团队内共享复杂的自动化流程。
4.4 Cowork:打通浏览器与本地文件的任督二脉
Cowork功能看似简单,却极大地扩展了Agent的能力边界。它允许AI Agent访问你本地文件系统的特定目录(需要你授权)。这意味着浏览器自动化不再是一个信息孤岛。
应用模式:
- 研究并归档:让Agent浏览一系列网页,总结内容,然后将总结自动写入一个本地的Markdown或Word文档。
- 数据提取与格式化:从网页抓取表格数据,清洗后保存为本地CSV或JSON文件,供Excel或Python脚本进一步分析。
- 批量处理:读取本地一个包含URL列表的文本文件,让Agent依次访问每个URL并执行相同操作(如截图、提取信息),结果保存回本地。
安全提示:授权Cowork目录时,请遵循最小权限原则。不要授权整个用户主目录。最好专门创建一个目录(如
~/BrowserOS_Workspace)用于此类交互,以隔离潜在风险。
5. 进阶配置、问题排查与性能调优
当你开始依赖BrowserOS处理重要任务时,稳定性、性能和问题排查就变得关键。以下是我在实际使用中积累的一些经验。
5.1 模型选择与性能平衡
AI Agent的表现很大程度上取决于背后LLM的能力。你需要根据任务类型和硬件条件做权衡:
| 任务类型 | 推荐模型类型 | 理由与配置建议 |
|---|---|---|
| 简单提取与导航 | 小参数本地模型 (e.g., Llama 3.2 3B, Qwen2.5 1.5B) | 对复杂推理要求低,响应快,完全本地,隐私无忧。在Ollama中确保使用-ngl参数将部分层卸载到GPU(如有)以提升速度。 |
| 复杂多步骤规划 | 中等/大参数云端模型 (e.g., GPT-4o, Claude 3.5 Sonnet) | 需要较强的逻辑分解和上下文理解能力。云端API延迟是主要瓶颈,但规划准确性高。在BrowserOS设置中调低“思考温度”(Temperature)至0.1-0.3,使输出更确定。 |
| 长文本分析与总结 | 长上下文模型 (e.g., Claude 3.5 200K, Kimi) | 处理长文章、复杂文档时优势明显。注意:BrowserOS传递给模型的页面内容可能经过精简,确保在AI提供商设置中开启了“发送完整页面”选项(如果可用)。 |
| 代码相关操作 | 代码专用模型 (e.g., Qwen Coder, GitHub Copilot) | 当自动化任务涉及与代码仓库(如GitHub)、代码编辑器网页交互时,代码模型理解更精准。可通过OAuth连接GitHub Copilot。 |
一个混合策略:在BrowserOS中配置多个LLM提供商。在AI面板的“高级设置”中,可以设置默认提供商。对于特定任务,你可以在输入指令时通过@模型名语法来指定使用哪个模型。例如:“@llama3.2 总结这个页面” 或 “@gpt-4o 分析这个图表背后的数据趋势”。
5.2 常见问题与排查指南
即使设计得再完善,在实际复杂多变的网络环境中也会遇到问题。下面是一个快速排查清单:
| 问题现象 | 可能原因 | 排查步骤与解决方案 |
|---|---|---|
| AI Agent无响应或报错 | 1. LLM提供商连接失败。 2. 页面内容过于复杂,超出模型上下文。 3. 指令歧义。 | 1. 检查API密钥是否有效、额度是否充足(云端模型)。检查Ollama服务是否运行 (ollama list)。2. 尝试简化指令,或使用“提取主要内容”工具先获取精简文本。 3. 将指令拆分成更小、更明确的步骤。 |
| MCP连接失败(Claude Code无法控制) | 1. BrowserOS未运行或CLI未连接。 2. Claude配置错误。 3. 防火墙/端口阻止。 | 1. 确保BrowserOS在运行,并执行browseros-cli status查看连接状态。2. 仔细检查Claude的MCP配置文件JSON格式是否正确,路径无误。 3. 确认 browseros-cli使用的端口未被其他程序占用。 |
| 自动化操作失败(点击错位置) | 1. 页面动态加载,元素未就绪。 2. AI对元素的定位识别有误。 | 1. 在指令中明确加入“等待页面完全加载”或“等待那个XX按钮出现”。Agent内置的wait_for_element工具可以处理。2. 使用更精确的描述,如“点击那个写着‘提交订单’的蓝色按钮”,而不是“点击提交按钮”。可以结合使用“录制模式”(部分版本提供),手动操作一遍让Agent学习。 |
| Cowork文件操作权限错误 | 1. 授权目录路径错误或不存在。 2. 操作系统文件权限限制。 | 1. 在BrowserOS设置中重新检查并授权Cowork目录,使用绝对路径。 2. 在Linux/macOS上,检查目录的读写权限 ( ls -la)。 |
| 浏览器本身卡顿或崩溃 | 1. 内存占用过高(特别是开很多标签页+运行大模型)。 2. 与某个特定扩展冲突。 | 1. 利用BrowserOS的垂直标签页和休眠标签页功能管理资源。定期重启浏览器。 2. 尝试在无痕模式下运行,或禁用非核心扩展进行排查。 |
5.3 隐私与安全强化设置
BrowserOS以隐私为首要原则,但你还可以通过以下设置让它更安全:
- 严格的内容控制:在设置 -> 隐私与安全中,你可以严格控制哪些网站可以访问摄像头、麦克风、位置等。鉴于BrowserOS的自动化能力,建议默认全部禁止,按需开启。
- 清除数据设置:设置关闭浏览器时自动清除特定数据(如缓存、Cookie)。但注意,这可能会影响需要登录的网站自动化流程。一个折中方案是使用不同的浏览器配置文件,一个用于敏感的自动化任务(严格清除),一个用于日常浏览。
- 网络审查:BrowserOS内置了基于uBlock Origin的广告拦截,且支持Manifest V2扩展(比Chrome的V3更强大)。你可以订阅额外的隐私过滤列表,并启用“严格阻止跟踪器”选项。
- 审计AI活动:所有AI Agent的执行历史都可以在侧边栏的“活动”日志中查看。定期检查这里,可以了解AI具体执行了哪些操作,访问了哪些数据,做到心中有数。
6. 开发者视角:扩展与贡献
BrowserOS是开源项目,这对于开发者来说意味着你可以深度定制,甚至为其添砖加瓦。
6.1 基于Agent SDK进行二次开发
如果你有更定制化的自动化需求,或者想将BrowserOS的自动化能力集成到自己的Node.js应用中,可以使用其官方发布的@browseros-ai/agent-sdkNPM包。
这个SDK提供了以编程方式控制Agent的能力。一个简单的示例:
import { BrowserOSClient } from '@browseros-ai/agent-sdk'; async function scrapeProductPrices(url) { // 连接到本地运行的BrowserOS实例 const client = new BrowserOSClient({ // 默认连接到 localhost:3000 (BrowserOS的MCP服务器端口) }); await client.connect(); // 执行一个复杂的多步骤任务 const result = await client.runAgent({ instruction: `Navigate to ${url}, find all products with class "product-item", extract the name and price, and return as JSON.`, // 可以指定使用的模型 model: 'claude-3-5-sonnet', }); console.log(JSON.parse(result.content)); await client.disconnect(); } scrapeProductPrices('https://example-store.com');这为构建复杂的、与业务系统集成的自动化流水线提供了可能。比如,结合你的CRM系统,自动从客户网站抓取最新信息并更新客户档案。
6.2 为BrowserOS贡献代码
项目采用Monorepo结构,主要分为两大部分:
packages/browseros/:这是Chromium分叉的构建部分,涉及C++和Python。修改这里可以改变浏览器的底层行为,但构建环境复杂,需要约100GB磁盘空间。packages/browseros-agent/:这是Agent平台,包括MCP服务器、扩展UI、CLI等,主要用TypeScript和Go编写。这是大多数功能贡献的入口。
如果你想修复一个bug或添加一个新功能(比如一个新的MCP工具),通常的路径是:
- Fork项目仓库。
- 在
packages/browseros-agent/apps/server/src/tools/目录下创建新的工具定义文件。工具需要遵循MCP的协议规范。 - 在
apps/agent/中更新前端UI(如果需要)。 - 在
apps/cli/中更新命令行接口(如果需要)。 - 编写测试,并确保代码风格一致。
- 提交Pull Request。
项目有详细的贡献指南和活跃的Discord/Slack社区,开发团队对贡献非常欢迎,尤其是在Hacktoberfest等活动期间。
经过这一周的深度使用,BrowserOS给我的感觉更像是一个面向未来的“人机协作界面”,而不仅仅是一个浏览器。它将AI Agent从云端拉到了本地,将自动化从脚本提升到了语义理解,并通过MCP协议将其能力开放给了整个AI工具生态。它的学习曲线存在,主要在于理解其“本地优先”、“模型中立”、“平台化”的设计哲学,以及如何根据任务匹配合适的AI后端。
对于重度浏览器用户、经常处理重复性网页操作的知识工作者、以及希望将AI深度融入工作流的开发者来说,BrowserOS提供了一个强大且隐私友好的新选择。它可能不会完全取代你手头的Chrome或Edge,但一定会成为你处理特定自动化任务时不可或缺的利器。我个人的工作流已经离不开它了,尤其是通过Claude Code直接操控浏览器进行调试和数据收集,效率提升是实实在在的。如果你对AI和自动化感兴趣,花点时间配置和摸索一下BrowserOS,很可能会为你打开一扇新的大门。
