Skip to main content
Glama

wtx

Git-Worktree-Manager mit integriertem MCP-Server. Erstelle, inspiziere und bereinige isolierte Arbeitsbereiche von deinem Terminal aus – oder lass deine KI-Coding-Agenten es selbst erledigen.

CI npm license


Parallele KI-Coding-Agenten haben das Jonglieren mit git stash überflüssig gemacht – aber das rohe git worktree add ../foo -b foo && cd ../foo && cp ../.env . ist eine lästige Aufgabe, die niemand fünfmal am Tag wiederholen möchte. wtx verwandelt Worktrees in einen Ein-Wort-Workflow für Menschen und für Agenten:

$ wtx new fix-login
✔ created worktree fix-login
  path:   ~/code/myapp/.worktrees/fix-login
  branch: wt/fix-login (new)
  copied: .env, .env.local

Dein Agent erhält dieselben Fähigkeiten über MCP:

{ "name": "create_worktree", "arguments": { "name": "fix-login", "setup": "npm install" } }

Warum wtx

  • Ein Tool, zwei Schnittstellen. Eine schnelle CLI für dich, einen MCP-Server (wtx mcp) für Claude Code, Cursor, Codex oder jeden MCP-fähigen Agenten.

  • Null Abhängigkeiten. Eine einzige Node.js-Binärdatei, die ausschließlich git aufruft. Nichts zu prüfen, nichts, das kaputtgehen kann.

  • Hygienebewusst. Jeder Worktree zeigt seinen Speicherbedarf und die letzte Aktivität. Mit wtx clean --dry-run holst du Gigabyte veralteter node_modules-Klonen zurück.

  • Standardmäßig sicher. Weigert sich, dirty Worktrees zu löschen, fasst den Haupt-Checkout nie an, löscht Branches nur, wenn sie vollständig gemergt sind, und versteckt .worktrees/ über .git/info/exclude (keine .gitignore-Verschmutzung).

  • Rundum-Sorglos-Paket. Kopiert Env-Dateien in neue Worktrees und führt den Setup-Hook deines Projekts automatisch aus.

Installation

npm install -g wtx        # or: brew install wtx (planned)

Erfordert Node.js ≥ 18 und ein modernes git.

Schnellstart

$ cd myapp
$ wtx new feat-search          # isolated workspace at .worktrees/feat-search on branch wt/feat-search
$ cd $(wtx path feat-search)   # jump in
$ wtx ls                       # see every workspace, its state and size
NAME       BRANCH         STATUS       AGE      SIZE     PATH
myapp*     main           ✓ clean      2d ago   412 MB   ~/code/myapp
feat-api   wt/feat-api    ● dirty (1)  3h ago   38 MB    ~/code/myapp/.worktrees/feat-api
$ wtx clean --dry-run          # preview reclaimable space
· feat-api (branch merged, 38 MB)
would free: 38 MB · kept 0 worktree(s)

Befehle

Befehl

Beschreibung

wtx new <name>

Erstellt .worktrees/<name> auf Branch wt/<name>, kopiert Env-Dateien, führt Setup-Hook aus

wtx ls

Tabelle der Worktrees: Branch, Voraus-/Zurück-Status, Dirty-Status, Alter des letzten Commits, Speicherbedarf

wtx rm <name> [--force]

Entfernt einen Worktree; verweigert das Löschen bei Dirty-Zustand; löscht gemergte Branches

wtx clean [--dry-run] [--stale-days <n>]

Entfernt Worktrees, deren Branches vollständig gemergt und/oder inaktiv sind

wtx open [name]

Startet $SHELL in einem Worktree (--print gibt nur den Pfad aus)

wtx path [name]

Gibt den absoluten Pfad eines Worktrees aus (shell-script-freundlich)

wtx mcp

Startet als MCP-Server über stdio

Globale Flags: --json (maschinenlesbare Ausgabe), --base <ref>, --setup <cmd>, --no-copy, --no-setup.

Von KI-Agenten verwenden (MCP)

Füge dies zu deiner MCP-Client-Konfiguration hinzu:

// e.g. claude_desktop_config.json / opencode.json / .mcp.json
{
  "mcpServers": {
    "wtx": { "command": "npx", "args": ["-y", "wtx", "mcp"] }
  }
}

Der Server stellt vier Tools bereit: list_worktrees, create_worktree, remove_worktree, clean_worktrees. Alle akzeptieren ein optionales repo_path; andernfalls wird das Arbeitsverzeichnis des Servers verwendet. Die Antworten sind JSON, sodass Agenten sie verketten können: erstellen → arbeiten → entfernen – ohne jemals in deinem Haupt-Checkout die Branches zu wechseln.

Beispiel-Agenten-Prompt: "Richte einen Arbeitsbereich namens oauth-fix auf Basis von develop ein, führe darin pnpm install aus und nenne mir dann den Pfad."

Konfiguration

Lege eine wtx.config.json (oder .wtxrc) in deinem Repository-Root ab:

{
  "dir": ".worktrees",
  "copyFiles": [".env", ".env.local"],
  "setup": "pnpm install",
  "branchPrefix": "wt/"
}

Key

Standard

Bedeutung

dir

.worktrees

Wo Worktrees liegen (relativ zum Repository-Root, automatisch zu .git/info/exclude hinzugefügt)

copyFiles

[".env", ".env.local"]

Dateien, die vom Haupt-Checkout in jeden neuen Worktree kopiert werden

setup

(keine)

Shell-Befehl, der nach der Erstellung in einem neuen Worktree ausgeführt wird

branchPrefix

wt/

Präfix für Branches, die von wtx new erstellt werden

Sicherheitsmodell

  • Das Haupt-Worktree wird von rm oder clean niemals entfernt.

  • Dirty-Worktrees werden von clean immer belassen, und rm verlangt --force.

  • Branches werden nur bei vollständigem Merge in den Standard-Branch gelöscht (Fallback: origin/HEADmainmaster).

  • Worktree-Verzeichnisse liegen unter .worktrees/ und werden über .git/info/exclude ausgeschlossen– so bleibt deine .gitignore unberührt.

  • Namen werden bereinigt; Traversal wie ../evil wird abgewiesen.

Im Vergleich

raw git worktree

TUI-Manager

wtx

Ein-Befehl-Erstellung + Env-Kopie + Setup-Hook

teilweise

Speicherbedarf & Veraltung pro Worktree

selten

Maschinenlesbares --json überall

MCP-Server für Coding-Agenten

Null Laufzeit-Abhängigkeiten

n/a

✗ (meist schwer)

Entwicklung

git clone https://github.com/willkhinz/wtx && cd wtx
npm install
npm test        # build + 32 integration/unit tests
node dist/src/cli.js help

Architektur: src/core.ts (Engine), src/cli.ts (UI für Menschen), src/mcp.ts (UI für Agenten). Die MCP-Implementierung ist ein abhängigkeitsfreies JSON-RPC 2.0 mit zeilenweise begrenzten Nachrichten (newline-delimited).

Roadmap

  • wtx exec <name> -- <cmd> – Befehle über alle Worktrees ausführen

  • tmux-/iTerm-Sitzungen pro Worktree starten

  • Homebrew-Formel

  • GitHub Action: PRs mit Vorschauen pro Worktree kommentieren

License

MIT

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Git-backed platform for skills, tools, and context for AI agents

  • A MCP server built for developers enabling Git based project management with project and personal…

  • Free public MCP for AI agents — 193 tools, 44 workflows. No API key.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/willkhinz/wtx'

If you have feedback or need assistance with the MCP directory API, please join our Discord server