Automation Bridge

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.

Available Functionalities

Outgoing Broadcasts

Broadcast Space Changes

To enable Space change broadcasts, follow the steps below:

  1. Open Settings > Advanced > Automation Bridge
  2. Enable Broadcast Space Changes
  3. Make sure your automation app is whitelisted
  4. Now the whitelisted apps receive a broadcast whenever the active Space changes

To listen to these broadcasts, follow the steps below:

General Guide

  1. Listen for yasan.space.mnml.ai.launcher.action.ACTIVE_SPACE_CHANGED broadcast actions
  2. Read the broadcast’s extras to get the details of the change, listed below

Tasker Guide

  1. Open Tasker
  2. Open Profiles tab
  3. Tap the plus (+) button
  4. Create a new Event
  5. Select System Event category
  6. Select Intent Received event
  7. Set Action to yasan.space.mnml.ai.launcher.action.ACTIVE_SPACE_CHANGED
  8. The extras below are available as local variables named after them, e.g. %space_id

The ACTIVE_SPACE_CHANGED broadcast contains these extras:

ExtraMeaningPossible values
space_idNew active Space IDhome, commute, away, active, school, work, focus, morning, night
set_byHow the Space was activateduser, time, location_enter, location_exit, external
changed_atChange timeUnix time in milliseconds
previous_space_idPreviously active Space IDhome, commute, away, active, school, work, focus, morning, night
previous_set_byHow the previous Space was activateduser, time, location_enter, location_exit, external
previous_changed_atWhen the previous Space became active (if available)Unix time in milliseconds

Broadcast Gestures

To enable gesture broadcasts, follow the steps below:

  1. Open Settings > Advanced > Automation Bridge
  2. Enable Allow Broadcasting Gestures
  3. Make sure your automation app is whitelisted
  4. Open Settings > Gestures
  5. Tap the gesture you want to broadcast and select Broadcast action
  6. Now the whitelisted apps receive a broadcast when this gesture is triggered

To listen to these broadcasts, follow the steps below:

General Guide

  1. Listen for yasan.space.mnml.ai.launcher.action.GESTURE_TRIGGERED broadcast actions
  2. Read the gesture_id extra to identify the gesture, listed below

Tasker Guide

  1. Open Tasker
  2. Open Profiles tab
  3. Tap the plus (+) button
  4. Create a new Event
  5. Select System Event category
  6. Select Intent Received event
  7. Set Action to yasan.space.mnml.ai.launcher.action.GESTURE_TRIGGERED
  8. The %gesture_id local variable lets you identify the gesture, listed below

The gesture_id value identifies the gesture:

GestureID
1-finger swipe downswipe_down
2-finger swipe downtwo_finger_swipe_down
3-finger swipe downthree_finger_swipe_down
1-finger swipe upswipe_up
2-finger swipe uptwo_finger_swipe_up
3-finger swipe upthree_finger_swipe_up
1-finger swipe leftswipe_left
2-finger swipe lefttwo_finger_swipe_left
3-finger swipe leftthree_finger_swipe_left
1-finger swipe rightswipe_right
2-finger swipe righttwo_finger_swipe_right
3-finger swipe rightthree_finger_swipe_right
Double tapdouble_tap

Whitelist

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.

  1. Open Settings > Advanced > Automation Bridge
  2. Open Broadcast Whitelist
  3. Select apps you want to whitelist for broadcasts
  4. Now only these whitelisted apps receive the broadcasts

Notes

Incoming Commands

Update Space

To enable updating spaces in other apps, follow the steps below:

  1. Open Settings > Advanced > Automation Bridge
  2. Enable Accept External Commands

To send space update commands to Yasan Launcher, follow the steps below:

General Guide

  1. Send a broadcast to the yasan.space.mnml.ai.launcher package with action yasan.space.mnml.ai.launcher.action.SET_ACTIVE_SPACE
  2. Include the extra password, set to your password
  3. Include the extra space_id, set to one of the Space IDs listed below

Tasker Guide

  1. Open Tasker
  2. Open Tasks tab
  3. Tap the plus (+) button
  4. Name your task as you wish, e.g. “Update Yasan Launcher Space”
  5. Confirm the task name which opens the Task Edit screen
  6. Tap the plus (+) button
  7. Select System category
  8. Select Send Intent action
  9. Set Target to Broadcast Receiver
  10. Set Package to yasan.space.mnml.ai.launcher
  11. Set Action to yasan.space.mnml.ai.launcher.action.SET_ACTIVE_SPACE
  12. Add extra password:<YourPassword>, your password
  13. Add extra space_id:<space>, one of the Space IDs listed below

Set space_id to one of these values:

SpaceID
Homehome
Commutecommute
Awayaway
Activeactive
Schoolschool
Workwork
Focusfocus
Morningmorning
Nightnight

Notes

Update Settings

To enable updating settings in other apps, follow the steps below:

  1. Open Settings > Advanced > Automation Bridge
  2. Enable Accept External Commands

To send setting update commands to Yasan Launcher, follow the steps below:

General Guide

  1. Send a broadcast to the yasan.space.mnml.ai.launcher package with action yasan.space.mnml.ai.launcher.action.SET_SETTING
  2. Include the extra password, set to your password
  3. Include the extra setting_id, set to the setting to change, listed below
  4. Include the extra value, set to the new value as text
  5. Include the extra space_id only when changing a setting that supports a Space-specific override

Tasker Guide

  1. Open Tasker
  2. Open Tasks tab
  3. Tap the plus (+) button
  4. Name your task as you wish, e.g. “Update Yasan Launcher Setting”
  5. Confirm the task name which opens the Task Edit screen
  6. Tap the plus (+) button
  7. Select System category
  8. Select Send Intent action
  9. Set Target to Broadcast Receiver
  10. Set Package to yasan.space.mnml.ai.launcher
  11. Set Action to yasan.space.mnml.ai.launcher.action.SET_SETTING
  12. Add extra password:<YourPassword>, your password
  13. Add extra setting_id:<setting>, one of the settings listed below
  14. Add extra value:<value>, the new value as text
  15. Add extra space_id:<space> only when changing a setting that supports a Space-specific override

Send all values as text. Send value as an empty string to reset the setting.

Supported settings

A checked box means the setting supports a Space-specific override.

Settingsetting_idSupports SpaceAccepted values
Streamer Modestreamer_modecheck_box_outline_blanktrue, false
Notification Dotsnotification_dotscheck_boxtrue, false
Notification Dot Colornotification_dot_colorcheck_boxcontent, information, caution, danger, success
Show Wallpapershow_wallpapercheck_boxtrue, false
Auto Adaptive Iconsauto_adaptive_iconscheck_boxtrue, false
Theme Grayscaletheme_grayscalecheck_boxtrue, false
Icon Packicon_packcheck_boxsystem or the package name of an installed icon pack app
Orientationorientationcheck_box_outline_blanksystem, portrait, landscape
Icon Shapeicon_shapecheck_boxsystem, circle, rounded_square, square, squircle
Primary Themetheme_palettecheck_boxA Theme ID , or system when set globally (without space_id)
Light Themetheme_light_palettecheck_box_outline_blankA Theme ID
Dark Themetheme_dark_palettecheck_box_outline_blankA Theme ID
Notes

Supported Themes

ThemeID
Lightlight
Darkdark
Blackblack
Solarized Darksolarized-dark
Solarized Lightsolarized-light
Catppuccin Frappécatppuccin-frappe
Catppuccin Lattecatppuccin-latte
Catppuccin Macchiatocatppuccin-macchiato
Catppuccin Mochacatppuccin-mocha
Gruvbox Darkgruvbox-dark
Gruvbox Lightgruvbox-light

These themes are from Kepko , the open-source design system Yasan Launcher uses.

Password

All commands sent to Yasan Launcher need to include a valid password, otherwise they are rejected.

  1. Open Settings > Advanced > Automation Bridge
  2. Copy the auto-generated password by tapping the Copy Password button

Include this password in every incoming command:

General Guide

  1. Include the extra password, set to the copied password

Tasker Guide

  1. Add extra password:<YourPassword>

Notes

Footnotes