After the install: everyday help
For a bot that is already installed on your own server. Press a line to open it. Not installed yet? Start with the install guide.
Open the dashboard on your own domain
If you own a web address and would rather open the dashboard there than keep a PowerShell window open.
This is for an address such as https://bot.example.com, with the padlock (HTTPS). You need a domain name of your own. In the domain's settings at the company you bought it from, add an A record that points the name at your server's IP address. Do that first.
Then type your domain into the box. The installer sets up a small web server named Caddy, which gets the HTTPS certificate by itself.
Without --allow-ip the sign in page is open to the whole internet, and the dashboard password is all that guards your bot. The installer says so with a NOTE: at the top of the summary. Add --allow-ip 203.0.113.7/32 (your own address) to let only that address open the dashboard; everyone else gets "Not found".
If you changed the dashboard's port from 4400, add --dashboard-port with your port: the installer takes the port from you, not from the bot's own settings file.
Paste this into the server window:
sudo bash /opt/stx-bot/current/install.sh --with-caddy bot.example.com
What you should see
the summary, with these two lines under Dashboard:
Open this address in your browser:
https://bot.example.comSeeing something else?
If you see something else
a NOTE: at the top of the summary says the domain could not be used yet (DNS not pointed here, or another program holds ports 80 and 443) and that the SSH tunnel stays in use. Fix what it names and run the command again. To go back to the tunnel, run the same command with --with-ssh in place of --with-caddy bot.example.com.
Updates and going back
Updates install by themselves. Open this to update right now, see what the updater did, or choose how updates arrive.
Nothing to do: new versions install by themselves, checked against our signature first. New trades pause while open ones finish, the bot restarts on the new version, and if it does not sign in and serve the dashboard within 3 minutes, the version before is put back by itself.
On the dashboard's Licence page you choose Auto (the default), Notify (you press Install now) or Off. An update never starts unless every bot has 2 Steam sign-ins to spare.
Every line here is pasted into the server window. Closed it? Connect again as in step 2 of the install guide.
Want a new version now, without waiting for the next check (every 6 hours)?
sudo stx-bot update now
What you should see
each step as it happens, ending with either
Nothing newer: 1.0.0 is the newest version.
or
Installed 1.0.1: Version 1.0.1 is installed and running: every bot signed in to Steam again and the dashboard answers. Steam sign-ins used: 1. Version 1.0.0 is kept to go back to.
Seeing something else?
If you see something else
Waiting 1.0.1: Version 1.0.1 waits: ...: the update waits for the reason it names (for example, an offer still waiting for its confirmation, or not enough Steam sign-ins left in the hour). It is tried again by itself.Put back 1.0.1: Version 1.0.1 did not come up (...), so version 1.0.0 was put back and runs again.: your bot went back to the version before. Nothing is lost; 1.0.1 is never tried again, and the next version is.The updater has not picked up the request. Check that it is switched on: sudo systemctl status stx-bot-update.path: if that does not sayactive, run the installer again (the "Running it again" command in "1. Install in one command").
What the updater last did:
sudo stx-bot update status
What you should see
the version running, the newest available, and the last result.
Seeing something else?
If you see something else
Updates wait: ... means the licence has not reached SteamTradeX in the last 7 days. Updates need that; trading does not.
Installed an earlier version? After it has updated, run sudo bash /opt/stx-bot/current/install.sh once (the "Running it again" command under Everyday commands and repair). It applies the new service settings and the new stx-bot command, keeps your settings and does not restart the bot. The dashboard's Licence page reminds you until it is done.
A signature alone is not enough for a release to be installed here. Your server also refuses, whoever offers it:
- a test build. Servers take stable releases only. (If you test new versions for SteamTradeX, you join the test channel on the server itself:
sudo bash /opt/stx-bot/current/install.sh --channel test, and leave it with--channel stable.) - a release older than the oldest one still offered, or one that was withdrawn. Each new release can name both, and your server remembers them, so an old or faulty version cannot be handed out again later.
sudo stx-bot update status then says so, for example version 1.0.1 was withdrawn. Nothing is installed and your bot keeps running as it is.
Add or remove a bot
When you want a second Steam account trading on the same server.
One licence runs any number of bots on one server, each with its own Steam account. Each one needs its own .maFile, sent as in step 3 of the install guide.
Every line here is pasted into the server window. Closed it? Connect again as in step 2 of the install guide.
Add the next bot (bot2, then bot3, and so on):
sudo stx-bot add-bot --id bot2
What you should see
Added bot bot2 in /var/lib/stx-bot/home/bots/bot2 (...). Nothing was copied from the main bot. Next: 1. Run: sudo stx-bot setup --home /var/lib/stx-bot/home/bots/bot2 (this bot's own Steam account, ...) 2. Run: stx-bot start-bot --home /var/lib/stx-bot/home --id bot2
Run those two commands, with sudo in front of the second as well. See every bot with sudo stx-bot bots.
Seeing something else?
If you see something else
an id is 1 to 24 small letters, digits and dashes, starting with a letter or digit.
See every bot, whether it runs, and its Steam sign-ins with sudo stx-bot bots. sudo stx-bot remove-bot --id bot2 sets a stopped bot aside: its Steam login is deleted after 30 days, or at once with --purge.
Move to another server
When you change provider or rent a bigger server.
One licence runs on one server at a time. Moving it is a reset, 3 in any 30 days.
- On your Bot Script page, press Reset server on the licence's card and confirm. The old server hears it at its next check (about once a day), says so on its dashboard, in its log and on Telegram, and stops taking new trades 72 hours later. Open trades still finish.
- On the new server, follow the install guide again from step 2, with a fresh install command from the same card.
On the new server, check the licence is there. Paste this into its server window:
sudo stx-bot licence status
What you should see
Licence: Active, Trading: allowed, and when the bot last heard from SteamTradeX.
Seeing something else?
If you see something else
see "Licence moved or released" below.
Licence moved or released. Licence: Moved to another server means the licence was reset to another server: this one stops new trades 72 hours after it heard. If that was not you, change your SteamTradeX password and ask us. Not activated or Activated on another server after a server was re-imaged or cloned: the server's machine id changed, so it counts as a new server. Press Reset server on your Bot Script page, then run the installer again: the "Running it again" command in "1. Install in one command" on a server that kept the bot's folder, or, on a wiped one, press Make a new command on your Bot Script page and paste that command.
Everyday commands and repair
To watch what the bot is doing, stop or start it, change its Steam account or prices, or mend a broken install.
You will rarely need these: the bot runs, restarts and updates itself. Where a quoted answer below says step 1, it means the install step of the install guide.
Every line here is pasted into the server window. Closed it? Connect again as in step 2 of the install guide.
See what the bot is doing:
journalctl -u stx-bot -f
What you should see
the bot's log, with new lines as they happen. Press Ctrl+C to stop watching (the bot keeps running).
Seeing something else?
If you see something else
No entries or Permission denied: put sudo in front.
Stop and start it (each start signs in to Steam once, so not over and over):
sudo systemctl stop stx-bot sudo systemctl start stx-bot
What you should see
nothing, which means it worked. Check with systemctl status stx-bot (it says active (running) while it runs).
Seeing something else?
If you see something else
failed or inactive: read the last lines of the log with journalctl -u stx-bot -n 50, which say why. See also "When the bot stops by itself" below.
Change the Steam account or the prices. Would you rather name the Steam Guard file than be asked which? sudo stx-bot setup --mafile /path/to/file.maFile.
sudo stx-bot setup
What you should see
the same questions as at install, each with the current answer to keep by pressing Enter. If you uploaded a .maFile, it is listed first and you pick it by its number. (To name the Steam Guard file yourself instead: sudo stx-bot setup --mafile /path/to/file.maFile.) New rates apply within moments. A new Steam login applies after sudo systemctl restart stx-bot.
Seeing something else?
If you see something else
most settings are also on the dashboard, under Bot setup.
Steam Guard codes and licence answers depend on the time. If the log says the server's clock is off:
sudo timedatectl set-ntp true
What you should see
nothing. Then timedatectl says System clock synchronized: yes within a minute.
Seeing something else?
If you see something else
your hosting company may block time servers; ask them to allow NTP.
Running it again. On a server where the bot is already installed, the installer needs no code and no download: it is part of the installed bot. (sudo stx-bot installer runs the same file.)
sudo bash /opt/stx-bot/current/install.sh
What you should see
Using the licence this bot already has: STX1-... and, at the end, the summary again. It keeps your settings and data, and installs a newer version if there is one.
Seeing something else?
If you see something else
it asks Paste your licence key: this server has no saved key (a new or wiped server). Paste the key (the Show button on your Bot Script page shows it), or press Make a new command on that page and paste that command instead.
Switching to another licence on this server: run sudo bash /opt/stx-bot/current/install.sh --code XXXX-XXXX with the code from that licence's Bot Script card (the code brings the new key, which takes the old one's place), or run sudo stx-bot licence activate and paste the new key. This server still holds the old licence's place, so to use the old licence on another server, press Reset server on the old licence's card on your Bot Script page.
Something else broken? Repair lays the program files down again from the signed download and keeps your settings and data:
sudo bash /opt/stx-bot/current/install.sh --repair
What you should see
the summary again.
Seeing something else?
If you see something else
No such file or directory: the bot on this server is older than the installer inside it. Runsudo stx-bot update nowfirst, then repair.The installed files cannot be trusted to repair themselves: download the installer again, check it as "Check the installer before the first install" says, and runsudo bash install.sh --repair.- Anything else: send the lines starting
STOPPED:andWhat to do:, and the last 50 lines ofjournalctl -u stx-bot, to SteamTradeX support on Discord.
The summary the installer printed comes back any time with sudo stx-bot info, and sudo stx-bot info --link adds a fresh sign in link. At the end of the install it looked like this, with your own address in it. The password and the link under it were printed that once only:
======================================================================
STX bot, version 1.0.0, standalone edition
Licence: Active
Service: running
Dashboard
It is only open on this server. To reach it from your own computer, open a terminal there
(Windows: PowerShell. Mac: Terminal. Linux: any terminal), paste this, and leave it open:
ssh -L 4400:127.0.0.1:4400 [email protected]
Then open this address in your browser:
http://localhost:4400
PuTTY instead: Connection > SSH > Tunnels, Source port 4400, Destination 127.0.0.1:4400, Add, then connect as usual.
For a one-time sign in link: sudo stx-bot info --link
Logs: journalctl -u stx-bot -f
Update now: sudo stx-bot update now
Stop: sudo systemctl stop stx-bot
Start: sudo systemctl start stx-bot
Uninstall: sudo bash /opt/stx-bot/current/install.sh --uninstall
(keeps your settings and trade history in /var/lib/stx-bot)
Dashboard password: shown once, below this summary. Save it now.
Guide: https://steamtradex.com/guides/self-host-steam-bot
This summary again any time: sudo stx-bot info (saved in /root/stx-bot-install-summary.txt)
======================================================================
Your dashboard password, shown once. Save it now:
<your password>
Your one-time sign in link. Open the dashboard as the summary above says, then open this link in the same browser. It works once, within 15 minutes:
http://localhost:4400/signin#<one-time code>
Press Enter once you have saved itUninstall
When you want the bot off this server.
This removes the bot and frees this server's place on your licence. Your settings and trade history stay, so installing again picks them up.
Every line here is pasted into the server window. Closed it? Connect again as in step 2 of the install guide.
sudo bash /opt/stx-bot/current/install.sh --uninstall
What you should see
a question about freeing this server's place on your licence (Enter says yes), then Removed. Your settings and trade history are kept in /var/lib/stx-bot; installing again picks them up.
Seeing something else?
If you see something else
to delete the settings and trade history too, add --purge and type DELETE when asked. That cannot be undone. (After an uninstall without --purge the installer is gone with the program; the last line it printed is the command that deletes the data later.)
Check the installer before the first install
For the careful: prove with our signing key that the installer came from us, before you run it.
Optional, for the careful. The first install runs a file from our website as root. Every release is signed with our release key, and so is the installer: its signature is published beside it as install.sh.sig. To check that the file you downloaded is the one we signed, before running it (this needs OpenSSL 3, which every supported system has):
Paste the whole block into the server window, in place of the download and check steps of Download and check it first. It downloads the installer and its signature, writes our release key's public half to a file, and checks the one against the other. Where the answer below says step 1, that is the install step of the install guide.
curl -fsSL https://steamtradex.com/install.sh -o install.sh curl -fsSL https://steamtradex.com/install.sh.sig -o install.sh.sig cat > release-key.pem <<'KEY' -----BEGIN PUBLIC KEY----- MCowBQYDK2VwAyEAPFcBnsKZ5Y0FzQYSnkmCt89obcCFQc2fVL4YH3M6pDI= -----END PUBLIC KEY----- KEY printf 'stx-installer-v1\000' > signed.bin cat install.sh >> signed.bin cut -d' ' -f2 install.sh.sig | base64 -d > install.sh.sig.bin openssl pkeyutl -verify -pubin -inkey release-key.pem -rawin -in signed.bin -sigfile install.sh.sig.bin
What you should see
Signature Verified Successfully. Then run the install command from "1. Install in one command" without its curl part: sudo bash install.sh --code XXXX-XXXX.
Seeing something else?
If you see something else
Signature Verification Failure, or any error: do not run the file. Download both again; if it stays, tell SteamTradeX support on Discord.
Verified? Run the file you just checked, without downloading it again. On your Bot Script page choose Download and check it first, press Make install command in its last install step, then Copy command under Your command:.
The key above is release key R1, the same key the installer and every installed bot carry. The bot's README on a server you already run (/opt/stx-bot/current/README.md) shows the same three lines. Compare them with a copy you got some other way than from our website when you can.
The signature is install.sh.sig, served beside install.sh. The quicker check in Check it is ours compares the file's fingerprint with the one this page shows. This one proves the file was signed with our release key.
If something goes wrong
What a message on your screen means, and what to do about it.
What you might see, and what to do about it. Pasting your install command again is always safe.
- A line starting
STOPPED: - Nothing was left half done. The next line,
What to do:, says how to fix it. Then paste the same command again; running it twice is always safe. - A summary whose first line starts
FIRST: - The bot is installed but needs you (for example, it has not signed in to Steam yet). Do what that line says.
That install code has run out or was used already- Press Ctrl+C, press Make a new command on your Bot Script page and paste the new one. Or paste your licence key at the question it asks next (Bot Script page, Show under Licence key, then Copy).
sudo: command not found, orThis needs root, and this server has no sudo- Log in as root and use the second command on your Bot Script page: press It says sudo: command not found under your command.
status=78insystemctl status stx-bot- The bot stopped itself because only you can fix something (a wrong Steam password or secret, or a licence that moved away), and it is not restarted. Read why with
journalctl -u stx-bot -n 50, fix it (oftensudo stx-bot setup), thensudo systemctl start stx-bot. status=75insystemctl status stx-bot- The bot asked to be restarted and was. Nothing to do. If it says
failedafter many in an hour, read the log, thensudo systemctl start stx-bot. - The bot does not sign in: Steam Guard
- The secrets are wrong or belong to another account. Send the
.maFileof this exact account to the server again, as in step 3 of the install guide. Runsudo stx-bot setup, pick that file by its number, and press Enter at the Steam Guard question. Thensudo systemctl restart stx-bot. The Steam Guard file you picked cannot be used,is encrypted by Steam Desktop AuthenticatororThat file is not a readable .maFile- Steam Desktop Authenticator has locked the file with a passkey, or it is not the bot's
.maFile. In SDA, open Manage Encryption, type your passkey, then leave the new passkey empty. Send the file again as in step 3 of the install guide, then runsudo stx-bot setupand pick it again. Or type the two secrets by hand:2at the Steam Guard question. Steam has no profile with the custom name- The name in your custom link is spelled differently on Steam. Open your own profile on Steam, copy the address at the top of the page and paste it again. Or paste your Steam ID, the number of 17 digits.
Steam did not answer just now, thenThat is a custom profile link- Steam could not be asked whose profile that is, so this one time the installer needs your Steam ID, the number of 17 digits that starts with 7656119. It says where to find it: in Steam, click your name at the top right, then Account details. The number is under your account name. Paste that number.
- The log says it waits to sign in
- To keep the account safe the bot allows itself 6 Steam sign-ins an hour and 30 a day for each account. It picks up by itself; do not restart it in a loop.
- The sign in link does not work any more
- A link works once, within 15 minutes. Paste
sudo stx-bot info --linkinto the server window for a fresh one, with yourssh -Lwindow open. - The browser cannot connect to localhost:4400
- The window with the
ssh -Lline was closed. Open a new PowerShell window, paste that line again and leave it open. - The dashboard asks for its password and you did not save it
- Paste
sudo stx-bot dashboard-passwordinto the server window. It prints a new one. No such file or directoryfor/opt/stx-bot/current/install.sh- The bot on this server is older than the installer inside it. Run
sudo stx-bot update nowfirst, then the command again. Licence: Moved to another server- The licence was reset to another server, and this one stops new trades 72 hours after it heard. If that was not you, change your SteamTradeX password and ask us.
Not activatedorActivated on another serverafter the server was re-imaged or cloned- The server's machine id changed, so it counts as a new server. Press Reset server on your Bot Script page, then run the installer again: the "Running it again" command under Everyday commands and repair on a server that kept the bot's folder, or a fresh command from your Bot Script page on a wiped one.
Updates wait: ...- The licence has not reached SteamTradeX in the last 7 days. Updates need that; trading does not, and carries on.
Still stuck? Ask us on Discord with the last lines the installer or journalctl -u stx-bot -n 50 printed. Leave out your passwords and your licence key.
Stuck? Ask us on Discord with a screenshot of what you see. Cover any password, code or licence key in it first.