Getting started¶
Requirements¶
Python 3.11 or newer
A Humble Bundle account and a Steam account
One Playwright browser (installed in the second step below)
Install¶
pip install humble-steam-key-redeemer
playwright install chromium
The second command downloads a browser Playwright manages itself. There is no separate webdriver to install or keep version-matched with your system browser.
Tip
Prefer an isolated install for a command-line tool:
uv tool install humble-steam-key-redeemer
uv tool run --from humble-steam-key-redeemer playwright install chromium
First run¶
1. Sign in to Humble¶
hskr login
A browser window opens on Humble’s login page. Complete the sign-in there, including Humble Guard or two-factor if your account uses them, then return to the terminal and press Enter.
Your Humble password goes into Humble’s own form. The tool never reads it, and only the resulting session is saved.
2. Import your library¶
hskr sync
This reads your orders and records every key in a local database. Nothing is revealed and nothing is redeemed.
hskr status
3. Preview¶
hskr redeem --dry-run
You are prompted for your Steam credentials, because ownership cannot be checked without signing in. Nothing is redeemed. The output lists what would be attempted, what would be skipped, and any matches the tool was not confident about.
Review the uncertain matches. Each one is a game the tool believes you already own but is not sure about; if it is wrong, it is skipping a key you could have redeemed.
4. Redeem¶
hskr redeem
Add --reveal to also reveal keys Humble has not released yet.
Warning
--reveal is irreversible. Revealing a key forfeits your ability to turn it
into a gift link.
Where your data lives¶
Everything is stored under one directory:
Platform |
Location |
|---|---|
Linux / BSD |
|
macOS |
|
Windows |
|
It holds redeemer.db plus the saved Humble and Steam sessions. The directory
is created 0700 and the files 0600, because the sessions are bearer
credentials — a copied Steam session bypasses Steam Guard.
Override it with --state-dir or HSKR_STATE_DIR.
To sign out and delete both sessions:
hskr logout