Skip to main content

forestui

A terminal UI for managing Git worktrees, inspired by forest for macOS by @ricwo.

forestui brings the power of Git worktree management to the terminal with a beautiful TUI interface built on Textual, featuring deep integration with Claude Code.

forestui screenshot

Features

  • Repository Management: Add and track multiple Git repositories
  • Worktree Operations: Create, rename, archive, and delete worktrees
  • TUI Editor Integration: Opens TUI editors (vim, nvim, helix, etc.) in tmux windows
  • Claude Code Integration: Track and resume Claude Code sessions per worktree
  • Multi-Forest Support: Manage multiple forest directories via CLI argument
  • tmux Native: Runs inside tmux for a cohesive terminal experience

Requirements

  • Python 3.14+
  • tmux
  • uv (for installation)
  • gh (optional, for GitHub integration)

Installing

Quick Install (recommended)

Installs uv automatically if not present. No Python installation required.

curl -fsSL https://raw.githubusercontent.com/flipbit03/forestui/main/install.sh | bash

Install via uv

If you already have uv installed:

uv tool install forestui

Updating

forestui auto-updates on startup. To manually update:

uv tool upgrade forestui

Usage

# Start with default forest directory (~/forest)
forestui

# Start with a custom forest directory
forestui ~/my-projects

# Show help
forestui --help

Keyboard Shortcuts

Key Action
a Add repository
w Add worktree
e Open in editor
t Open in terminal
o Open in file manager
n Start Claude session
y Start Claude session (YOLO mode)
h Toggle archive
d Delete
s Settings
r Refresh
? Show help
q Quit

TUI Editor Integration

When your default editor is a TUI editor (vim, nvim, helix, nano, etc.), forestui opens it in a new tmux window named edit:<worktree>. This keeps your editing session organized alongside forestui and any Claude sessions.

Supported TUI editors: vim, nvim, vi, emacs, nano, helix, hx, micro, kakoune, kak

Multi-Forest Support

forestui stores its state (.forestui-config.json) in the forest directory itself, allowing you to manage multiple independent forests:

forestui ~/work      # Uses ~/work/.forestui-config.json
forestui ~/personal  # Uses ~/personal/.forestui-config.json

User preferences (editor, theme, branch prefix) are stored globally in ~/.config/forestui/settings.json.

Configuration

Settings are stored in ~/.config/forestui/settings.json:

{
  "default_editor": "nvim",
  "branch_prefix": "feat/",
  "theme": "system"
}

Press s in the app to open the settings modal.

Development

# Clone and enter the repo
git clone https://github.com/flipbit03/forestui.git
cd forestui

# Install dev dependencies
make dev

# Run checks
make check

# Format code
make format

# Run the app
make run

See CLAUDE.md for AI-assisted development guidelines.

Compatibility with forest (macOS)

forestui is designed to coexist with forest for macOS:

  • Both apps can share the same ~/forest directory for worktrees
  • Each app maintains its own state file:
    • forest: .forest-config.json (stored in ~/.config/forest/)
    • forestui: .forestui-config.json (stored in the forest folder itself)
  • Worktrees created by either app work seamlessly with both

Key difference: forestui stores its state inside the forest folder (~/forest/.forestui-config.json) rather than in a global config directory. This design enables multi-forest support - you can run forestui ~/work and forestui ~/personal with completely independent state for each.

License

MIT

Metadata

Release files for forestui 1.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for forestui 1.3.1
File Size Uploaded
forestui-1.3.1.tar.gz 151.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for forestui 1.3.1
File Interpreter ABI Platform
forestui-1.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 205.2 kB

Release files / forestui-1.3.1.tar.gz

Download URL forestui-1.3.1.tar.gz
Size 151.2 kB
Tags Source
SHA-256 checksum
How to use checksums
065a4a5df29810b1d1a6cdfd92917181b45c0ed5d7f2917185cd72410ae5433c
BLAKE2b-256 checksum
How to use checksums
1f5d10736e326b939014074e49fdc6fc2188fa8408c3d9bbc741a70ec7c7c297
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 14, 2026.

Transparency log

Release files / forestui-1.3.1-py3-none-any.whl

Download URL forestui-1.3.1-py3-none-any.whl
Size 54.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9dab3d14a47f8f2011f78d1a931a213615ef219963dddcb3fe77d39a40d6ff24
BLAKE2b-256 checksum
How to use checksums
b34099063d12cde8711c7bdfe96ea1a7e1453a6b40bf111e2160c2cfda4f4860
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 14, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.3.1 This release

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.9.9

2 release files

0.9.8

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page