Enter the root directory of the repository and create a wordlist named `nouns.txt` which will contain seed words for the LLM to complete 20 searches. The wordlist should be separated by newline
```sh
cd rewards-farmer
cp /path/to/my_amazing_wordlist.txt nouns.txt
```
You should also have an Ollama account created (for the LLM), the `ollama` tool installed, and you should have signed in to the Ollama CLI via the command line using `ollama signin`. This project will use a minimal amount of Ollama cloud usage using `gemma4:cloud`. If you wish to use a different model, please change the `model` parameter in the `get_ollama_response` function in `src/llm_utils.py`.
You must also provide an image for the script to upload to complete the visual search task. Currently, this image is named `keypress_times.png` and is located in the root directory of the project (yes, I used a random image from my keyboard analysis to do this). You may provide an image of your own, just ensure that the absolute path of the image is placed in the `VISUAL_SEARCH_IMAGE_PATH` constant at the top of `rewards_tasks.py`.
Activate the virtual environment & install dependencies (you may have to use `python -m poetry` instead of `poetry`).
You must have Python 3.14+ and Poetry installed.
Windows (PowerShell)
```sh
poetry install
iex (poetry env activate)
```
*nix (Bash)
```sh
poetry install
eval$(poetry env activate)
```
You must also have a [webdriver for Microsoft Edge](https://learn.microsoft.com/en-us/microsoft-edge/webdriver/?tabs=c-sharp) installed. If you already have the Edge Browser installed, you probably have this component as well.
Change the profile directory in `src/constants.py` to `Default`. If this signs you in to a global profile that you do not want to use for automation, then you can create a new profile from within the webdriver instance manually and then change the `PROFILE_NAME` constant back to `Profile 1` (or the equivalent number).
Run main.py (`python src/main.py`, it must be run from the root directory so the relative paths work out), wait for the page to launch, and then CTRL-C to quit the application immediately. Sign in to the created profile with your Microsoft account on both Bing and `rewards.bing.com`.
Close all webdriver browser instances. Run `main.py` again; the automation should start working.
Please open up a GitHub issue if you run into any difficulties.