Skip to content

visorcraft/Tailshell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Tailshell mascot

Tailshell

Your terminal, everywhere.
A persistent web terminal that follows you from desktop to phone to tablet.
Persistent sessions · multi-user auth · mobile-friendly · Tailscale-ready

ttyd + tmux Docker Compose Tailscale License: GPL-3.0-only


Overview

Tailshell wraps ttyd + tmux in a slick web UI with multi-user auth, workspaces, and quick prompts. Run it on your home server, access it from anywhere via Tailscale, and never lose a session again.

Browser ──> Nginx ──┬──> /api/* ──> API ──> MySQL
                    │
                    └──> /ws ──> ttyd ──> tmux ──> shell

Why Tailshell?

  • Persistent sessions — tmux keeps your work alive across disconnects
  • Workspaces & tabs — organize projects with tmux sessions and windows
  • Quick Prompts — save and recall commands, scoped to workspaces
  • Multi-user auth — JWT-based login with MFA/TOTP for admins
  • Mobile-friendly — works great on phones and tablets
  • Tailscale-ready — secure access from anywhere, no port forwarding

Quick start

# Clone and enter the repo
cd /path/to/tailshell

# Generate secrets
bash ./scripts/generate-env

# Set up ttyd + systemd service
bash ./scripts/docker-setup

# Launch everything
docker compose up -d --build

Open http://localhost:8081/ and log in. First-time setup will prompt you to change the bootstrap password.

Tip: Set TAILSHELL_ADMIN_USERNAME and TAILSHELL_ADMIN_PASSWORD in .env before first run, or check docker compose logs api for the generated credentials.


Development

Want to hack on Tailshell? Fire up the dev stack with hot reload:

bash ./scripts/dev-up    # Start with Vite HMR + API watch
bash ./scripts/dev-down  # Tear it down

Documentation

The good stuff lives in docs/:

Doc What's inside
Setup Full installation guide (WSL, systemd, Tailscale Serve)
Operations Day-to-day commands, backups, user management
Architecture How the pieces fit together
Security CORS, TLS, CSP, and hardening
API Endpoint reference
Development UI/API dev workflows
Troubleshooting Common issues and fixes

Contribute

Issues and PRs are welcome. See CONTRIBUTING.md for the development workflow, and SECURITY.md for reporting security issues privately.


License

Licensed under the GNU General Public License v3.0 (GPL-3.0-only) — see LICENSE for the full text.

© 2026 VisorCraft LLC. Third-party components carry their own licenses — see THIRD_PARTY_NOTICES.md and the LICENSES/ directory.

About

Tailshell wraps ttyd + tmux in a slick web UI with multi-user auth, workspaces, and quick prompts. Run it on your home server, access it from anywhere via Tailscale, and never lose a session again.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors