Sessions
Each agent chat runs one live CLI session. The CLI keeps its own memory from turn to turn, so Aether sends only your new message, not the whole transcript.
Steer and queue
Section titled “Steer and queue”While a turn is running you can keep typing:
- Steer sends your message into the current turn, for CLIs that accept that.
- Queue holds your message and sends it when the turn ends.
Esc in the composer stops the turn. A stop asks the CLI to finish gracefully and kills it after 3 seconds if it doesn’t. Whatever the agent produced before the stop stays in the transcript.
Status you can trust
Section titled “Status you can trust”A chat is always in one visible state: working, waiting on you, retrying, quiet, stalled or failed, with a timer. If a turn receives no events for 60 seconds, the chat says so and shows the process state and the last event it saw.
Approvals and questions from subagents and child sessions reach you too. If one is answered or cancelled somewhere else, its card disappears.
Fork, rollback and resume
Section titled “Fork, rollback and resume”| Action | What happens |
|---|---|
| Fork | Starts a new chat from earlier messages. The new CLI session is seeded with the transcript text. |
| Rollback | Edit and resend, or retry: the chat is truncated at that message and prompted again. |
| Resume | After an app restart, the chat reconnects to its CLI session and the transcript is restored. |
Switching provider, model, access or effort also restarts the CLI and resumes the same conversation.
Where chats are stored
Section titled “Where chats are stored”Chats, their provider and model, access and effort, and their session ids are stored in aether.db, a SQLite file in Aether’s config folder.