# Hands-off goals The user starts or ends a goal through the exported server actions. Only the standing `@ultimate` conversation uses the `goal` tool. The root document stores one open goal and its decisions. Three failed tries block a criterion. Rewording preserves unchanged criteria. Decisions can name screenshots from the caller's conversation. The `latest` reference never crosses an input boundary. Each input to `@ultimate` receives the current open goal note. A queued start card grants nothing after the user ends the goal. The start wakes `@ultimate`. The report uses a passive write. The optional automations service creates one keyed reminder every 30 minutes. A durable task synchronizes its state after each lifecycle change. A replay adopts the existing reminder. A user-deleted reminder stays deleted. Pause disables the reminder. Resume enables it. End deletes it. A reminder input adds the reminder checklist to the goal note. World automations identify a fire with the `[automation fired]` prefix. The goal hook recognizes that prefix and the structured `automations.fired` entry. Side chats and browser components are outside this server port.