[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-75017":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":20,"hasPages":22,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":15,"starSnapshotCount":15,"syncStatus":27,"lastSyncTime":28,"discoverSource":29},75017,"maestro","its-maestro-baby\u002Fmaestro","its-maestro-baby","The Bloomberg Terminal for CLI Agents, its Maestro Baby! ","",null,"TypeScript",1152,124,10,0,1,5,55.29,"MIT License",false,"main",true,[],"2026-06-12 04:01:16","# Maestro\n\n\u003C!-- Add your banner: save as assets\u002Fbanner.png -->\n![Claude Maestro Banner](assets\u002Fbanner.png)\n\n**Orchestrate multiple AI coding assistants in parallel**\n\n![Claude Maestro Platform](assets\u002Fplatform_screenshot.png)\n\nA cross-platform desktop application that lets you run 1-6 Claude Code (or other AI CLI) sessions simultaneously, each in its own isolated git worktree.\n\n![macOS](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FmacOS-13%2B-blue)\n![Windows](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWindows-10%2B-blue)\n![Linux](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLinux-supported-blue)\n![Rust](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FRust-1.78%2B-orange)\n![TypeScript](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTypeScript-5.0-blue)\n![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-green)\n[![X (Twitter)](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FX-@maestro5240871-000000?style=flat&logo=x&logoColor=white)](https:\u002F\u002Fx.com\u002Fmaestro5240871)\n[![Discord](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDiscord-Join%20Server-5865F2?style=flat&logo=discord&logoColor=white)](https:\u002F\u002Fdiscord.gg\u002F3tQyFUYPVP)\n\n[![Docs](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocs-website-blue)](https:\u002F\u002Fits-maestro-baby.github.io\u002Fmaestro\u002F)\n\n**Star us on GitHub — your support motivates us a lot!**\n\n---\n\n## Table of Contents\n\n- [Why Maestro?](#why-maestro)\n- [Features](#features)\n- [Keyboard Shortcuts](#keyboard-shortcuts)\n- [Architecture](#architecture)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Configuration](#configuration)\n- [Troubleshooting](#troubleshooting)\n- [Contributing](#contributing)\n- [License](#license)\n- [Acknowledgments](#acknowledgments)\n\n---\n\n## Why Maestro?\n\n**The Problem:** AI coding assistants work on one task at a time. While Claude works on Feature A, you wait. Then you start Feature B. Then you wait again. Context switching is expensive, and your development velocity is bottlenecked by serial execution.\n\n**The Solution:** Run multiple AI sessions in parallel. Each session gets its own:\n- Terminal instance with full shell environment\n- Git worktree for complete code isolation\n- Assigned branch for focused work\n- Port allocation for web development\n\n### Core Principles\n\n| Principle | Description |\n|-----------|-------------|\n| **Parallel Development** | Launch 1-6 AI sessions simultaneously. Work on feature branches, bug fixes, and refactoring all at once. |\n| **True Isolation** | Each session operates in its own git worktree. No merge conflicts, no stepping on each other's changes. |\n| **AI-Native Workflow** | Built specifically for Claude Code, Gemini CLI, OpenAI Codex, and other AI coding assistants. |\n| **Cross-Platform** | Runs on macOS, Windows, and Linux with native performance. |\n\n---\n\n## Features\n\n### Multi-Terminal Session Grid\n- Dynamic grid layout (1x1 to 2x3) that adapts to your session count\n- iTerm2-style split panes within each session (Cmd+D vertical, Cmd+Shift+D horizontal)\n- Real-time status indicators: idle, working, waiting for input, done, error\n- Per-session mode selection (Claude Code, Gemini CLI, OpenAI Codex, Plain Terminal)\n\n### Git Worktree Isolation\n- Automatic worktree creation at `~\u002F.claude-maestro\u002Fworktrees\u002F`\n- Each session works on its own branch without conflicts\n- Worktrees are pruned on session close\n- Visual branch assignment in the sidebar\n- \"Worktree\" badge in the terminal header when a session is running in a worktree\n\n### MCP Server Integration\n- Built-in MCP server for agent status reporting\n- AI sessions report their state (idle, working, needs input, finished, error)\n- Real-time status updates displayed in the session grid\n- Uses the `maestro_status` tool for state communication\n\n### Visual Git Graph\n- GitKraken-style commit visualization\n- Branch relationship view with colored rails\n- Commit detail panel with diffs\n- See which sessions are working on which branches\n\n### Quick Actions\n- Custom action buttons per session\n- \"Run App\", \"Commit & Push\", and custom prompts\n- Execute commands via AI assistant\n\n### Appearance Settings\n- Light and dark theme support\n- Terminal font customization with support for:\n  - System-installed fonts\n  - Nerd Fonts (icons and glyphs)\n  - Custom fonts\n- Adjustable text size for terminal display\n\n### Multi-AI Support\n- **Claude Code** - Anthropic's Claude in the terminal\n- **Gemini CLI** - Google's Gemini AI\n- **OpenAI Codex** - OpenAI's coding assistant\n- **Plain Terminal** - Standard shell without AI\n\n### Plugin Marketplace\n- Browse and install plugins from marketplace sources\n- Plugin types: Skills, Commands, and MCP servers\n- Per-session plugin configuration\n- Automatic symlink management for commands and skills\n- Extend Maestro's capabilities with community plugins\n\n---\n\n## Keyboard Shortcuts\n\n| Shortcut | Action |\n|----------|--------|\n| **Cmd+T** | Add new terminal session |\n| **Cmd+D** | Split pane vertically |\n| **Cmd+Shift+D** | Split pane horizontally |\n| **Cmd+W** | Close focused pane |\n| **Cmd+1-9** | Jump to terminal 1-9 |\n| **Cmd+[** \u002F **Cmd+]** | Cycle previous \u002F next terminal |\n| **Cmd+K** | Clear terminal scrollback |\n| **Cmd+C** | Copy selection (SIGINT if no selection) |\n| **Cmd+=** \u002F **Cmd+-** | Zoom in \u002F out |\n| **Cmd+0** | Reset zoom |\n| **Shift+Enter** | Newline without executing |\n| **Cmd+Left** \u002F **Cmd+Right** | Jump to line start \u002F end |\n| **Cmd+Backspace** | Delete to line start |\n| **Escape** | Exit zoom mode |\n\n> **Note:** Cmd = Ctrl on Windows\u002FLinux\n\n---\n\n## Architecture\n\n```\n┌─────────────────────────────────────────────────────────────────┐\n│                    Claude Maestro (Tauri)                       │\n│                                                                 │\n│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐          │\n│  │  Session 1   │  │  Session 2   │  │  Session 3   │   ...    │\n│  │ Claude Code  │  │ Gemini CLI   │  │  Terminal    │          │\n│  │ feature\u002Fauth │  │ fix\u002Fbug-123  │  │    main      │          │\n│  └──────┬───────┘  └──────┬───────┘  └──────┬───────┘          │\n│         │                 │                 │                   │\n│  ┌──────▼─────────────────▼─────────────────▼───────┐          │\n│  │              ProcessManager (Rust)               │          │\n│  │     ~\u002F.claude-maestro\u002Fworktrees\u002F{repo}\u002F{branch}  │          │\n│  └──────────────────────────────────────────────────┘          │\n│                                                                 │\n│  Frontend: React + TypeScript + Tailwind CSS                    │\n│  Backend: Rust + Tauri                                          │\n└─────────────────────────────────────────────────────────────────┘\n                              │\n                              │ MCP Protocol (stdio)\n                              ▼\n┌─────────────────────────────────────────────────────────────────┐\n│                    MCP Server (Rust)                            │\n│                                                                 │\n│  ┌─────────────────────────────────────────────────────────────┐│\n│  │                     StatusManager                           ││\n│  │  maestro_status tool - agents report their current state    ││\n│  │  (idle, working, needs_input, finished, error)              ││\n│  └─────────────────────────────────────────────────────────────┘│\n└─────────────────────────────────────────────────────────────────┘\n```\n\n### Technology Stack\n\n| Component | Technology |\n|-----------|------------|\n| Desktop App | Tauri 2.0, Rust |\n| Frontend | React, TypeScript, Tailwind CSS |\n| Terminal Emulator | xterm.js |\n| MCP Server | Rust |\n| Git Operations | Native git CLI |\n\n---\n\n## Installation\n\n### Requirements\n\n- **Node.js** 18+ and npm\n- **Rust** 1.78+ (for building from source) - install via [rustup](https:\u002F\u002Frustup.rs\u002F), not system packages\n- **Git** (for worktree operations)\n\n#### Platform-Specific Prerequisites\n\n**macOS** (13 Ventura or later):\n```bash\n# Install Xcode Command Line Tools\nxcode-select --install\n```\n\n**Windows** (10 or later):\n- Install [Visual Studio Build Tools](https:\u002F\u002Fvisualstudio.microsoft.com\u002Fvisual-cpp-build-tools\u002F) with the **\"Desktop development with C++\"** workload\n- Install [Rust](https:\u002F\u002Frustup.rs\u002F)\n- WebView2 Runtime is required (pre-installed on Windows 10 21H2+ and Windows 11; [download here](https:\u002F\u002Fdeveloper.microsoft.com\u002Fen-us\u002Fmicrosoft-edge\u002Fwebview2\u002F) for older versions)\n\n**Linux** (Ubuntu 24.04 LTS \u002F Debian):\n```bash\n# Install Rust via rustup (Ubuntu 24.04's apt packages ship Rust 1.75, which is too old)\ncurl --proto '=https' --tlsv1.2 -sSf https:\u002F\u002Fsh.rustup.rs | sh\nsource \"$HOME\u002F.cargo\u002Fenv\"\n\n# Install required system dependencies\nsudo apt-get update\nsudo apt-get install -y build-essential pkg-config libssl-dev \\\n  libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev \\\n  libfontconfig1-dev patchelf\n```\n\n> **Note:** On Ubuntu 24.04, use `libayatana-appindicator3-dev` instead of `libappindicator3-dev` to avoid package conflicts.\n\n**Linux** (Fedora):\n```bash\nsudo dnf install gcc-c++ pkg-config openssl-devel \\\n  webkit2gtk4.1-devel libappindicator-gtk3-devel librsvg2-devel\n```\n\n**Linux** (Arch):\n```bash\nsudo pacman -S base-devel pkgconf openssl \\\n  webkit2gtk-4.1 libappindicator-gtk3 librsvg\n```\n\n### Build from Source\n\n1. **Clone the repository:**\n   ```bash\n   git clone https:\u002F\u002Fgithub.com\u002Fits-maestro-baby\u002Fmaestro.git\n   cd maestro\n   ```\n\n2. **Install npm dependencies:**\n   ```bash\n   npm install\n   ```\n\n3. **Build the MCP server:**\n   ```bash\n   cargo build --release -p maestro-mcp-server\n   ```\n   This builds the Rust MCP server binary that Tauri bundles with the application.\n\n4. **Run in development mode:**\n   ```bash\n   npm run tauri dev\n   ```\n\n5. **Build for production:**\n   ```bash\n   npm run tauri build\n   ```\n   The built application will be in `src-tauri\u002Ftarget\u002Frelease\u002Fbundle\u002F`.\n\n### Optional: Install AI CLIs\n\n```bash\n# Claude Code (recommended)\nnpm install -g @anthropic-ai\u002Fclaude-code\n\n# Gemini CLI\nnpm install -g @google\u002Fgemini-cli\n\n# OpenAI Codex\nnpm install -g @openai\u002Fcodex\n```\n\n---\n\n## Usage\n\n### Quick Start\n\n1. **Launch Claude Maestro**\n2. **Select a project directory** (ideally a git repository)\n3. **Configure sessions** in the sidebar:\n   - Set the number of terminals (1-6)\n   - Choose AI mode for each session\n   - Assign branches to sessions\n4. **Click \"Launch\"** to start all sessions\n5. Each session opens in its own worktree with the AI ready to work\n\n### Session Management\n\n- **Add sessions:** Click the floating `+` button\n- **Close sessions:** Click the `×` on the session header\n- **Change mode:** Use the mode dropdown in the session header\n- **Assign branch:** Select from the branch dropdown\n\n### Git Worktree Isolation\n\nWhen you assign a branch to a session:\n1. Maestro creates a worktree at `~\u002F.claude-maestro\u002Fworktrees\u002F{repo-hash}\u002F{branch}`\n2. The session's terminal opens in that worktree\n3. All file changes are isolated to that worktree\n4. Worktrees are cleaned up when sessions close\n\n### Quick Actions\n\nEach session can have quick action buttons:\n- **Run App** - Tells the AI to run the application\n- **Commit & Push** - Tells the AI to commit and push changes\n- **Custom** - Configure your own prompts\n\n---\n\n## Configuration\n\n### MCP Configuration\n\nCopy the example configuration and update paths:\n```bash\ncp .mcp.json.example .mcp.json\n```\n\nEdit `.mcp.json` to configure the MCP server for agent status reporting.\n\n---\n\n## Troubleshooting\n\n### Claude Command Not Found\n\nThe Claude CLI must be installed globally and in your PATH:\n```bash\nnpm install -g @anthropic-ai\u002Fclaude-code\nwhich claude  # Should show the path\n```\n\n### Worktree Issues\n\nIf worktrees get into a bad state:\n```bash\n# List all worktrees\ngit worktree list\n\n# Remove a specific worktree\ngit worktree remove \u002Fpath\u002Fto\u002Fworktree --force\n\n# Prune stale worktree entries\ngit worktree prune\n```\n\n### Build Issues\n\nIf you encounter build issues:\n```bash\n# Clear all Rust build caches\nrm -rf src-tauri\u002Ftarget\nrm -rf maestro-mcp-server\u002Ftarget\n\n# Clear node modules and reinstall\nrm -rf node_modules\nnpm install\n\n# Rebuild MCP server first, then Tauri app\ncargo build --release -p maestro-mcp-server\nnpm run tauri build\n```\n\n---\n\n## Contributing\n\n### Development Setup\n\n1. Fork and clone the repository\n2. Install npm dependencies: `npm install`\n3. Build the MCP server: `cargo build --release -p maestro-mcp-server`\n4. Run in dev mode: `npm run tauri dev`\n5. Make your changes\n6. Test thoroughly with multiple sessions\n\n### Project Structure\n\n```\nmaestro\u002F\n├── src\u002F                     # React\u002FTypeScript frontend\n│   ├── components\u002F          # UI components\n│   ├── lib\u002F                 # Utility libraries\n│   └── App.tsx              # Main application\n├── src-tauri\u002F               # Tauri Rust backend\n│   ├── src\u002F\n│   │   ├── commands\u002F        # Tauri command handlers\n│   │   ├── core\u002F            # Core business logic\n│   │   └── lib.rs           # Main Rust entry point\n│   ├── Cargo.toml           # Rust dependencies\n│   └── tauri.conf.json      # Tauri configuration\n├── maestro-mcp-server\u002F      # Rust MCP server (bundled with app)\n│   ├── src\u002F\n│   │   └── main.rs          # MCP server entry point\n│   └── Cargo.toml           # MCP server dependencies\n├── Cargo.toml               # Workspace configuration\n├── package.json             # Node.js dependencies\n└── README.md\n```\n\n---\n\n## License\n\nMIT License - see [LICENSE](LICENSE) for details.\n\n---\n\n## Acknowledgments\n\n- [Tauri](https:\u002F\u002Ftauri.app\u002F) - Cross-platform desktop framework\n- [xterm.js](https:\u002F\u002Fxtermjs.org\u002F) - Terminal emulator for the web\n- [Model Context Protocol](https:\u002F\u002Fmodelcontextprotocol.io\u002F) - MCP SDK\n- [Claude Code](https:\u002F\u002Fclaude.ai\u002Fclaude-code) - AI coding assistant\n\n---\n\nBuilt with Love by Jack\n","Maestro 是一个专为CLI代理设计的多AI编码助手并行运行平台。它允许用户同时运行1到6个Claude Code（或其他AI CLI）会话，每个会话都在独立的git工作树中运行，确保了代码隔离和避免冲突。项目使用TypeScript编写，支持macOS、Windows和Linux系统，并且针对AI原生工作流程进行了优化。适用于需要提高开发效率、减少上下文切换成本的场景，尤其是在进行多任务开发或团队协作时能够显著提升生产力。",2,"2026-06-11 03:51:57","high_star"]