npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@adiontaegerron/claude-multi-terminal

v3.0.4

Published

Multi-terminal editor for coordinating multiple Claude Code instances

Downloads

16

Readme

Claude Multi-Terminal

Note for Terminal Agents: If you are a Claude instance running inside this application, you don't need to read this file. Please refer to CLAUDE.md for your instructions.

A multi-terminal editor for coordinating multiple Claude Code instances. Run multiple Claude sessions side-by-side with a unified chat interface to send commands to selected terminals.

Claude Multi-Terminal Screenshot

Features

  • Multi-Terminal Support: Run multiple Claude Code instances in a 2x2 grid layout
  • Unified Chat Interface: Send commands to terminals using @ syntax
  • Multi-@ Terminal Commands: Target terminals with flexible syntax:
    • @all command - Send to all terminals
    • @term1,term2,term3 command - Comma-separated terminals
    • @term1 @term2 command - Space-separated terminals
  • Mixed @/ Commands: Combine terminal targeting with slash commands:
    • @term1 /clear - Run slash command on specific terminal
    • @term1 @term2 /list - Multiple terminals with slash commands
    • @all /interrupt - Slash commands with @all
  • Smart Autocomplete: Get suggestions while typing @ or / anywhere in your message
  • Slash Commands: Built-in commands for terminal management (works anywhere)
  • Default Prompt: Set a default prompt to prepend to all messages
  • Plan Mode Support: Automatically enters plan mode with Shift+Tab
  • Auto-Start Claude: Each terminal automatically starts Claude Code
  • Inter-Claude Communication: Claude instances can chat and coordinate using echo commands
  • Terminal Management: Claude can create, close, and rename terminals autonomously
  • Rename Terminals: Double-click terminal titles to rename them
  • Responsive Layout: Adapts to different screen sizes
  • Multiple Views: Messages, Terminals, Projects, and Board tabs for different workflows

What's New in v3.0

  • Project Management Interface - Built-in epic creation and team collaboration tools
  • Scrum Board View - Visual task tracking with swimlanes for each agent
  • Enhanced Terminal Instructions - Terminals now start with "standby and wait for instructions"
  • Bash Script Integration - Simplified communication using ./bin/send, ./bin/broadcast commands
  • Agent Inbox System - Messages delivered to agent-specific inboxes with manual checking
  • File System Integration - Project Work directory structure for epics, stories, and tasks

Breaking Changes in v2.2

  • JSON-based IPC System - All Claude communication now uses JSON format
  • File-based messaging - Claude writes all responses to .ipc-messages/ as JSON files
  • No terminal output - Claude no longer outputs responses directly to terminal

Breaking Changes in v2.0

  • Removed checkbox selection system - All commands must now use @ syntax
  • No default terminal selection - You must explicitly specify terminals with @
  • Plain text without @ or / will show an error - Every command needs a target

To migrate from v1.x:

  • Instead of selecting checkboxes and typing a command, use: @term1 @term2 command
  • To send to all terminals, use: @all command

Installation

From npm

npm install -g @adiontaegerron/claude-multi-terminal

From GitHub

git clone https://github.com/adiontae-tp/multi-terminal.git
cd multi-terminal
npm install
npm link

Usage

Navigate to your project directory and run:

claude-multi

This will open the multi-terminal editor with all terminals starting in your current directory.

Basic Workflow

  1. Start the Application: Run claude-multi in your project directory
  2. Create Terminals: Click "New Terminal" to add more Claude instances (starts with one)
  3. Target Terminals: Use @ syntax to specify which terminals receive commands
  4. Send Commands: Type your command with @ targeting and press Enter
  5. Use Default Prompt: Expand the "Default Prompt" section to set a prompt that's prepended to all messages

Important: Version 2.0 removes checkbox selection. All commands must now use @ syntax to target terminals.

Slash Commands

  • /send <terminal> <command> - Send command to specific terminal
  • /send-all <command> or /broadcast <command> - Send to all terminals
  • /list - List all terminals
  • /create [name] - Create new terminal with optional name
  • /close <terminal> - Close specific terminal
  • /return <terminal> - Submit current input in terminal (press Enter)
  • /clear <terminal> or /interrupt <terminal> - Send Ctrl+C to terminal
  • /help - Show available commands

@ Terminal Commands

Send commands directly to terminals using @ syntax:

  • @Terminal1 ls -la - Send to single terminal
  • @"My Terminal" pwd - Terminal with spaces in name
  • @term1,term2,term3 date - Multiple terminals (comma-separated)
  • @term1 @term2 @term3 whoami - Multiple terminals (space-separated)
  • @all echo "Hello" - Send to all terminals

Autocomplete: Type @ anywhere to get terminal suggestions!

Application Views

The application features four main views accessible via bottom tabs:

  1. Messages Tab: View all inter-agent communication and system messages
  2. Terminals Tab: Traditional terminal interface with multiple Claude instances
  3. Projects Tab: Create epics, manage stories, and coordinate team tasks
  4. Board Tab: Scrum board visualization with task swimlanes by agent

Claude-to-Claude Communication

Claude instances communicate by creating JSON files in the .ipc-messages/ directory. All communication uses a unified JSON format:

IPC Commands (trigger actions and display in Messages tab):

  • Send message: {"type":"ipc","command":"SEND","from":"Terminal1","to":"Terminal2","content":"Hello"}
  • Broadcast: {"type":"ipc","command":"BROADCAST","from":"Terminal1","content":"Hello all"}
  • Create terminal: {"type":"ipc","command":"CREATE","from":"Terminal1","content":"NewTerminalName"}
  • Close terminal: {"type":"ipc","command":"CLOSE","from":"Terminal1","to":"Terminal2"}
  • Rename terminal: {"type":"ipc","command":"RENAME","from":"Terminal1","to":"Terminal2","content":"NewName"}
  • List terminals: {"type":"ipc","command":"LIST","from":"Terminal1"}
  • Get status: {"type":"ipc","command":"STATUS","from":"Terminal1","to":"Terminal2"}

Display Messages (UI only, no actions):

  • User responses: {"type":"display","from":"Terminal1","content":"Task completed","metadata":{"category":"user","visible":true}}
  • Status updates: {"type":"display","from":"Terminal1","content":"Processing...","metadata":{"category":"info","visible":true}}

All Claude responses appear in the Messages tab with clean formatting, icons, and timestamps.

Tips

  • Each terminal automatically starts Claude Code when created
  • Claude receives its identity: "You are a terminal agent. Your name is [Terminal Name]."
  • Plan mode is activated automatically using Shift+Tab
  • Double-click terminal titles to rename them for better organization
  • The application uses your current directory as the working directory for all terminals
  • Use multi-@ commands to coordinate multiple Claude instances efficiently
  • Claude instances communicate instantly using IPC echo commands for seamless teamwork

Development

Prerequisites

  • Node.js (v14 or higher)
  • npm

Local Development

# Clone the repository
git clone https://github.com/adiontae-tp/multi-terminal.git
cd multi-terminal

# Install dependencies
npm install

# Start the application
npm start

Building

# Rebuild native modules
npm run rebuild

Requirements

  • Claude Code: You must have Claude Code installed and accessible via the claude command
  • Operating System: Works on macOS, Windows, and Linux
  • Node.js: Requires Node.js 14 or higher

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Issues

If you find a bug or have a feature request, please open an issue on GitHub.

Acknowledgments