# SystemRage/py-kms

KMS Server Emulator written in Python

Repository: https://github.com/SystemRage/py-kms
Canonical: https://ross.abutalabs.com/products/py-kms
Language: Python
License: Unlicense
License Family: permissive
Topics: kms, windows, emulator, office, activator, python, py-kms, gvlk, volume-license, server, client
Last push: 2023-05-06T16:08:43+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 3367, "days_push": 1215, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2190, forks 695 (observed 2026-08-28T04:06:24.074328+00:00)

## What it is
py-kms is a Python-based KMS (Key Management Service) server emulator that responds to v4, v5, and v6 KMS requests to activate volume-licensed Windows and Microsoft Office products. It can run as a standalone server, via Docker, systemd, or with a built-in GUI, and stores persistent data in SQLite.

## Use cases
- activate windows and office volume license editions on my lan
- self-host a kms server in docker
- emulate a kms activation server for testing
- activate windows 10 and office 2019 with gvlk keys
- run a lightweight kms emulator written in python

## When to choose
- you need to activate volume-licensed Windows or Office clients on an isolated network without a real KMS host
- you want a lightweight, cross-platform KMS emulator deployable via Docker or systemd
- you prefer a Python implementation with an optional GUI and SQLite persistence

## When to avoid
- you need to activate retail or OEM-licensed products, which KMS does not cover
- you require a legally licensed Microsoft volume-activation infrastructure with official support
- you need active development or recent feature updates, as the project is in maintenance

## Facets
- artifact type: service
- maturity: maintenance
- function: networking, security, cli, gui, self-hosted
- domain: security, windows, developer-tools, self-hosted
- platform: python, windows, cross-platform, self-hosted
- tags: kms-emulator, volume-license-activation, windows-activation, office-activation, gvlk, reverse-engineered-protocol, sqlite, docker, linux

## Member repositories
- SystemRage/py-kms (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:24.074328+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:47:37.359793+00:00, confidence not recorded.
  - readme: https://github.com/SystemRage/py-kms (fetched 2026-08-28T04:06:24.074328+00:00, sha a10eb08de859)
- Data as of 2026-08-30T08:39:29.467469+00:00.
