Nezha: a Tauri-based IDE for running Claude Code and Codex agents across several projects
Code Editor for the AI Agents Era. Run multiple Claude Code and Codex agents across projects on your machine.
At a glance
- What is it?
- Nezha is a lightweight cross-platform IDE built around AI coding agents rather than around the developer typing. It bundles a terminal, task and session views, Git, Git Worktree, a small editor and Skill management into one window. The interesting question is not what it does but whether its agent-first premise survives contact with your existing toolchain.
- Who is it for?
- Adopt Nezha if you already run Claude Code or Codex from a terminal and your main pain is losing track of which session in which repository is waiting on you. Skip it if you need a full IDE, a signed and notarized macOS build, or a permissive licence for a closed-source product.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 5 days ago.
- What is it written in?
- Mainly TypeScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The problem Nezha picks, and the developer it assumes you have become
The README makes an argument rather than a feature list. It says traditional IDEs and editors such as VS Code were designed with the developer at the centre, where plugins, refactoring and variable completion exist to make a person faster at typing. Its claim is that this assumption is breaking down: less code is written by hand, more is written by agents, and writing code becomes something you can run in parallel. Human attention does not scale the same way. Tracking tasks across several projects is the problem Nezha names.
That framing tells you who the tool is for. If you run one Claude Code session in one repository at a time, the multi-project workspace has nothing to organise. The intended user has several repositories open in the same period, each with an agent working, and needs to know which one has stopped and is waiting for a decision. Nezha's answer is a single window with a project sidebar, a task view, and notifications when an agent needs a human. The README describes the goal as closing the loop on task dispatch, code review and commit without opening a heavier IDE, and without interrupting work in another project.
What the stack actually is: Tauri shell, React UI, xterm.js terminal
The acknowledgements section is the most concrete architecture information in the README. Nezha is built on Tauri, which the README describes as producing smaller, faster, safer desktop applications. The interface is React. The terminal component is xterm.js, and file and folder icons come from the Material Icon Theme. The repository's primary language is TypeScript. The README states the installer is 7 MB, which is consistent with a Tauri build that uses the system webview instead of shipping a browser runtime.
What the README does not describe is the data flow. It does not say how Nezha discovers existing Claude Code and Codex sessions, where session state is stored, or whether the terminal is a PTY wrapper around the installed CLI binaries. The phrase used is native integration of Claude Code and Codex, and the install section says you must install Claude Code or Codex first. That implies Nezha drives the CLIs you already have rather than reimplementing an agent runtime, but the README does not confirm the mechanism. Treat the session discovery feature as documented behaviour, not as an architecture you can reason about from the repository description alone.
Installing it: one prerequisite, one quarantine command
The install instructions are short. You install Claude Code or Codex before Nezha, because Nezha integrates with them rather than replacing them. On macOS the README warns that a first launch shows the message that Nezha is damaged and should be moved to the trash, and attributes this to the package being unsigned. The stated fix is:
xattr -rd com.apple.quarantine /Applications/nezha.app
That is the whole documented setup path. There is no Homebrew formula, no package manager command and no configuration file described in the README. Settings such as theme selection (light, dark and an eye-care mode) are described as in-app UI options rather than as keys in a config file, and the README does not name a config path or environment variable. If you need to provision Nezha across a team from a script, the material here does not tell you how. Distribution appears to be through GitHub releases, with v0.4.7, v0.4.6 and v0.4.5 published between July and August.
Sessions, notifications and Git Worktree: the parts that carry the design
The session model is the feature worth examining. The README contrasts Nezha with terminal sessions that vanish once they end and can only be recovered through resume. In Nezha, a finished session is rendered as a visual record you can review, and you can pin the ones that matter. Notifications are the second half of the same idea: when Claude Code or Codex needs human input, Nezha raises a message and an application badge. Together these two features are the actual product. Everything else in the list (editor, Markdown preview, syntax highlighting, Git) is table stakes for an IDE.
Git integration is described as one-click branch creation, AI-generated commit messages, a code review view, and support for Git Worktree as the underlying development style. Worktree support is the interesting choice, because it lets several agent tasks occupy separate working directories from one repository, which is what you need if two agents should not fight over the same checkout. The README also mentions Skill management, where local skills are managed centrally through symlinks. That is a small detail but a revealing one: it means Nezha expects your skills to live in one place on disk and be linked into projects, rather than copied per repository.
Where Nezha is the wrong tool
The README calls the built-in editor lightweight and says it supports syntax highlighting for common languages and Markdown preview. Lightweight is the operative word. There is no mention of language servers, refactoring, debugging, test runners or extensions. If your day involves stepping through a debugger, renaming a symbol across a large codebase, or running an integrated test panel, Nezha does not claim to do those things, and the README's own pitch assumes you will reach for a full IDE when the task is heavy. The stated use case is work that does not require opening a heavy IDE at all.
The unsigned macOS bundle is a real friction point, not a cosmetic one. The documented workaround removes the quarantine attribute from the application bundle, which is a system-level trust decision rather than a preference toggle, and it has to be repeated for each new download unless the project starts signing releases. Anyone in a managed environment where that command is blocked cannot install Nezha through the documented path. The README does not describe Windows or Linux installation steps, so cross-platform support is asserted in the tagline but not evidenced in the setup section.
Against a terminal multiplexer, and against Cursor
The honest alternative for the multi-project agent workflow is not another AI IDE. It is tmux or a terminal with split panes plus the agent CLIs you already use. That approach keeps every session in one place, survives disconnection, and adds nothing to your licence obligations. What it does not give you is a rendered record of finished sessions, an application badge when an agent is blocked, or a Git panel beside the terminal. Nezha's value is precisely those three things layered over a terminal that xterm.js already provides. If you are comfortable with tmux and do not lose track of sessions, the gap Nezha fills is narrow.
The other comparison is Cursor, which the repository lists as a topic. Cursor is a fork of a full editor: it keeps language servers, debugging and the extension ecosystem, and adds AI assistance inside that environment. Nezha goes the other direction. It starts from the agent session and adds only enough editor to review and commit the result. The two are not substitutes. Cursor assumes you still edit code in a full IDE with AI beside you; Nezha assumes the agent does the editing and you supervise. Choosing between them is really a question about how much of your day is still spent typing.
Licence and the cost of keeping up
Nezha is GPL-3.0. That matters if you plan to redistribute a modified build or ship it inside a product, because the licence carries copyleft obligations that a permissive licence would not. Reading the source and running it locally is unaffected. This is a description of the licence identifier in the repository, not legal advice; if Nezha is going into a commercial distribution, that question belongs with someone qualified to answer it.
On maintenance, the visible signals are a steady release cadence (v0.4.5 in early July, v0.4.6 in late July, v0.4.7 in early August) and a last push in September, so the project is active rather than abandoned. The upgrade cost is hard to estimate from the README, because there is no documented migration path, no changelog excerpt and no statement about where application state lives. If session history is stored locally, a version upgrade could affect it, but the material does not say. Back up anything you would miss before moving between releases, and check the release notes for the version you are installing rather than assuming the upgrade is transparent.
Editorial conclusion
Adopt Nezha if you already run Claude Code or Codex from a terminal and your main pain is losing track of which session in which repository is waiting on you. Skip it if you need a full IDE, a signed and notarized macOS build, or a permissive licence for a closed-source product. Before installing, confirm two things on your own machine: that Claude Code or Codex is already on PATH, and that you accept running xattr -rd com.apple.quarantine /Applications/nezha.app on macOS, because the README states the bundle is unsigned.
Community notes