Git Worktrees for ZCode
Git Worktrees for ZCode
Jeder Thread bekommt seinen eigenen Worktree – automatisch. Git Worktrees gibt jedem neuen ZCode-Thread einen isolierten Checkout deines Repos, damit Aufgaben parallel laufen können – ohne Stashen, ohne ewiges Branch-Gewechsel und ohne dass sich Änderungen gegenseitig überschreiben. Starte einfach mit dem Chatten; du bist bereits isoliert.
/worktree:new fix-auth "Refactor the login flow" ← worktree + background agent
/worktree ← dashboard: branches, sizes, agents
/worktree:end fix-auth ← commit everything, remove cleanlyWarum du es willst
Keine Einrichtung. Der Auto-Session-Modus (standardmäßig aktiviert) gibt jedem neuen Thread in dem Moment, in dem er startet, einen eigenen Worktree – und eine wiederaufgenommene Session führt zurück zu genau diesem. Keine Befehle nötig, jemals.
Nie wieder Arbeit verlieren. Das Entfernen von dirty Worktrees, laufenden Agenten oder ungemergten Branches wird ohne
forceverweigert – und selbst dann werden uncommittete Änderungen zuerst gesichert (getrackter Diff plus untracked Dateien) in einem wiederherstellbaren Verzeichnis. Branches werden standardmäßig behalten.Deine Umgebung reist mit.
.envund Verwandte (alles, was gitignored ist und in.worktreeincludegelistet ist) werden in neue Worktrees übernommen;setupCommands(pnpm install,docker compose up -d) laufen automatisch.Es stört dich nicht. Worktrees liegen in einem zentralen Store (
~/.zcode/worktrees), deine Repos bleiben makellos, und ein Retention-Sweep hält den Plattenverbrauch im Rahmen. Es wird nie etwas stillschweigend gelöscht.
Installation
Öffne in ZCode Desktop Einstellungen → Plugin-Verwaltung und klicke auf Marktplatz hinzufügen.
Übertrage das Repo – ein GitHub-
owner/repo-Slug oder eine vollständige Git-URL, beides reicht:
agallardol/zcode-git-worktreesInstalliere Git Worktrees aus dem Katalog.
Öffne ein beliebiges Git-Repo und starte einen Thread – du bist bereits in verlassen Exploit. Tippe für das Dashboard
/worktreeein.
Voraussetzungen: ZCode ≥ 3.8.1, node (≥ 3.0.1) im PATH, git.
Falls /worktree nicht erscheint: Führe in einem Terminal
node --version aus (der MCP-Server benötigt node), stelle sicher, dass das
Plugin unter „Installed“ aktiviert ist, und starte ZCode erneut, wenn du es bei
geöffneter App installiert hast.
Related MCP server: hop-mcp
Die Befehle
Befehl | Was er tut |
| Dashboard – Branch, dirty Zustand, Größe, Aktivität, laufende Agents |
| Erstellt einen Worktree (optional automatisch vergebener Name, falls nousgelassen); mit Task wird ein Hintergrund-Agent gestartet, der darin arbeitet |
| Diff-Stat, nicht gepuschte Commits, Snapshots |
| Sicheres Entfernen – vorher wird Arbeit gesichert |
| Retention-Sweep (zuerst Dry Run; überspringt alles, was dirty, gesperrt oder aktiv ist) |
| Checkt eine GitHub-PR in einen Review-Worktree aus |
| Workspace-Ende: committe alles mit einer echten Message, remove, keep branch |
| Automatische Worktrees pro Session – siehe unten |
Dahinter stehen neun MCP-Tools (worktrees_create, worktrees_list,
worktrees_status, worktrees_remove, worktrees_cleanup, worktrees_prune,
worktrees_snapshot, worktrees_set_task, worktrees_auto_session) sowie ein
model-oriented Skill und Hooks – sodass der Workspace-Worktree auch von allein
greift, wenn du nach paralleler oder isolierter Arbeit fragst.
Auto-Session-Worktrees (standardmäßig aktiviert)
Jede neue Session in einem Haupt-Checkout eines Repos erhält einen eigenen
Worktree (zcode/sess-…); beim Fortsetzen geht wieder in denselben Worktree,
und Editierung am Haupt-Checkout ist blockiert und wird in den Session-Worktree
unt README. Man schaltet das um in Einstellungen → Plugins → Git Worktrees
oder mit /worktree:auto (die letzte Änderung gewinnt). Ein Repo kann sich
jederzeit gegen die Automatik entscheiden:
// .zcode/worktree.json in the repo
{ "autoSession": false }Repo-seitige Konfiguration (optional)
.worktreeinclude – Muster im Gitignore-Stil; nur Dateien, die auch
gitignored sind, werden in neue Worktrees übernommen (getrackte Dateien werden
niemals dupliziert):
.env
config/secrets.json.zcode/worktree.json – explizite Dateien, Lifecycle-Hooks und die
Auto-Session-Verschriftung:
{
"autoSession": true,
"copyFiles": [".env.local"],
"setupCommands": ["pnpm install"],
"preRemoveCommands": ["docker compose down"]
}Plugin-Einstellungen (Einstellungen → Plugins → Git Worktrees): Worktree-Root,
Standard-Basis (fresh = origin/HEAD mit Offline-Fallback oder head),
Behalte-Tage 14, maximale Worktrees pro Projekt (15).
Safety-Model
Nichts entkommt dem Store. – Namen werden auf Pfad- und Git-Ref-Sicherheit geprüft (Traversal,
.lock, Case-Twin, Unicode-Tricks werden verhindert), vollständige Pfade werden an denselbenSymlinksgeschützt, store paths canonicalized; ein erfolglosergit worktree addrollt den Branch zurück.Concurrency-fest: Mutationen sind über eine in-process Queue und zusätzlich eine Cross-process Lockfile serialisiert; paralleles Anlegen fleischwird nie zurückgerollt.
Self-healing: korrupter Zustand wird quarantine and rebuildet, Worktrees werden wieder aus Git übernommen, out-of-band Deleting werden durch
prune/cleanupreconcileert.Keine Ausführung aus untrusted repos:
setupCommands/preRemoveCommandslaufen nur auf Worktrees, die du ausdrücklich erstellst. Auto-Session erstellt niemals repo-eigene Commands: Öffnen eines Geklonten Repos ist keine Code-Laufzeit. Jeder Git-Call läuft überexecFile; die einzige Shell-Ausführung sind Lifecycle-Befehle, für die du dich entschieden hast.
Verglichen mit den Tools, die dazu inspirierten: ein PR-Number-Checkout und
die .worktreeinclude-Semantik stammen von Claude Code, Snapshot aus
und der zentrale Store von Codex, Retention-Grenzen von Cursor/Codex –
dazu geben-Orchestrierung in einem Background-Agenten und hart edit-isolation,
die keinen von ihnen für Pluginsengebote.
Tests
npm test # 129 tests: 80 unit (validators, state, carry-over, hooks, edit guard)
# + 13 integration (real MCP stdio JSON-RPC + protocol edges)
# + 36 adversarial & security (hostile names, races, corrupt
# state, out-of-band damage, exploit regressions)
CI runs the suite on macOS and Linux (Node 20 and 22).Die Suites laufen vollständig auf lokalen test fixtures -- kein Netzwerk, keine Modell-Aud.
Hinweise &
Die Auto-Session-Isolation ist soft für Commands, hart für Edits: Da die Write/Edit-Steuerung gegen den Haupt-Checkout blockiert wird durch einen PreToolUse-Guard; Bash wird per injected context bewerkger, nicht statistisch überwacht.
ZCode hat kein Session-Ende-Event; daher wird nichts automatisch committet oder gelöscht.
/worktree:endist der explizite Endpunkt, und ein Retention-Sweep sammelt das, was dort erledigt ist.One-Session-Verzug für Auto-Session-Einstellungen (hooks read a marker, den der MCP-Server beim Session-Start synchronisiert).
Lizenz
MIT © Alfredo Gallardo
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA git worktree manager that enables AI agents to work on different branches simultaneously with automatic coordination, locking, and merge management. Supports creating, managing, and merging git worktrees with setup automation and conflict resolution.86MIT
- AlicenseNot gradedqualityDmaintenanceManages parallel Git worktrees, enabling work on multiple branches simultaneously without stashing or context switching.1MIT
- FlicenseAqualityDmaintenanceEnables Claude to create, manage, and clean up git worktrees automatically, including dependency installation and GitHub PR creation.5
- AlicenseNot gradedqualityAmaintenanceLocal coordination for coding agents that share a Git working tree.3152MIT
Related MCP Connectors
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
Git-backed platform for skills, tools, and context for AI agents
Persistent cloud development environments that coding agents create, run and test software in.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/agallardol/zcode-git-worktrees'
If you have feedback or need assistance with the MCP directory API, please join our Discord server