AIRI v0.12.0-beta.5 is an animated companion, not a chat skin
AIRI combines a language model with speech input, voice output, and a Live2D or VRM character. The desktop app can expose computer-use tools, while optional integrations reach Discord, Telegram, Minecraft, and Factorio. That makes AIRI interesting for someone trying to build a persistent virtual companion rather than another text box with a character portrait.
The project supports many hosted model APIs as well as local routes including Ollama, vLLM, and SGLang. Speech options include commercial services and local engines. Some ambitious items remain explicitly unfinished: the README marks its Memory Alaya work and pure in-browser WebGPU inference as work in progress. The latest packaged release is v0.12.0-beta.5, which is a fair label for a product spanning this many moving parts.
What happened when we ran it
Our sandbox installed commit 2e0e963 in 251 seconds. Pnpm pulled 2,699 packages and the installed tree occupied 4,174 MB. Before that install, the checkout already held 5,645 files, about 457,079 lines of source, and used 594.2 MB. This is a large working copy for a personal app, and cache or container costs will show up quickly on a contributor machine.
The build failed after 68 seconds with exit 129. Turbo reported 37 successful tasks out of 40, with 34 served from cache. The two named failures were @proj-airi/stage-pocket#build and @proj-airi/stage-web#build. The tail also warned that no output files were found for the auth-server build task and showed a browser-compatibility externalization warning. It does not establish why either failed task exited 129, so we will not assign a cause.
Tests failed after 222 seconds. Vitest reported 2,221 passed, 14 failed, and 3 skipped out of 2,238, plus 2 errors. The summary says 3 test files failed among 289. Its tail names a gesture test and an ambient-light sampling test, but it does not show all 14 failing assertions. Most of the suite passed; the release gate still ended red.
Our scan found 31 CI workflow files and pnpm workspaces, with no root Dockerfile and no directory literally named tests. That last detail does not mean AIRI lacks tests, since the Vitest output found them beside source across the workspace. It does tell you how this monorepo is organized: checks, applications, packages, services, and integrations are distributed rather than gathered into one conventional test tree.
Current source development pins Node 26.7.0 and pnpm 11.24.0
The contribution guide uses mise to install versions from .tool-versions. Current main pins Node 26.7.0, pnpm 11.24.0, and .NET 10. Our measured commit installed under the supplied Node 22 lab image, but matching today's contributor setup means using the repository pins before deciding whether a failure reproduces.
A two-command pnpm i and pnpm dev path starts Stage Web. Desktop development uses a separate Tamagotchi command, and the guide notes that a fresh Electron 42 setup downloads its binary when development starts. Pocket development calls Capacitor with a selected simulator or device. NixOS users get a dedicated FHS shell because Electron's shared libraries are outside its standard paths.
Integrations add services and secrets. The Telegram bot requires Postgres and credentials in a local environment file. Discord uses its own credentials, while Minecraft needs a running client, an exported world, and a port. The architecture diagram shows a hosted backend with Postgres and Redis. AIRI can remain local for selected model and speech paths, but the exact data route depends on every provider you enable.
Desktop computer control starts enabled in each new composer
The desktop README says a fresh chat composer begins with Use computer on. A selected request receives computer-use tools and can return screenshots to a vision-capable model. On macOS, the launching app may need Accessibility, Screen Recording, and Automation permissions. This is useful power with a sharp permission boundary: turn it off before sending a prompt that should not receive desktop tools.
The bundled computer-use CLI is version 0.0.16 and talks over a private Unix socket or Windows named pipe. Its current package has no matching binary for Windows ARM64 or Linux musl. The docs also warn that a zero exit code does not prove the requested interface change happened. Anyone building unattended desktop actions needs outcome checks, not only command status.
The application privacy policy lists analytics and AI-use metadata
AIRI's published application privacy policy says it may collect IP address, visited pages, time spent, operating system, approximate location, account identifiers, configured provider names, agent usage, MCP and tool-call traces, and errors. It names PostHog as a third-party service and says uninstalling stops collection. That policy is broader than many readers will infer from the phrase self-hosted. Review the distribution and configuration you plan to use before entering sensitive prompts.
Local providers can keep model calls on your hardware, but they do not automatically answer what the application sends elsewhere. The same review should cover speech services, transcription, sync, analytics, and every messaging integration. AIRI's provider catalog is a strength when you want choice. It also makes privacy a configuration-by-configuration decision rather than one property of the repository.
An October 5 push shows activity, while the release remains beta
GitHub showed 50,065 stars and 218 combined open issues and pull requests on October 5, 2026. The repository was pushed that day. Search results split the queue into 95 issues and 123 pull requests, and issue 2814 received a detailed local-provider streaming report the same day.
Issue 2814 reports that AIRI desktop 0.12.0-beta.5 can lose spaces while streaming from an OpenAI-compatible local server, even when the raw stream is correct. It is one report, not our lab finding, yet it captures the product risk well: a provider can connect and still produce damaged conversation text at an assembly boundary. AIRI is worth trying for its unusually broad companion experience. Our failed build and 14 test failures make the packaged beta the sensible first stop for users, while contributors should enter expecting a large moving codebase.

