Przejdź do treści
Biblioteka skilli
Programowanie · Nauka i wyjaśnianie

worktree-guide

/worktree-guide

Prowadzi przez równoległą pracę z Ghostty, git worktree i Lazygit, przy konfiguracji przepływów wielozadaniowych i nauce systemu worktree.

Licencja
MIT
Ostatnia zmiana repozytorium
25.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 25.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Prowadzi przez równoległą pracę z Ghostty, git worktree i Lazygit, przy konfiguracji przepływów wielozadaniowych i nauce systemu worktree.

Oryginalny opis (EN)

Interactive guide for parallel development with Ghostty, git worktrees, and Lazygit. Use when setting up multi-task workflows or learning the worktree system.

Jak działa

  1. Preflight
  2. Phase 1: Welcome & Context Detection
  3. Phase 2: Ghostty Essentials
  4. Phase 3: Lazygit Essentials
  5. Phase 4: Complete Workflow (Guided)
  6. Phase 5: Troubleshooting
  7. Phase 6: Quick Reference Card
  8. Guardrails
Sekcje z nagłówków SKILL.md, w oryginale · 405 linii, 1 569 słów
Podgląd SKILL.md
---
name: worktree-guide
description: Interactive guide for parallel development with Ghostty, git worktrees, and Lazygit. Use when setting up multi-task workflows or learning the worktree system.
license: MIT
metadata:
  author: claude-code-templates
  version: "1.0"
---

Guide the user through parallel development workflows using Ghostty terminal panels, git worktrees, and Lazygit. This is both a teaching experience and a practical reference.

---

## Preflight

Before starting, detect the user's environment:

```bash
git rev-parse --is-inside-work-tree 2>&1 && echo "GIT_OK" || echo "NOT_GIT"
```

**If not a git repo:**
> This isn't a git repository. Navigate to a git project first, then come back to `/worktree-guide`.

Check if we're in a worktree or main repo:
```bash
git worktree list
pwd
```

Note the context for later guidance.

---

## Phase 1: Welcome & Context Detection

Display based on environment:

**If in main repo:**
```
## Worktree Parallel Development Guide

Welcome! I'll guide you through setting up and using parallel worktrees for multi-task development.

┌─────────────────────────────────────────────────────────────┐
│  Ghostty Terminal                                           │
│  ┌──────────────────────┬──────────────────────┐           │
│  │                      │                      │           │
│  │   Claude (Task 1)    │   Claude (Task 2)    │           │
│  │   claude/login-page   │   claude/fix-auth-bug │           │
│  │                      │                      │           │
│  ├──────────────────────┴──────────────────────┤           │
│  │              Lazygit (monitoring)           │           │
│  └─────────────────────────────────────────────┘           │
└─────────────────────────────────────────────────────────────┘

**Your workflow:**
1. Create worktrees → `/worktree-init`
2. Open Ghostty panels → `Cmd+D` / `Cmd+Shift+D`
3. Run Claude in each panel → `cd <worktree> && claude`
4. Deliver when done → `/worktree-deliver`
5. Clean up → `/worktree-cleanup`

What would you like to do?
```

Use AskUserQuestion:
- "Learn the full workflow" — Start from Phase 2
- "Just show keybindings" — Jump to Quick Reference
- "Create worktrees now" — Suggest `/worktree-init`
- "Something else" — Ask what they need

**If already in a worktree:**
```
## Worktree Status

You're already inside a worktree! Let me check your status.
```

Then run the equivalent of `/worktree-check` and provide contextual guidance.

---

## Phase 2: Ghostty Essentials

**EXPLAIN:**
```
## Ghostty Panel Management

Ghostty's panel system is perfect for parallel development. Here are the essential keybindings:
```

**SHOW:**
```
┌─────────────────────────────────────────────────────────────┐
│                    GHOSTTY KEYBINDINGS                      │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  SPLITTING                                                  │
│  ─────────                                                  │
│  Cmd+D           Split panel to the right                   │
│  Cmd+Shift+D     Split panel below                          │
│                                                             │
│  NAVIGATION                                                 │
│  ─────────                                                  │
│  Cmd+Alt+←/→/↑/↓ Move focus between panels                  │
│  Cmd+[/]         Cycle through panels                       │
│                                                             │
│  SIZING                                                     │
│  ─────────                                                  │
│  Cmd+Shift+E     Equalize all panel sizes                   │
│  Cmd+Shift+F     Toggle zoom (fullscreen current panel)     │
│                                                             │
│  CLOSING                                                    │
│  ─────────                                                  │
│  Cmd+W           Close current panel                        │
│                                                             │
└─────────────────────────────────────────────────────────────┘

**Pro tip:** Use Cmd+Shift+F to zoom into a panel when you need focus, then press it again to return to the multi-panel view.
```

**PAUSE** - "Ready to learn about Lazygit? (Or skip to workflow)"

---

## Phase 3: Lazygit Essentials

**EXPLAIN:**
```
## Lazygit for Monitoring Worktrees

Lazygit gives you a visual overview of all your worktrees and their changes. Run it from your main repo to monitor everything.
```

**SHOW:**
```
┌─────────────────────────────────────────────────────────────┐
│                    LAZYGIT KEYBINDINGS                      │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  WORKTREES (navigate to Worktrees panel)                    │
│  ─────────                                                  │
│  w              Switch to worktree panel (or create new)    │
│  Enter          Switch to selected worktree                 │
│  n              Create new worktree                         │
│  d              Delete worktree (with confirmation)         │
│                                                             │
│  FILES & STAGING                                            │
│  ─────────                                                  │
│  Space          Stage/unstage file                          │
│  a              Stage all files                             │
│  Enter          View file diff (with Delta highlighting)    │
│                                                             │
│  COMMITS                                                    │
│  ─────────                                                  │
│  c              Commit staged changes                       │
│  C              Commit with editor                          │
│  A              Amend last commit                           │
│                                                             │
│  SYNC                                                       │
│  ─────────                                                  │
│  P              Push                                        │
│  p              Pull                                        │
│  f              Fetch                                       │
│                                                             │
│  GENERAL                                                    │
│  ─────────                                                  │
│  ?              Help (context-sensitive)                    │
│  q              Quit / go back                              │
│  Tab            Switch panels                               │
│                                                             │
└─────────────────────────────────────────────────────────────┘

**Monitoring workflow:**
1. Open lazygit in the main repo (or a dedicated Ghostty panel)
2. Press `w` to see all worktrees
3. Use Enter to dive into any worktree's changes
4. Press `q` to go back to the worktree list
```

**PAUSE** - "Ready for the full workflow walkthrough?"

---

## Phase 4: Complete Workflow (Guided)

**EXPLAIN:**
```
## Full Parallel Development Workflow

Let me walk you through the complete cycle. We'll go step by step.
```

### Step 4.1: Create Worktrees

**EXPLAIN:**
```
### Step 1: Create Worktrees

First, define the tasks you want to work on in parallel. The `/worktree-init` command creates a worktree for each task.
```

**DO:** Show example command:
```
Example usage:

/worktree-init add user authentication | fix login bug | improve dashboard performance

This creates:
├── ../worktrees/<repo>/claude-add-user-authentication/
├── ../worktrees/<repo>/claude-fix-login-bug/
└── ../worktrees/<repo>/claude-improve-dashboard-performance/
```

### Step 4.2: Open Ghostty Panels

**EXPLAIN:**
```
### Step 2: Open Ghostty Panels

Now split your terminal into panels—one for each task, plus optionally one for Lazygit monitoring.
```

**DO:**
```
1. Press Cmd+D to split right (first worktree)
2. Press Cmd+D again (second worktree)
3. Optionally press Cmd+Shift+D on any panel for Lazygit below

Resulting layout:
┌──────────┬──────────┬──────────┐
│ Task 1   │ Task 2   │ Task 3   │
│ claude   │ claude   │ claude   │
├──────────┴──────────┴──────────┤
│           lazygit              │
└────────────────────────────────┘
```

### Step 4.3: Work in Each Panel

**EXPLAIN:**
```
### Step 3: Work Independently

In each panel:
1. cd to the worktree path (from the commands output)
2. Run `claude` to start a Claude session
3. Use `/worktree-check` anytime to verify which task you're working on
4. Work normally—Claude doesn't know about other panels
```

### Step 4.4: Deliver Completed Work

**EXPLAIN:**
```
### Step 4: Deliver When Done

When you finish a task in any panel, use `/worktree-deliver` to:
1. Review your changes
2. Create a commit
3. Push to remote
4. Create a pull request
```

### Step 4.5: Clean Up

**EXPLAIN:**
```
### Step 5: Clean Up After Merging

After your PRs are merged on GitHub:
1. Go back to the main repo (not a worktree)
2. Run `/worktree-cleanup --all`
3. It removes merged worktrees and branches
```

---

## Phase 5: Troubleshooting

**SHOW:**
```
## Troubleshooting

### "I'm not sure which worktree I'm in"

Run `/worktree-check` — it shows your branch, task, and status.

Alternatively:
$ git branch --show-current    # Shows claude/<name>
$ pwd                          # Shows the worktree path

---

### "I have uncommitted changes and want to switch tasks"

**Option 1:** Commit work-in-progress
$ git add . && git commit -m "wip: progress on feature"

**Option 2:** Stash changes (temporary)
$ git stash push -m "wip: parking changes"

Then in the other panel, continue working. Come back later with:
$ git stash pop

---

### "I accidentally started working in the wrong worktree"

1. Stash your changes: `git stash push -m "work done in wrong place"`
2. Navigate to the correct worktree
3. Apply the stash: `git stash pop`

---

### "My worktree has merge conflicts"

1. Run `git fetch origin` to get latest
2. Run `git rebase origin/main` (or merge if you prefer)
3. Resolve conflicts in your editor
4. `git add .` then `git rebase --continue`

---

### "I want to abandon a worktree"

From the main repo:
$ git worktree remove ../worktrees/repo/claude-<name> --force
$ git branch -D claude/<name>

Note: Force is needed if there are uncommitted changes.

---

### "/worktree-deliver failed on push"

Usually means the remote branch doesn't exist yet or there's a conflict.

Try:
$ git push -u origin HEAD

If there's a conflict with remote, pull first:
$ git pull --rebase origin claude/<name>

---

### "The worktree path doesn't exist anymore"

The worktree was probably deleted manually. Clean up the git state:
$ git worktree prune
```

---

## Phase 6: Quick Reference Card

**SHOW:**
```
┌─────────────────────────────────────────────────────────────────────────────┐
│                         WORKTREE QUICK REFERENCE                            │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│  COMMANDS                                                                   │
│  ─────────                                                                  │
│  /worktree-init <task1> | <task2>    Create worktrees for parallel tasks    │
│  /worktree-check                     Show current worktree status & task    │
│  /worktree-deliver                   Commit, push, and create PR            │
│  /worktree-cleanup --all             Remove merged worktrees and branches   │
│  /worktree-cleanup --dry-run         Preview what would be cleaned up       │
│                                                                             │
│  GHOSTTY                                                                    │
│  ─────────                                                                  │
│  Cmd+D              Split right     │  Cmd+Shift+E    Equalize panels      │
│  Cmd+Shift+D        Split down      │  Cmd+Shift+F    Zoom toggle          │
│  Cmd+Alt+Arrows     Navigate        │  Cmd+W          Close panel          │
│                                                                             │
│  LAZYGIT                                                                    │
│  ─────────                                                                  │
│  w                  Worktrees panel │  Space          Stage/unstage        │
│  Enter              View diff       │  c              Commit               │
│  P                  Push            │  ?              Help                 │
│                                                                             │
│  GIT (manual)                                                               │
│  ─────────                                                                  │
│  git worktree list                   List all worktrees                     │
│  git worktree add -b claude/name path Create worktree manually               │
│  git worktree remove path            Remove a worktree                      │
│  git worktree prune                  Clean up stale worktree refs           │
│                                                                             │
│  WORKFLOW                                                                   │
│  ─────────                                                                  │
│  1. /worktree-init tasks...          Create worktrees                       │
│  2. Cmd+D (split panels)             Open Ghostty panels                    │
│  3. cd <path> && claude              Start Claude in each                   │
│  4. /worktree-deliver                PR when done                           │
│  5. /worktree-cleanup                Clean up after merge                   │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘
```

---

## Guardrails

- **Never execute destructive commands** without confirmation (worktree remove, branch delete)
- **Always verify location** before suggesting worktree operations
- **If user seems lost**, offer `/worktree-check` first
- **Never force-delete** branches that aren't merged
- **Don't assume tools are installed** — check for lazygit availability if suggesting it
- **Respect user's pace** — don't rush through sections if they want to practice
- **Keep the reference card available** — offer to show it whenever relevant

Wersje

W bazie nie ma innych skilli o nazwie worktree-guide.

Identyczna treść występuje jeszcze w 1 innych folderach na GitHubie. Tu pokazujemy jedną, najlepiej ocenioną kopię.

Migawka bazy z 28.10.2026 · wersja paczki f3f34785d6fe (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100git-worktrees
    Zarządza git worktrees dla równoległego rozwoju zespołu agentów, przy tworzeniu i konfiguracji worktrees oraz podczas dispatchu /delegate.
  • 100git-worktree-manager
    Prowadzi bezpieczną równoległą pracę nad funkcjami z worktree Git, standaryzując izolację gałęzi, przydział portów, synchronizację środowiska i czyszczenie, szczególnie dla przepływów wielu agentów.
  • 95git-worktree
    Zarządza worktree Git do równoległej, odizolowanej pracy: tworzy, przełącza, wypisuje i sprząta katalogów roboczych.
  • 100lazygit
    Wspiera pracę z terminalowym interfejsem Lazygit: stage'owanie zmian, interaktywny rebase, zarządzanie gałęziami, cherry-pick i przeglądanie diffów z szybkością klawiatury.
  • 100git-worktree
    Zarządza worktree Git dla izolowanego, równoległego rozwoju, na przykład przy wielu jednoczesnych sesjach lub równoległych funkcjach.
  • 100ctx-worktree
    Zarządza git worktree dla równoległego rozwoju przez agentów, gdy praca dzieli się na niezależne ścieżki zadań.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.