explaingit

yudai/gotty

19,475GoAudience · developerComplexity · 2/5StaleLicenseSetup · easy

TLDR

Share your terminal as a live web page so others can watch commands run in real-time, with optional read-write access and security controls.

Mindmap

mindmap
  root((repo))
    What it does
      Share terminal live
      Web browser access
      Watch or interact
    How it works
      Local web server
      WebSocket connection
      Port 8080 default
    Security
      Basic auth
      Random URLs
      TLS encryption
    Use cases
      Remote demos
      Team collaboration
      Client monitoring
    Tech stack
      Go language
      WebSocket protocol

Things people build with this

USE CASE 1

Demonstrate a tool or process to a remote colleague or client by sharing your live terminal output.

USE CASE 2

Give team members read-only visibility into a server's status or logs without granting SSH access.

USE CASE 3

Pair program or debug together by letting others watch your terminal session in real-time.

USE CASE 4

Stream a command-line tutorial or presentation to an audience via a shareable web link.

Tech stack

GoWebSocket

Getting it running

Difficulty · easy Time to first run · 5min
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

GoTTY is a command-line tool that lets you share your terminal, the text-based window developers use to run commands, as a web page that anyone can view in a browser. The problem it solves is access: you might want to share a running process with a colleague, demonstrate a tool to someone remotely, or give a client a read-only view of a server's status without setting up SSH access. You run GoTTY with any command as an argument, and it starts a local web server (on port 8080 by default). Anyone who opens that URL in a browser sees the terminal output as if they were looking over your shoulder. By default, viewers can only watch, they cannot type. If you explicitly enable write access with the -w flag, remote users can interact with the terminal too, though the README cautions that this is risky for most commands. For safer multi-user interaction, the README suggests running GoTTY alongside tmux or GNU Screen so multiple clients share one session. Security options include basic authentication with a username and password, random URL generation to limit who can find the link, and TLS/SSL encryption. You would use GoTTY when you need to show a running terminal session to someone else over the web without complex setup. It is written in Go and communicates with browsers over WebSocket.

Copy-paste prompts

Prompt 1
How do I set up GoTTY to share my terminal with a colleague and let them type commands too?
Prompt 2
Show me how to run GoTTY with basic authentication so only authorized people can view my terminal.
Prompt 3
How do I use GoTTY with tmux so multiple remote users can share the same terminal session safely?
Prompt 4
What's the safest way to share a read-only terminal view with a client using GoTTY?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.