Python · 项目报告

feder-cr/dots

Open-source dots for the web: an AI agent with its own browser, one that does not get blocked.

已完成 打开 GitHub
F
1,890星标
312Fork
0Issue
MIT许可证

分析结果

项目分析

dots 是一个面向 Web 自动化的开源 AI 浏览器 Agent。它将大语言模型与经过补丁修改的真实 Firefox 浏览器结合,重点解决传统浏览器自动化容易被网站识别、拦截或失效的问题。用户可以通过 OpenRouter 切换不同模型,并在本地 Web 界面中同时查看对话和浏览器执行过程。项目采用 MIT 协议,当前约 1890 stars,主要语言为 Python。

适用领域 AI Agent / 浏览器自动化 / Web 自动化 / 反检测浏览器 / LLM 应用 / Playwright/MCP 生态 / 数据采集与网页任务执行 / 自动化测试与交互
配置难度 中等。基础体验只需安装 uv 并提供 OpenRouter Key,启动成本较低;但如果要在生产环境中稳定运行,需要理解浏览器自动化、代理、模型选择、Profile 管理、异常恢复和合规边界。
商业价值 该项目适合用于构建更可靠的浏览器型 AI Agent,可在价格查询、网页信息收集、复杂表单操作、竞品监控、客服辅助、测试自动化等场景提升自动化能力。其核心价值在于将模型能力与更接近真实用户的浏览器环境结合,降低传统 Web 自动化被检测或因浏览器状态问题失败的概率。不过商业落地时必须重点评估合规、账号安全、服务稳定性和成本控制。
01

技术亮点

  • 使用真实 Firefox 引擎,并在 C++ 层进行补丁修改,而不是仅依赖 JavaScript 注入伪装。
  • 强调反检测能力:无 WebDriver 标记、无 DevTools Protocol 暴露、无页面可见的自动化全局变量。
  • 支持基于 seed 的稳定浏览器身份,屏幕、字体、GPU、时区、语言等特征保持一致。
  • 模拟更接近真人的输入行为,鼠标移动到目标后点击,键盘逐字输入。
  • 支持持久化 Profile,可保留登录态和 Cookie,适合长期任务。
  • 支持代理,并让浏览器的时区和语言与代理出口匹配。
  • 模型层通过 OpenRouter 抽象,使用 --model 即可切换不同 LLM。
  • 提供本地可视化界面,便于观察 Agent 的思考和浏览器执行过程。
  • 可通过 invisible_playwright_mcp 接入 MCP 客户端,扩展到 Claude Code、Codex、Gemini CLI 等工作流。
  • MIT 开源协议,便于个人和商业项目二次开发。
02

目标用户

  • 需要让 AI 自动操作网页的开发者
  • 构建浏览器型 Agent 的团队
  • 需要绕过常规自动化检测的 Web 自动化工程师
  • 希望使用 OpenRouter 多模型能力的 AI 应用开发者
  • 需要自动查询、比价、填写表单或执行复杂网页流程的用户
  • 使用 Claude Code、Codex、Gemini CLI 或 MCP 客户端的开发者
03

配置要求

  • 需要 OpenRouter API Key,通过 --openrouter-key 传入。
  • 需要可访问 OpenRouter 服务的网络环境。
  • 需要安装 uv/uvx,用于直接从 GitHub 运行 Python 项目。
  • 可选配置 --model,用于切换 OpenRouter 上的不同模型。
  • 可选配置 --seed,用于生成并复用一致的浏览器身份指纹。
  • 可选配置 --profile-dir,用于保存登录态、Cookie、历史 Profile 等。
  • 可选配置 --proxy,用于指定代理出口,并使时区和语言跟随代理出口。
  • 本地 Web UI 默认监听 http://127.0.0.1:8765。
  • 由于使用经过补丁的 Firefox 浏览器,运行环境可能需要满足浏览器依赖,尤其是 Linux 桌面或服务器环境。
04

适用场景

  • 让 AI 在真实浏览器中完成网页查询、比价、预订前信息收集等任务
  • 自动访问复杂网站并读取页面内容,例如航班价格、库存、日期可用性等
  • 在需要登录态、Cookie、长期会话的场景中运行浏览器 Agent
  • 为自己的 AI 助手接入更隐蔽、更接近真实用户行为的浏览器环境
  • 结合代理 IP、固定身份种子、浏览器 Profile 进行稳定的多次访问
  • 通过 MCP 将该浏览器能力接入 Claude Code、Codex、Gemini CLI 等工具
05

部署与配置

  • 准备 OpenRouter API Key,例如 sk-or-...。
  • Windows PowerShell 安装 uv:powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"。
  • Windows PowerShell 设置路径:$env:Path = "$env:USERPROFILE\.local\bin;$env:Path"。
  • Windows 启动 dots:uvx --from git+https://github.com/feder-cr/dots dots --openrouter-key sk-or-...。
  • Linux 安装 uv:curl -LsSf https://astral.sh/uv/install.sh | sh。
  • Linux 加载 uv 环境:source $HOME/.local/bin/env。
  • Linux 启动 dots:uvx --from git+https://github.com/feder-cr/dots dots --openrouter-key sk-or-...。
  • 启动后在浏览器打开 http://127.0.0.1:8765,左侧为对话,右侧为实时浏览器画面。
  • 可通过 dots --help 查看更多参数,例如 --model、--seed、--profile-dir、--proxy 等。
06

风险与注意事项

  • 项目定位包含 anti-detect、stealth browser 等能力,使用时需要严格遵守目标网站服务条款、法律法规和数据合规要求。
  • 反检测能力并不等于永远不会被识别,网站风控策略升级后仍可能失败。
  • 依赖 OpenRouter 和第三方模型服务,存在 API 成本、速率限制、可用性和数据隐私问题。
  • 浏览器自动化执行结果受页面结构、弹窗、验证码、登录状态、网络质量影响较大。
  • 使用代理可能带来稳定性、延迟、账号风控和合规风险。
  • README 信息较简洁,生产环境部署、错误处理、任务编排、安全隔离等细节可能需要自行探索。
  • 如果让 Agent 操作已登录账号或敏感页面,需要防止误操作、越权操作和敏感数据泄露。
  • 从 GitHub 直接 uvx 运行虽然方便,但企业环境中应进行依赖审计、版本锁定和供应链安全检查。

历史记录

热榜历史快照

2026-10-01 第5名 新收录 · github_search