rawon.jpg

rawon

Cookies Setup

Fix "Sign in to confirm you're not a bot" on cloud hosting. Recommended: the built-in !login command.

Why do I need this?

If you host Rawon on providers like OVHcloud, AWS, GCP, Azure, or other cloud/VPS hosts, you may see:

"Sign in to confirm you're not a bot"

The platform often blocks requests from data-center IPs. Authenticating with a Google account lets Rawon obtain valid cookies and bypass that restriction.

Recommended: !login command

The easiest way to set up cookies is the built-in !login flow (real browser via Puppeteer):

✅ Opens a real browser for Google login

✅ Exports cookies and saves them automatically

✅ Closes the browser after login — no stray background browser

✅ Persists across restarts (Docker volume or cache/ folder)

Command usage

!login start - Open a browser and start Google login !login status - View current login & cookie status !login logout - Clear the current login session (wipes all cookies and profile data)

Quick start

  1. Run !login start in Discord

  2. Open the DevTools URL the bot sends in your local browser

  3. Complete Google login in the remote browser session

  4. Sign in with a throwaway Google account (not your main account)

  5. When login finishes, the bot saves cookies and closes the browser

  6. Done — subsequent requests use the saved session

If bot checks happen again

Cookies can go stale when the provider rotates them. Then:

  1. Run !login logout to clear old cookies and profile data

  2. Run !login start and sign in again for a fresh session

Prerequisites

  • A secondary / throwaway Google account (do not use your main account)

  • Non-Docker: Chrome or Chromium installed on the host

  • Docker: Chromium is included; map DEVTOOLS_PORT if you connect to !login remotely (see Configuration)

Docker

Cookie and profile data persist in the rawon:/app/cache named volume across container restarts.

The image ships with Chromium, so !login start works without extra setup on the image side.

Environment variables (dev.env)

Optional tuning (see dev.env.example):

# Port for Chrome DevTools remote debugging proxy # Used for the login command to access DevTools from a remote machine/host # Default: 3000 DEVTOOLS_PORT="" # Path to Chrome/Chromium executable (auto-detected if empty) CHROMIUM_PATH=""

For Docker, ensure ports in docker-compose.yaml expose the DevTools port, e.g.:

ports: - "${DEVTOOLS_PORT:-3000}:${DEVTOOLS_PORT:-3000}"

How long do cookies last?

They can become stale over time because providers rotate sessions. They usually stay valid while:

  • You do not log out in a way that invalidates the session

  • You do not change the account password

  • You do not revoke the session in account security settings

  • The provider does not flag suspicious activity

When cookies expire, run !login logout then !login start again.

Troubleshooting

Still seeing "Sign in to confirm you're not a bot"?

  • Use !login status to inspect login and cookie state

  • Run !login logout then !login start to mint a fresh session

Browser will not start?

  • Check !login status for error details

  • On bare metal, install Chrome/Chromium or set CHROMIUM_PATH in dev.env

  • On Docker, Chromium should work out of the box with the official image

Account suspended?

  • Create a new throwaway Google account

  • Run !login logout to wipe the old session

  • Run !login start and sign in with the new account

Alternative: manual cookie file

You may place a Netscape-format cookie file at the path below. The bot will use it if present; !login is still recommended for a simpler workflow.

Path

cache/cookies.txt

Security notes

WARNING

  • Use a throwaway Google account — not your primary account

  • The DevTools URL grants access to the remote browser session — do not share it publicly

  • Cookie files contain sensitive authentication data