v0.13.0 Highlights
New Contributors
- @liziye627-design made their first contribution in #3105
- @CatakikiFish made their first contribution in #3121
- @heydryft made their first contribution in #3117
- @futures-learner made their first contribution in #3125
Product updates
Find any setting in seconds
- The settings home now has a search field. It finds settings pages, the settings on those pages, and your own items such as cards, models, voices, stickers, and memories. Open a result and AIRI scrolls to that row and highlights it. You can move through the results with the arrow keys, and press Cmd+F or Ctrl+F to jump to the field.
- The AIRI card page now uses the same search field, so it works the same way.
Know what needs your attention
- The settings home now tells you when something you use cannot work, and why. Previously, a broken setup could fail quietly, for example replies stayed text-only and you got no hint about the cause. Now it lists:
- Providers that failed their last check, or that are not set up yet.
- Characters that have a speech provider but no model or no voice.
- Characters, or Hearing, that point to a provider they cannot use, for example a provider you removed.
- Voice input in Always on mode with no transcription set up, so your speech starts nothing.
- The list only shows things you actually use. Providers you never set up no longer show up as "API key is required."
- Edit now takes you straight to the setting you need to change and highlights it, so you don't have to hunt around the page. Dismiss hides an item on this device until its setup changes.
Desktop updates, over the air
- The desktop app can now download most updates without a new installer. It applies an update with a quick reload or a restart, depending on what changed. If a new version does not start up properly, AIRI rolls back to the previous one.
- The about page shows the version that is actually running, and lets you choose an update channel. There is a new
devchannel that follows every change onmain, for anyone who likes living on the edge. - On Steam, Flatpak, and Nix, AIRI leaves updates to your store or package manager.
New providers
- You can now use Runcrate as a chat provider. It serves open models such as DeepSeek, GLM, Qwen, and gpt-oss.
- You can now choose DeepSeek for web search in Settings → Modules → Web Search. Tavily stays the default, and your Tavily key stays where it is. Any chat model that can call tools can use it.
Experience improvements
- On phones, the Hearing panel now shows microphones and input modes as plain rows, so you no longer open a menu inside a drawer. If AIRI cannot use your microphone yet, the panel shows an Allow button in place of an empty list. After a denial, it tells you where to allow access, and the desktop chat menu can ask for access too.
- If you leave the web version open for days, it now checks for a new version every hour, when you come back to the tab, and when you go back online. The update prompt stays on screen until you answer it. Not now hides it for 6 hours.
- Chat header and floating chat dock buttons look more consistent. Hovering an "off" toggle no longer makes it look "on", and the character name button now matches the buttons next to it.
Bug fixes
- The selected character is now remembered. Previously, AIRI went back to the default character every time you restarted. It now opens with the character you picked last.
- Replies could be silent after you signed in with the official speech provider. Settings showed a voice, but speech failed with "Speech requires a model and voice." Replies speak again.
- In the web version, replies could be silent when AIRI was open in more than one tab, for example one tab on the Stage and one on settings. Replies now always play in the tab that shows your character.
- Settings links could stop responding with page transitions turned on, on desktop, web, and mobile. They work again.
- Long tool tasks no longer stop halfway. Previously, a reply stopped after 10 tool steps with "Generation tool step limit reached". This broke long computer-use tasks, for example opening an app step by step. A task now runs until the model finishes or you stop it.
- Computer use on Windows can now read its own screenshots. Previously, it rejected the WebP images that Windows produced.
To developers
- Plugin SDK: Extensions can now declare the Kits they provide in their manifest and fill them in during setup. The host publishes the full set only after setup succeeds. This release adds registration only. Calling Kit methods, routing events, and permissions come later.
To contributors
- Every push to
mainnow publishes a signed desktop bundle to thedevupdate channel, through ergosphere-it. The update signing key changed (keyId6094dad31d7b69ca). Related CI fixes cover the update plan, the disk cleanup step, and the installer build'selectron-updaterversion range. - Desktop renderer chunk names now stay the same when only the commit changes. Previously, one dev update re-uploaded 179 renderer files (9.8 MB) with no source change. The settings search output and the screen-capture
distoutput are now the same on each build too. - Settings search moved from build-time discovery to a runtime registry. Modules register their own entries, so a feature flag or a policy can add or remove entries.
- Kirie, the Godot desktop host in development, now has the floating chat window, settings search, and a native system tray through Kirie Tray.
- Chat now writes a session only through session actions. This keeps a turn from another tab from overwriting messages, and stage-web needs it to play replies in the right tab.
@proj-airi/testing-audiono longer runs in CI. Run it withpnpm -F @proj-airi/testing-audio test:e2e. The Unit Test job no longer runs under Xvfb.- Translations were synced from Crowdin. The Nix
pnpmDepsand assets hashes were updated. The README release artifacts now point to v0.12.0.
Full Changelog: v0.12.0...v0.13.0