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
Run !login start in Discord
Open the DevTools URL the bot sends in your local browser
Complete Google login in the remote browser session
Sign in with a throwaway Google account (not your main account)
When login finishes, the bot saves cookies and closes the browser
Done — subsequent requests use the saved session
If bot checks happen again
Cookies can go stale when the provider rotates them. Then:
Run !login logout to clear old cookies and profile data
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.txtSecurity 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