A TUI (Terminal User Interface) interactive CLI tool for iTerm2 window management, designed for efficient Claude Code workflow.
- Window Management: List, focus, and close iTerm2 windows
- Project Navigation: Quick jump to project windows by name
- Interactive TUI: React-based terminal interface with Ink
- Command Mode: Vim-style command input with suggestions
- Settings Panel: Configurable options with persistent storage
- macOS with iTerm2 installed
- Node.js 18+
- pnpm
# Clone the repository
git clone https://github.com/acpplife/claude-code-management.git
cd claude-code-management
# Install dependencies
pnpm install
# Build the project
pnpm build
# Link globally (optional)
pnpm link --globalccm| Key | Action |
|---|---|
j / k |
Navigate up/down |
Enter |
Focus selected window |
: |
Enter command mode |
? |
Show help |
q |
Quit |
| Command | Description |
|---|---|
:q |
Quit application |
:w |
Refresh window list |
:s |
Open settings |
:help |
Show help |
Settings are stored in ~/.ccm/settings.json.
ccm/
├── bin/ # CLI entry point
├── src/
│ ├── components/ # React/Ink UI components
│ │ ├── App.tsx
│ │ ├── CommandInput.tsx
│ │ ├── ProjectList.tsx
│ │ ├── Settings.tsx
│ │ └── ...
│ ├── services/ # iTerm2 AppleScript integration
│ ├── commands/ # CLI command handlers
│ └── hooks/ # React hooks
├── docs/ # Documentation
└── dist/ # Build output
# Watch mode
pnpm dev
# Build
pnpm build- TypeScript - Type-safe JavaScript
- React - UI component library
- Ink - React for CLI
- Commander.js - CLI argument parsing
- AppleScript - iTerm2 automation
MIT