Usage¶
Every command takes flags as well as prompts, so a run can be scripted.
Commands¶
hskr login¶
Opens a browser window on Humble’s login page and saves the session once you have signed in.
hskr sync¶
Imports your Humble library into the local database. Re-running it updates existing entries rather than duplicating them, so your redemption history survives.
hskr sync --headed # watch it work
hskr status¶
Prints a breakdown of stored keys by state and how many are still worth attempting.
hskr redeem¶
Redeems Steam keys the account does not already own.
Flag |
Effect |
|---|---|
|
Check ownership and print the plan; redeem nothing. |
|
Skip the confirmation prompt. |
|
Reveal unrevealed Humble keys. Irreversible. |
|
Attempt at most |
|
Supply the Steam account name non-interactively. |
hskr redeem --dry-run
hskr redeem --limit 20 --yes
hskr redeem --reveal --yes
hskr export¶
Writes the stored library to a CSV report.
hskr export library.csv
hskr export steam-only.csv --steam-only
Values that a spreadsheet would treat as formulas are escaped, and titles containing commas, quotes, or newlines are quoted correctly.
hskr browser¶
Drives the Chrome extension, so the work happens in the browser you are already signed into. See The Chrome extension.
hskr browser status
hskr browser sync
hskr browser preview
hskr browser redeem --reveal
hskr bridge¶
Sets up that extension. hskr bridge prints the install steps; hskr bridge --extension-id <ID> registers the native messaging host.
hskr logout¶
Deletes the saved Humble and Steam sessions.
Configuration¶
Settings resolve from command-line flags, then HSKR_-prefixed environment
variables, then a .env file, then the defaults.
Variable |
Default |
Meaning |
|---|---|---|
|
platform state dir |
Where the database and sessions live. |
|
|
Score above which a title counts as owned. |
|
|
Score at or above which no review is needed. |
|
|
Run the browser without a window. |
|
|
|
|
|
Per-operation browser timeout. |
|
|
HTTP timeout in seconds. |
|
|
Browser locale. |
Tuning the match thresholds¶
Lowering HSKR_MATCH_THRESHOLD skips more games as already-owned; raising it
attempts more. Because a wrong skip wastes a redeemable key and a wrong attempt
wastes one of ten hourly failures, the default is deliberately cautious and
surfaces borderline cases instead of guessing.
HSKR_MATCH_THRESHOLD=80 hskr redeem --dry-run
Rate limits¶
Steam permits roughly 50 activations per hour, and only about 10 failures. Duplicates count as failures.
The tool stops as soon as Steam reports a rate limit, because further attempts during a cooldown extend it. Rerun about an hour later; keys that were only rate-limited stay eligible, while keys that got a real verdict are not retried.
A key interrupted mid-activation — the process died after Steam saw the key but
before the result was recorded — is left in the attempted state and is not
retried automatically, because Steam may well have accepted it and a retry
would spend one of the scarce failures. hskr status shows these; check the
game in your Steam library before deciding.
hskr redeem --yes # later, to pick up where it stopped