Skip to content

Multi-Project Setup

PlanDrop lets you manage multiple servers and projects from a single side panel. Switch between them instantly without reconfiguring.

Adding Multiple Servers

  1. Open Settings

    Click the gear icon in the side panel.

  2. Add a new server

    Click ”+ Add Server” and fill in:

    • Name: A friendly label (e.g., “Lab GPU Server”)
    • SSH Target: user@hostname or user@ip
    • SSH Port: Usually 22
    • SSH Key: Path to your private key (optional if using ssh-agent)
  3. Repeat for additional servers

    Add as many servers as you need.

Adding Multiple Projects

Each server can have multiple projects. A project is simply a directory where plandrop-watch is running.

  1. Select a server in Settings

  2. Click ”+ Add Project”

  3. Enter the path (e.g., /home/user/rnaseq-pipeline)

  4. Set options:

    • Interactive Mode: Enable Claude Code tab (recommended)
    • Permission Profile: Choose the default profile

Project Binding

PlanDrop remembers which project you were using in each browser tab.

  • Open a tab, select “Lab Server → scRNA-seq project”
  • Open another tab, select “Local → Documentation”
  • Each tab maintains its own project context

This is useful when working on multiple analyses simultaneously.

Switching Projects

Use the dropdowns at the top of the side panel:

  1. Server dropdown — Select which server to connect to
  2. Project dropdown — Select which project on that server

The side panel updates immediately. If the watcher isn’t running on that project, you’ll see “Not connected.”

Connection Status

Status indicators at the top show:

StatusMeaning
🟢 ConnectedWatcher is running, ready for tasks
🟡 ConnectingSSH connection in progress
🔴 Not connectedWatcher not running or SSH failed

SSH Connection Sharing

PlanDrop uses SSH ControlMaster to reuse connections. This means:

  • First connection takes a moment to establish
  • Subsequent operations are instant
  • The connection stays open for fast response

The control socket is stored in ~/.ssh/plandrop-control/.

Per-Project Configuration

Each project can have its own .claude/settings.json for permission profiles:

~/rnaseq-pipeline/.claude/settings.json
{
"permissions": {
"allow": [
"Bash(STAR:*)",
"Bash(samtools:*)",
"Bash(R:*)"
]
}
}
~/ml-experiments/.claude/settings.json
{
"permissions": {
"allow": [
"Bash(python3:*)",
"Bash(nvidia-smi:*)"
]
}
}

Best Practices

  1. Use descriptive names — “GPU Server (A100)” is better than “Server 2”
  2. One watcher per project — Don’t run multiple watchers in the same directory
  3. Separate by workflow — Keep data processing separate from analysis
  4. Use tmux — Run watchers in tmux sessions for persistence

Troubleshooting

Connection Issues

Terminal window
# Test SSH connection manually
ssh -i ~/.ssh/your_key user@server
# Check if watcher is running
ssh user@server "plandrop-watch --status"

Multiple Watchers

If you accidentally started multiple watchers:

Terminal window
# Stop all watchers
pkill -f plandrop-watch
# Start fresh
cd ~/your-project && plandrop-watch

Next Steps