AiIntent

sealed interface AiIntent(source)

The structured decision the on-device model returns — one per capability in the catalog. leaving marks actions that hand off to another app (and thus background the launcher); the plan executor uses it to decide what can run inline vs. what can only be the terminal step. See Plan.

Inheritors

Types

Link copied to clipboard
data class Answer(val text: String) : AiIntent
Link copied to clipboard
data class AppNotFound(val name: String) : AiIntent

The user named an app that isn't installed — tell them, don't guess.

Link copied to clipboard
data class Call(val number: String) : AiIntent
Link copied to clipboard
data class Capture(val video: Boolean) : AiIntent
Link copied to clipboard
data class CreateEvent(val title: String, val whenText: String?) : AiIntent
Link copied to clipboard
data class CreateNote(val text: String) : AiIntent
Link copied to clipboard
data class Email(val to: String, val subject: String, val text: String) : AiIntent
Link copied to clipboard
data class FindApps(val query: String) : AiIntent

A question about installed apps ("how many music apps") — answered locally, not by the LLM.

Link copied to clipboard
data class Message(val app: String, val to: String, val text: String) : AiIntent
Link copied to clipboard
data class Navigate(val destination: String) : AiIntent
Link copied to clipboard
data class OpenApp(val app: AppEntry, val confident: Boolean = true, val alternatives: List<AppEntry> = emptyList()) : AiIntent
Link copied to clipboard
data class OpenSetting(val key: String) : AiIntent
Link copied to clipboard
data class PlayMedia(val query: String) : AiIntent
Link copied to clipboard
data class SetAlarm(val hour: Int, val minute: Int) : AiIntent
Link copied to clipboard
data class SetTimer(val seconds: Int, val label: String?) : AiIntent
Link copied to clipboard
data class ShowMap(val query: String) : AiIntent
Link copied to clipboard
data object Unknown : AiIntent
Link copied to clipboard
data class Web(val query: String) : AiIntent

Properties

Link copied to clipboard
abstract val leaving: Boolean

Does performing this send the user into another app / foreground UI?

Functions

Link copied to clipboard

Single-intent convenience for callers that don't build a plan.