Discover MCPs & agents
Loading MCPs and agents…
Loading MCPs and agents…
A simple GUI to manage Git Worktrees. Visual Git Worktree manager for parallel branch development. Multi-repo workspaces, smart symlinks, built-in terminal, browser remote access, and AI-ready MCP integration. Built with Tauri 2 + React + Rust.
From the repo.
The missing GUI for Git Worktrees.
Work on multiple branches simultaneously, across multiple repos, without stash, clone, or context-switching pain.
Quick Start • Features • Screenshots • FAQ • 中文
You're deep in a feature branch. Fifteen files changed. Dev server running. Then Slack pings: production is down.
Without Worktree Manager — git stash → switch branch → npm install → wait for rebuild → fix → switch back → git stash pop → pray for no conflicts → restart dev server. 15 minutes minimum.
With Worktree Manager — Click "New Worktree", type hotfix-payment, done. Your feature branch keeps running. Dependencies are shared via symlink — instant setup. Fix, push, archive. 30 seconds.
Group related repos into a Workspace. Creating a Worktree creates a git worktree across all linked projects at once. Each Worktree gets its own terminal — run Claude Code, Codex, or Cursor in parallel across different branches without conflicts.
P0 alert mid-development? Create a hotfix-payment Worktree → AI-assisted fix → merge to main → archive → switch back. Uncommitted code, terminal output, dev servers — everything stays intact.
| Main Interface | Create Worktree |
|---|---|
![]() | ![]() |
| Terminal & AI Coding | Browser Remote Access |
|---|---|
![]() | ![]() |
| Voice Input & AI Refine |
|---|
![]() |
| Platform | Download |
|---|---|
| macOS | .dmg |
| Windows | -setup.exe |
| Linux | .AppImage / .deb |
Only requirement: Git 2.0+. No Node.js or Rust needed at runtime.
owner/repo), SSH, or HTTPSThat's it. Your worktree is ready with all dependencies symlinked and terminals pre-configured.
| Feature | Description |
|---|---|
| 🌿 Parallel Branches | Work on multiple branches at the same time in isolated directories, sharing the same .git data |
| 📦 Multi-Repo Workspaces | Group related repos (frontend + backend + shared libs) — create a worktree and all repos switch together |
| 🔗 Smart Symlinks | Auto-link node_modules, .next, vendor, target etc. Zero disk waste, zero reinstall |
| 🏷️ Tag Organization | Tag projects by team, domain, or stack. Filter and batch-select when creating worktrees |
| Feature | Description |
|---|---|
| 🔄 One-Click Operations | Sync, merge to test, pull, push — all from the UI with real-time diff stats |
| 📊 Branch Insights | See how many commits you're ahead/behind at a glance |
| ⚡ Batch Actions | Trigger operations across all projects in a worktree simultaneously |
| 📝 AI Commit Messages | Generate commit messages with Qwen AI (optional) |
| Feature | Description |
|---|---|
| 💻 Built-in Terminal | Full terminal emulator (xterm.js + PTY) with shell integration and search |
| 🎤 Voice Input | Speak to type in terminal — powered by Dashscope ASR with AI text refinement |
| 🌐 Browser Remote | Share your workspace over the network with password protection |
| 🔒 ngrok Tunneling | Optional public access via ngrok — no port forwarding needed |
| Feature | Description |
|---|---|
| 🖥️ IDE Integration | One-click open in VS Code, Cursor, or IntelliJ IDEA |
| 🤖 AI-Ready (MCP) | Built-in MCP server — let Claude Code, Cursor, or Codex manage worktrees via natural language |
| 📁 Safe Archiving | Archiving only hides a worktree (files, branches and git state stay untouched); pre-archive checks flag uncommitted or unpushed work. Restore instantly |
A Git worktree lets you check out multiple branches into separate directories while sharing a single .git database. Unlike cloning, worktrees share history, refs, and hooks — no extra disk space for repository data. Learn more
When creating a worktree, Worktree Manager automatically creates symlinks for directories you specify (e.g., node_modules, .next, target). These point to the main project's directories, so you never need to reinstall dependencies. You can configure which folders to link per project.
Absolutely. While multi-repo workspaces are a key feature, Worktree Manager works perfectly with a single repository too.
No. The remote machine only needs a modern browser. Everything runs through the web interface — terminal, file browsing, git operations, worktree management.
Yes. Browser access is password-protected with challenge-response authentication (no plaintext passwords over the wire). You can also limit access to LAN-only or use ngrok for secure tunneling.
The built-in Model Context Protocol server lets AI coding assistants (Claude Code, Cursor, Codex) create worktrees, check status, and run git operations through natural language — without leaving your AI chat. See MCP docs for setup.
workspace/
├── .worktree-manager.json # Workspace config
├── projects/ # Main repos (base branches)
│ ├── frontend/
│ └── backend/
└── worktrees/ # Your worktrees
├── feature-checkout-v2/
│ ├── projects/
│ │ ├── frontend/ # ← git worktree (own branch)
│ │ │ └── node_modules # ← symlink to main
│ │ └── backend/
│ ├── .claude -> ../../.claude # Shared files
│ └── CLAUDE.md -> ../../CLAUDE.md
└── hotfix-payment/
└── ...
Shared items (.claude, CLAUDE.md, config files) are automatically symlinked across all worktrees so AI assistants and tooling configs stay in sync.
.worktree-manager.json){
"name": "My Project",
"worktrees_dir": "worktrees",
"linked_workspace_items": [".claude", "CLAUDE.md"],
"tags": [
{ "id": "fe", "name": "Frontend", "color": "#3B82F6" },
{ "id": "be", "name": "Backend", "color": "#10B981" }
],
"projects": [
{
"name": "web-app",
"base_branch": "main",
"test_branch": "test",
"merge_strategy": "merge",
"linked_folders": ["node_modules", ".next"],
"tags": ["fe"]
}
]
}
| Format | Example |
|---|---|
| GitHub shorthand | facebook/react |
| SSH | git@github.com:facebook/react.git |
| SSH (custom port) | ssh://git@gitlab.com:1022/org/repo.git |
| HTTPS | https://github.com/facebook/react.git |
Prerequisites: Node.js 22+, Rust 1.98 (install rustup; the toolchain is installed automatically via rust-toolchain.toml), Git 2.0+
git clone https://github.com/guoyongchang/worktree-manager.git
cd worktree-manager
npm install
# Development
npm run build && npm run tauri dev
# Production build
npm run tauri build
# Verify command contracts (IPC ↔ HTTP sync)
npm run contracts
Tech Stack: Tauri 2 · React 19 · TypeScript 5 · Tailwind CSS 4 · Rust (axum, git2, tokio) · xterm.js
See TESTING.md for the testing strategy.
Contributions are welcome! Please open an issue first to discuss what you'd like to change.
If Worktree Manager saves you time, consider giving it a ⭐!
Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "{MCP_ENDPOINT_URL}"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.