Atuin Devlog: Desktop AI, UI + performance improvements, SSH fixes, and more

Welcome to the first installment of a monthly post detailing what's new in Atuin Desktop. This post is a little unique as we're covering a bunch of stuff from both 2025, and the first few weeks of 2026.

AI Assistant

Agents changed how many engineers write code through 2025, so they should be able to do the same with Runbooks! There's a lot more to come here, but the assistant already makes it much easier to build out a comprehensive runbook

In the above screenshot we used it to quickly build a runbook to reproduce an issue from GitHub, and enable us to validate the fix.

Right now we're focusing on AI to enable you to build Runbooks faster. Soon, we would love to explore having AI as part of your workflow - for example, determining if the output of a prometheus query is worth escalating, or suggesting fixes to a failed block execution.

Sub runbooks

Runbooks often contain repetitive steps - setting up dependencies, getting access to a database, setting up an environment, etc. With sub runbooks, you can avoid repetition and compose smaller runbooks as part of something larger

Example of sub runbooks for setting up Rust, and creating + entering a temporary directory

Runbooks can be published and shared via the hub, therefore sub runbooks can be published and shared across users and organizations.

We still have some work to do regarding security; sub runbooks do not yet have a lockfile or any means of ensuring that they haven't changed unexpectedly.

Performance improvements

We had a number of reports of poor performance, especially during sync operations. After digging in with the profiler, we've made several performance improvements and things are feeling faster than ever!

UI Overhaul

The entire app has seen a good amount of polishing! A new sidebar, better typography, tab bar, cleaner icons, and more.

SSH Fixes

We've supported SSH for a long time, but have had issues with certain setups not quite working right. It's now possible to specify keyfiles, certificates, override SSH agent settings, and more. We also properly negotiate algorithms to ensure most servers are supported.

Notifications

We've all been there: you kick off a long-running script and get distracted browsing cat videos while it runs. When you check on it, you find it failed 10 seconds into the job.

Atuin Desktop now supports sound and system-level notifications for blocks and workflows that finish or fail, configurable based on how long the block took to run, so you'll always know when your runbooks are ready.

Creating Multiple Variables

Script blocks already support setting a template variable with the contents of the script's output, but occasionally you want to set more than one variable at a time. This is now possible, by writing key-value pairs to $ATUIN_OUTPUT_VARS, similar to GitHub Actions.

echo "my_var=some value" >> $ATUIN_OUTPUT_VARS
echo "working_dir=$(pwd)" >> $ATUIN_OUTPUT_VARS

# You can write multiline strings with heredoc syntax:
{
  echo "dir_contents<<EOF"
  ls
  echo "EOF"
} >> $ATUIN_OUTPUT_VARS

Pause block

We want runbook execution to be as hands-off as possible! But some workflows require a human to make sure everything is going ok. Pause blocks stop execution, giving you a chance to confirm or manually perform an action.

Experimental CEF support

While it hasn't yet made it into a mainline release, we now have edge builds available using Chrome Embedded Framework as a backend for Tauri. This seems to feel much snappier (plus the devtools are nicer.)

That's all for this month! If you have questions or feedback, come find us on Discord or open an issue on GitHub. See you in February.