Skip to content
/

Maestro (its-maestro-baby)

maestro-its-maestro-baby · its-maestro-baby/maestro · ★ 1.2k · last commit 2026-04-19

Primitive shape 1 total
MCP tools 1
00

Summary

Maestro (its-maestro-baby) — Summary

Maestro (its-maestro-baby) is a cross-platform desktop application built with Tauri 2.0 (Rust) + React that runs 1-6 AI coding assistant sessions simultaneously in isolated git worktrees, featuring a built-in MCP server for agent status reporting, a plugin marketplace, a GitKraken-style visual git graph, and a built-in Rust MCP server that exposes a maestro_status tool agents use to report their current state.

Problem it solved: The same core problem as the RunMaestro variant — serial AI coding is slow; parallel worktree isolation enables true parallel development. The its-maestro-baby variant differentiates on tech stack (Tauri/Rust backend for native performance vs Electron/Node) and the MCP-first agent status protocol.

Distinctive trait: The built-in Rust MCP server (maestro-mcp-server) that agents connect to via stdio and call maestro_status to report state — this is the only framework in this batch where the worktree manager itself exposes an MCP endpoint that agents actively call back into.

Target audience: Developers on macOS, Windows, Linux who want native-performance terminal multiplexing for 1-6 simultaneous AI sessions, with a plugin marketplace for extending per-session capabilities.

differs_from_seeds: Most similar to superpowers (Claude Code target, git worktrees) but is a desktop app shell rather than a skills plugin. The Tauri/Rust architecture and the bidirectional MCP server (agents calling maestro_status back to the app) are novel relative to all 11 seeds. Unlike claude-flow's outbound MCP (app calls tool server), maestro-its-maestro-baby's MCP is inbound: agents report status TO the app.

01

Overview

Maestro (its-maestro-baby) — Overview

Origin

Independent project by @maestro5240871 (Twitter). MIT license. Version 0.2.5. Active as of 2026-04-19.

Philosophy

From README:

"The Bloomberg Terminal for CLI Agents, its Maestro Baby!"

Core beliefs:

  1. True isolation: "Each session operates in its own git worktree. No merge conflicts, no stepping on each other's changes."
  2. AI-native workflow: "Built specifically for Claude Code, Gemini CLI, OpenAI Codex, and other AI coding assistants."
  3. Status transparency: Agents should be able to report their state back to the orchestrator app via a standard protocol (MCP).

Design principles

Principle Description
Parallel Development Launch 1-6 AI sessions simultaneously
True Isolation Each session in its own git worktree at ~/.claude-maestro/worktrees/
AI-Native Workflow Per-session mode selection (Claude Code, Gemini CLI, Codex, Plain Terminal)
Cross-Platform macOS 13+, Windows 10+, Linux

Technology bet

Unlike the RunMaestro variant (Electron/Node), this project bets on Tauri 2.0 (Rust backend) for native performance and a smaller binary footprint.

02

Architecture

Maestro (its-maestro-baby) — Architecture

Distribution

  • Tauri 2.0 desktop app (macOS, Windows, Linux)
  • No npm global install; download pre-built binary or build from source

Tech stack

Layer Technology
Desktop Framework Tauri 2.0
Backend Rust
Frontend React + TypeScript + Tailwind CSS
Terminal emulator xterm.js
MCP server Rust (maestro-mcp-server)
Git operations Native git CLI

Directory structure

maestro/
├── src/                  # React/TypeScript frontend
│   ├── components/
│   │   ├── git/          # Git visualization & operations
│   │   ├── marketplace/  # Plugin marketplace UI
│   │   ├── settings/     # Settings modals
│   │   ├── terminal/     # Terminal grid & panes
│   │   └── sidebar/      # Sidebar navigation
│   ├── stores/           # Zustand state stores
│   └── types/
├── src-tauri/            # Rust backend (Tauri commands, core logic)
│   └── src/
│       ├── commands/     # Tauri command handlers
│       └── core/         # ProcessManager, WorktreeManager
├── maestro-mcp-server/   # Rust MCP server (4 files)
├── cli/                  # CLI wrapper (maestro.sh)
├── docs/                 # Documentation
└── website/              # Docs website

Worktree path

~/.claude-maestro/worktrees/{repo}/{branch}/

Required runtime

  • Node.js 18+
  • Rust 1.78+ (build from source)
  • Git

Target AI tools

  • Claude Code
  • Gemini CLI
  • OpenAI Codex
  • Plain Terminal
03

Components

Maestro (its-maestro-baby) — Components

MCP Server: maestro-mcp-server

Built in Rust. Exposes one tool to agents:

Tool Purpose
maestro_status Agents call this to report state: idle, working, needs_input, finished, error

Agents discover this MCP server via their MCP config. This is the orchestration backchannel — agents actively update the dashboard.

CLI wrapper

File Purpose
cli/maestro.sh Shell wrapper for launching/CLI control

UI components

Component Purpose
Terminal Grid Dynamic grid (1x1 to 2x3) of xterm.js terminal panes per session
Session Sidebar List of sessions with real-time status (from MCP)
Git Graph GitKraken-style commit visualization with branch rails, diffs, commit details
Plugin Marketplace Browse/install skills, commands, MCP servers per session
Settings Theme, terminal font (including Nerd Fonts), quick actions

Plugin system

  • Plugin types: Skills, Commands, MCP servers
  • Per-session plugin configuration
  • Automatic symlink management for commands and skills
  • Marketplace-based distribution

No prompt templates, skills, hooks at the platform level

Like Crystal, this framework adds no behavioral modification to the AI agents. The plugins (skills/commands) that users install through the marketplace may add those, but none are bundled.

05

Prompts

Maestro (its-maestro-baby) — Prompts

This framework ships no prompt template files of its own. The README describes agents as using the maestro_status MCP tool for status reporting — this is the only "prompt" layer, and it is a protocol instruction, not a template file.

MCP tool description (verbatim from README architecture)

maestro_status tool - agents report their current state
(idle, working, needs_input, finished, error)

The MCP server's StatusManager receives these calls and updates the UI dashboard.

Agent context

No system prompt is injected by Maestro. Agents receive whatever is configured in their own CLAUDE.md, skills, or other context sources. The framework is pure pass-through.

Plugin-based prompt injection

The Plugin Marketplace allows users to install Skills and Commands. These are third-party prompt files that get symlinked into the session context. No built-in skills are bundled by the framework.

Prompting technique: MCP status protocol

The only behavioral expectation placed on agents is that they call maestro_status (if they have the MCP server configured). This is not a skill or system prompt — it is an MCP tool call that agents can choose to make. No Iron Laws, no auto-triggers.

09

Uniqueness

Maestro (its-maestro-baby) — Uniqueness & Positioning

differs_from_seeds

Most similar to superpowers in target tool (Claude Code) but is an orchestration shell, not a skills plugin. The defining novelty relative to all 11 seeds is the reverse MCP pattern: agents call back to the orchestrator app via maestro_status rather than the app calling a tool server. In claude-flow, the app calls 305 MCP tools hosted on a server; here, agents call one MCP tool hosted on the desktop app — inverting the typical MCP client/server relationship. No seed framework uses agents as MCP clients calling home to the UI. The Tauri/Rust backend (vs Electron/Node in every other desktop app in this batch) also differentiates on performance posture.

Positioning

  • "The Bloomberg Terminal for CLI Agents" (project's own tagline)
  • Targets users who value native performance (Rust/Tauri) over the broader feature set of RunMaestro
  • Plugin Marketplace enables community extension without bundling opinionated methodology
  • 1-6 session cap: explicitly sized for focused parallel work, not massive swarms

Observable failure modes

  • 1-6 session hard cap may be limiting for large-scale parallelism
  • No Auto Run / playbook system: no way to batch-execute AI tasks unattended
  • No Group Chat: no multi-agent coordination beyond manual routing
  • maestro_status requires agents to be configured with the MCP server; agents that don't call it won't show status

Inspired by

  • Anthropic Claude Code SDK worktrees tutorial
  • GitKraken (visual git graph)
  • iTerm2 (split pane shortcuts)

Relationship to RunMaestro

Not a fork — entirely independent implementation in a different language (Rust/Tauri vs Electron/Node). Same conceptual space (parallel worktree manager), different architectural choices and feature scope.

04

Workflow

Maestro (its-maestro-baby) — Workflow

Phases

Phase Action Artifact
1. Session creation New session → choose AI mode (Claude Code/Gemini/Codex/Terminal), assign to project repo Session in sidebar, git worktree at ~/.claude-maestro/worktrees/{repo}/{branch}
2. Plugin setup Install skills/commands/MCP servers per session via marketplace Symlinked skills/commands in session context
3. Parallel execution Sessions run independently; agents report state via maestro_status MCP call Real-time status badges in terminal grid
4. Monitoring Git graph shows all sessions' branches; MCP status shows idle/working/needs_input/finished/error Visual git graph, status badges
5. Interaction Send input to any running agent via the terminal pane; split panes with Cmd+D Interactive terminal
6. Integration Review git graph; manage branches; no auto-merge (manual) Branch management
7. Cleanup Close session → worktree pruned

Approval gates

None — all integration is user-initiated.

Status protocol (novel)

Agents connected via MCP call maestro_status to push state updates:

states: idle | working | needs_input | finished | error

This is the only framework in this batch where agents actively push status TO the orchestrator app via MCP — the reverse of typical MCP usage.

Quick Actions

Custom action buttons per session: "Run App", "Commit & Push", custom prompts — executed via the AI assistant.

06

Memory Context

Maestro (its-maestro-baby) — Memory & Context

State storage

  • Tauri/Rust app state: Sessions, worktree assignments, git state stored in Tauri's native data directory
  • Git worktrees: File system at ~/.claude-maestro/worktrees/{repo}/{branch}/
  • MCP StatusManager: In-memory agent status (volatile — resets on app restart)

Persistence

Session configurations and worktree associations persist across app restarts (Tauri data directory). Terminal scrollback — unclear from source, but xterm.js supports scrollback buffering.

Agent status tracking

The StatusManager in the Rust MCP server maintains a map of agent_id → status. This is the live operational state for the running app session but is not persisted.

No cross-session memory

No shared memory, vector store, or history log between sessions. Each agent's memory is whatever is in its own project files and the CLI tool's own history.

Context compaction

Not handled by this framework. Delegated to the underlying CLI tools.

Config

~/.mcp.json.example (from repo root) shows MCP configuration pattern for connecting agents to the maestro-mcp-server.

07

Orchestration

Maestro (its-maestro-baby) — Orchestration

Multi-agent support

Yes — 1-6 concurrent sessions (stated cap in README), each in its own worktree.

Orchestration pattern

Parallel fan-out (no coordination): All sessions are independent. No moderator AI, no dependency graph, no consensus.

Isolation mechanism

Git worktree at ~/.claude-maestro/worktrees/{repo}/{branch}/. Each session gets its own branch and worktree directory, pruned on session close.

MCP status protocol (novel)

Unlike typical MCP usage (app calls tool server), here:

  • The Rust maestro-mcp-server runs as an MCP stdio server
  • Agents connect to it and call maestro_status to report state
  • The app receives status updates and shows them in the terminal grid This is a reverse MCP pattern — agents call home to the orchestrator.

Multi-model support

Yes (by tool mode selection) — different sessions can run different AI tools (Claude Code = Claude, Gemini CLI = Gemini, Codex = OpenAI).

Execution mode

Interactive loop — user sends prompts and agents respond; no Auto Run equivalent.

Crash recovery

App state persists in Tauri data directory; sessions can be resumed.

Max concurrent agents

1-6 (stated explicitly in README; grid layout supports 1x1 to 2x3).

Coordination

None at framework level — human reviews git graph and manages branches manually.

08

Ui Cli Surface

Maestro (its-maestro-baby) — UI & CLI Surface

Desktop application

Tauri 2.0 desktop app — the primary interface.

CLI

cli/maestro.sh — a shell wrapper for basic CLI control. Not a full CLI binary like RunMaestro's maestro-cli.

Key UI features

Feature Description
Terminal Grid Dynamic 1x1 to 2x3 grid of xterm.js terminals; iTerm2-style split panes (Cmd+D vertical, Cmd+Shift+D horizontal)
Real-time status badges idle/working/needs_input/finished/error (populated via MCP maestro_status calls)
Session mode selector Per-session AI tool selection (Claude Code, Gemini CLI, Codex, Plain Terminal)
GitKraken-style git graph Commit visualization with branch rails, commit detail panel, diffs
"Worktree" badge Header badge showing when a session is in a worktree
Plugin Marketplace Browse/install Skills, Commands, MCP servers per session
Quick Actions Custom action buttons per session
Appearance Settings Light/dark theme, terminal font (system fonts, Nerd Fonts, custom), text size

Keyboard shortcuts

Shortcut Action
Cmd+T New terminal session
Cmd+D Split pane vertically
Cmd+W Close focused pane
Cmd+1-9 Jump to terminal 1-9
Cmd+[ / Cmd+] Cycle terminals

Observability

  • Real-time MCP status display in terminal grid
  • Git graph for visual branch tracking
  • No structured audit log or replay capability

IDE integration

None — standalone desktop app.

Comparison to RunMaestro variant

Dimension RunMaestro its-maestro-baby
Backend Electron/Node Tauri/Rust
Sessions Unlimited 1-6
CLI Full maestro-cli binary Shell script only
Group Chat Yes (moderator AI) No
Auto Run Yes (markdown checklists) No
MCP None bundled Built-in status MCP server
Git graph Diff viewer only GitKraken-style visual graph

Related frameworks

same archetype · same primary tool · same memory type

Goose (Block/AAIF) ★ 46k

General-purpose AI agent (not just code) with security-first tool inspection, recipe-based shareable configurations, and 15+ LLM…

Vibe Kanban ★ 27k

Eliminate the overhead of planning, switching between agent terminals, and reviewing diffs by providing a single web dashboard…

1Code ★ 5.5k

Cursor-like desktop experience for Claude Code and Codex with cloud background agents, event-driven automations, and a full…

Crystal (stravu) ★ 3.1k

Manage multiple parallel AI coding sessions in isolated git worktrees from a single desktop GUI.

Maestro (RunMaestro) ★ 3.0k

Orchestrate unlimited parallel AI agent sessions with a keyboard-first desktop app including Group Chat coordination and Auto Run…

AgentsMesh ★ 2.1k

Multi-tenant workforce platform that gives every team member a squad of AI coding agents coordinated through channels, pod…