Tools
Tìm nạp web
Công cụ web_fetch thực hiện HTTP GET thuần túy và trích xuất nội dung dễ đọc
(HTML sang markdown hoặc văn bản). Công cụ này không thực thi JavaScript.
Đối với các trang dùng nhiều JS hoặc trang được bảo vệ bằng đăng nhập, hãy dùng Web Browser thay thế.
Bắt đầu nhanh
web_fetch được bật theo mặc định -- không cần cấu hình. Agent có thể
gọi ngay:
await web_fetch({ url: "https://example.com/article" });
Tham số công cụ
urlstringrequiredURL cần tìm nạp. Chỉ hỗ trợ http(s).
extractMode'markdown' | 'text'Định dạng đầu ra sau khi trích xuất nội dung chính.
maxCharsnumberCắt ngắn đầu ra xuống số ký tự này.
Cách hoạt động
Fetch
Gửi HTTP GET với User-Agent giống Chrome và header Accept-Language.
Chặn tên máy chủ riêng tư/nội bộ và kiểm tra lại chuyển hướng.
Extract
Chạy Readability (trích xuất nội dung chính) trên phản hồi HTML.
Fallback (optional)
Nếu Readability thất bại và Firecrawl đã được cấu hình, thử lại thông qua API Firecrawl với chế độ vượt qua bot.
Cache
Kết quả được lưu vào bộ nhớ đệm trong 15 phút (có thể cấu hình) để giảm việc tìm nạp lặp lại cùng một URL.
Cấu hình
{
tools: {
web: {
fetch: {
enabled: true, // default: true
provider: "firecrawl", // optional; omit for auto-detect
maxChars: 50000, // max output chars
maxCharsCap: 50000, // hard cap for maxChars param
maxResponseBytes: 2000000, // max download size before truncation
timeoutSeconds: 30,
cacheTtlMinutes: 15,
maxRedirects: 3,
useTrustedEnvProxy: false, // let a trusted HTTP(S) env proxy resolve DNS
readability: true, // use Readability extraction
userAgent: "Mozilla/5.0 ...", // override User-Agent
ssrfPolicy: {
allowRfc2544BenchmarkRange: true, // opt-in for trusted fake-IP proxies using 198.18.0.0/15
allowIpv6UniqueLocalRange: true, // opt-in for trusted fake-IP proxies using fc00::/7
},
},
},
},
}
Dự phòng Firecrawl
Nếu trích xuất Readability thất bại, web_fetch có thể chuyển sang
Firecrawl để vượt qua bot và trích xuất tốt hơn:
{
tools: {
web: {
fetch: {
provider: "firecrawl", // optional; omit for auto-detect from available credentials
},
},
},
plugins: {
entries: {
firecrawl: {
enabled: true,
config: {
webFetch: {
apiKey: "fc-...", // optional if FIRECRAWL_API_KEY is set
baseUrl: "https://api.firecrawl.dev",
onlyMainContent: true,
maxAgeMs: 86400000, // cache duration (1 day)
timeoutSeconds: 60,
},
},
},
},
},
}
plugins.entries.firecrawl.config.webFetch.apiKey hỗ trợ các đối tượng SecretRef.
Cấu hình tools.web.fetch.firecrawl.* cũ được openclaw doctor --fix tự động di chuyển.
Hành vi runtime hiện tại:
tools.web.fetch.providerchọn rõ ràng nhà cung cấp dự phòng cho việc tìm nạp.- Nếu bỏ qua
provider, OpenClaw tự động phát hiện nhà cung cấp web-fetch sẵn sàng đầu tiên từ các thông tin xác thực khả dụng.web_fetchkhông sandbox có thể dùng các Plugin đã cài đặt khai báocontracts.webFetchProvidersvà đăng ký một nhà cung cấp khớp tại runtime. Hiện nay nhà cung cấp đi kèm là Firecrawl. - Các lệnh gọi
web_fetchtrong sandbox vẫn chỉ giới hạn ở các nhà cung cấp đi kèm. - Nếu Readability bị tắt,
web_fetchbỏ qua thẳng tới phương án dự phòng của nhà cung cấp đã chọn. Nếu không có nhà cung cấp nào khả dụng, nó thất bại đóng.
Proxy env tin cậy
Nếu triển khai của bạn yêu cầu web_fetch đi qua một proxy HTTP(S) outbound
tin cậy, hãy đặt tools.web.fetch.useTrustedEnvProxy: true.
Ở chế độ này, OpenClaw vẫn áp dụng kiểm tra SSRF dựa trên tên máy chủ trước khi gửi yêu cầu, nhưng cho phép proxy phân giải DNS thay vì ghim DNS cục bộ. Chỉ bật tùy chọn này khi proxy do operator kiểm soát và thực thi chính sách outbound sau khi phân giải DNS.
Giới hạn và an toàn
maxCharsbị giới hạn theotools.web.fetch.maxCharsCap- Nội dung phản hồi bị giới hạn ở
maxResponseBytestrước khi phân tích; phản hồi quá lớn sẽ bị cắt ngắn kèm cảnh báo - Tên máy chủ riêng tư/nội bộ bị chặn
tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRangevàtools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRangelà các tùy chọn tham gia hẹp cho các ngăn xếp proxy IP giả tin cậy; hãy để chúng chưa đặt trừ khi proxy của bạn sở hữu các dải tổng hợp đó và thực thi chính sách đích riêng của nó- Chuyển hướng được kiểm tra và giới hạn bởi
maxRedirects useTrustedEnvProxylà tùy chọn tham gia rõ ràng và chỉ nên được bật cho các proxy do operator kiểm soát vẫn thực thi chính sách outbound sau khi phân giải DNSweb_fetchhoạt động theo nỗ lực tối đa -- một số trang cần Web Browser
Hồ sơ công cụ
Nếu bạn dùng hồ sơ công cụ hoặc allowlist, hãy thêm web_fetch hoặc group:web:
{
tools: {
allow: ["web_fetch"],
// or: allow: ["group:web"] (includes web_fetch, web_search, and x_search)
},
}
Liên quan
- Web Search -- tìm kiếm web bằng nhiều nhà cung cấp
- Web Browser -- tự động hóa trình duyệt đầy đủ cho các trang dùng nhiều JS
- Firecrawl -- công cụ tìm kiếm và scrape của Firecrawl