Skip to content

Commit ed564cf

Browse files
fix: rename 'browser_use' -> 'browser_action' (#148)
1 parent 416349e commit ed564cf

File tree

9 files changed

+24
-24
lines changed

9 files changed

+24
-24
lines changed

src/core/eko.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ export class Eko {
130130
'name': prompt,
131131
'description': description,
132132
'tools': [
133-
'browser_use',
133+
'browser_action',
134134
'document_agent',
135135
'export_file',
136136
'extract_content',
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { BrowserUseParam, BrowserUseResult } from '../../types/tools.types';
1+
import { BrowserActionParam, BrowserActionResult } from '../../types/tools.types';
22
import { Tool, InputSchema, ExecutionContext } from '../../types/action.types';
33
import { getWindowId, getTabId, sleep, injectScript, executeScript } from '../utils';
44
import * as browser from './browser';
@@ -8,14 +8,14 @@ import { logger } from '@/common/log';
88
/**
99
* Browser Use for general
1010
*/
11-
export class BrowserUse extends ToolReturnsScreenshot<BrowserUseParam> {
11+
export class BrowserAction extends ToolReturnsScreenshot<BrowserActionParam> {
1212
name: string;
1313
description: string;
1414
input_schema: InputSchema;
1515

1616
constructor() {
1717
super();
18-
this.name = 'browser_use';
18+
this.name = 'browser_action';
1919
this.description = `Use structured commands to interact with the browser, manipulating page elements through screenshots and webpage element extraction.
2020
* This is a browser GUI interface where you need to analyze webpages by taking screenshots and extracting page element structures, and specify action sequences to complete designated tasks.
2121
* Before any operation, you must first call the \`screenshot_extract_element\` command, which will return the browser page screenshot and structured element information, both specially processed.
@@ -79,8 +79,8 @@ export class BrowserUse extends ToolReturnsScreenshot<BrowserUseParam> {
7979
* @param {*} params { action: 'input_text', index: 1, text: 'string' }
8080
* @returns > { success: true, image?: { type: 'base64', media_type: 'image/jpeg', data: '/9j...' }, text?: string }
8181
*/
82-
async realExecute(context: ExecutionContext, params: BrowserUseParam): Promise<BrowserUseResult> {
83-
logger.debug("debug 'browser_use'...");
82+
async realExecute(context: ExecutionContext, params: BrowserActionParam): Promise<BrowserActionResult> {
83+
logger.debug("debug 'browser_action'...");
8484
logger.debug(params);
8585
try {
8686
if (params === null || !params.action) {
@@ -211,7 +211,7 @@ export class BrowserUse extends ToolReturnsScreenshot<BrowserUseParam> {
211211
`Invalid parameters. The "${params.action}" value is not included in the "action" enumeration.`
212212
);
213213
}
214-
logger.debug(`execute 'browser_use'...done, result=${result}`);
214+
logger.debug(`execute 'browser_action'...done, result=${result}`);
215215
return result
216216
} catch (e: any) {
217217
logger.error('Browser use error:', e);

src/extension/tools/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { BrowserUse } from './browser_use';
1+
import { BrowserAction } from './browser_action';
22
import { ExportFile } from './export_file';
33
import { ExtractContent } from './extract_content';
44
import { GetAllTabs } from './get_all_tabs';
@@ -12,7 +12,7 @@ import { SwitchTab } from './switch_tab';
1212
export * from '../../common/tools';
1313

1414
export {
15-
BrowserUse,
15+
BrowserAction,
1616
ExportFile,
1717
ExtractContent,
1818
OpenUrl,

src/extension/tools/open_url.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { BrowserUseParam, OpenUrlParam, OpenUrlResult } from '../../types/tools.types';
1+
import { BrowserActionParam, OpenUrlParam, OpenUrlResult } from '../../types/tools.types';
22
import { Tool, InputSchema, ExecutionContext } from '../../types/action.types';
33
import { getWindowId, open_new_tab } from '../utils';
44
import { ToolReturnsScreenshot } from './tool_returns_screenshot';

src/extension/tools/tool_returns_screenshot.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
import { BrowserUseResult, ExecutionContext, InputSchema, Tool } from "@/types";
2-
import { BrowserUse } from "./browser_use";
1+
import { BrowserActionResult, ExecutionContext, InputSchema, Tool } from "@/types";
2+
import { BrowserAction } from "./browser_action";
33
import { logger } from "@/common/log";
44
import { sleep } from "../utils";
55

6-
export abstract class ToolReturnsScreenshot<T> implements Tool<T, BrowserUseResult> {
6+
export abstract class ToolReturnsScreenshot<T> implements Tool<T, BrowserActionResult> {
77
abstract name: string;
88
abstract description: string;
99
abstract input_schema: InputSchema;
1010
abstract realExecute(context: ExecutionContext, params: T): Promise<any>;
1111

12-
async execute(context: ExecutionContext, params: T): Promise<BrowserUseResult> {
12+
async execute(context: ExecutionContext, params: T): Promise<BrowserActionResult> {
1313
const realResult = await this.realExecute(context, params);
1414
logger.debug("debug realResult...");
1515
logger.debug(realResult);
1616
await sleep(3000); // wait for page loding
17-
let instance = new BrowserUse();
17+
let instance = new BrowserAction();
1818
const image = await instance.realExecute(context, { action: "screenshot_extract_element" });
1919
return image;
2020
}

src/nodejs/tools/browser_use.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
import { BrowserUseParam, BrowserUseResult } from '../../types/tools.types';
1+
import { BrowserActionParam, BrowserActionResult } from '../../types/tools.types';
22
import { Tool, InputSchema, ExecutionContext } from '../../types/action.types';
33
import { chromium, Browser, Page, ElementHandle, BrowserContext } from 'playwright';
44
import { run_build_dom_tree } from '../script/build_dom_tree';
55

66
/**
77
* Browser Use => `npx playwright install`
88
*/
9-
export class BrowserUse implements Tool<BrowserUseParam, BrowserUseResult> {
9+
export class BrowserUse implements Tool<BrowserActionParam, BrowserActionResult> {
1010
name: string;
1111
description: string;
1212
input_schema: InputSchema;
@@ -81,7 +81,7 @@ export class BrowserUse implements Tool<BrowserUseParam, BrowserUseResult> {
8181
* @param {*} params { action: 'input_text', index: 1, text: 'string' }
8282
* @returns > { success: true, image?: { type: 'base64', media_type: 'image/jpeg', data: '/9j...' }, text?: string }
8383
*/
84-
async execute(context: ExecutionContext, params: BrowserUseParam): Promise<BrowserUseResult> {
84+
async execute(context: ExecutionContext, params: BrowserActionParam): Promise<BrowserActionResult> {
8585
try {
8686
if (params === null || !params.action) {
8787
throw new Error('Invalid parameters. Expected an object with a "action" property.');

src/services/workflow/generator.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ export class WorkflowGenerator {
175175
const action = ActionImpl.createPromptAction(
176176
nodeData.action.name,
177177
nodeData.action.description,
178-
[this.toolRegistry.getTool('browser_use')],
178+
[this.toolRegistry.getTool('browser_action')],
179179
this.llmProvider,
180180
{ maxTokens: 8192 }
181181
);

src/types/tools.types.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ export interface ComputerUseResult {
1010
[key: string]: any;
1111
}
1212

13-
export interface BrowserUseParam {
13+
export interface BrowserActionParam {
1414
action: string;
1515
index?: number;
1616
text?: string;
1717
}
1818

19-
export interface BrowserUseResult {
19+
export interface BrowserActionResult {
2020
success: boolean;
2121
image?: ScreenshotImage;
2222
text?: string;

src/web/tools/browser_use.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
import { BrowserUseParam, BrowserUseResult } from '../../types/tools.types';
1+
import { BrowserActionParam, BrowserActionResult } from '../../types/tools.types';
22
import { Tool, InputSchema, ExecutionContext } from '../../types/action.types';
33
import { get_clickable_elements, remove_highlight } from '../script/build_dom_tree';
44
import * as browser from './browser';
55

66
/**
77
* Browser Use for general
88
*/
9-
export class BrowserUse implements Tool<BrowserUseParam, BrowserUseResult> {
9+
export class BrowserUse implements Tool<BrowserActionParam, BrowserActionResult> {
1010
name: string;
1111
description: string;
1212
input_schema: InputSchema;
@@ -75,7 +75,7 @@ export class BrowserUse implements Tool<BrowserUseParam, BrowserUseResult> {
7575
* @param {*} params { action: 'input_text', index: 1, text: 'string' }
7676
* @returns > { success: true, image?: { type: 'base64', media_type: 'image/jpeg', data: '/9j...' }, text?: string }
7777
*/
78-
async execute(context: ExecutionContext, params: BrowserUseParam): Promise<BrowserUseResult> {
78+
async execute(context: ExecutionContext, params: BrowserActionParam): Promise<BrowserActionResult> {
7979
try {
8080
if (params === null || !params.action) {
8181
throw new Error('Invalid parameters. Expected an object with a "action" property.');

0 commit comments

Comments
 (0)