Stop context-switching.
Start shipping.

fwts orchestrates git worktrees, tmux sessions, Docker services, and your dev tools. Work on multiple features in parallel without the chaos.

brew install laudiacay/tap/fwts
# Start working on a Linear ticket
$ fwts start SUP-123
✓ Resolved SUP-123 → sup-123-add-user-auth
✓ Created worktree + tmux + Docker
✓ Attached to session

Installation

Get fwts running in seconds.

Homebrew (recommended)

brew install laudiacay/tap/fwts

PyPI

pip install fwts

uv

uv tool install fwts

Quick Start

Get productive in 3 commands.

1

Initialize your project

Run fwts init in your repo to create a config file.

2

Start a feature

Run fwts start TICKET-123 or fwts start my-feature-branch.

3

Open the dashboard

Run fwts to see all your worktrees and manage them interactively.

4

Set up Claude Code statusline

Run this to configure Claude with your git status:

claude -p "Set my statusline to fwts. Compact: $(fwts statusline), Obvious: $(fwts statusline --obvious). Ask me which."

Core Features

Everything you need for parallel feature development.

🌳

Smart Worktree Management

Create and manage git worktrees with a single command. Resolve Linear tickets or PR numbers to branch names automatically.

🖥️

Tmux Integration

Automatically creates tmux sessions with your editor and side pane (Claude Code, tests, logs). Per-feature workspaces.

🐳

Docker Compose

Start isolated Docker services per feature with automatic project isolation. No more port conflicts.

Lifecycle Hooks

Run custom commands on setup and cleanup. Auto-install deps, run migrations, sync .env files.

🔧

Custom Status Columns

Define your own dashboard columns with shell commands. Show deployment status, test coverage, or anything else.

Integrations

Connects with your existing tools.

📋

Linear

Resolve ticket IDs to branch names. Browse your assigned tickets and review queue directly from the TUI.

🐙

GitHub

See PR status, CI results, and review state for each worktree. Resolve PR numbers to branches.

🤖

Claude Code

Pass ticket context to Claude when starting worktrees. Statusline command for shell prompt integration.

📊

Graphite

Optional stacking workflow integration for teams using Graphite.

Interactive TUI

A beautiful terminal dashboard for all your work.

Multiple Views

Switch between Worktrees, My Tickets, Review Queue, and All Tickets.

Keyboard-Driven

Navigate with j/k, select with space, launch with enter, cleanup with d.

Multi-Select

Select multiple worktrees and perform bulk operations.

Real-Time Status

Auto-refreshes with CI status, PR reviews, and custom column data.

Why fwts?

More than just worktree creation.

Feature fwts git-worktree Others
Worktree creation
Tmux orchestration
Docker per-feature
Linear integration Varies
Interactive dashboard Basic
Lifecycle hooks Limited
Atomic cleanup Partial

The Workflow

From ticket to shipped, seamlessly.

1

Start a feature

fwts start SUP-123 — Creates worktree, starts Docker, opens tmux, runs setup hooks.

2

Work in isolation

Each feature has its own directory, tmux session, and Docker services. No conflicts.

3

Clean up

fwts cleanup — Worktree deleted, tmux killed, Docker stopped, branch removed. One command.