Об этом проекте
Wisetree — это интерактивный менеджер git worktree с приоритетом терминала, построенный на Rust с использованием Ratatui. Он оборачивает низкоуровневые команды `git worktree` в TUI и скриптовый CLI, так что создание, обзор, навигация и удаление worktree становятся нажатием клавиши, а не абзацем команд. Он ориентирован на разработчиков, параллельно запускающих несколько ИИ-агентов программирования (Claude Code, Codex CLI, Gemini CLI, Opencode, Cursor, Aider), каждый на своей ветке и в изолированной рабочей копии одного и того же репозитория.
Основные возможности:
- Управляемое создание: `wisetree create` создаёт изолированный worktree, может копировать локальные файлы (`.env*`, `.vscode/**`, ключи, настройки редактора), связывать тяжёлые папки зависимостей из общего кэша, выполнять команды настройки, открывать ваш редактор и переводить вашу оболочку в новый каталог.
- Панель управления: живая, автоматически обновляющаяся таблица всех worktree с указанием пути, ветки, статуса (Clean/Dirty/Opened/Merged), количества коммитов впереди/позади, последнего коммита, опционального состояния GitHub PR через `gh` (номер, состояние, заголовок, CI, ревью, готовность к слиянию) и столбца AI Status, агрегирующего активность поддерживаемых ИИ-инструментов (Pending/Running/Finished/Failed). Данные PR загружаются пакетами, кэшируются на диске, обновляются при изменении SHA и используют задержку после ограничений по частоте запросов.
- Взаимодействие с панелью: навигация стрелками, инкрементальный нечёткий поиск по пути, ветке, SHA, сообщению коммита, статусу, впереди/позади, заголовку и URL PR; действия со строками для навигации, открытия с помощью настроенной команды терминала, копирования пути или открытия/обновления/слияния/закрытия PR; кнопки массового удаления для групп Merged, Closed, Open, Clean и Dirty с подтверждением нескольких целей и индикатором прогресса; компактный режим для узких терминалов.
- Общий кэш: просмотр, очистка или удаление кэша зависимостей для каждого репозитория, используемого шаблонами связывания worktree.
- Конфигурация: локальный для репозитория `.wisetree/config.json`, глобальный `~/.wisetree/config.json`, экран настроек и такие параметры, как `terminalCommand`, `deleteBranchWithWorktree` и `dashboard.showPullRequests`.
- Интеграция с оболочкой: однократный установщик добавляет обёртку в профили zsh/bash, чтобы простой `wisetree` мог выполнить `cd` текущей оболочки в выбранный worktree, а также автодополнение по Tab.
- Файлы команд для pull request: вспомогательные документы в `.wisetree/<command>/` для рабочих процессов Explain, Develop, Bugkill, Split, Improve и Review.
- Команда Split: превращает одну большую закоммиченную ветку в упорядоченный стек проверяемых PR, используя ИИ только для планирования границ SRP и составления сфокусированных заголовков/описаний; инвентаризация, подсчёт строк, классификация тестов, отображение плана, создание веток/worktree, коммиты, публикация на GitHub и применение метаданных выполняются детерминированно. Требует аутентифицированных preview-команд `gh` и `gh stack`. Поддерживает возобновляемые запуски с проверкой идентичности и кэшированными черновиками.
Каналы установки включают Homebrew, npm, установщик для оболочки, установщик PowerShell и сборку из исходников с Rust 1.78+. CI выполняет fmt, clippy, сборку и тесты с запретом предупреждений на Ubuntu и macOS.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.