AionUi is a desktop app for Windows, macOS and Linux that turns AI models into agents working on your own files. It ships with a built-in agent, so you can paste an API key for Gemini, OpenAI, Anthropic, a Chinese provider or a local Ollama model and start straight away, and it also detects command-line agents you already have, such as Claude Code, Codex, Gemini CLI, Qwen Code, OpenCode and Goose, and gives them one shared interface.
It goes further than a chat window. There are 21 ready-made assistants, including ones that produce editable PowerPoint, Word and Excel files; a team mode where a leader agent splits a job between several agents in parallel; scheduled tasks on cron; MCP tool management; and a WebUI plus Telegram, Lark, DingTalk and WeChat bots, so you can check on a task from your phone.
It is Apache-2.0, with about 33,800 stars and 116 contributors, at v2.2.2 when scanned. Agents get real file access and some support an unattended full-auto mode, so point it at folders you are happy for it to change, and be careful when opening the WebUI beyond your own network.
- Repository: github.com/iOfficeAI/AionUi
- Licence: Apache-2.0 (Apache License 2.0)
- Language: TypeScript. Stars: 33.8K. Forks: 3,504. Last push: Oct 23, 2026.
- Scan: safe, Oct 26, 2026, commit 11cd2a9
Who it is for
People who want Claude Cowork style help on any model and any operating system, developers juggling several CLI agents, and anyone who wants scheduled AI jobs or document generation without writing code.
Getting started
1. Download the installer for your platform from the Releases page, or on macOS
brew install aionuiThen open AionUi, enter any supported API key, and start a conversation. Linux servers can use scripts/install-web.sh or scripts/install-ubuntu.sh for the browser version; read those first, as noted below.
Safety scan
We cloned iOfficeAI/AionUi at commit 11cd2a9 on Oct 26, 2026 and ran the checks described on the GitHub Tools page: credential patterns, decode-and-execute code, install-time scripts, committed binaries, risky CI workflows, every host the code talks to, known vulnerabilities in pinned dependencies, and project hygiene. A person read every hit. This is what we found.
- No secrets and no committed binaries across 2,344 files and about 404,000 lines of TypeScript.
- The 6 pattern hits are all install commands. scripts/install-web.sh (515 lines) is meant to be piped from GitHub to bash and adds a line to your shell profile; scripts/install-ubuntu.sh (448 lines) uses sudo and offers to enable an aionui systemd service so it starts at boot. The Office preview also suggests a curl | bash install for the separate OfficeCLI server.
- package.json runs scripts/postinstall.js, which only rebuilds Electron's native modules for developers building from source. It does not run when you install the packaged app.
- The project uses bun.lock, which the scanner cannot check, so no dependency advisories are reported either way. 13 workflows, none using pull_request_target, but none of the 22 third-party actions is pinned to a commit. No security policy file.
- By design the agents have full file access, can run commands and can be scheduled to work unattended. The README also promotes a Kimi partnership for contributors; nothing in the app requires Kimi.
What the scanner counted
| Check | Result |
|---|---|
| Secrets | None found. |
| Suspicious code | 6 pattern hits found and read; every one is listed under the raw findings. |
| Install-time code | 2 npm lifecycle scripts. 2 installer scripts (one fetches and runs a remote script; one edits your shell profile; one can call sudo) |
| Committed binaries | None. |
| CI workflows | 13 workflows. None use pull_request_target. 22 of 22 third-party actions pinned to a tag rather than a commit. |
| Network hosts | 40 distinct hosts referenced from source; most often github.com, api.example.com, static.aionui.com, generativelanguage.googleapis.com. No URLs to bare IP addresses. |
| Known vulnerabilities | No lockfile to check: dependencies are declared as ranges, so what gets installed is whatever is current on the day. |
| Project hygiene | Has licence file, contributing guide. Missing security policy, automated dependency updates, CodeQL. |
| OpenSSF Scorecard | Not scored: the project is not in Scorecard's weekly index. |
The raw findings
Every hit the scanner wrote out, with a link to the exact line at the scanned commit. Secrets candidates are redacted.
Pattern hits (6)
| Where | Rule | Match |
|---|---|---|
| packages/desktop/src/renderer/pages/conversation/Preview/components/viewers/OfficeWatchViewer.tsx:135 | download-piped-to-shell | export const OFFICECLI_SERVER_INSTALL_COMMAND = 'curl -fsSL https://d.officecli.ai/install.sh | bash'; |
| scripts/install-ubuntu.sh:15 | download-piped-to-shell | # curl -fsSL https://raw.githubusercontent.com/iOfficeAI/AionUi/main/scripts/install-ubuntu.sh | bash |
| scripts/install-ubuntu.sh:331 | persistence | echo " sudo systemctl enable aionui # 開機自動啟動" |
| scripts/install-ubuntu.sh:381 | persistence | echo " sudo systemctl enable aionui # 開機自啟" |
| scripts/install-web.sh:6 | download-piped-to-shell | # curl -fsSL https://raw.githubusercontent.com/iOfficeAI/AionUi/main/scripts/install-web.sh | bash |
| scripts/install-web.sh:107 | download-piped-to-shell | curl -fsSL https://raw.githubusercontent.com/iOfficeAI/AionUi/main/scripts/install-web.sh | bash |
npm lifecycle scripts (2)
package.jsonpostinstall:node scripts/postinstall.jspackage.jsonprepare:husky
Installer scripts (2)
- scripts/install-ubuntu.sh, 448 lines, uses sudo; talks to api.github.com, github.com, raw.githubusercontent.com
- scripts/install-web.sh, 515 lines, edits your shell profile, fetches and runs a remote script; talks to api.github.com, github.com, raw.githubusercontent.com
By the numbers
| Stars | 33.8K |
|---|---|
| Forks | 3,504 |
| Contributors | 116 |
| Commits | 5,991 |
| Open issues | 721 |
| Open pull requests | 162 |
| Releases | 170 |
| Latest release | v2.2.2 |
| Licence | Apache-2.0 |
| Main language | TypeScript |
| Project age | 1 year |
| Last push | Oct 23, 2026 |
| Tracked files | 2,344 |
| Lines of code | 404.4K |
| Checkout size | 494 MB |
Lines by language: TypeScript 290.2K, JSON 50.1K, Markdown 41.4K, CSS 6,971, JavaScript 6,198, YAML 4,444.
Questions
Is AionUi free?
Yes. AionUi is Apache-2.0 and free on Windows, macOS and Linux. You pay your model provider for API use, or nothing with a local model through Ollama or LM Studio.
Do I need Claude Code or another CLI agent installed?
No. AionUi has its own built-in agent that works with just an API key. If you already have CLI agents such as Claude Code or Codex installed, it detects them and lets you use them in the same window.
Can I use AionUi from my phone?
Yes. Turn on the WebUI to reach it from a browser on your network, or connect a Telegram, Lark, DingTalk or WeChat bot in Settings. Use a strong password if you expose the WebUI to the internet.
This post is part of GitHub Tools, where every repository is cloned and scanned before it is written up. The scan is a snapshot of one commit on one day; the repository has moved on since, so check it before you install.
