Skip to main content
trqsh — QUIC-first tunnels to localhost

PyPI Downloads Python release License

trqsh puts a public HTTPS URL in front of anything on your machine — a dev server, a webhook receiver, a game server, a raw TCP/UDP listener — in one command. It's a QUIC-first tunnel (real HTTP/3, not a rebrand of TCP) with a proper interactive console, live traffic inspection, real Let's Encrypt TLS, and a fully open-source stack you can self-host end to end. This package installs the signed trqsh CLI binary for your platform: a thin wrapper around a small Go binary, verified by SHA-256 on every install.

pip install trqsh
# or, isolated:
pipx install trqsh

trqsh login        # sign in through your browser
trqsh http 3000    # → a public HTTPS URL for localhost:3000
trqsh http 3000 opening a live tunnel

Why trqsh

  • QUIC-first, TCP fallback — built on HTTP/3's transport from the ground up, not HTTP/1.1 with a marketing label; falls back automatically where UDP is blocked.
  • Every protocolhttp, tcp, and udp tunnels, not just HTTP.
  • A real console, not a log spinner/pin traffic, /pin status, and friends keep live panels on screen while you keep working, with command history, autocomplete, and a scrolling transcript. See below.
  • Real TLS — Let's Encrypt via CertMagic, not a self-signed cert with a browser warning.
  • Background tunnels (-d) that outlive your terminal, reserved subdomains, custom domains, and a live request inspector.
  • Signed, verifiable releases — every download is checksummed and the checksum file itself is cosign-signed in CI (see Security below).
  • Fully open source (Apache-2.0) — read every line, self-host the whole edge + control plane instead of trusting a black box.

The console

Bare trqsh (or trqsh http 3000) opens an interactive, slash-command console — type / to browse everything it can do, pin live panels above the prompt, and keep an eye on traffic without leaving the terminal:

the trqsh console: welcome banner, an active tunnel, and pinned traffic + status panels

Commands

Command Does
/http <port> Expose a local HTTP port
/tcp <port> / /udp <port> Expose a local TCP/UDP port
/start Start every tunnel from your config file at once
/ls List running tunnels
/open <id> Open a tunnel's public URL in your browser
/qr [id] Show a QR code for a tunnel URL — open it on your phone
/copy [id] Copy a tunnel URL to the clipboard
/requests Show recently captured requests
/pin <traffic|tunnels|status> Keep a live panel on screen
/stop <id|all> / /down Stop a tunnel, or the whole daemon
/subdomains, /domains Reserve subdomains, manage custom domains
/whoami, /login, /logout Account, plan, usage; sign in via browser
/update, /version Self-update in place; show version

Run /help inside the console for the full, current list.

Security

Every release archive ships with a checksums.txt that this package verifies before it ever execs the binary. The checksum file itself is keyless-signed with cosign via GitHub Actions' OIDC token — no key to leak, no key to trust blindly:

cosign verify-blob \
  --bundle checksums.txt.sigstore.json \
  --certificate-identity-regexp 'https://github.com/uzcreator/trqsh/.*' \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com \
  checksums.txt

How it works

The console script trqsh calls trqsh.ensure_binary(), which detects your OS (darwin/linux/windows) and CPU (amd64/arm64), downloads trqsh_<version>_<os>_<arch>.<ext> from https://github.com/uzcreator/trqshcli/releases, verifies its SHA-256 against checksums.txt, caches the binary under ~/.cache/trqsh/<version>/, and execs it. Pure standard library — no runtime dependencies.

Environment overrides

Variable Purpose
TRQSH_VERSION Pin a specific release (defaults to the package version).
TRQSH_REPO Alternate owner/repo for the release download.
TRQSH_DOWNLOAD_BASE Full base URL of a mirror serving the release assets (for air-gapped/internal mirrors).
TRQSH_SKIP_CHECKSUM=1 Skip SHA-256 verification (not recommended).

Uninstall

trqsh uninstall        # remove local data (config, key, cache) + stop tunnels
pip uninstall trqsh    # then remove the package itself

Run trqsh uninstall first: pip uninstall drops the package but leaves your saved key, control token, logs, and the cached binary under ~/.cache/trqsh/ behind — trqsh uninstall clears those and stops any background daemon. Add -y to skip the confirmation.

Links

Website · Source · CLI releases · Issues

Author

trqsh is created and maintained by Otabek Hamroqulov — GitHub @Hamroqulovv. Licensed Apache-2.0.

Release files for trqsh 0.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for trqsh 0.1.9
File Size Uploaded
trqsh-0.1.9.tar.gz 6.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for trqsh 0.1.9
File Interpreter ABI Platform
trqsh-0.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 13.7 kB

Release files / trqsh-0.1.9.tar.gz

Download URL trqsh-0.1.9.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
bdd398312979b73f6bed23f40830b2b6cf4669f3a3f39b809f4401b7b6967a5f
BLAKE2b-256 checksum
How to use checksums
5131ec564dcf449e7a0e2d96d760d27548918715eff6fbece6283e50f4c87486
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / trqsh-0.1.9-py3-none-any.whl

Download URL trqsh-0.1.9-py3-none-any.whl
Size 7.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
058597f514c86a869db892a409fd3cbe5e3a48e49d356b0e3dac2660cc339d23
BLAKE2b-256 checksum
How to use checksums
6bf2d80c49fcf76a0fb8effe60d70ca557b27891f5abc3a0c9ae47d4edaebe38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release history Release notifications | RSS feed

0.2.1

2 release files

0.2.0

2 release files

This release

0.1.9 This release

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page