Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DEVICE_IP | No | The IP address of your Android device running AutoBot HTTP service | 172.22.34.73 |
| DEVICE_PORT | No | The port number of your Android device running AutoBot HTTP service | 18080 |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_packages | Get all installed packages on the device
Returns:
str: A list of all installed packages on the device as a string |
| execute_adb_shell_command | Executes an ADB command and returns the output or an error. Args: command (str): The ADB shell command to execute Returns: str: The output of the ADB command |
| get_uilayout | Retrieves information about clickable elements in the current UI.
Returns a formatted string containing details about each clickable elements,
including its text, content description, bounds, and center coordinates.
Returns:
str: A formatted list of clickable elements with their properties |
| get_screenshot | Takes a screenshot of the device and returns it. Returns: Image: the screenshot |
| get_package_action_intents | Get all non-data actions from Activity Resolver Table for a package
Args:
package_name (str): The name of the package to get actions for
Returns:
list[str]: A list of all non-data actions from the Activity Resolver Table for the package |
| click | Click at the specified coordinates on the screen
Args:
x (float): X coordinate (can be absolute or relative 0-1)
y (float): Y coordinate (can be absolute or relative 0-1)
Returns:
str: Success or error message |
| long_click | Long click at the specified coordinates on the screen
Args:
x (float): X coordinate (can be absolute or relative 0-1)
y (float): Y coordinate (can be absolute or relative 0-1)
Returns:
str: Success or error message |
| swipe | Swipe from one point to another on the screen
Args:
x1 (float): Start X coordinate (can be absolute or relative 0-1)
y1 (float): Start Y coordinate (can be absolute or relative 0-1)
x2 (float): End X coordinate (can be absolute or relative 0-1)
y2 (float): End Y coordinate (can be absolute or relative 0-1)
duration (int): Duration of the swipe in milliseconds (default: 500)
Returns:
str: Success or error message |
| input_text | Input text on the device
Args:
text (str): Text to input
Returns:
str: Success or error message |
| press_key | Press a key on the device
Args:
key_code (int): Key code to press (e.g., 3 for HOME, 4 for BACK)
Returns:
str: Success or error message |
| start_app | Start an application by package name
Args:
package_name (str): Package name of the application to start
Returns:
str: Success or error message |
| stop_app | Stop an application by package name
Args:
package_name (str): Package name of the application to stop
Returns:
str: Success or error message |
| get_device_info | Get detailed information about the device
Returns:
str: Device information as a formatted string |
| get_screen_info | Get information about the screen (dimensions, rotation)
Returns:
str: Screen information as a formatted string |
| get_contacts | Get all contacts or a specific contact by phone number
Args:
number (str): Phone number to search for, or "*" to get all contacts (default)
Returns:
str: Contact information as JSON |
| delete_contact | Delete a contact or all contacts
Warning: Use with caution, especially when deleting all contacts
Args:
number (str): Phone number of contact to delete, or "*" to delete all contacts (default)
Returns:
str: Success or error message |
| insert_contact | Insert a new contact
Args:
name (str): Contact name
number (str): Contact phone number
Returns:
str: Success or error message |
| get_sms | Get all SMS messages or messages from a specific number
Args:
number (str): Phone number to get SMS from, or "*" to get all SMS (default)
Returns:
str: SMS messages as JSON |
| send_sms | Send an SMS message
Args:
phone_number (str): Recipient phone number
message (str): Message content
Returns:
str: Success or error message |
| list_files | List files in a directory
Args:
path (str): Directory path to list (e.g., "/sdcard")
Returns:
str: File list as JSON |
| delete_file | Delete a file or directory
Warning: This will delete the file/directory and all its contents
Args:
path (str): File or directory path to delete
Returns:
str: Success or error message |
| get_file_url | Get the download URL for a file
Args:
path (str): File path to download
Returns:
str: Download URL or error message |
| set_clipboard_text | Set clipboard text
Args:
text (str): Text to set in clipboard
Returns:
str: Success or error message |
| get_clipboard_text | Get clipboard text
Returns:
str: Clipboard content or error message |
| input_char | Input ASCII characters using key simulation
Use this when input_text doesn't work in certain situations
Args:
text (str): ASCII text to input
Returns:
str: Success or error message |
| clear_text | Clear text in the current input field
Returns:
str: Success or error message |
| press | Long press at specified coordinates for a specific duration
Args:
x (float): X coordinate (can be absolute or relative 0-1)
y (float): Y coordinate (can be absolute or relative 0-1)
duration (int): Duration of press in milliseconds (default: 1000)
Returns:
str: Success or error message |
| gesture | Execute a single-finger gesture
Args:
duration (int): Duration of gesture in milliseconds
points (list): List of points [{"x": 100, "y": 200}, {"x": 150, "y": 250}, ...]
Returns:
str: Success or error message |
| gestures | Execute multi-finger gestures
Args:
gestures_data (list): List of gesture objects, each with:
- delay (int): Delay before starting this gesture
- duration (int): Duration of gesture in milliseconds
- points (list): List of points for the gesture
Returns:
str: Success or error message |
| call_phone | Make a phone call (SIM card 1 only)
Args:
number (str): Phone number to call
Returns:
str: Success or error message |
| end_call | End the current phone call
Returns:
str: Success or error message |
| turn_screen_off | Turn off the screen (device remains active for control/casting)
Returns:
str: Success or error message |
| turn_screen_on | Turn on the screen
Returns:
str: Success or error message |
| start_screen_recording | Start screen recording
Args:
limit (int): Maximum recording duration in seconds (default: 180)
Returns:
str: Success or error message |
| stop_screen_recording | Stop screen recording
Returns:
str: Success or error message |
| play_music | Play music from a URL
Warning: This may fail on Android 10 and below
Args:
url (str): URL of the audio file to play
Returns:
str: Success or error message |
| stop_music | Stop playing music
Returns:
str: Success or error message |
| execute_script | Execute an AutoX.js script
Args:
script (str): Script content to execute (optional)
path (str): Local script path on device (optional, takes priority over script)
delay (int): Delay before execution in milliseconds (default: 0)
interval (int): Interval between loop iterations in milliseconds (default: 0)
loop_times (int): Number of times to loop (default: 1, 0 for infinite)
Returns:
str: Success or error message |
| stop_all_scripts | Stop all running AutoX.js scripts
Returns:
str: Success or error message |
| set_device_name | Set a display name for the device
Note: This doesn't change the system device name, only the AutoBot display name
Args:
name (str): Display name for the device
Returns:
str: Success or error message |
| get_device_name | Get the display name of the device
Returns:
str: Device display name or error message |
| get_top_activity | Get information about the current top activity
Returns:
str: Top activity information as JSON |
| clear_app_data | Clear application data for a package
Warning: This will delete all app data and cannot be undone
Args:
package_name (str): Package name of the app
Returns:
str: Success or error message |
| get_screen_rotation | Get the screen rotation
Returns:
str: Screen rotation as JSON (0=portrait, 1=landscape-90, 2=inverted, 3=landscape-270) |
| get_screen_xml | Get screen layout in XML format
Args:
is_wait (bool): Whether to wait for layout (default: true)
Returns:
str: Screen layout as XML |
| get_device_id | Get the device ID
Returns:
str: Device ID |
| get_device_ip | Get all IP addresses of the device
Returns:
str: IP addresses as JSON |
| get_version | Get the AutoBot version number
Returns:
str: Version number |
| hello | Test connection to AutoBot server
Returns:
str: Server response |
| turn_safe_mode_on | Turn on safe mode
In safe mode, AutoBot cannot access screen layout (JSON/XML) or receive notifications
Returns:
str: Success or error message |
| turn_safe_mode_off | Turn off safe mode
Returns:
str: Success or error message |
| is_safe_mode | Check if safe mode is enabled
Returns:
str: Safe mode status (1=enabled, 0=disabled) |
| exit_service | Exit the AutoBot service
Warning: This will terminate the AutoBot server
Returns:
str: Success or error message |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |