Maestro

Maestro

使用技術:
  • TypeScript
  • commander
  • simple-git
  • execa
  • inquirer
  • chalk
  • ora
  • zod
  • cli-progress
  • chokidar
  • conf
  • p-limit
  • open
  • modelcontextprotocol/sdk
  • tsup
  • vitest
担当:
  • Design
  • Coding

概要

Git worktreeを "オーケストラ" のように指揮し、Claude Codeとの並列開発を加速させるCLIツール

 Maestroは "指揮者" として機能し、各worktreeを "オーケストラ演奏者" のように操り、Claude Code × Git worktreeによる並列開発の効率化を実現します。

 「指揮するだけ、すべてが調和する」— これがMaestroの設計思想。Git、tmux、GitHub、Claude Codeなど既存ツールを統合し、開発者の認知負荷を最小化、創造性を最大化します。

 MaestroはMCPサーバーとしても機能します。「mstでissue123のブランチを作成して、Cursorで開いて」などの自然言語で指示することで、Claude CodeがMaestroを操る新しい開発体験を提供します。

 mst create 123 --tmux --claude-md:GitHub Issue/PRからブランチとworktreeを作成し、専用のtmuxセッション内で開発環境を構築。CLAUDE.mdのシンボリックリンクを作成し全てのworktreeで同じCLAUDE.mdを共有。Claude Codeとの連携準備が整い、コンテキストスイッチのコストを最小化します。

 mst github issue 123 -o:Issue番号からブランチとworktreeを自動作成、.maestro.json:development.defaultEditorに設定したIDEでworktreeを自動で開きます。開発環境への移行がシームレスに。

 mst tmuxfzfによる高速切り替え、--tmux-h-panes 4オプションで瞬時にtmuxセッションを4分割レイアウトに構築。各ペインにブランチ名が表示され、並列作業を視覚的に管理することで効率的な開発環境を実現します。

 mst list:ローカルのworktreeを一覧表示できます。

 mst github list:GitHub上のIssue/PRを一覧表示できます。

 mst where --current:現在のworktreeを確認することができます。

 mst list --last-commitmst list --metadataで、各演奏者(worktree)の活動状況の詳細を把握できます。

 mst snapshotで作業状態を完全保存。実験的な変更の前にスナップショットを作成し、失敗したら即座に復元。git stashよりも直感的で、メッセージ付きで履歴管理が可能です。

 .maestro.jsonでプロジェクトごとに挙動をカスタマイズ可能です。worktreeの保存先、自動セットアップコマンド、同期ファイル、ライフサイクルフック、tmux/GitHub/Claude連携などの柔軟な設定に加え、postCreateフックで環境構築の自動化が可能です。

 必要なのはNode.js 20以上のみです。brew install camoneart/tap/maestroまたはnpm install -g @camoneart/maestroまたはpnpm add -g @camoneart/maestroですぐにインストールできます。