📦TheNetsky / Microsoft-Rewards-Script
← 返回首页
Automated Microsoft Rewards script, using TypeScript and Playwright.
⚖️ GPL-3.0#bot#microsoft-rewards#microsoft-rewards-bot#microsoft-rewards-farmer#script📅 创建于 2023-09-25🔄 更新于 2026-10-31
🔗 GitHub TypeScript

📄 仓库 README

在 GitHub 查看 ↗
来自 GitHub 仓库自述文件 · 版权归原作者所有

Microsoft Rewards Script

Validate Version Docker image (GHCR) Node.js License Donate

Microsoft Rewards automation with API and browser modes, saved sessions, multiple accounts, localised searches and an optional Control API.

Features

  • Daily Set, promotions, punchcards and bonus-point claims.
  • Desktop/mobile searches, Explore on Bing, Daily Check-In and Read to Earn.
  • Optional Visual Search and background Edge browsing.
  • Streak progress, API-based streak protection and verified point reporting.
  • Scheduled runs, account selection, saved sessions and Discord/Telegram/ntfy notifications.
  • Control API with live events, persistent history, punchcard progress and activity balance observations.

Activities depend on the account and region. This branch contains v5; earlier versions remain available on v3 and v4.

Documentation

  • Setup and usage — local, Nix and Docker installation, accounts, settings, commands and troubleshooting.
  • Control API — authentication, endpoints, run control, scheduling and dashboard data.

Setup

Requires Node.js 24 or newer.

npm ci
npm run install:browser
npm run build
cp env.example .env
cp config.example.json config.json

On Linux, install Chromium's system libraries with npx patchright install --with-deps chromium. On Windows, copy the example files with File Explorer or PowerShell's Copy-Item.

Set ACCOUNT_1_EMAIL and the relevant sign-in settings in .env, then run:

npm start

Add another numbered account block for each account. Passwords are optional for passwordless accounts. See env.example for account variables and Setup and usage for login options.

Modes and settings

Edit config.json before starting a run.

Setting Purpose
rewardsMode: "browser" Complete web activities through rendered cards and GhostCursor
rewardsMode: "api" Save the sign-in session, close its browser and use HTTP
searchSettings.parallelSearching Overlap desktop and mobile work when enabled
workers Enable or disable individual tasks
taskDelay Delay between activities
searchSettings.searchDelay Delay between searches
searchSettings.useAccountLocale Select queries using the account country
ensureStreakProtection Enable and verify protection over HTTP in both modes
experimental Optional features; disabled by default

See the full settings reference for all options.

Sessions

To sign in manually on a desktop with a visible browser:

npm run manual-login -- user@example.com --platform both
npm run open-session -- --help

Sessions are saved under sessionPath. Keep .env, local configuration, session databases and diagnostics private.

Docker

Create .env from env.example, then review the timezone and schedule in compose.yaml.

docker compose up -d --build
docker compose logs -f

The published v5 image is ghcr.io/thenetsky/microsoft-rewards-script:5. To use it instead of building locally, follow the Docker image instructions.

Docker persists configuration in ./config, sessions in ./sessions and optional error captures in ./diagnostics. It creates config/config.json from defaults when needed. RUN_ON_START controls the first run; CRON_SCHEDULE sets the initial schedule. Control API schedule changes persist in config/schedule.json. See Control API Docker setup to enable the server.

License

GPL-3.0-or-later.

📈 近 7 天 Star 趋势

每日新增 Star(柱)与累计 Star(线)· 数据来自 GitHub

🏆 排名变化趋势

在各榜单中的排名历史(数字越小越靠前)

📋 历史上榜记录

每次快照的详细数据
日期 榜单 排名 周期新增 总 STAR