Open-source project
sxhxliang/agent-studio avatar
sxhxliang/agent-studio

AgentX (sxhxliang/agent-studio): a GPUI desktop studio for ACP agents

AgentX is a GPU-accelerated, cross-platform desktop application that brings AI agents to your workflow. 跨平台、原生 Agent 桌面。

510 stars54 forksRustLicense varies

At a glance

What is it?
AgentX is a Rust desktop application that hosts multiple Agent Client Protocol agents, a Tree-sitter editor and a terminal in one GPU-accelerated window. The README is honest about what it supports and silent about a lot of what you would need before adopting it.
Who is it for?
Adopt AgentX if you already run ACP-compatible agents from the command line and want one window with an editor, a terminal and a dock layout instead of several terminals. Do not adopt it if you need a signed, notarised installer or a documented licence before you ship it internally: the README shows an Apache 2.0 badge, but the repository has no LICENSE file at its top level and the metadata lists no licence.
Can I use it commercially?
Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
Is it still maintained?
Yes. The repository last received commits 94 days ago.
What is it written in?
Mainly Rust, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 1, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What AgentX solves for people who already run several coding agents

The README frames AgentX as a modern desktop AI agent studio, and the concrete problem it targets is fragmentation: one terminal for Codex, another for Claude, a third for Gemini, plus an editor and a shell beside them. AgentX puts those in one window. The feature list names multi-agent support over the Agent Client Protocol (ACP), real-time streaming with thinking blocks and tool calls, an LSP-enabled editor with syntax highlighting and autocomplete, an integrated terminal, a drag-and-drop dock system, session management and auto-save.

The audience is narrower than the tagline suggests. This is a tool for developers who already have an ACP-speaking agent binary installed and configured. The README lists Codex, Claude, Kimi Code, Qwen, Qoder, OpenCode, Gemini, AugmentCode and Iflow as agents the authors test against based on config.json, and points at the ACP agents page for a longer list including Goose, OpenHands, Docker's cagent and GitHub Copilot in public preview. If you do not run one of those, the studio has nothing to talk to.

Inside the workspace: ACP over stdio, an event bus and six crates

Cargo.toml shows a workspace with the root package plus six members: agentx-types, agentx-event-bus, agentx-agent, agentx-services, agentx-acp-ui and git-worktree-manager. That split is the clearest statement of architecture available, since the README links to CLAUDE.md for the design document rather than describing it inline. The naming implies a shared type crate, an internal event bus, a layer that owns agent processes, a services layer, an ACP-facing UI crate and a git worktree helper.

The agent dependency is agent-client-protocol version 0.13.1 with the unstable feature enabled. That flag matters: it means AgentX builds against parts of the protocol that the crate itself marks as unstable, so a protocol bump can change behaviour. The UI stack is GPUI and gpui_platform pulled from the zed-industries/zed git repository, plus gpui-component from a personal fork (sxhxliang/gpui-component, branch dev) and gpui_term from sxhxliang/gpui-term. Depending on a fork branch rather than a tagged release is a real supply-chain consideration: your build tracks whatever lands on that branch.

Async work runs on Tokio 1.48.0 with tokio-util and async-trait, syntax highlighting uses Tree-sitter, and serialization uses serde and serde_json. The workspace lint configuration allows dead_code, unused_variables and unused_imports at the Rust level and sets clippy style lints to allow. That is a permissive baseline, and it means compiler warnings will not surface unused code during a build.

Installing AgentX from a release and pointing it at an agent

The README directs you to the releases page and gives per-platform artefacts. On Debian or Ubuntu the .deb is installed with dpkg. The version in the filename is the one shown in the README example, 0.5.0, while Cargo.toml still declares 0.3.1 and the most recent release listed is v0.3.1 from 2026-02-11. Check the releases page for the actual version before you copy a filename.

bash
sudo dpkg -i agentx_0.5.0_amd64.deb

For other distributions the README shows an archive and an AppImage, both run directly from the extracted directory. Windows ships a zip or a setup.exe; macOS ships separate aarch64 and x86_64 .dmg files. winget and Homebrew are listed as coming soon, so neither is usable today.

bash
tar -xzf agentx-v0.5.0-x86_64-linux.tar.gz
cd agentx
./agentx

Building from source needs Rust 1.83 or newer on the 2024 edition, plus libxcb, libfontconfig and libssl-dev on Linux, the MSVC toolchain on Windows, and Xcode command line tools on macOS. The repository pins the toolchain in rust-toolchain.toml, so rustup should pick the right one automatically.

bash
git clone https://github.com/sxhxliang/agent-studio.git
cd agent-studio
cargo run

After launch, the quick start tells you to configure your agent under Settings, then MCP Config, and start chatting. There is no code block for that step because configuration is done in the GUI; the repository does carry config.json, config.example.json and config.test.json at the top level, so the example file is the place to look for the expected shape.

Where AgentX will disappoint you

The licence situation is the first thing to check. The README carries an Apache 2.0 badge and links to LICENSE, but the top-level repository listing does not contain a LICENSE file, and the project metadata records the licence as unknown. A badge is not a licence grant. If your organisation requires an approved licence before installation, this is unresolved from the repository contents alone.

Packaging is thin. There is no signed installer path documented, no auto-update mechanism mentioned, and the package manager routes (winget, Homebrew) are explicitly marked coming soon. On macOS, an unsigned .dmg dragged to Applications will typically need a Gatekeeper bypass, and the README does not discuss that. Upgrades are manual: download a new artefact and reinstall.

The dependency on gpui and gpui_platform from the Zed git repository means building from source pulls a moving target. Combined with the gpui-component dev branch, a clean build today and a clean build next month are not guaranteed to be the same code. If you need reproducible builds, that is a problem the project does not currently solve.

Finally, AgentX is the wrong tool if you want a headless or server-side agent runner. It is a desktop application with GPU-accelerated rendering; the README describes no daemon mode, no HTTP API and no remote access. Teams running agents in CI should stay with the agent CLIs themselves.

How AgentX differs from running the agent CLIs directly

The honest alternative is the thing AgentX wraps: each agent's own command line interface. Running codex or claude in a terminal gives you the same model, the same tool calls and the same file edits, with no extra process, no GPU requirement and no dependency on a fork of GPUI. It also works over SSH, which AgentX does not.

What you give up is the composition. A plain terminal does not give you a dock layout where the agent conversation, an LSP-backed editor and a shell sit side by side, and it does not give you a session list with auto-save across agents. AgentX's value is that arrangement, plus the tool call viewer that lets you inspect what an agent executed. If you already use a terminal multiplexer and an editor with its own agent plugin, the marginal gain is small.

A second alternative is any editor that already speaks to agents natively. Those keep you inside the editor you know and avoid a second GPU-rendered application competing for the same window manager resources. The trade-off is that they are usually tied to one vendor's agent rather than the ACP list AgentX draws from.

Maintenance, releases and what an upgrade costs

The repository is not archived and the last push was on 2026-06-29, so the code has moved within the last three months. The release cadence visible in the repository is dense but dated: v0.2.9 on 2026-02-05, v0.3.0 on 2026-02-09 and v0.3.1 on 2026-02-11, all within a week, and nothing newer in the release list. The README badge advertises 0.5.0 while Cargo.toml declares 0.3.1, which suggests version strings are maintained in several places and can drift.

Upgrade cost is low if you use prebuilt artefacts: download and reinstall. It is higher if you build from source, because the Zed git dependency and the dev branch of gpui-component can move independently of any AgentX release. Pin a commit if you need stability, and expect to resolve build breakage when you move the pin. The permissive lint settings mean you will not get warnings about dead code during that work, so breakage will show up as compile errors rather than guidance.

On licensing, the README's Apache 2.0 badge would, if the file exists, permit commercial use and modification with attribution and a notice of changes. That is a statement about what the badge claims, not legal advice, and it is contingent on the LICENSE file actually being present in the repository you clone.

Editorial conclusion

Adopt AgentX if you already run ACP-compatible agents from the command line and want one window with an editor, a terminal and a dock layout instead of several terminals. Do not adopt it if you need a signed, notarised installer or a documented licence before you ship it internally: the README shows an Apache 2.0 badge, but the repository has no LICENSE file at its top level and the metadata lists no licence. Verify the licence file, the release page, and whether your chosen agent appears in config.json before you commit.

Frequently asked questions

What is AgentX from sxhxliang/agent-studio?

It is a cross-platform desktop application, written in Rust and built on the GPUI framework, that hosts multiple AI agents in one window. The README describes multi-agent chat over the Agent Client Protocol, a built-in LSP-enabled code editor, an integrated terminal and a drag-and-drop dock system.

Which AI agents does AgentX support?

The README lists Codex, Claude, Kimi Code, Qwen, Qoder, OpenCode, Gemini, AugmentCode and Iflow as agents tested against based on config.json, and points to the ACP agents page for others such as Goose, OpenHands and Docker's cagent.

How do I install AgentX on Linux?

The README shows a .deb installed with dpkg, a .tar.gz extracted and run as ./agentx, and an AppImage made executable and run directly. All three come from the project's releases page, and the version in the filename should be checked against the latest release.

How do I build AgentX from source?

You need Rust 1.83 or newer on the 2024 edition, plus libxcb, libfontconfig and libssl-dev on Linux. The README gives git clone, cd agent-studio and cargo run, with RUST_LOG=info cargo run for logging and cargo test for tests.

Official sources

  1. Issues
  2. README
  3. Releases
  4. sxhxliang/agent-studio on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/sxhxliang-agent-studio.svg)](https://hysenlabs.com/projects/sxhxliang-agent-studio)