#7982: Save API Usage: Use Atlas Browser ChatGPT Capabilities
docs
channel: matrix
app: macos
gateway
agents
stale
Cluster:
Web Search Provider Enhancements
## Summary
- Prefer ChatGPT Atlas for browser-scoped web_search and web_fetch, with automatic fallback to existing providers.
- Add a browser-only Atlas action to run ChatGPT tasks via the Atlas UI.
- Add Atlas profile auto-detection and per-profile executable path support.
## Motivation
Atlas uses ChatGPT in the browser instead of API-based models. Routing browser-scoped tasks through Atlas reduces API usage while keeping the rest of the framework unchanged.
## Behavior
- If Atlas is available (macOS), web_search/web_fetch use Atlas first, then fall back to Brave/Perplexity or HTTP fetch when Atlas is unavailable.
- The new browser action `action="atlas"` is explicitly scoped to browser tasks only.
- Non-browser tasks still use the existing API model flow.
## Issue
- https://github.com/openclaw/openclaw/issues/8781
## Testing
- `corepack pnpm tsgo`
- `corepack pnpm lint`
- `corepack pnpm format`
- `pnpm build`
<!-- greptile_comment -->
<h2>Greptile Overview</h2>
<h3>Greptile Summary</h3>
This PR adds an Atlas-backed path for browser-scoped web tasks: a new `atlas` browser action plus Atlas-first execution for `web_search`/`web_fetch` with fallbacks to existing providers. It also adds macOS Atlas executable/profile auto-detection and per-profile `executablePath` support for managed browser profiles, along with CLI completion caching and related docs updates.
Key integration points are the new `src/agents/tools/atlas.ts` Playwright automation, the Atlas-first routing in `src/agents/tools/web-search.ts` and `src/agents/tools/web-fetch.ts`, and browser config changes (`src/browser/config.ts`, `src/browser/chrome*.ts`) to surface an `atlas` profile when available.
<h3>Confidence Score: 3/5</h3>
- Mostly safe to merge, but Atlas fallback behavior in web_search can break the advertised “Atlas first, automatic fallback” flow.
- Changes are largely additive and gated (host-only/sandbox checks), but the `web_search` Atlas try/catch can rethrow for users who explicitly configured provider=atlas when Atlas fails with a non-normalized error, leading to unexpected hard failures instead of fallback.
- src/agents/tools/web-search.ts, src/agents/tools/browser-tool.ts
<!-- greptile_other_comments_section -->
<sub>(2/5) Greptile learns from your feedback when you react with thumbs up/down!</sub>
<!-- /greptile_comment -->
Most Similar PRs
#10367: CLI/Ops: resilient browser fill + failover hardening + operations t...
by cluster2600 · 2026-02-06
73.9%
#13370: Tools: rewrite Grok parser, add Tavily provider, multi-provider con...
by a-anand-91119 · 2026-02-10
73.5%
#12378: feat: expose download and waitForDownload actions in browser agent ...
by vabole · 2026-02-09
72.9%
#14944: fix(browser): prefer openclaw profile in headless/noSandbox environ...
by BenediktSchackenberg · 2026-02-12
72.1%
#17729: fix(configure): update web tools hint to reflect all search providers
by raktim-mondol · 2026-02-16
71.3%
#11692: feat: add standalone browser CLI for Linux users
by shipitirl · 2026-02-08
71.1%
#23363: Browser: fallback to managed profile and improve runtime diagnostics
by isdoho · 2026-02-22
71.0%
#9020: fix(browser): skip port ownership and WS reachability checks for re...
by yepack · 2026-02-04
70.7%
#8715: fix(web-search): safer provider resolution & Perplexity auto-detection
by abhijeet117 · 2026-02-04
70.5%
#7589: Tests: accept browser profiles auth option
by justinhuangcode · 2026-02-03
70.3%