Steam Clip TUI
A terminal application for browsing and exporting Steam game recording clips, built with Textual.
Features
- Browse clips — automatically scans your Steam userdata directory, organizes clips by game
- Preview — inline thumbnail preview in terminals that support image protocols (kitty, ghostty, foot, wezterm)
- Export to MP4 — join DASH segments into a single MP4 via ffmpeg, with real-time progress tracking
- Customizable output — choose video codec (copy/H.264/H.265/VideoToolbox), resolution (source/1080p/720p/480p), bitrate, and filename template
- Game name resolution — resolves Steam app IDs to human-readable names via appmanifest files and the Steam Store API, with a local disk cache
Requirements
- Python 3.11+
- ffmpeg (must be on
PATH) - Steam with game recording enabled (clips stored in
userdata/)
Installation
# Run directly without installing (recommended)
uvx steam-clip-tui
# Or install globally with uv
uv tool install steam-clip-tui
# Or install with pipx
pipx install steam-clip-tui
# Or install with pip
pip install steam-clip-tui
Usage
steam-clip-tui
Keyboard shortcuts
| Key | Action |
|---|---|
h / l |
Switch focus left / right |
j / k |
Move cursor down / up |
g |
Focus game list |
e |
Export selected clip |
/ |
Search games / Filter clips by date |
? |
Show help |
q |
Quit |
Configuration
On first run, a config file is created at your platform's config directory (e.g. ~/.config/steam-clip-tui/config.toml on Linux, ~/Library/Application Support/steam-clip-tui/config.toml on macOS). See config.default.toml for all available options.
Key settings:
[export]
output_dir = "~/Movies/SteamClips"
video_codec = "copy" # copy | libx264 | libx265 | h264_videotoolbox | hevc_videotoolbox
resolution = "source" # source | 1080p | 720p | 480p
filename_template = "{game}/{date}_{time}.{ext}"
[ui]
show_clip_preview = true
Metadata
Release files for steam-clip-tui 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| steam_clip_tui-0.1.5.tar.gz | 20.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| steam_clip_tui-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 50.5 kB
Release files / steam_clip_tui-0.1.5.tar.gz
| Download URL | steam_clip_tui-0.1.5.tar.gz |
|---|---|
| Size | 20.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b4b7cd042396da5e28eae64428ece5f83eba7a5a71bcf4d63595a0f9a3842377
|
|
BLAKE2b-256 checksum How to use checksums |
818619f7f04f9a9b82774735ac2b189270a4fee536b98df1528a5047d4fadf95
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / steam_clip_tui-0.1.5-py3-none-any.whl
| Download URL | steam_clip_tui-0.1.5-py3-none-any.whl |
|---|---|
| Size | 30.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aee1bf6aeb2c3c8a1c4a8a3d0890719ee98985ef31cb44166e6db9b112a39868
|
|
BLAKE2b-256 checksum How to use checksums |
32f66d4e50f6ee63366a23551418a139efee01c1e45ebf3f8f497f1b9e508bdd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|