浏览器扩展 活跃维护

nanobrowser

nanobrowser/nanobrowser

用于网页自动化的开源人工智能代理。使用您真实登录的浏览器来自动化日常任务。

14223
Stars 标星
1521
Forks 分支
69
Watchers 关注
51
Open Issues
TypeScript
主要语言
Apache-2.0
开源协议
2.3 MB
仓库大小
9 天前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:nanobrowser/nanobrowser
git clone https://github.com/nanobrowser/nanobrowser.git
git clone git@github.com:nanobrowser/nanobrowser.git
README.md master

机器翻译正文由机器翻译自项目原始文档(英文),排版经程序统一处理,可能存在偏差,请以原项目仓库为准。


🌐 纳米浏览器

Nanobrowser 是一个开源 AI 代理,它可以在你自己的浏览器中工作。在侧边栏告诉它一个任务;它会阅读网页,点击、输入并在标签页之间切换以完成任务,并在提交、发送、删除或上传任何内容之前征求你的同意。

⬇️ 免费获取 Chrome 网上应用店的 Nanobrowser

👏 加入 Discord | X 社区

❤️ 通过 赞助我们 支持该项目。每一份贡献都帮助 Nanobrowser 保持免费和开源。

🔥 为什么选择 Nanobrowser?

  • 免费。 无订阅且无隐藏费用。使用你自己的 API 密钥或本地模型,只为使用的部分付费。
  • 私密。 所有操作都在你的浏览器中运行。你的密钥只会留在浏览器中,并仅发送给各自的提供商。网页内容只会发送到你选择的模型。每天用户数量和使用次数会被统计,但不会附带任何 ID,也绝不会包含你的网页或网站;详见 PRIVACY.md。
  • 灵活的 LLM。 可选择多个云服务提供商,或在你自己的电脑上运行模型,随时切换。没有锁定。
  • 开源。 所有代码都是公开的,因此你可以准确了解其工作原理,并根据需要进行修改。

📊 主要功能

  • 侧边栏聊天:用简单的词语说出你的需求。代理会阅读页面、点击、输入和在标签页间切换来完成任务。
  • 同时处理多个任务:每个任务在自己的标签组中运行,因此你可以同时运行几个任务并继续浏览。
  • 你决定何时询问:选择“询问”或“自动”模式,并为每个网站设置规则(见下文)。
  • 可选择模型:云端或本地。为每个聊天选择模型和思考的强度。
  • 图片和文件:附加图片、文本文件或当前标签页的截图。代理也可以将你的文件上传到页面。
  • 保存结果:代理可以将工作成果保存到你的下载文件夹,例如 CSV 表或 Markdown 报告。Chrome 会在第一次操作时询问你。
  • 快捷方式:保存你常用的提示,并通过输入 / 启动它。你可以为它设置起始页面和模型。
  • 语音输入:可以选择说话而不是输入文字,使用 OpenAI 或 Gemini 的语音模型。
  • 记忆:告诉代理在每次聊天中需要记住的内容,例如你是谁或你喜欢的回答方式。
  • 长任务:当聊天很长时,旧的步骤会被自动总结,以便任务继续进行。你自己的消息始终完整保留。
  • 聊天历史:返回任意聊天,编辑消息并从那里重新运行,或将聊天导出为 Markdown。
  • 你的语言和主题:英语、简体中文或繁体中文,可选择浅色或深色模式。

🌐 浏览器支持

  • 支持的浏览器: Chrome 和 Edge。
  • 不支持的浏览器: Firefox、Safari 以及其他基于 Chromium 的浏览器(Opera、Arc、Brave 等)。Nanobrowser 可能在这些浏览器上可用,但尚未进行测试。

🛡️ 你决定代理可以做什么

代理执行的操作 提问模式(默认) 自动模式
阅读页面,点击链接,滚动,切换标签 继续进行 继续进行
提交、发送、删除或上传 先询问你 继续进行
支付、输入密码或代码、授权访问 交由你操作 交由你操作

你还可以在设置 → 权限中将网站设置为允许(两种模式下都继续进行)、询问(两种模式下都询问)或阻止(代理可能无法使用)。

注意

你始终掌控一切。

  • 代理可能不会注意到每一个需要你的步骤。当它注意到某一个步骤时,你的设置始终适用,没有任何 AI 模型可以更改它们。
  • 代理将网页上的文本作为信息读取,绝不会作为命令执行。这有助于防范试图欺骗它的页面(提示注入),但没有任何保护是完美的。
  • 因此,请使用你信任的网站,留意代理的行为,并随时按 停止 来接手操作。

🤖 模型

类型 提供商
云端 Anthropic、OpenAI、Google Gemini、OpenRouter、xAI Grok、DeepSeek、Mistral,以及任何兼容 OpenAI 的端点
本地 Ollama 和 LM Studio,以及通过兼容 OpenAI 的提供商连接的其他服务器(llama.cpp、vLLM 等)
  • 模型必须支持工具调用。 在“设置”中测试模型,系统会检查每个模型并标记无法使用的模型。
  • 在面板中为每次对话选择模型和推理力度。 设置中保存默认值。
  • 视觉模型 还可以截取页面截图并读取你附加的图片。
  • 本地模型 对于简单、明确的任务效果最好。我们目前推荐 Qwen3.8 27B。为它们提供 16k 令牌或更多的上下文窗口。Ollama 需要 OLLAMA_ORIGINS 以允许扩展,LM Studio 需要启用 CORS;当请求被拒绝时,提供商卡会显示操作方法。
  • 语音输入 使用 OpenAI 或 Gemini 的语音模型,并需使用该提供商提供的密钥。

💡 尝试这些

“用几个要点总结这一页内容。”

“比较我打开的三台笔记本电脑,并将价格和规格做成表格。”

“在亚马逊上找到一款防水的便携式蓝牙音箱,价格低于50美元,电池续航至少10小时。”

“提取TechCrunch过去24小时的前10条头条新闻,并保存为CSV文件。”

🚀 快速开始

  1. 安装它 从 Chrome 网上应用店:点击 Add to Chrome 并确认。在 Edge 中,当 Edge 提示时,先允许来自其他商店的扩展。

  2. 设置它: 欢迎页面会打开并帮助你连接云提供商或本地模型。你也可以稍后在 设置 → 提供商 中进行操作。

  3. 使用它: 点击工具栏中的 Nanobrowser 图标,或者按 Alt+Shift+N,在当前标签页打开侧边面板。

🔧 从源码构建

  1. 先决条件: Node.js 24 LTS 和 pnpm 10 (corepack 切换到固定的 10.34.7)。

  2. 克隆并构建:

    git clone https://github.com/nanobrowser/nanobrowser.git
    cd nanobrowser
    corepack enable # skip if pnpm 10 is already installed
    pnpm install
    pnpm build      # builds the extension into dist/
  3. 在 Chrome 或 Edge 中加载它:

    • 打开 chrome://extensions(在 Edge 中,edge://extensions)。
    • 打开 Developer mode(右上角)。
    • 点击 Load unpacked 并选择 dist 文件夹。

然后按照快速入门中的步骤设置并使用它。要更新,请拉取最新源代码,再次运行 pnpm build,并在扩展页面的 Nanobrowser 卡片上点击重新加载图标。

🛠️ 开发

pnpm dev               # run in development mode, reloads on changes; load dist/ in Chrome
pnpm zip               # make a release build as a zip file in dist-zip/
pnpm type-check        # check types
pnpm lint              # check code style and import rules
pnpm test              # run the unit tests
pnpm install-chrome    # install Chrome for Testing, used by the browser tests
pnpm autorun scenarios # run the browser tests on local test pages, without a window

工作原理。 该代理位于浏览器控制层之上。该层查看页面、执行操作并报告发生的情况。它本身没有AI模型,因此相同的输入总是产生相同的结果。这使得代理更可靠:

  • 它点击正确的元素。 每个代理看到的元素都有一个与该元素精确绑定的ID。如果页面发生变化,旧ID将停止工作,而不会指向其他内容。
  • 它像真实用户一样操作。 点击和输入都是浏览器的真实输入。在执行操作之前,该层会检查元素是否可见、是否静止、是否启用,并且是否没有被其他东西覆盖。
  • 它告诉代理实际发生了什么。 每个操作只发送一次。结果会显示操作是否成功,页面是否有响应,以及页面是否达到预期状态。

该层仅通过Chrome的chrome.debugger API与页面通信,并使用Puppeteer跟踪页面上的帧。对于开发人员,有一个测试面板可以手动尝试该层:将一个键绑定到chrome://extensions/shortcuts中的open-test-panel命令。

AGENTS.md(也包括CLAUDE.md)解释了设计规则、仓库布局以及我们的工作方式,供人和AI编程助手参考。

🤝 贡献

欢迎各种形式的贡献:

  • 分享提示和使用案例 在我们的 Discord 服务器 上。
  • 提供反馈 关于 Nanobrowser 对你的使用情况,可在 Discord 或 GitHub 讨论 上进行。
  • 贡献代码:阅读 CONTRIBUTING.md,然后为 bug 修复、功能或文档提交一个拉取请求。

🔒 安全

如果您发现安全漏洞,请不要在公共问题、拉取请求或讨论中披露它。请通过 GitHub 安全咨询 报告,以便在公开之前修复。请参阅 SECURITY.md。

💬 社区

👏 致谢

Nanobrowser 基于其他优秀的开源项目构建:

感谢它们的创建者和贡献者。

📄 许可

Nanobrowser 的许可遵循 Apache 许可证 2.0。详情请参阅 LICENSE 文件。

本站来源与版权声明
  • 本文标题:nanobrowser - 用于网页自动化的开源人工智能代理
  • 本文链接:https://www.cn121.com/browser/nanobrowser-nanobrowser.html
  • 原项目:nanobrowser/nanobrowser 版权归原作者 nanobrowser 及贡献者所有
  • 收录信息:本站于 2026-11-03 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 Apache-2.0(查看 LICENSE 原文),本站译文为其衍生内容;使用、修改、分发请以该仓库 LICENSE 原文为准。本站对原文仅作排版与图片地址适配, 并保留原项目的 NOTICE 与署名要求。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 nanobrowser/nanobrowser。
  • 翻译说明:本页正文为人工智能生成内容——由机器翻译对原项目 README 初译、经程序校验排版,可能存在错漏,请以原项目文档为准。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。