Skip to content

CLI Reference

Terminal window
moqtap <command> [options]
FlagDescription
--jsonOutput as JSON (where supported)
--insecureAccept invalid TLS certificates
--draft <VERSION>Force a specific MoQT draft version
--timeout <MS>Connection timeout in milliseconds
--strictReject non-conformant messages
-v, --verboseIncrease log verbosity

Lightweight MoQT client for probing relays. Auto-detects transport (QUIC or WebTransport) and draft version.

Terminal window
# Show relay info and draft version
moqtap peek moqt://relay.example.com
# Discover published namespaces
moqtap peek moqt://relay.example.com namespaces
# List tracks in a namespace
moqtap peek moqt://relay.example.com tracks <NAMESPACE>
# Fetch data from a track
moqtap peek moqt://relay.example.com data <NAMESPACE> <TRACK>
# Fetch only the latest group
moqtap peek moqt://relay.example.com data <NAMESPACE> <TRACK> latest

Transparent intercepting proxy. Sits between a MoQT client and an upstream relay, forwarding traffic unmodified while parsing every frame inline.

Terminal window
# QUIC listener (default 127.0.0.1:4443) proxying to upstream relay
moqtap intercept -u moqt://relay.example.com
# WebTransport listener
moqtap intercept -u moqt://relay.example.com --listen-wt
# Record session to a .moqtrace file
moqtap intercept -u moqt://relay.example.com --output session.moqtrace
# Filter to control messages only
moqtap intercept -u moqt://relay.example.com --filter ctrl
# JSON output
moqtap intercept -u moqt://relay.example.com --format json
FlagDescription
-u, --upstream <URL>Upstream relay URL (required)
--listen-wtListen for WebTransport connections instead of QUIC
--output <PATH>Save session to a .moqtrace file
--filter <TYPE>Filter output: ctrl (control messages only), data (data streams only)
--session <ID>Filter to a specific session ID
--cert <PATH>Custom TLS certificate
--key <PATH>Custom TLS private key
--format <FMT>Output format: text (default) or json

Replay and inspect recorded .moqtrace files.

Terminal window
# Replay a trace file
moqtap trace session.moqtrace
# JSON output
moqtap trace session.moqtrace --format json
# Hex dump mode
moqtap trace session.moqtrace --hex

Generate shell completions.

Terminal window
moqtap completions bash
moqtap completions zsh
moqtap completions fish
moqtap completions powershell
moqtap completions elvish

moqtap resolves configuration in this order (first match wins):

  1. Inline URL argument
  2. MOQTAP_RELAY environment variable
  3. .moqtap.toml in the current directory or any parent (walks up like .gitignore)
  4. ~/.config/moqtap/config.toml (Linux/macOS) or %APPDATA%\moqtap\config.toml (Windows)
SchemeTransport
moqt://Auto-detect (tries QUIC, falls back to WebTransport)
https://Auto-detect (tries QUIC, falls back to WebTransport)
quic://QUIC only
wt://WebTransport only
CodeMeaning
0Success
1Error
2Connection error