Skip to content

Repository files navigation

πŸ” Chrome Monitor

License: MIT Platform: Windows Python Architecture Audit

A lightweight, single-instance Windows background utility that audits active Google Chrome profiles, installed extensions, and process lifecycles.

Features β€’ Installation β€’ Architecture β€’ Files β€’ License


🌟 Executive Overview

Chrome Monitor is a dedicated Windows system administration and security monitoring utility written in Python. It watches the local Google Chrome user data directory (%LOCALAPPDATA%\Google\Chrome\User Data), tracks which browser profiles are concurrently active, monitors extensions installed or loaded into each profile, and maintains an auditable timeline log.

Engineered for stability, Chrome Monitor utilizes Windows inter-process lock files to strictly prevent duplicate instances, provides silent .vbs background execution, and ships with turnkey startup registration scripts.


πŸš€ Key Features

  • πŸ‘₯ Multi-Profile Tracking: Scans and parses Local State and profile directories (Default, Profile 1, etc.) to detect active user sessions.
  • 🧩 Extension Inventory & Change Detection: Generates structured snapshots (extension_snapshot.json) of all installed extensions, IDs, version numbers, and permissions, flagging unexpected additions.
  • πŸ”’ Single-Instance Guarantee: Implements robust Windows file-locking primitives so only one daemon process runs at any given time.
  • πŸ”• Silent Background Operation: Lauched via start_monitor.vbs without opening an intrusive command prompt console.
  • πŸ“ Comprehensive Automation Logging: Maintains timestamped records in @AutomationLog.txt tracking launch events, profile switches, and shutdown hooks.
  • ⚑ Startup Automation: Turnkey .bat scripts to install or remove the monitor from the Windows user startup registry or folder.

πŸ—οΈ Architecture

flowchart LR
    A[Windows Startup / User Trigger] --> B[start_monitor.vbs]
    B --> C[chrome_monitor.py Daemon]
    C -->|Single-Instance Check| D{Lock File Active?}
    D -- Yes --> E[Exit Silently]
    D -- No --> F[Acquire Lock]
    F --> G[Inspect Chrome User Data]
    G --> H[(active_profiles.json)]
    G --> I[(extension_snapshot.json)]
    G --> J[Append to @AutomationLog.txt]
Loading

πŸ“ Repository Structure

ChromeMonitor/
β”œβ”€β”€ chrome_monitor.py           # Core monitoring daemon & profile inspection engine
β”œβ”€β”€ active_profiles.json        # Live serialized state of currently active profiles
β”œβ”€β”€ extension_snapshot.json     # Comprehensive catalog of installed extensions & versions
β”œβ”€β”€ @AutomationLog.txt          # Continuous system audit log
β”œβ”€β”€ start_monitor.vbs           # Silent VBScript background launcher
β”œβ”€β”€ install_startup.bat         # Turnkey batch script to register Windows startup
β”œβ”€β”€ stop_monitor.bat            # Graceful process terminator script
β”œβ”€β”€ .gitignore                  # Python & Windows runtime exclusions
└── LICENSE                     # Open-source MIT License

⚑ Installation & Service Setup

1. Manual Launch

# Run in terminal
python chrome_monitor.py

# Or launch silently in background
start_monitor.vbs

2. Auto-Start with Windows

  1. Double-click install_startup.bat to place a launcher shortcut in your Windows Startup directory (shell:startup).
  2. Chrome Monitor will now quietly initialize every time you log into Windows.

3. Stop Monitor

Double-click stop_monitor.bat to release the lock and terminate the running monitor process.


πŸ“œ License

This project is open-source and released under the MIT License.
Copyright (c) 2024-2026 Kamran Ashraf.

About

πŸ” Chrome Monitor β€” Windows background utility monitoring Chrome profiles, active extensions & memory states

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages