askui
Version:
Reliable, automated end-to-end-testing that depends on what is shown on your screen instead of the technology you are running on
178 lines (177 loc) • 6.14 kB
TypeScript
import { BetaTool } from '@anthropic-ai/sdk/resources/beta/messages/messages';
import { MODIFIER_KEY, PC_KEY, ANDROID_KEY, PC_AND_MODIFIER_KEY } from '../../../../execution/dsl';
import { BaseAgentTool, ToolResult } from './base';
import { ExecutionRuntime } from '../../../../execution/execution-runtime';
import { ControlCommand } from '../../../ui-control-commands';
export declare class OsAgentHandler {
private AgentOsClient;
private targetResolution;
private screenDimensions;
private paddingInfo;
constructor(AgentOsClient: ExecutionRuntime, screenDimensions: {
width: number;
height: number;
});
private updatePaddingInfo;
static createInstance(AgentOsClient: ExecutionRuntime): Promise<OsAgentHandler>;
getTargetResolution(): {
width: number;
height: number;
};
getScreenDimensions(): {
width: number;
height: number;
};
setTargetResolution(width: number, height: number): void;
takeScreenshot(): Promise<string>;
scaleCoordinates(source: 'api' | 'computer', x: number, y: number): [number, number];
requestControl(controlCommand: ControlCommand): Promise<void>;
mouseMove(x: number, y: number): Promise<void>;
mouseClick(button: "left" | "right" | "middle", doubleClick: boolean): Promise<void>;
mouseScroll(dx: number, dy: number): Promise<void>;
mouseHoldLeftButtonDown(): Promise<void>;
mouseReleaseLeftButton(): Promise<void>;
desktopKeyPressAndRelease(key: PC_AND_MODIFIER_KEY, modifiers?: MODIFIER_KEY[]): Promise<void>;
desktopKeyHoldDown(key: PC_AND_MODIFIER_KEY, modifiers?: MODIFIER_KEY[]): Promise<void>;
desktopKeyRelease(key: PC_AND_MODIFIER_KEY, modifiers?: MODIFIER_KEY[]): Promise<void>;
typeText(text: string): Promise<void>;
androidKeyPress(key: ANDROID_KEY): Promise<void>;
androidKeySequencePress(keys: ANDROID_KEY[]): Promise<void>;
executeShellCommand(command: string): Promise<void>;
}
export declare class ScreenShotTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class MouseMoveTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
x: number;
y: number;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class MouseClickTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
button: 'left' | 'right' | 'middle';
doubleClick: boolean;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class MouseScrollTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
dx: number;
dy: number;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class MouseDragAndDropTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
startX: number;
startY: number;
endX: number;
endY: number;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class MouseHoldLeftButtonDownTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class MouseReleaseLeftButtonTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class DesktopPressAndReleaseKeysTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
key: PC_KEY;
modifiers?: MODIFIER_KEY[];
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class DesktopKeyHoldDownTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
key: PC_AND_MODIFIER_KEY;
modifiers?: MODIFIER_KEY[];
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class DesktopKeyReleaseTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
key: PC_AND_MODIFIER_KEY;
modifiers?: MODIFIER_KEY[];
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class TypeTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
text: string;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class AndroidSingleKeyPressTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
key: ANDROID_KEY;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class AndroidSequenceKeyPressTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
keys: ANDROID_KEY[];
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class AgentErrorTool extends BaseAgentTool {
constructor();
execute(command: {
error: string;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class ExecuteShellCommandTool extends BaseAgentTool {
private osAgentHandler;
constructor(osAgentHandler: OsAgentHandler);
execute(command: {
command: string;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class WaitTool extends BaseAgentTool {
constructor();
execute(command: {
milliseconds: number;
}): Promise<ToolResult>;
toParams(): BetaTool;
}
export declare class PrintTool extends BaseAgentTool {
constructor();
execute(command: {
text: string;
}): Promise<ToolResult>;
toParams(): BetaTool;
}