Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

workpane

A small interactive launcher for local projects.

Screenshot 2026-06-16 at 4 25 28 pm

It lists project folders, lets you create or rename project entries, and opens the selected project with Claude Code, Codex, or both in a tmux split. Projects with a dev script or package.json can also start a development server automatically.

Requirements

  • Bash
  • tmux for split mode
  • claude and/or codex installed and available on your PATH
  • Optional: Git, npm, and Homebrew

Install

Copy the script somewhere on your PATH:

mkdir -p ~/.local/bin
cp work ~/.local/bin/work
chmod +x ~/.local/bin/work

Make sure ~/.local/bin is included in your PATH.

Usage

work          # Claude and Codex in a tmux split
work claude   # Claude only
work codex    # Codex only

Choose a project from the menu, browse a project group, create a new project, or assign a friendlier display name to an existing folder.

Personal configuration

By default, projects are read from:

~/git

Set WORK_ROOT to use a different location:

export WORK_ROOT="$HOME/projects"

Add that line to ~/.zshrc, ~/.bashrc, or your shell's equivalent to make it permanent.

The launcher treats normal top-level folders as active projects and uses these optional folders for grouped projects:

_clients
_projects-hold
_archive

Example layout:

~/git/
├── my-app/
├── website/
├── _clients/
├── _projects-hold/
├── _archive/
└── __init/

Friendly project names are stored in:

~/.config/work/names.conf

Each line uses a folder name, a tab, and a display name:

my-app	My App
website	Personal Website

You can manage these names from the built-in rename menu instead of editing the file directly.

New project defaults

Creating a project makes a new folder, initializes Git when available, and adds an AGENTS.md file.

The generated file points to these optional bootstrap documents inside the project root:

__init/PROJECT_STARTING_POINT.md
__init/UX.md

Create those files for your own shared project instructions, or edit the script to remove or replace those references.

Development server detection

When using split mode, the launcher adds a development pane when either of these is present:

  • ./dev → runs ./dev start
  • package.json → runs npm run dev

Edit the dev_command function in the script to use different commands for your projects.

About

folder/project-based coding agent launcher

Resources

Stars

Watchers

Forks

Contributors

Languages