Skip to main content

xbox_monitor

GitHub Release PyPI Version GitHub Stars Python Versions License OpenSSF Scorecard Last Commit Maintenance

Powerful tool for real-time monitoring of Xbox Live players' activities.

xbox_monitor_screenshot

🚀 Quick Install & Run

New to Python or unsure what is installed? Follow the Python install walkthrough first.

Install from PyPI:

pip install xbox_monitor

Run the setup wizard:

xbox_monitor --setup

The wizard asks for the target, the Microsoft Entra application credentials and optional notifications. Review the settings before saving them. See Setup & First Run for the application credentials, the first authorization and the required privacy settings.

For the manual single-file method, dependencies and upgrade commands, see Installation.

Features

🔍 Activity Tracking

  • Gaming activity: Track status, game starts, finishes and changes.
  • Appear Offline: Detect gaming activity from title history when presence is hidden.
  • Session statistics: Measure state and game durations, preserving statistics through short offline interruptions.

📊 Profile Insights

  • Profile details: View XUID, status, platform, account tier, gamerscore and friends.
  • Games and achievements: See recent games, playtime and earned achievements.

🔔 Notifications and History

  • Event alerts: Configure email, Discord and ntfy notifications independently.
  • CSV history: Save reported activity with timestamps.
  • Saved status: Retain monitoring state across restarts.

⚙️ Setup and Configuration

  • Guided setup: Configure credentials and complete OAuth2 authorization with --setup.
  • Preflight checks: Check readiness with --doctor without writing files.
  • Flexible settings: Use config files, dotenv files, environment variables and command-line options.
  • Terminal and runtime controls: Customize colours and adjust the running monitor through supported signals.

Common Commands

Use Quick Install & Run above for first-time setup. The table uses PyPI commands. For the manual script equivalents, see Run Individual Commands.

Replace the target placeholders with an Xbox gamertag, quoted when it contains spaces. Monitoring requires the Microsoft Entra application credentials described in the setup guide.

I want to... Run this
Configure the target, credentials and alerts xbox_monitor --setup
Start monitoring with existing authentication xbox_monitor "<xbox_gamertag>"
Check authentication, connectivity and one target xbox_monitor --doctor "<xbox_gamertag>"
Enter or replace securely the Microsoft Entra application credentials xbox_monitor --set-ms-app-credentials
Configure and test webhook alerts Use the setup wizard or follow Webhook Settings
Save an SMTP password for email alerts xbox_monitor --set-smtp-password
Send a test email xbox_monitor --send-test-email
Save a new webhook URL xbox_monitor --set-webhook-url
Send a test webhook xbox_monitor --send-test-webhook
Show profile details once xbox_monitor "<xbox_gamertag>" -i
Also show the friends list xbox_monitor "<xbox_gamertag>" -i -f
Show recent achievements xbox_monitor "<xbox_gamertag>" -i -r -n 10
Write every change to a CSV file xbox_monitor "<xbox_gamertag>" -b changes.csv
Use a specific configuration and secrets file xbox_monitor --config-file xbox_monitor.conf --env-file .env "<xbox_gamertag>"
List every supported command-line flag xbox_monitor --help

Complete First Authorization before relying on Doctor. Doctor checks saved tokens and does not create them.

The monitored account must expose the activity described in User Privacy Settings.

Running the tool with no arguments offers the wizard if you have not saved an account. If an account is already saved, it starts monitoring that account.

The tool runs until interrupted (Ctrl+C). Use tmux or screen for persistence and run multiple copies to monitor several accounts.

For the application credentials, the first authorization, saved accounts and notification setup, see the full Setup & First Run guide.

For time zone, TLS verification, email and webhook setup, see Configuration. For notification choices, user information commands and output files, see Usage.

If a run fails, start with Doctor Preflight.

Documentation

Full documentation is available at misiektoja.github.io/xbox_monitor:

Page What it covers
Installation Python walkthrough, PyPI or manual installation, upgrades
Setup & First Run Setup wizard, Microsoft Entra application credentials, the first authorization, privacy settings
Configuration Config file, time zone, SMTP, webhooks, TLS verification, storing secrets, check intervals
Usage Monitoring mode, user information mode, notifications, CSV export, signals, terminal output
Troubleshooting --doctor preflight checks, what to do when something fails, --verbose and --debug output
Testing Running the offline suite, the linter and the docs build
About Change log, contributing, security, license, support

Change Log

See RELEASE_NOTES.md.

Contributing

Bug reports, documentation fixes and code contributions are welcome. See CONTRIBUTING.md for the development setup, the checks CI enforces and what a change needs before it is merged. Participation is covered by the Code of Conduct.

Security

Report a suspected vulnerability privately through GitHub security advisories, never as a public issue. SECURITY.md covers the reporting process, the supported versions and the security posture of stored credentials and configuration loading.

Maintainers

License

Licensed under GPLv3. See LICENSE. Dependency licenses are listed in THIRD_PARTY_NOTICES.md.

Support

Questions, bug reports and vulnerability reports each have a place, listed in SUPPORT.md.

If the project is useful to you, you can support its development through GitHub Sponsors or Buy Me a Coffee.

Metadata

Release files for xbox-monitor 2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xbox-monitor 2.1
File Size Uploaded
xbox_monitor-2.1.tar.gz 290.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for xbox-monitor 2.1
File Interpreter ABI Platform
xbox_monitor-2.1-py3-none-any.whl Python 3 none any Details

Total release size: 421.3 kB

Release files / xbox_monitor-2.1.tar.gz

Download URL xbox_monitor-2.1.tar.gz
Size 290.2 kB
Tags Source
SHA-256 checksum
How to use checksums
4a70393fe43cebff984c6f757335cf2f4927c3500be12d96996b2cc7ec2ce3a5
BLAKE2b-256 checksum
How to use checksums
dd4fdd71f4e20a881fbc8c63a078072c065fd90c9467c60602ff49f04ca9ede4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release files / xbox_monitor-2.1-py3-none-any.whl

Download URL xbox_monitor-2.1-py3-none-any.whl
Size 131.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d824e4cb552ce1c3bdec3d1c63eabe213d857006063dc6bc8ed3f4b1b058effc
BLAKE2b-256 checksum
How to use checksums
1cf8aee8c97fac87d7e3d42d58b1f21d120788081e0bcbe8b09046d7ca2d5c78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.1 This release

2 release files

2.0

2 release files

1.9.3

2 release files

1.9.2

2 release files

1.9.1

2 release files

1.9

2 release files

1.8

2 release files

1.7

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page