Automation Bridge allows Yasan Launcher and third-party apps such as Tasker to communicate through Android broadcasts.
This is a step-by-step setup guide for Automation Bridge. You can also use the llms.txt file for AI-assisted setup.
Outgoing Broadcasts: sending events to other apps
Incoming Commands: receiving commands from other apps
To enable Space change broadcasts, follow the steps below:
To listen to these broadcasts, follow the steps below:
General Guide
yasan.space.mnml.ai.launcher.action.ACTIVE_SPACE_CHANGED broadcast actionsTasker Guide
yasan.space.mnml.ai.launcher.action.ACTIVE_SPACE_CHANGED%space_idThe ACTIVE_SPACE_CHANGED broadcast contains these extras:
| Extra | Meaning | Possible values |
|---|---|---|
space_id | New active Space ID | home, commute, away, active, school, work, focus, morning, night |
set_by | How the Space was activated | user, time, location_enter, location_exit, external |
changed_at | Change time | Unix time in milliseconds |
previous_space_id | Previously active Space ID | home, commute, away, active, school, work, focus, morning, night |
previous_set_by | How the previous Space was activated | user, time, location_enter, location_exit, external |
previous_changed_at | When the previous Space became active (if available) | Unix time in milliseconds |
To enable gesture broadcasts, follow the steps below:
To listen to these broadcasts, follow the steps below:
General Guide
yasan.space.mnml.ai.launcher.action.GESTURE_TRIGGERED broadcast actionsgesture_id extra to identify the gesture, listed belowTasker Guide
yasan.space.mnml.ai.launcher.action.GESTURE_TRIGGERED%gesture_id local variable lets you identify the gesture, listed belowThe gesture_id value identifies the gesture:
| Gesture | ID |
|---|---|
| 1-finger swipe down | swipe_down |
| 2-finger swipe down | two_finger_swipe_down |
| 3-finger swipe down | three_finger_swipe_down |
| 1-finger swipe up | swipe_up |
| 2-finger swipe up | two_finger_swipe_up |
| 3-finger swipe up | three_finger_swipe_up |
| 1-finger swipe left | swipe_left |
| 2-finger swipe left | two_finger_swipe_left |
| 3-finger swipe left | three_finger_swipe_left |
| 1-finger swipe right | swipe_right |
| 2-finger swipe right | two_finger_swipe_right |
| 3-finger swipe right | three_finger_swipe_right |
| Double tap | double_tap |
Broadcast Whitelist allows you to select which apps should receive the broadcasts from Yasan Launcher. It appears when either Broadcast Space Changes or Allow Broadcasting Gestures is enabled, and the same list applies to both.
To enable updating spaces in other apps, follow the steps below:
To send space update commands to Yasan Launcher, follow the steps below:
General Guide
yasan.space.mnml.ai.launcher package with action yasan.space.mnml.ai.launcher.action.SET_ACTIVE_SPACEpassword, set to your passwordspace_id, set to one of the Space IDs listed belowTasker Guide
yasan.space.mnml.ai.launcheryasan.space.mnml.ai.launcher.action.SET_ACTIVE_SPACEpassword:<YourPassword>, your passwordspace_id:<space>, one of the Space IDs listed belowSet space_id to one of these values:
| Space | ID |
|---|---|
| Home | home |
| Commute | commute |
| Away | away |
| Active | active |
| School | school |
| Work | work |
| Focus | focus |
| Morning | morning |
| Night | night |
To enable updating settings in other apps, follow the steps below:
To send setting update commands to Yasan Launcher, follow the steps below:
General Guide
yasan.space.mnml.ai.launcher package with action yasan.space.mnml.ai.launcher.action.SET_SETTINGpassword, set to your passwordsetting_id, set to the setting to change, listed belowvalue, set to the new value as textspace_id only when changing a setting that supports a Space-specific overrideTasker Guide
yasan.space.mnml.ai.launcheryasan.space.mnml.ai.launcher.action.SET_SETTINGpassword:<YourPassword>, your passwordsetting_id:<setting>, one of the settings listed belowvalue:<value>, the new value as textspace_id:<space> only when changing a setting that supports a Space-specific overrideSend all values as text. Send value as an empty string to reset the setting.
A checked box means the setting supports a Space-specific override.
| Setting | setting_id | Supports Space | Accepted values |
|---|---|---|---|
| Streamer Mode | streamer_mode | check_box_outline_blank | true, false |
| Notification Dots | notification_dots | check_box | true, false |
| Notification Dot Color | notification_dot_color | check_box | content, information, caution, danger, success |
| Show Wallpaper | show_wallpaper | check_box | true, false |
| Auto Adaptive Icons | auto_adaptive_icons | check_box | true, false |
| Theme Grayscale | theme_grayscale | check_box | true, false |
| Icon Pack | icon_pack | check_box | system or the package name of an installed icon pack app |
| Orientation | orientation | check_box_outline_blank | system, portrait, landscape |
| Icon Shape | icon_shape | check_box | system, circle, rounded_square, square, squircle |
| Primary Theme | theme_palette | check_box | A Theme ID
, or system when set globally (without space_id) |
| Light Theme | theme_light_palette | check_box_outline_blank | A Theme ID |
| Dark Theme | theme_dark_palette | check_box_outline_blank | A Theme ID |
theme_palette to system means the Follow System theme setting is enabled; the active theme switches between theme_light_palette and theme_dark_palette depending on the system dark mode.system is only accepted for the global primary theme setting. Space-specific settings do not support changing based on system dark mode.| Theme | ID |
|---|---|
| Light | light |
| Dark | dark |
| Black | black |
| Solarized Dark | solarized-dark |
| Solarized Light | solarized-light |
| Catppuccin Frappé | catppuccin-frappe |
| Catppuccin Latte | catppuccin-latte |
| Catppuccin Macchiato | catppuccin-macchiato |
| Catppuccin Mocha | catppuccin-mocha |
| Gruvbox Dark | gruvbox-dark |
| Gruvbox Light | gruvbox-light |
These themes are from Kepko , the open-source design system Yasan Launcher uses.
All commands sent to Yasan Launcher need to include a valid password, otherwise they are rejected.
Include this password in every incoming command:
General Guide
password, set to the copied passwordTasker Guide
password:<YourPassword>