https://github.com/shironex/omniscribe
Orchestrate multiple AI coding sessions in parallel
https://github.com/shironex/omniscribe
ai claude claude-code electron parallel-agents terminal-based
Last synced: 1 day ago
JSON representation
Orchestrate multiple AI coding sessions in parallel
- Host: GitHub
- URL: https://github.com/shironex/omniscribe
- Owner: Shironex
- License: mit
- Created: 2026-02-03T00:21:36.000Z (19 days ago)
- Default Branch: master
- Last Pushed: 2026-02-18T01:07:09.000Z (4 days ago)
- Last Synced: 2026-02-18T03:39:29.913Z (4 days ago)
- Topics: ai, claude, claude-code, electron, parallel-agents, terminal-based
- Language: TypeScript
- Homepage:
- Size: 3.33 MB
- Stars: 6
- Watchers: 0
- Forks: 1
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
Omniscribe
Orchestrate multiple AI coding sessions in parallel
[](https://github.com/Shironex/omniscribe/releases/latest)
[](https://github.com/Shironex/omniscribe/releases/latest)
[](https://www.electronjs.org/)
[](https://react.dev/)
[](https://nestjs.com/)
[](https://www.typescriptlang.org/)
[](https://github.com/Shironex/omniscribe)
[](LICENSE)
**[Download Latest Release](https://github.com/Shironex/omniscribe/releases/latest)** | [macOS](https://github.com/Shironex/omniscribe/releases/latest) | [Windows](https://github.com/Shironex/omniscribe/releases/latest) | [Linux](https://github.com/Shironex/omniscribe/releases/latest)
**[Beta Releases](https://github.com/Shironex/omniscribe/releases)** — opt into pre-release builds via Settings > About > Updates
## Table of Contents
- [About](#about)
- [Screenshots](#screenshots)
- [Features](#features)
- [Keyboard Shortcuts](#keyboard-shortcuts)
- [Requirements](#requirements)
- [Quick Start](#quick-start)
- [Development](#development)
- [Architecture](#architecture)
- [Tech Stack](#tech-stack)
- [Beta Releases](#beta-releases)
- [Contributing](#contributing)
- [License](#license)
## About
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.
## Screenshots
### Multi-Session Grid with Quick Actions

### Main View

### Settings

## Features
| 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 |
## Keyboard Shortcuts
| 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 |
## Requirements
- **Node.js** >= 22.0.0
- **pnpm** >= 9.0.0
## Quick Start
```bash
# 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
```
## Development
```bash
# 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:check
```
## Architecture
```
omniscribe/
├── 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 │ │
│ └───────────────────────────┘ │
└─────────────────────────────────┘
```
## Tech Stack
| 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 |
## Beta Releases
Omniscribe supports a beta update channel for testing new features before stable release.
**To opt in:**
1. Open **Settings > About > Updates**
2. Click the **Beta** button to switch channels
3. 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](https://github.com/Shironex/omniscribe/releases).
## Contributing
Contributions are welcome! Feel free to:
- [Submit an issue](https://github.com/Shironex/omniscribe/issues) for bugs or feature requests
- Open a pull request with improvements
- Share feedback and suggestions
## License
This project is licensed under the [MIT License](LICENSE).
---
[Back to top](#top)