Orchestrate multiple AI coding sessions in parallel
Download Latest Release | macOS | Windows | Linux
Beta Releases — opt into pre-release builds via Settings > About > Updates
- About
- Screenshots
- Features
- Keyboard Shortcuts
- Requirements
- Quick Start
- Development
- Architecture
- Tech Stack
- Beta Releases
- Roadmap
- Contributing
- License
Omniscribe is a desktop application for managing multiple AI coding assistant sessions (Claude Code, etc.) simultaneously. Run up to 12 sessions in parallel, each with its own GPU-accelerated terminal, optional git worktree isolation, and MCP server configuration.
| Feature | Description |
|---|---|
| Multi-Session Grid | Run up to 12 AI sessions in parallel with GPU-accelerated terminal views |
| Real-Time Status | Track session states: idle, working, planning, needs_input, finished |
| Session History | Browse, search, and filter past Claude Code sessions with branch filtering and sort controls |
| Resume & Fork | Resume any previous session or fork it into a new conversation branch |
| Continue Last | One-click button to continue the most recent Claude Code conversation |
| Auto-Resume | Optionally restore active sessions automatically when Omniscribe restarts |
| Drag & Drop | Rearrange terminals by dragging; resizable panels with drag dividers |
| Terminal Search | Ctrl+Shift+F search bar with regex and case-sensitive modes |
| 12 Terminal Themes | tokyonight, dracula, nord, monokai, gruvbox, catppuccin, and more |
| 41 UI Themes | 21 dark + 20 light themes (Dark, Light, Ayu, Catppuccin, Dracula, Nord, Gruvbox, Monokai, Tokyo Night, and more) |
| Terminal Settings | Font family/size, cursor style, scrollback, theme — all applied live |
| Smart Copy/Paste | Ctrl+C copies selection or sends ^C; Ctrl+V pastes from clipboard |
| File Path Links | Clickable file paths in terminal output open directly in VS Code |
| Quick Actions | AI-powered shortcuts for git workflows (commit, push, pull, resolve conflicts) and development tasks |
| Git Worktrees | Isolate each session in its own git worktree for parallel development |
| MCP Integration | Configure Model Context Protocol servers per session |
| Hooks Integration | Automatic Claude Code hooks for instant session detection via SessionStart/SessionEnd events |
| Project Tabs | Manage multiple projects with persistent recent history |
| Cross-Platform | Native support for Windows, macOS, and Linux |
| Shortcut | Action |
|---|---|
N |
Add new session slot |
Shift + N |
Open launch presets modal |
L |
Launch all pending sessions |
1-9, 0, -, = |
Launch individual session (1-12) |
Ctrl/Cmd + K |
Stop all running sessions |
Ctrl/Cmd + , |
Toggle settings |
Ctrl/Cmd + Shift + H |
Toggle session history panel |
Ctrl/Cmd + W |
Close current project tab |
Ctrl/Cmd + 1-9 |
Switch project tab by index |
Ctrl/Cmd + L |
Clear focused terminal |
Ctrl/Cmd + F |
Toggle terminal search bar |
- Node.js >= 22.0.0
- pnpm >= 9.0.0
# Clone the repository
git clone https://github.com/Shironex/omniscribe.git
cd omniscribe
# Install dependencies
pnpm install
# Start development
pnpm dev
# Build for production
pnpm build
# Package for distribution
pnpm package # Current platform
pnpm package:win # Windows
pnpm package:mac # macOS
pnpm package:linux # Linux# Run tests
pnpm test
# Run tests with coverage
pnpm test:cov
# Type checking
pnpm typecheck
# Lint code
pnpm lint
# Format code
pnpm format
# Check formatting
pnpm format:checkomniscribe/
├── apps/
│ ├── desktop/ # Electron + NestJS backend
│ ├── web/ # React frontend
│ └── mcp-server/ # MCP status server
└── packages/
└── shared/ # Shared types
Communication Flow:
┌─────────────────────────────────┐
│ Electron Main Process │
│ ┌───────────────────────────┐ │
│ │ NestJS Backend │ │
│ │ Terminal │ Session │ Git │ │
│ │ MCP │ Workspace │ │
│ └───────────────────────────┘ │
│ │ WebSocket │
└──────────────┼──────────────────┘
│
┌──────────────┼──────────────────┐
│ Electron Renderer │
│ ┌───────────────────────────┐ │
│ │ React + Zustand │ │
│ │ Terminal Grid │ Stores │ │
│ └───────────────────────────┘ │
└─────────────────────────────────┘
| Layer | Technology |
|---|---|
| Desktop | Electron 40 |
| Backend | NestJS 10 |
| Frontend | React 18, Zustand 5 |
| Terminal | xterm.js (WebGL), node-pty |
| Styling | Tailwind CSS |
| Build | Vite, esbuild |
| IPC | Socket.io, Electron IPC |
Omniscribe supports a beta update channel for testing new features before stable release.
To opt in:
- Open Settings > About > Updates
- Click the Beta button to switch channels
- The app will automatically check for and offer beta updates
To opt out: Switch back to Stable in the same settings panel. If a stable version is older than your current beta, a downgrade will be offered.
Beta releases are tagged with a -beta suffix (e.g. v0.5.0-beta.1) and marked as pre-release on the Releases page.
Track our progress on the public project board.
Transforming Omniscribe from a Claude Code-specific app into a universal AI coding orchestrator.
| Phase | Description | Status |
|---|---|---|
| Plugin API Contracts | Typed interfaces and manifest format for provider plugins | Planned |
| Backend Infrastructure | Plugin registry, dynamic module loading, service delegation | Planned |
| Claude Provider Extraction | Move Claude-specific logic into a plugin package | Planned |
| Frontend Extensions | Slot-based UI injection, dynamic settings, in-app marketplace | Planned |
| Codex Provider Validation | Second provider (OpenAI Codex CLI) proving the architecture | Planned |
Want to add a provider? See the Plugin System Spec (Issue #173) for the full architecture.
Contributions are welcome! Feel free to:
- Submit an issue for bugs or feature requests
- Open a pull request with improvements
- Check the v2.0 milestone for planned work
- Read the Plugin System Spec if you want to contribute a provider plugin
- Share feedback and suggestions
This project is licensed under the MIT License.


