agent.utils
InterfaceUtility functions, job management, and file operations. Accessed through agent.utils — random gesture helpers, event callbacks, job task management, server connectivity, and file operations.
AgentUtils Interface Overview
interface AgentUtils {
// Gesture helpers
randomClick(x1: number, y1: number, x2: number, y2: number): void;
randomSwipe(x1: number, y1: number, x2: number, y2: number, direction: Direction): void;
// Server connectivity
isServerReachable(): Promise<{ reachable: true } | { reachable: false; error: string }>;
// Event callbacks (for notifications, see agent.notifications)
setNetworkCallback(callback: NetworkCallback | null): void;
toastCallback: ToastCallback | null;
// Step tracking & debugging
outOfSteps: {
storeScreen(screen: AndroidNode, stage: string, screenState: string, remainingSteps: number, screenshotRecord: ScreenshotRecord): Promise<void>;
submit(type: "outOfSteps" | "timeout" | "debug"): Promise<SubmitResult>;
};
// Job task management
job: {
submitTask(status: AutomationStatus, data: Record<string, any>, finish: boolean, files: File[]): Promise<TaskResult>;
useAnotherTask(): Promise<TaskInfo | null>;
getCurrentTask(): Promise<CurrentTaskResult>;
};
// Bucket storage (device+job scoped)
bucket: { get(): Promise<BucketResult>; set(data: Partial<Bucket>): Promise<BucketResult> };
// Device bucket storage (device-only scoped)
deviceBucket: { get(): Promise<DeviceBucketResult>; set(data: Record<string, any>): Promise<DeviceBucketResult> };
// File operations
files: AgentFiles;
}agent.utils.helpers
randomClick, randomSwipe, isServerReachable, waitForNode
agent.utils.callbacks
setNetworkCallback, toastCallback
agent.utils.job
submitTask, useAnotherTask, getCurrentTask, addSubTasks
agent.utils.outOfSteps
storeScreen, submit — debug automation failures
agent.utils.files
exists, readFullFile, list, getHashes, and more
For notification callbacks, see agent.notifications.