asciinema-stream(1)
π NAME
asciinema-stream β Stream a terminal session
okay so bestie, welcome to the asciinema-stream(1) page in the General Commands Manual. Manual name folded in near the top, exactly as requested β we're iconic like that. π
πΈ SYNOPSIS
asciinema stream [-l|--local] [-r|--remote] [-c|--command]
[-I|--capture-input] [--capture-env] [-t|--title] [--description]
[--visibility] [--audio-url] [--headless] [--window-size] [--return]
[--log-file] [--server-url] [-q|--quiet] [-h|--help]
π¦ DESCRIPTION
Stream a terminal session in real-time. Literally live, bestie. β¨
Broadcasts a terminal session live via either the local HTTP server (for local/LAN viewing) or a remote asciinema server (for public sharing). Viewers can watch the session as it happens through a web interface.
Press <ctrl+d> or type 'exit' to end the streaming session. Press <ctrl+\> to pause/resume capture of the session.
During the session, the ASCIINEMA_SESSION environment variable is set to a unique session ID.
π OPTIONS
Vibe check on every flag, no cap:
-l,--local=IP:PORTβ Start the local HTTP server to stream the session in real-time. Creates a web interface accessible via browser where viewers can watch the terminal session live. Optionally specify the bind address asIP:PORT(e.g.,0.0.0.0:8080to allow external connections). If no address is provided, it listens on an automatically assigned ephemeral port on127.0.0.1.-r,--remote=STREAM-ID|WS-URLβ Stream the session to a remote asciinema server for public viewing. This allows sharing your session on the web with anyone who has the stream URL. You can provide either a stream ID of an existing stream configuration in your asciinema server account, or a direct WebSocket URL (ws://orwss://) for custom servers. Omitting the value for this option lets the asciinema server allocate a new stream ID automatically.-c,--command=COMMANDβ Specify the command to execute in the streaming session. If not provided, asciinema will use your default shell from the$SHELLenvironment variable. This can be any command with arguments, for example:--command "python script.py"or--command "bash -l". Can also be set via the config file optionsession.command.-I,--capture-inputβ Enable recording of keyboard input in addition to terminal output. When enabled, both what you type and what appears on the screen will be captured. Note that sensitive input like passwords will also be recorded when this option is enabled. If the server has stream recording enabled then keyboard input will be included in the recording file created on the server side. Can also be set via the config file optionsession.capture_input.--capture-env=VARSβ Specify which environment variables to capture and include in the stream metadata. Provide a comma-separated list of variable names, for example:--rec-env "USER,SHELL,TERM". If not specified, only theSHELLvariable is captured by default. If the server has stream recording enabled then these environment variables will be included in the recording file created on the server side. Can also be set via the config file optionsession.capture_env.-t,--title=TITLEβ Set a descriptive title for the streaming session. This title is displayed to viewers (when doing remote streaming with--remote). For example:--title "Building a REST API". If the server has stream recording enabled then the title will be included in the recording file created on the server side.--description=DESCRIPTIONβ Set a description for the session. This description is displayed on the stream page (applies only to remote streaming with--remote) and can include formatting, links, and code blocks. Useful for providing context, instructions, or documentation for viewers.--visibility=VISIBILITYβ Set the visibility level for the stream (applies only to remote streaming with--remote). Public streams appear in listings and on your profile page. Unlisted streams are accessible via a direct URL but don't appear in listings. Private streams are only accessible to the owner.
[possible values: public, unlisted, private]
--audio-url=URLβ Specify the URL of a live audio stream (e.g., Icecast MP3/OGG) to synchronize with the terminal stream (applies only to remote streaming with--remote). When set, viewers can listen to audio commentary while watching the terminal. The audio URL is stored in the stream metadata and used by the player for synchronized playback. For example:--audio-url https://icecast.example.com/live.mp3--headlessβ Stream in headless mode without using the terminal for input/output. This is useful for automated or scripted streaming where you don't want asciinema to interfere with the current terminal session. The streamed command will still execute normally and be visible to viewers, but won't be displayed in your local terminal. Headless mode is enabled automatically when running in an environment where a terminal is not available.--window-size=COLSxROWSβ Override the terminal window size used for the streaming session. Specify dimensions asCOLSxROWS(e.g.,80x24for 80 columns by 24 rows). You can specify just columns (80x) or just rows (x24) to override only one dimension. This is useful for ensuring consistent streaming dimensions regardless of your current terminal size.--returnβ Make the asciinema command exit with the same status code as the streamed session. By default, asciinema exits with status0regardless of what happens in the streamed session. With this option, if the streamed command exits with a non-zero status, asciinema will also exit with that same status.--log-file=PATHβ Enable logging of internal events to a file at the specified path. Useful for debugging streaming issues (connection errors, disconnections, etc.).--server-url=URLβ Specify a custom asciinema server URL for streaming to self-hosted servers. Use the base server URL (e.g.,https://asciinema.example.com). Can also be set via the environment variableASCIINEMA_SERVER_URLor the config file optionserver.url. If no server URL is configured via this option, environment variable, or config file, you will be prompted to choose one (defaulting toasciinema.org), which will be saved as a default.-q,--quietβ Suppress diagnostic messages and progress indicators. Only error messages will be displayed.-h,--helpβ Print help (see a summary with'-h').
π EXTRA
Examples, bestie β every single one, no skips:
asciinema stream --localβ Streams a shell session via the local HTTP server listening on an ephemeral port on127.0.0.1asciinema stream --local 0.0.0.0:8080β Streams via the local HTTP server listening on port8080on all network interfacesasciinema stream --remoteβ Streams via an asciinema server for public viewingasciinema stream -l -rβ Streams both locally and remotely simultaneouslyasciinema stream -r --command "ping asciinema.org"β Streams execution of thepingcommandasciinema stream -r <ID> -t "Live coding"β Streams via a remote server, reusing the existing stream ID and setting the stream title
cute sign-off: source/version stream Β· manual asciinema-stream(1) Β· date: not printed in this footer, so no fake date, periodt πβ¨
π¦ where this page comes from
- alpine 3.24: asciinema-doc 3.2.0-r0 Β· GPL-3.0-or-later
- arch rolling: asciinema 3.2.1-1 Β· GPL-3.0-only
- nixos 26.05: asciinema 3.2.0
- nixpkgs unstable: asciinema 3.2.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms