Skip to main content
Collaborate on terminal sessions with multiple users simultaneously, with view-only or full control modes.

What is Terminal Collaboration?

Rexec allows you to share your terminal sessions with teammates in real-time. Think Google Docs, but for terminal sessions — see each other’s cursors, selections, and command execution live.

Key Features

Real-Time Sharing

Multiple users see the same terminal output simultaneously.

Access Control

Choose between view-only or full control modes.

Share via Link

Send a shareable link — no account required for viewers.

Participant Tracking

See who’s connected with color-coded cursors.

Starting a Collaboration Session

From the Dashboard

  1. Open any terminal (cloud or agent)
  2. Click the Share icon in the top-right corner
  3. Choose sharing mode:
    • View - Others can watch but not type
    • Control - Others can execute commands
  4. Set optional limits:
    • Max users (1-10)
    • Duration (15min to 24hrs)
  5. Click “Create Share Link”
Collaboration sessions automatically expire after the configured duration for security.
After creating a session:
https://rexec.io/join/ABC123
  • Share this link with your team
  • No Rexec account required to join (viewer mode)
  • Link expires after session duration

Collaboration Modes

View-Only Mode

Viewers can:
  • Watch all terminal output in real-time
  • See command execution
  • Scroll through history independently
Viewers cannot:
  • Type commands
  • Send input
  • Interrupt running processes
Use cases:
  • Live demos and presentations
  • Training and onboarding
  • Debugging assistance (watch over shoulder)

Control Mode

All participants can:
  • Execute commands
  • Edit files
  • Run programs
  • Stop/restart processes
Owner retains:
  • Ability to end session
  • Permission to kick users
  • Original terminal access after session ends
Use cases:
  • Pair programming
  • Collaborative debugging
  • DevOps incident response
  • Teaching and mentoring
Control mode gives participants full command execution. Only share with trusted team members.

Joining a Shared Session

As a Viewer (No Account)

  1. Click the shared link: https://rexec.io/join/ABC123
  2. Enter your name (optional)
  3. Click “Join Session”
  4. Terminal appears in read-only or control mode

As a Rexec User

If you’re logged in:
  1. Click shared link
  2. Auto-authenticated with your account
  3. Your role depends on session mode
  4. Session appears in your dashboard under Shared Sessions

Participant Management

Active Participants

See all connected users in the sidebar:
👤 Alice (Owner)    🟢
👤 Bob (Editor)     🟢
👤 Charlie (Viewer) 🟢
Color-coded cursors: Each user has a unique color for cursor position tracking.

Roles

RolePermissions
OwnerFull control + can end session + can remove users
EditorFull control (control mode only)
ViewerRead-only access

Removing Users

As the session owner:
  1. Click participant name in sidebar
  2. Select “Remove from session”
  3. User disconnected immediately

Session Limits

By Tier

TierSessionsMax DurationMax Users per Session
Free1 active1 hour2 users
Pro5 active24 hours5 users
EnterpriseUnlimitedUnlimited20 users

Duration Settings

Choose when creating session:
15 minutes   - Quick debugging
1 hour       - Pair programming session
8 hours      - Full workday
24 hours     - Long-running collaboration
Sessions auto-close when duration expires or when owner ends them manually.

Security & Privacy

Authentication

  • Access via share code only
  • Expires with session
  • No data persistence

Data Handling

  • Terminal output - Not recorded unless recording enabled separately
  • Participant info - Stored during session only
  • Share links - Invalidated after expiration

MFA Protection

For terminals with MFA enabled, participants must authenticate before joining.
Enable MFA on sensitive terminals:
  1. Go to terminal settings
  2. Enable “Require MFA for shared sessions”
  3. Participants prompted for MFA token on join

Practical Examples

Example 1: Live Debugging Session

# Owner starts session in view mode
# Teammates watch as owner debugs
$ docker logs api-service | grep ERROR

# Owner narrates while typing
# Viewers can copy-paste errors to help research

Example 2: Pair Programming

# Owner starts in control mode
# Both developers can edit files

# Alice types:
$ vim src/app.py

# Bob can take over keyboard:
$ pytest tests/test_app.py

# Both see output simultaneously

Example 3: Training Session

# Trainer shares terminal in control mode
# Students follow along with same commands

$ git clone https://github.com/example/tutorial
$ cd tutorial
$ npm install
$ npm start

# Students see exact output on their screens

Managing Active Sessions

View All Sessions

From dashboard:
  • Active Sessions - Currently shared terminals
  • Joined Sessions - Sessions you’ve joined from others

Ending a Session

As owner:
  1. Click “End Session” in terminal header
  2. Or click Stop on session card in dashboard
  3. All participants disconnected
  4. Terminal returns to private mode
Ending a session disconnects all participants immediately. There’s no undo.

Cursor & Selection Tracking

Visual Indicators

See collaborators’ activity:
$ ls -la
total 24
[Alice's cursor here]drwxr-xr-x  4 user user 4096 Dec 17 10:30 .
[Bob selected this line]
drwxr-xr-x 12 user user 4096 Dec 17 10:29 ..
-rw-r--r--  1 user user  220 Dec 17 10:30 README.md
Color coding:
  • Red cursor - Alice
  • Blue cursor - Bob
  • Green cursor - Charlie

Cursor Modes

Auto-scroll to keep owner’s cursor in view. Click “Follow” to enable.

Integration with Other Features

Session Recording

Enable recording during collaboration:
  1. Start recording before/during session
  2. All participants’ input captured
  3. Replay shows multi-user activity
See Session Recording for details.

SSH Access

Shared sessions work with SSH-connected terminals:
  1. Share an SSH-connected terminal
  2. Participants use web interface
  3. Owner can still use native SSH
See SSH Access for setup.

Troubleshooting

Causes:
  • Session expired (check duration)
  • Max users reached
  • Invalid share link
Fix:
  • Create new session
  • Increase max users
  • Copy fresh share link
Causes:
  • Poor network connection
  • Too many participants
  • Very fast command output
Fix:
  • Check participant network
  • Reduce number of viewers
  • Use less or pagination for large output
Causes:
  • Session started in view mode
  • Terminal locked with MFA
  • Permission conflict
Fix:
  • Recreate session with control mode
  • Authenticate with MFA
  • Check terminal permissions

Best Practices

Security

  • Use view mode for untrusted participants
  • Set short durations (1-2 hours) for sensitive work
  • Enable MFA on production terminals
  • End sessions promptly when done

Performance

  • Limit to 5 or fewer participants for smooth experience
  • Use pagination (less, more) for large output
  • Avoid rapid-fire commands that flood output

Communication

  • Use voice/video chat alongside for context
  • Narrate actions in view mode
  • Take turns typing in control mode

API Integration

Programmatic Session Creation

# Create collaboration session via API
curl -X POST https://api.rexec.io/api/collab/start \
  -H "Authorization: Bearer $REXEC_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "container_id": "abc123...",
    "mode": "view",
    "max_users": 5,
    "duration_minutes": 60
  }'

# Response
{
  "session_id": "sess_xyz...",
  "share_code": "ABC123",
  "share_url": "https://rexec.io/join/ABC123",
  "expires_at": "2024-12-17T12:00:00Z"
}

End Session

curl -X POST https://api.rexec.io/api/collab/end/sess_xyz \
  -H "Authorization: Bearer $REXEC_TOKEN"
See API Reference for complete documentation.

Cloud Terminals

Create shared cloud terminals

BYOS Agent

Share agent-connected servers

Session Recording

Record collaborative sessions

SSH Access

Combine SSH with web collaboration

Build docs developers (and LLMs) love