Chuyển tới nội dung chính

Tự động hóa trình duyệt

Hermes Agent bao gồm bộ công cụ tự động hóa trình duyệt đầy đủ với nhiều tùy chọn phụ trợ:

  • Chế độ đám mây của cơ sở trình duyệt thông qua Browserbase dành cho các trình duyệt đám mây được quản lý và công cụ chống bot
  • Sử dụng chế độ đám mây trên trình duyệt thông qua Sử dụng trình duyệt làm nhà cung cấp trình duyệt đám mây thay thế
  • Chế độ thu thập thông tin trên đám mây qua Firecrawl dành cho các trình duyệt trên đám mây có tính năng quét tích hợp
  • Chế độ cục bộ Camofox thông qua Camofox để duyệt web chống phát hiện cục bộ (giả mạo dấu vân tay dựa trên Firefox)
  • Chrome cục bộ qua CDP — kết nối các công cụ trình duyệt với phiên bản Chrome của riêng bạn bằng /browser connect
  • Chế độ trình duyệt cục bộ thông qua agent-browser CLI và cài đặt Chrome cục bộ

Trong tất cả các chế độ, tác nhân có thể điều hướng các trang web, tương tác với các thành phần trang, điền biểu mẫu và trích xuất thông tin.

Tổng quan

Các trang được trình bày dưới dạng cây khả năng truy cập (ảnh chụp nhanh dựa trên văn bản), khiến chúng trở nên lý tưởng cho các đại lý LLM. Các phần tử tương tác nhận ID giới thiệu (như @e1 , @e2 ) mà tác nhân sử dụng để nhấp và nhập.

Các khả năng chính:

  • Thực thi trên đám mây từ nhiều nhà cung cấp — Cơ sở trình duyệt, Sử dụng trình duyệt hoặc Firecrawl — không cần trình duyệt cục bộ
  • Tích hợp Chrome cục bộ — đính kèm với Chrome đang chạy của bạn thông qua CDP để duyệt thực tế
  • Tàng hình tích hợp — dấu vân tay ngẫu nhiên, giải CAPTCHA, proxy dân dụng (Cơ sở trình duyệt)
  • Cách ly phiên — mỗi tác vụ có phiên trình duyệt riêng
  • Tự động dọn dẹp — các phiên không hoạt động sẽ bị đóng sau khi hết thời gian chờ
  • Phân tích tầm nhìn — ảnh chụp màn hình + phân tích AI để hiểu rõ bằng hình ảnh

Thiết lập

Chế độ đám mây của trình duyệt

Để sử dụng trình duyệt đám mây do Browserbase quản lý, hãy thêm:

# Add to ~/.hermes/.env
BROWSERBASE_API_KEY=***
BROWSERBASE_PROJECT_ID=your-project-id-here

Nhận thông tin xác thực của bạn tại browserbase.com.

Trình duyệt Sử dụng chế độ đám mây

Để sử dụng Trình duyệt Sử dụng làm nhà cung cấp trình duyệt đám mây của bạn, hãy thêm:

# Add to ~/.hermes/.env
BROWSER_USE_API_KEY=***

Nhận khóa API của bạn tại browser-use.com. Sử dụng trình duyệt cung cấp trình duyệt đám mây thông qua API REST của nó. Nếu cả thông tin xác thực về Cơ sở trình duyệt và Sử dụng trình duyệt đều được đặt thì Cơ sở trình duyệt sẽ được ưu tiên.

Chế độ đám mây Firecrawl

Để sử dụng Firecrawl làm nhà cung cấp trình duyệt đám mây của bạn, hãy thêm:

# Add to ~/.hermes/.env
FIRECRAWL_API_KEY=fc-***

Nhận khóa API của bạn tại firecrawl.dev. Sau đó chọn Firecrawl làm nhà cung cấp trình duyệt của bạn:

hermes setup tools
# → Browser Automation → Firecrawl

Cài đặt tùy chọn:

# Self-hosted Firecrawl instance (default: https://api.firecrawl.dev)
FIRECRAWL_API_URL=http://localhost:3002

# Session TTL in seconds (default: 300)
FIRECRAWL_BROWSER_TTL=600

Chế độ cục bộ Camofox

Camofox là máy chủ Node.js tự lưu trữ bao bọc Camoufox (một nhánh của Firefox có khả năng giả mạo dấu vân tay C++). Nó cung cấp khả năng duyệt chống phát hiện cục bộ mà không phụ thuộc vào đám mây.

# Install and run
git clone https://github.com/jo-inc/camofox-browser && cd camofox-browser
npm install && npm start

# downloads Camoufox (~300MB) on first run

# Or via Docker
docker run -d --network host -e CAMOFOX_PORT=9377 jo-inc/camofox-browser

Sau đó đặt vào ~/.hermes/.env :

CAMOFOX_URL=http://localhost:9377

Hoặc định cấu hình qua hermes tools → Tự động hóa trình duyệt → Camofox.

Khi CAMOFOX_URL được đặt, tất cả các công cụ trình duyệt sẽ tự động định tuyến qua Camofox thay vì Browserbase hoặc trình duyệt tác nhân.

Phiên trình duyệt liên tục

Theo mặc định, mỗi phiên Camofox nhận được một danh tính ngẫu nhiên — cookie và thông tin đăng nhập không tồn tại trong quá trình khởi động lại tác nhân. Để bật phiên trình duyệt liên tục:

# In ~/.hermes/config.yaml
browser:
camofox:
managed_persistence: true

```Khi được bật, Hermes sẽ gửi danh tính ổn định trong phạm vi hồ sơ tới Camofox. Máy chủ Camofox ánh xạ danh tính này tới một thư mục hồ sơ trình duyệt liên tục, do đó, cookie, thông tin đăng nhập và localStorage vẫn tồn tại trong suốt quá trình khởi động lại. Các hồ sơ Hermes khác nhau sẽ nhận được các hồ sơ trình duyệt khác nhau (cách ly hồ sơ).

:::note
Máy chủ Camofox cũng phải được định cấu hình với `CAMOFOX_PROFILE_DIR` ở phía máy chủ để duy trì hoạt động.

:::

#

### Xem trực tiếp VNC

Khi Camofox chạy ở chế độ head (có cửa sổ trình duyệt hiển thị), nó sẽ hiển thị cổng VNC trong phản hồi kiểm tra tình trạng. Hermes tự động phát hiện ra điều này và đưa URL VNC vào phản hồi điều hướng, vì vậy nhân viên hỗ trợ có thể chia sẻ liên kết để bạn xem trực tiếp trên trình duyệt.

#

## Chrome cục bộ qua CDP ( `/browser connect` )

Thay vì nhà cung cấp đám mây, bạn có thể đính kèm các công cụ trình duyệt Hermes vào phiên bản Chrome đang chạy của riêng mình thông qua Giao thức DevTools của Chrome (CDP). Điều này hữu ích khi bạn muốn xem tác nhân đang làm gì trong thời gian thực, tương tác với các trang yêu cầu cookie/phiên của riêng bạn hoặc tránh chi phí trình duyệt trên đám mây.

Trong CLI, sử dụng:

/browser connect

Connect to Chrome at ws://localhost:9222

/browser connect ws://host:port

Connect to a specific CDP endpoint

/browser status

Check current connection

/browser disconnect

Detach and return to cloud/local mode

 

Nếu Chrome chưa chạy với tính năng gỡ lỗi từ xa, Hermes sẽ cố gắng tự động khởi chạy nó bằng `--remote-debugging-port=9222` .

:::tip
Để khởi động Chrome theo cách thủ công khi bật CDP:

```bash
# Linux
google-chrome --remote-debugging-port=9222

# macOS
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --remote-debugging-port=9222

:::

Khi được kết nối qua CDP, tất cả các công cụ trình duyệt ( browser_navigate , browser_click , v.v.) sẽ hoạt động trên phiên bản Chrome trực tiếp của bạn thay vì quay phiên đám mây.

Chế độ trình duyệt cục bộ

Nếu bạn không đặt bất kỳ thông tin đăng nhập nào trên đám mây và không sử dụng /browser connect , Hermes vẫn có thể sử dụng các công cụ trình duyệt thông qua cài đặt Chrome cục bộ do agent-browser điều khiển.

Biến môi trường tùy chọn

# Residential proxies for better CAPTCHA solving (default: "true")
BROWSERBASE_PROXIES=true

# Advanced stealth with custom Chromium — requires Scale Plan (default: "false")
BROWSERBASE_ADVANCED_STEALTH=false

# Session reconnection after disconnects — requires paid plan (default: "true")
BROWSERBASE_KEEP_ALIVE=true

# Custom session timeout in milliseconds (default: project default)
# Examples: 600000 (10min), 1800000 (30min)
BROWSERBASE_SESSION_TIMEOUT=600000

# Inactivity timeout before auto-cleanup in seconds (default: 120)
BROWSER_INACTIVITY_TIMEOUT=120

Cài đặt trình duyệt tác nhân CLI

npm install -g agent-browser
# Or install locally in the repo:
npm install

thông tin

Bộ công cụ browser phải được bao gồm trong danh sách toolsets trong cấu hình của bạn hoặc được bật qua hermes config set toolsets '["hermes-cli", "browser"]' .

Công cụ có sẵn

browser_navigate

Điều hướng đến một URL. Phải được gọi trước bất kỳ công cụ trình duyệt nào khác. Khởi tạo phiên Browserbase.

Navigate to https://github.com/NousResearch

mẹo

Để truy xuất thông tin đơn giản, hãy ưu tiên web_search hoặc web_extract — chúng nhanh hơn và rẻ hơn. Sử dụng các công cụ của trình duyệt khi bạn cần tương tác với một trang (nhấp vào nút, điền biểu mẫu, xử lý nội dung động).

browser_snapshot

Nhận ảnh chụp nhanh dựa trên văn bản của cây khả năng truy cập của trang hiện tại. Trả về các phần tử tương tác có ID giới thiệu như @e1 , @e2 để sử dụng với browser_clickbrowser_type .

  • ** full=false ** (mặc định): Chế độ xem thu gọn chỉ hiển thị các phần tử tương tác
  • ** full=true **: Nội dung trang hoàn chỉnh

Ảnh chụp nhanh trên 8000 ký tự được LLM tự động tóm tắt.

browser_click

Nhấp vào một phần tử được xác định bằng ID giới thiệu của nó từ ảnh chụp nhanh.

Click @e5 to press the "Sign In" button

browser_type

Nhập văn bản vào trường đầu vào. Xóa trường trước, sau đó nhập văn bản mới.

Type "hermes agent" into the search field @e3

browser_scroll

Cuộn trang lên hoặc xuống để xem thêm nội dung.

Scroll down to see more results

browser_pressNhấn một phím bàn phím. Hữu ích cho việc gửi biểu mẫu hoặc điều hướng.

Press Enter to submit the form

Các khóa được hỗ trợ: Enter , Tab , Escape , ArrowDown , ArrowUp và hơn thế nữa.

browser_back

Điều hướng trở lại trang trước trong lịch sử trình duyệt.

browser_get_images

Liệt kê tất cả hình ảnh trên trang hiện tại cùng với URL và văn bản thay thế của chúng. Hữu ích cho việc tìm kiếm hình ảnh để phân tích.

browser_vision

Chụp ảnh màn hình và phân tích nó bằng AI tầm nhìn. Sử dụng tính năng này khi ảnh chụp nhanh văn bản không nắm bắt được thông tin hình ảnh quan trọng — đặc biệt hữu ích cho CAPTCHA, bố cục phức tạp hoặc các thách thức xác minh trực quan.

Ảnh chụp màn hình được lưu liên tục và đường dẫn tệp được trả về cùng với phân tích AI. Trên các nền tảng nhắn tin (Telegram, Discord, Slack, WhatsApp), bạn có thể yêu cầu nhân viên chia sẻ ảnh chụp màn hình — ảnh sẽ được gửi dưới dạng tệp đính kèm ảnh gốc thông qua cơ chế MEDIA:.

What does the chart on this page show?

Ảnh chụp màn hình được lưu trữ trong ~/.hermes/cache/screenshots/ và tự động dọn sạch sau 24 giờ.

browser_console

Nhận đầu ra của bảng điều khiển trình duyệt (thông báo nhật ký/cảnh báo/lỗi) và các ngoại lệ JavaScript chưa được phát hiện từ trang hiện tại. Cần thiết để phát hiện các lỗi JS thầm lặng không xuất hiện trong cây khả năng truy cập.

Check the browser console for any JavaScript errors

Sử dụng clear=True để xóa bảng điều khiển sau khi đọc để các cuộc gọi tiếp theo chỉ hiển thị tin nhắn mới.

Ví dụ thực tế

Điền vào biểu mẫu web

User: Sign up for an account on example.com with my email john@example.com

Agent workflow:
1. browser_navigate("https://example.com/signup")
2. browser_snapshot() → sees form fields with refs
3. browser_type(ref="@e3", text="john@example.com")
4. browser_type(ref="@e5", text="SecurePass123")
5. browser_click(ref="@e8") → clicks "Create Account"
6. browser_snapshot() → confirms success

Nghiên cứu nội dung động

User: What are the top trending repos on GitHub right now?

Agent workflow:
1. browser_navigate("https://github.com/trending")
2. browser_snapshot(full=true) → reads trending repo list
3. Returns formatted results

Ghi phiên

Tự động ghi lại các phiên trình duyệt dưới dạng tệp video WebM:

browser:
record_sessions: true

# default: false

Khi được bật, quá trình ghi sẽ tự động bắt đầu vào browser_navigate đầu tiên và lưu vào ~/.hermes/browser_recordings/ khi phiên đóng. Hoạt động ở cả chế độ cục bộ và đám mây (Browserbase). Các bản ghi cũ hơn 72 giờ sẽ tự động được dọn sạch.

Tính năng tàng hình

Browserbase cung cấp khả năng ẩn tự động:

Tính năngMặc địnhGhi chú
Tàng hình cơ bảnLuôn bậtDấu vân tay ngẫu nhiên, ngẫu nhiên khung nhìn, giải CAPTCHA
Ủy quyền dân cưTrênCác tuyến đường xuyên qua các khu công nghiệp dân cư để tiếp cận tốt hơn
Tàng hình nâng caoTắtBản dựng Chrome tùy chỉnh, yêu cầu Kế hoạch mở rộng
Giữ sốngTrênPhiên kết nối lại sau khi mạng trục trặc
ghi chú

Nếu các tính năng trả phí không có sẵn trong gói của bạn, Hermes sẽ tự động ngừng sử dụng — đầu tiên là vô hiệu hóa keepAlive, sau đó là proxy — để việc duyệt vẫn hoạt động trên các gói miễn phí.

Quản lý phiên

  • Mỗi tác vụ nhận được một phiên trình duyệt riêng biệt thông qua Browserbase
  • Các phiên được tự động dọn sạch sau khi không hoạt động (mặc định: 2 phút)
  • Chuỗi nền sẽ kiểm tra các phiên cũ 30 giây một lần
  • Dọn dẹp khẩn cấp chạy khi thoát quá trình để ngăn chặn các phiên mồ côi
  • Phiên được phát hành thông qua API Browserbase (trạng thái REQUEST_RELEASE)

Hạn chế- Tương tác dựa trên văn bản — dựa vào cây khả năng truy cập chứ không phải tọa độ pixel

  • Kích thước ảnh chụp nhanh — các trang lớn có thể bị cắt bớt hoặc được tóm tắt bằng LLM ở 8000 ký tự
  • Thời gian chờ của phiên — phiên trên đám mây hết hạn dựa trên cài đặt gói của nhà cung cấp của bạn
  • Chi phí — phiên đám mây tiêu tốn tín dụng của nhà cung cấp; các phiên sẽ tự động được dọn sạch khi cuộc trò chuyện kết thúc hoặc sau khi không hoạt động. Sử dụng /browser connect để duyệt cục bộ miễn phí.
  • Không tải xuống tệp — không thể tải xuống tệp từ trình duyệt