update provider flag (#217)

* auto-release

* fixes

* fix secret name

* update provider flag
This commit is contained in:
Chris Tate
2026-01-23 11:41:17 -06:00
committed by GitHub
parent 57dc7602fc
commit fff4312d16
2 changed files with 22 additions and 13 deletions
+12 -2
View File
@@ -708,14 +708,24 @@ curl -o .claude/skills/agent-browser/SKILL.md \
[Browserbase](https://browserbase.com) provides remote browser infrastructure to make deployment of agentic browsing agents easy. Use it when running the agent-browser CLI in an environment where a local browser isn't feasible.
To enable Browserbase, set these environment variables:
To enable Browserbase, use the `-p` flag:
```bash
export BROWSERBASE_API_KEY="your-api-key"
export BROWSERBASE_PROJECT_ID="your-project-id"
agent-browser -p browserbase open https://example.com
```
When both variables are set, agent-browser automatically connects to a Browserbase session instead of launching a local browser. All commands work identically.
Or use environment variables for CI/scripts:
```bash
export AGENT_BROWSER_PROVIDER=browserbase
export BROWSERBASE_API_KEY="your-api-key"
export BROWSERBASE_PROJECT_ID="your-project-id"
agent-browser open https://example.com
```
When enabled, agent-browser connects to a Browserbase session instead of launching a local browser. All commands work identically.
Get your API key and project ID from the [Browserbase Dashboard](https://browserbase.com/overview).
+10 -11
View File
@@ -678,14 +678,16 @@ export class BrowserManager {
/**
* Connect to Browserbase remote browser via CDP.
* Returns true if connected, false if credentials not available.
* Requires BROWSERBASE_API_KEY and BROWSERBASE_PROJECT_ID environment variables.
*/
private async connectToBrowserbase(): Promise<boolean> {
private async connectToBrowserbase(): Promise<void> {
const browserbaseApiKey = process.env.BROWSERBASE_API_KEY;
const browserbaseProjectId = process.env.BROWSERBASE_PROJECT_ID;
if (!browserbaseApiKey || !browserbaseProjectId) {
return false;
throw new Error(
'BROWSERBASE_API_KEY and BROWSERBASE_PROJECT_ID are required when using browserbase as a provider'
);
}
const response = await fetch('https://api.browserbase.com/v1/sessions', {
@@ -727,8 +729,6 @@ export class BrowserManager {
this.pages.push(page);
this.activePageIndex = 0;
this.setupPageTracking(page);
return true;
} catch (error) {
await this.closeBrowserbaseSession(session.id, browserbaseApiKey).catch((sessionError) => {
console.error('Failed to close Browserbase session during cleanup:', sessionError);
@@ -844,14 +844,13 @@ export class BrowserManager {
return;
}
// Try connecting to cloud browser providers if configured
// Browserbase: auto-connects when BROWSERBASE_API_KEY and BROWSERBASE_PROJECT_ID are set
if (await this.connectToBrowserbase()) {
// Cloud browser providers require explicit opt-in via -p flag or AGENT_BROWSER_PROVIDER env var
// -p flag takes precedence over env var
const provider = options.provider ?? process.env.AGENT_BROWSER_PROVIDER;
if (provider === 'browserbase') {
await this.connectToBrowserbase();
return;
}
// Browser Use: requires explicit opt-in via -p browseruse flag or AGENT_BROWSER_PROVIDER=browseruse
const provider = options.provider ?? process.env.AGENT_BROWSER_PROVIDER;
if (provider === 'browseruse') {
await this.connectToBrowserUse();
return;