Files
ttyd/SKILL.md
2026-02-02 22:20:36 +01:00

1.6 KiB

name, description, metadata
name description metadata
ttyd Share terminal over the web via WebSocket
version vibestack
1.0.0
main
false

TTYD Skill

Installs ttyd - a simple command-line tool for sharing terminal over the web.

Features

  • Share any command-line program over the web
  • WebSocket-based, low latency
  • SSL/TLS support
  • Basic authentication
  • Customizable terminal options

Configuration

Environment Variables

Variable Description Default
TTYD_PORT Port to listen on 7681
TTYD_COMMAND Command to run /bin/bash
TTYD_CREDENTIAL Basic auth (user:pass) (none)
TTYD_OPTIONS Additional ttyd options (none)
TTYD_DOMAIN Domain for Caddy auto-config (none)

Usage

As a dependency

metadata:
  vibestack:
    requires:
      - ttyd

Standalone

# Start with default shell
./scripts/run.sh

# With authentication
TTYD_CREDENTIAL="admin:secret" ./scripts/run.sh

# Custom command
TTYD_COMMAND="htop" ./scripts/run.sh

Auto-configuration with Caddy

If the caddy skill is present, ttyd will automatically register itself:

# Set domain for auto-config
TTYD_DOMAIN="terminal.example.com"

This creates a snippet in caddy/snippets.d/ttyd.caddy that Caddy imports on startup.

Manual Caddy Config

If not using auto-config:

terminal.example.com {
    reverse_proxy localhost:7681
}

Security

For production use:

  1. Always use TTYD_CREDENTIAL for authentication
  2. Put behind Caddy/nginx for HTTPS
  3. Consider network isolation