How zefeng1236/ms-rewards-auto works
MS Rewards Auto is a multi-account Microsoft Rewards task runner with Electron desktop and Docker/Web interfaces. Users create an isolated account, log in through a browser, configure tasks and scheduling, then run them immediately or automatically; task progress and results appear in the GUI, with optional notifications. The graph also preserves the documented vault, fingerprint-browser, achievements, goals, and cluster capabilities. Several backend modules are indexed but unsampled, so their documented subsystems are included while uncertain internal links are omitted.
Main entry points: runner.js Task runner · tasks.js Rewards tasks · ipc.ts Client API · account.js Account manager
Components 23
User interfaces
- App shell
src-renderer/src/App.tsx - UI state
src-renderer/src/hooks/useAppState.tsx - Client API
src-renderer/src/api/ipc.ts - Dashboard and views
src-renderer/src/views
Accounts and security
- Account manager
src/account.js - Browser and login
src/browser.js - Fingerprint browser
src/fingerprint-browser.js - Encrypted vault
src/vault/index.js - Account storage
src/storage-path.js
Task automation
- Task runner
src/runner.js - Rewards tasks
src/tasks.js - Rewards API
src/rewards.js - Scheduling
src/cron.js - Points goals
src/goals.js - Progress history
src/history.js
Runtime services
- Notifications
src/notify.js - Logs
src/logger.js
Web and cluster
- Web server
src/server.js - Web API
src/web-api.js - Cluster service
src/cluster-service.js
Other components
- User
- Microsoft Rewards
- Notification providers
Connections 25
- User → App shell: uses
- App shell → UI state: provides state
src-renderer/src/App.tsx - App shell → Dashboard and views: renders views
src-renderer/src/App.tsx - UI state → Client API: requests data
src-renderer/src/hooks/useAppState.tsx - Dashboard and views → Client API: initiates actions
src-renderer/src/views/AccountDetail.tsx - Client API → Web server: HTTP and SSE
- Client API → Account manager: IPC operations
- Account manager → Browser and login: uses login
src/account.js - Browser and login → Fingerprint browser: selects engine
src/browser.js - Account manager → Account storage: stores account data
src/account.js - Encrypted vault → Account storage: stores encrypted data
src/vault/index.js - Task runner → Account manager: loads accounts
src/runner.js - Task runner → Browser and login: uses browser
src/runner.js - Task runner → Rewards tasks: dispatches tasks
src/runner.js - Rewards tasks → Rewards API: calls rewards API
src/tasks.js - Task runner → Points goals: checks goals
src/runner.js - Task runner → Progress history: records progress
src/runner.js - Task runner → Notifications: sends outcomes
src/runner.js - Rewards tasks → Notifications: sends task notices
src/tasks.js - Task runner → Logs: writes logs
src/runner.js - Scheduling → Task runner: starts scheduled runs
- Rewards tasks → Microsoft Rewards: reports activity
- Notifications → Notification providers: delivers messages
- Web server → Web API: creates API
src/server.js - Web server → Cluster service: starts service
src/server.js