Early Access — Aizen is under active development with near-daily updates. Expect breaking changes and new features frequently.
Bring order to your repos. Switch worktrees, not windows.
Aizen is a macOS workspace for developers who work on multiple branches in parallel. Each worktree gets its own terminal, file browser, web browser, and agent session — so you switch worktrees, not windows.
- Workspaces — Organize repositories into color-coded groups
- Worktrees — Create and manage Git worktrees with visual UI
- Per-worktree sessions — Each worktree has its own terminal, files, browser, and chat
- GPU-accelerated — Powered by libghostty
- Split panes — Horizontal and vertical splits
- Themes — Catppuccin, Dracula, Nord, Gruvbox, TokyoNight, and more
- Supported — Claude, Codex, Gemini, Kimi, and custom agents
- Protocol — Agent Client Protocol (ACP)
- Auto-install — From NPM or GitHub releases
- Voice input — On-device speech-to-text with waveform visualization
- Operations — Stage, commit, push, pull, merge, branch
- Diff viewer — Full-window diff with syntax highlighting
- Status — Real-time file status indicators
- Tree view — Hierarchical directory navigation
- Syntax highlighting — Tree-sitter for 50+ languages
- Multi-tab — Open multiple files
- Per-worktree — Embedded browser for docs and previews
- Multi-tab — Session persistence
- macOS 13.5+
- Apple Silicon or Intel Mac
- Xcode 16.0+
- Swift 5.0+
- Git LFS
- Zig (for building libghostty):
brew install zig
git lfs install
git clone https://github.com/vivy-company/aizen.git
cd aizen
# Build libghostty (universal arm64 + x86_64)
./scripts/build-libghostty.sh
# Open in Xcode and build
open aizen.xcodeprojTo rebuild libghostty at a specific commit:
./scripts/build-libghostty.sh <commit-sha>Download from aizen.win
Signed and notarized with an Apple Developer certificate.
Settings > Agents:
| Agent | Install Method | Package |
|---|---|---|
| Claude | NPM | @anthropic-ai/claude-code |
| Codex | GitHub | openai/codex |
| Gemini | NPM | @anthropic-ai/claude-code |
| Kimi | GitHub | MoonshotAI/kimi-cli |
Agents can be auto-discovered and installed, or manually configured.
Settings > Terminal:
- Font family and size
- Color theme
Settings > General:
- Default external editor (VS Code, Cursor, Sublime Text)
| Shortcut | Action |
|---|---|
⌘ D |
Split terminal right |
⌘ ⇧ D |
Split terminal down |
⌘ W |
Close pane |
⌘ T |
New tab |
⇧ ⇥ |
Cycle chat mode |
ESC |
Interrupt agent |
- libghostty — Terminal emulator
- CodeEdit packages — Syntax highlighting (Tree-sitter)
- Sparkle — Auto-updates
aizen/
├── App/ # Entry point
├── Models/ # Data models, ACP types
├── Services/
│ ├── Agent/ # ACP client, installers, session management
│ ├── Git/ # Worktree, branch, staging, diff services
│ ├── Audio/ # Voice recording, transcription
│ └── Highlighting/ # Tree-sitter integration
├── Views/
│ ├── Workspace/ # Sidebar, create/edit sheets
│ ├── Worktree/ # List, detail, git sidebar
│ ├── Terminal/ # Tabs, split layout, panes
│ ├── Chat/ # Sessions, input, markdown, tool calls
│ ├── Files/ # Tree view, content tabs
│ ├── Browser/ # Tabs, controls
│ └── Settings/ # All settings panels
├── GhosttyTerminal/ # libghostty wrapper
└── Utilities/ # Helpers
Patterns:
- MVVM with
@ObservableObject - Actor model for concurrency
- Core Data for persistence
- SwiftUI + async/await
GNU General Public License v3.0
Copyright © 2025 Vivy Technologies Co., Limited
