A fast, cross-platform code editor with built-in AI agents, Git integration, and an embedded terminal. Built on Notepad Next (a Notepad++ reimplementation in Qt/C++).
- AI Agent Integration — Chat with Claude Code, Gemini, or any ACP-compatible agent directly inside the editor. Agents can read/write files, run terminal commands, and understand your workspace context.
- Git Integration — Inline blame, gutter diff indicators, commit history viewer, staging/unstaging, branch picker, and file-tree decorations. No external Git GUI needed.
- Embedded Terminal — Full PTY terminal with mouse reporting, image passthrough, and persistent task registry. Open terminals in workspace or file directory.
- Notepad++ Compatibility — Familiar tabbed interface, syntax highlighting for 80+ languages via Scintilla/Lexilla, macro recording, session management, and Notepad++ config import.
- Lightweight & Fast — Native C++20/Qt 6 with zero-copy hot paths, precompiled headers, and Control Flow Guard. Starts in milliseconds.
- Cross-platform — Windows, Linux (AppImage), and macOS (dmg).
Download binaries from the Releases page.
| Platform | Format |
|---|---|
| Windows | Installer (.exe) or portable zip |
| Linux | AppImage |
| macOS | Disk image (.dmg) |
Requirements: CMake 3.21+, Qt 6.5+, Ninja, a C++20 compiler (MSVC, GCC, or Clang).
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallelSee doc/Building.md for platform-specific details.
NotepadAI speaks the Agent Client Protocol (ACP) over stdio. The default built-in agent is Claude Code. Add custom agents via Settings with any command that implements ACP's JSON-RPC 2.0 wire format.
NotepadAI supports running multiple independent instances, each with its own settings, sessions, and AI history. This is useful when you want separate profiles (e.g., work vs personal) without data conflicts.
All application data is stored under <data-dir>/NotepadAI/ (settings INI, session backups, ACP chat history).
Set a custom data directory using one of these methods (highest priority first):
| Method | Example |
|---|---|
| CLI flag | NotepadAI.exe --data-dir=D:\profiles\work |
| Environment variable | NOTEPADAI_DATA_DIR=D:\profiles\work |
| Portable marker | Create an empty file named portable next to the exe |
| Preferences UI | Settings > Data Directory > Browse |
Relative paths are resolved relative to the executable's directory.
When two instances use different data directories, they run as fully independent processes (separate settings, sessions, window state, and SingleApplication identity). Instances sharing the same data directory still behave as a single instance (the second forwards its files to the first).
Place an empty file named portable next to NotepadAI.exe. The application will store all data in the same directory as the executable — no writes to %APPDATA% or system directories. Ideal for USB drives or self-contained deployments.
Based on Notepad Next by Justin Dailey. AI and Git extensions by nullmastermind.
