Skip to main content

Distributable monitoring & security sentinel toolkit — uptime checks plus self-propagating-worm detection, remediation, and prevention.

Project description

Health

Security

StayAwakeBot

StayAwakeBot is a distributable (pip install-able) Python monitoring and security toolkit. Under one stayawake namespace it ships two bots over a shared core:

  • Health sentinel — a URL/uptime availability monitor (HTTP status, latency, TLS, keyword checks) that writes JSON/markdown reports and a status badge.
  • Security sentinel — a supply-chain worm hunter that detects, alerts on, and auto-fixes self-propagating malware (obfuscated loaders, fake fonts, VS Code auto-run tasks, and stealth "evil merges"), opening remediation PRs and gating CI.

Run either bot as a console script locally, or as GitHub Actions workflows that commit reports back to the repository — the same packaged code in both places.

Architecture

StayAwakeBot architecture

Quick start

pip install stayawakebot                                            # from PyPI (released versions)
# or the latest from source:
pip install "stayawakebot @ git+https://github.com/Ndevu12/stayAwakeBot@main"
stayawake-health-check  --config config/urls.yml                    # uptime check
stayawake-security-scan --config config/security.yml --local-only   # worm scan

The distribution is published as stayawakebot (the name stayawake is taken on PyPI by an unrelated project); the import package and stayawake-* commands are unchanged.

Gate any repo's CI (GitHub Action)

Add the security sentinel to any repository in one step — no install, no clone:

# .github/workflows/worm-guard.yml
on: [pull_request, push]
jobs:
  worm-guard:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with: { fetch-depth: 0 }   # full history so evil merges are detectable
      - uses: Ndevu12/stayAwakeBot@v1      # pin to a SHA in production
        with:
          fail-on-findings: 'true'

Pin @<sha> rather than @v1 for tamper-evident runs. See Security baseline.

Run via Docker (no local Python 3.14 needed)

Prefer not to install a 3.14 toolchain? Pull the image and scan a mounted repo:

docker run --rm -v "$PWD:/repo:ro" ghcr.io/ndevu12/stayawakebot \
  stayawake-security-scan --local-only --fail-on-findings

Tags: :latest, :X.Y.Z, :X.Y, and :sha-<commit>. The image runs as a non-root user, is built from the same wheel published to PyPI, and ships SLSA provenance + SBOM attestations.

Documentation

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stayawakebot-0.1.0.tar.gz (49.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stayawakebot-0.1.0-py3-none-any.whl (69.8 kB view details)

Uploaded Python 3

File details

Details for the file stayawakebot-0.1.0.tar.gz.

File metadata

  • Download URL: stayawakebot-0.1.0.tar.gz
  • Upload date:
  • Size: 49.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for stayawakebot-0.1.0.tar.gz
Algorithm Hash digest
SHA256 737e51d99ef7752750b7d19fdefdb3f6a17c53604f6e42aea81333a7cc67c466
MD5 a1165e6e3ab30f2e22306f764e854017
BLAKE2b-256 3c8101a0ec5e387ab8a8cd0366385e588b7c7b828a7473e5b90043c4adbd92f3

See more details on using hashes here.

File details

Details for the file stayawakebot-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: stayawakebot-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 69.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for stayawakebot-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a9456396956eac58ac64c2b8d6be31b0bd3418fea60b7a704f4c8204ec02c188
MD5 d9e94cbca10e2a70827dfdbf4ceab900
BLAKE2b-256 8c4fc3dcf6c6f7296a2cd7d0bc318dde244602244757a3a917a9b28099152a4f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page