worktree-ghostty — хук для Claude Code: раскладка из трёх панелей
Открывает в Ghostty три панели при создании worktree: Claude слева, lazygit и yazi справа. Только macOS.
npx claude-code-templates@latest --hook development-tools/worktree-ghosttyЧто делает worktree-ghostty
Хук вешается на события WorktreeCreate и WorktreeRemove и запускает скрипт .claude/hooks/worktree-ghostty.sh. При создании worktree в терминале Ghostty появляется раскладка: слева Claude, справа сверху lazygit, справа снизу yazi. Worktree при этом создаётся не внутри репозитория, а в соседней папке ../worktrees/<repo>/<name>/. При удалении worktree хук подчищает за собой.
Чтобы это заработало, нужны jq, терминал Ghostty, lazygit и yazi. Ещё придётся поправить привязки клавиш в Ghostty: super+d на new_split:right и super+shift+d на new_split:down. Без этих двух раскладка не соберётся, потому что скрипт делит окно именно так.
Работает только на macOS. На Linux и Windows скрипт из этой раскладки ничего не откроет, так что там ставьте что-то другое. Таймаут у WorktreeCreate — 30 секунд, у WorktreeRemove — 15.
Какие задачи решает
- открыть lazygit и yazi рядом с сессией Claude в одном окне
- разложить worktree по соседней папке, а не внутри репозитория
- держать git- и файловый менеджер под рукой при параллельной работе над ветками
- убрать за собой при удалении worktree без ручной чистки
- получить одинаковую раскладку каждый раз при создании новой ветки
Примеры запросов агенту
- Создай worktree для ветки
feature/login— открой раскладку в Ghostty - Запусти работу в отдельном worktree, мне нужны lazygit и yazi рядом
- Удали worktree
feature/loginи прибери за ним
Как установить worktree-ghostty
1Через claude-code-templates
npx claude-code-templates@latest --hook development-tools/worktree-ghostty2Вручную: положить файлы
.claude/settings.jsonБлок hooks: событие (PreToolUse, PostToolUse, Stop…) → команда. Личные — ~/.claude/settings.json
По шагам, с командами для каждой платформы: Хуки Claude Code: что это, где настраивать и как запретить опасную команду
Вопросы о worktree-ghostty
Как установить worktree-ghostty в Claude Code?
Выполните npx claude-code-templates@latest --hook development-tools/worktree-ghostty. Настройки хука запишутся в .claude/settings.json.
Что делает worktree-ghostty?
При создании worktree открывает в Ghostty три панели: Claude слева, lazygit и yazi справа. При удалении worktree закрывает раскладку и убирает папку.
Что нужно для работы хука?
macOS, терминал Ghostty, jq, lazygit и yazi. В Ghostty нужны привязки super+d = new_split:right и super+shift+d = new_split:down.
Исходный текст
worktree-ghostty.json · MIT
{
"description": "Worktree Ghostty Layout. Opens a 3-panel Ghostty layout when creating worktrees: Claude Code (left) | lazygit (top-right) / yazi (bottom-right). Creates worktrees in a sibling directory (../worktrees/<repo>/<name>/) and cleans up on removal. macOS only. Requires: jq, Ghostty terminal, lazygit, yazi. Ghostty keybindings required: super+d = new_split:right, super+shift+d = new_split:down.",
"hooks": {
"WorktreeCreate": [
{
"hooks": [
{
"type": "command",
"command": "bash \"$CLAUDE_PROJECT_DIR\"/.claude/hooks/worktree-ghostty.sh",
"timeout": 30
}
]
}
],
"WorktreeRemove": [
{
"hooks": [
{
"type": "command",
"command": "bash \"$CLAUDE_PROJECT_DIR\"/.claude/hooks/worktree-ghostty.sh",
"timeout": 15
}
]
}
]
}
}
© davila7 · MIT · davila7/claude-code-templates