mrkeyoor.com_
Wed 04 Nov 11:49 UTC
Open Source3 min read

kitty 0.50.0 adds session recovery after logout

kitty can restore terminal layouts and scrollback after logout. Applications aren't restarted; Linux portal support and macOS keychain access can determine whether recovery works.

kitty released version 0.50.0 on November 3, 2026, adding an option to recover terminal sessions after logout or a computer restart. For developers who keep several terminals open, the release notes describe a way to bring back their workspace and scrollback. Recovery has a deliberate limit: programs other than the shell aren't restarted.

This report follows the supplied release notes and documentation. The supplied record contains no logout recovery test or inspection of restored windows.

What comes back

According to kitty's session documentation, saved state includes window geometry and scrollback, along with instance environment variables. Restored text appears before the shell starts, with a line showing when it was saved. The recovered scrollback retains text formatting and hyperlinks.

That gives you a record of terminal output to return to. It does not resume the process that produced it. The docs explain why kitty avoids restarting programs: a command may have been run for its effects, such as deleting files. If you had a job running, recovering its displayed output doesn't mean that job resumes.

Check platform prerequisites

Linux support depends on a desktop portal implementing version 3 of the Inhibit portal, which monitors session state. The session guide names GNOME's portal as an example. Installing the terminal alone therefore doesn't establish that recovery will work on a particular Linux desktop.

On macOS, kitty never shows keychain prompts for recovery. If the keychain needs user interaction, the state is not saved or not restored. The documented causes include a locked login keychain and running a kitty build signed by a different developer from the build that saved the state. The guide also warns that, when you build kitty yourself, every new build counts as a different application. Check these conditions before relying on recovery, especially when switching builds.

Enable recovery with the storage limits in mind

The session guide gives this setting for kitty.conf:

restore_session_after_logout yes

This is the documented configuration example; it was not executed for this report.

The configuration reference says a recovered session takes precedence over startup_session. The saved session is used once, then deleted after restoration. Recovery applies when kitty starts without kitty --session or a command to run.

Storage differs by platform. On macOS, kitty encrypts saved state using keys in the login keychain, though another process running as the same user can still read the stored data. On Linux, the saved state is unencrypted, stored in the kitty cache directory and readable only by its owner, according to the documentation. Saved state includes scrollback and instance environment variables, so consider what those contain before enabling recovery.

For an upgrade, first check Linux portal support or the macOS keychain and build conditions. Then try a controlled logout with disposable terminal work and confirm that the restored output contains what you expect. This is a proposed check, not a reported test. Restart any required applications yourself.

Sources

  1. kitty changelog: 0.50.0, November 3, 2026
  2. kitty sessions: restoring after logout
  3. kitty configuration: restore_session_after_logout