# Manage User Intent With Sealed Actions

> Turn UI events into a clear action vocabulary that you can log and extend yourself to see the payoff.

- URL: https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-02-model-user-intent-with-sealed-actions
- Course: [Mobile Action Pro](https://dantech.academy/en/courses/kotlin-accelerator.md)
- Module: Compose UI from State
- Duration: 10 min
- Difficulty: beginner
- Access: Enrolled students
- Tiếng Việt: https://dantech.academy/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-02-model-user-intent-with-sealed-actions.md

## Objectives

- Name actions after user intent instead of widget details like OnSignInButtonClicked
- Define a closed action vocabulary with a sealed interface and know exactly when the compiler protects you
- Manage request actions, async result actions, dialog orchestration and one-time UI events

## In this lesson

1. Lesson Goal
2. Part 1: Callbacks And Actions In Kotlin Accelerator
3. Part 2: The Menu's Sealed Actions
4. Part 3: Not Every Action Comes From The User
5. Part 4: Drill 1, Read The Whole Auth Flow
6. Part 5: Naming By The Standard
7. Code Reading Path
8. Checkpoint
9. Bad Smells
10. Key Takeaways

## Study with an AI agent

The full lesson is for students of this course. Students open the lesson on the web and press **Markdown** to copy all of it, then paste it into Claude, ChatGPT, Cursor or whichever agent you use. Faster: mint a token at `/profile/ai-agents` and your agent reads lessons over MCP.

- [Join the course](https://dantech.academy/en/kotlin-accelerator/checkout)

---

- Previous lesson: [Design An Immutable UI Model](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-01-design-immutable-ui-models.md)
- Next lesson: [Control Recomposition](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/02-compose-ui-from-state/lesson-03-control-recomposition-with-stable-state.md)
