1. What is xBot
xBot is a Windows automation tool for Xbox Cloud Gaming. It
drives a virtual controller and watches the screen so it can repeat tasks for
you — like farming rewards, grinding, or running AFK loops — on your own
account, while you do something else.
Requirements:
- Windows 10 or 11 (64-bit).
- An Xbox / Microsoft account with access to Xbox Cloud Gaming.
- A stable internet connection.
Good to know
xBot only sends inputs to your own cloud session — it does not modify
any game and is not affiliated with Microsoft or Xbox. You are responsible for
using it within the platforms' terms.
2. Install & sign in
- Download the installer from
playwithxbot.com and run it. xBot installs for your user — no admin password needed.
- Open xBot. The first time, it downloads Greenlight automatically (the Xbox Cloud Gaming client it controls). This takes a minute.
- Sign in with your xBot account (or create one for free). Your plan — Free or Premium — is shown at the top of the window.
Updates
xBot updates itself automatically. When a new version is available, it downloads
and installs on launch — you never have to reinstall by hand.
3. The main window
The top bar holds the global controls:
- Your plan (Free / Premium) and the Upgrade button.
- Start Greenlight — opens the cloud-gaming window.
- + New Script and Import — create or load automation scripts.
- Virtual Controller, WebUI and Alerts — the gamepad pad, remote control, and notifications.
On the left is your list of scripts. Open one and it appears as a
tab with two views: the Macro editor (where you build logic) and the
LOG (what the bot is doing in real time).
4. Start Greenlight
- Click Start Greenlight. The Xbox Cloud Gaming window opens.
- Sign in with your Microsoft / Xbox account inside that window.
- Open the game you want to automate and wait until you're in it.
Why it matters
Greenlight must be open for the bot, the snippet tool, and the
virtual controller to work. xBot also locks its window to 1280×720
so that images you capture work the same on any PC.
5. Your first script
A script is one automation (its own macros, images, and logic).
- Click + New Script and give it a name (e.g.
FH5 - Farm Spins).
- It opens as a tab. The left sidebar has three libraries you'll fill in next:
Actions (recorded macros), Vision Library (images),
and Text Library (OCR regions).
- The big area in the middle is the Logic Editor, where you connect
everything together.
6. Record a macro (Action)
An Action is a recorded sequence of controller inputs — like
"enter the race" or "open the menu and buy".
- In the script, click Record Controller.
- Click Prepare, then on your physical controller press the
start hotkeys (default
START + A) to begin recording.
- Play the sequence you want to automate.
- Press the hotkeys again to stop, then Save it with a name.
Your recording appears in the Actions list. Double-click it to fine-tune
the steps and timings in the editor.
Example
Record an Action called enter_race that opens the event menu and
confirms — you'll reuse it in a loop later.
7. Detect images (Vision)
Computer vision lets the bot react to what's on screen — for example,
"when the finish screen appears, continue". You teach it by capturing a small image
(a "snippet").
- With Greenlight open and showing the target, click Crop Image
in the Vision Library.
- Drag a box around the area to detect (a banner, an icon, a button). Press
ENTER to crop, ESC to cancel.
- Confirm the preview and give the snippet a clear name (e.g.
race_finished).
When you use this image in a Visual Condition node you can tune:
- Confidence — how close the match must be (higher = stricter).
- Any size / Exact size — whether the image may appear scaled.
- Wait for match — pause here until the image appears (see the Logic section).
8. Read text (OCR)
Text Reading lets the bot read numbers or words on screen and decide
based on them — for example, "if the timer says 0, stop".
- Click Define Region in the Text Library.
- Drag a box around the text area and save it as a region (e.g.
spins_left).
A Text Reading node then reads that region live and compares it using one
of four conditions:
- Contains — the text includes a word (e.g. contains
WINNER).
- Equals — the text matches exactly.
- Number > / Number < — compare a number (e.g. number <
1).
9. The Logic Editor (nodes)
This is the heart of xBot. You drag in nodes and connect them to define
what the bot does, step by step. Click Add Node ▾ to add one:
MACRO START
Action
Visual Condition
Text Reading
Run Script
Pause
Stop Macro
- MACRO START — the entry point. Set it to Looping (repeat forever) or Iteration (a fixed number of times).
- Action — plays one of your recorded macros, optionally several times.
- Visual Condition — checks for an image. It has two outputs: If True and If False. (With Wait for match on, it simply waits until the image appears, then continues.)
- Text Reading — reads a region and branches If True / If False based on its condition.
- Run Script — runs another of your scripts as a building block (loop it, iterate it, or use its own setting).
- Pause — waits a number of seconds.
- Stop Macro — ends the automation.
Connect nodes by dragging from one node's output dot to the next node's input.
Conditions branch your flow with their If True / If False outputs.
When you're done, click Save Logic Premium.
Worked example — AFK farming loop
Re-enter a race over and over to farm rewards, fully hands-free:
MACRO START · Looping
↓
Action · "enter_race"
↓
Visual Condition · "race_finished" (Wait for match)
↓ when it appears
Action · "skip_rewards"
↓
Pause · 2s
↺ loops back to "enter_race"
Because MACRO START is set to
Looping and the last node connects back to enter_race, the bot
repeats forever until you stop it.
Branching example
Use a Visual Condition without "Wait for match" to make decisions:
If True → claim a prize; If False → press A and check again.
10. Run the bot & read the Log
- Make sure Greenlight is open and you're in the game.
- In the script tab, press Start (green). The bot takes over the
virtual controller and runs your logic.
- Switch to the LOG tab to watch every step in real time.
- Press Stop (red) at any time to hand control back to you.
Free vs Premium
On the Free plan, sessions are limited to 15 minutes. Premium removes
the limit so loops can run as long as you need.
11. Virtual Controller
Click Virtual Controller to open an on-screen Xbox-style pad — full
ABXY, D-pad, bumpers and triggers (LB/LT, RB/RT),
analog sticks, and View / Menu / Guide. Use it to play or test without a physical
controller plugged in.
12. Remote control (from your phone)
The WebUI lets you watch and control your session from a phone or another
browser on the same network — including live video.
- Click WebUI, choose a port, set an Access PIN, and start the backend.
- On your phone's browser, open the address shown, enter the PIN, and you'll see the
game with an on-screen joystick.
- From there you can use the joystick, start/stop your macros,
and check status — all remotely.
13. Alerts
Click Alerts to get notified (with an optional sound) when something
important happens, so you can step away with confidence:
- Disconnected — the cloud session dropped.
- Frozen — the game appears stuck.
- Finished — your macro completed.
14. Import / Export scripts
Scripts can be saved to a single .xbot file — perfect for backups or sharing
with friends. Premium
- Export — right-click a script in the list → Export…, then
choose where to save the
.xbot file. It bundles everything: the logic,
recorded macros, images, and regions.
- Import — click Import at the top, pick a
.xbot file,
confirm the name, and it appears as a new script ready to run.
15. Free vs Premium
- Free — build and try automations, with sessions capped at 15 minutes.
- Premium — unlimited session time, Save Logic,
Import / Export scripts, early access to new features, and priority support.
Upgrade any time from the Upgrade button in the app or at
playwithxbot.com/upgrade. Cancel whenever you like.
16. Tips & troubleshooting
- "Greenlight is not open" — start Greenlight and get into the game before running the bot or capturing images.
- An image isn't detected — re-crop it more tightly, or lower the Confidence a little. Capture images with the Greenlight window at its locked 1280×720 size.
- The bot stops by itself — on Free, that's the 15-minute limit; the Log will say so. Premium removes it.
- Macro timing is off — open the Action and adjust the delays between steps.
- Keyboard in capture windows — press ENTER to confirm a crop and ESC to cancel.
17. Support
Still stuck? We're happy to help: