Skip to main content

A CLI and Python library to safely orchestrate network switches on macOS by pausing active tasks, auditing connectivity, and verifying stable reconnects.

Project description

wifipause-llm ⚡

wifipause-llm is a lightweight macOS tool and library designed to audit running processes for potential network dependency and safely orchestrate network cutovers (switching WiFi SSIDs, migrating networks) without interrupting or corrupting active local server states or agent executions.


Features

  • 🕵️ Active Task Auditing: Scans active macOS processes to identify running compiler tasks, package downloads (npm, pip, git, cargo, docker), and HTTP clients (curl, wget) that may break if the network cutover begins.
  • 📶 WiFi SSID Inspection: Direct hook into the macOS Apple80211/networksetup API to safely check your currently associated wireless SSID and Wi-Fi interface.
  • Connectivity Testing: High-efficiency connection-probing utilizing basic TCP sockets to verify active gateway routing without heavy HTTP overhead.
  • 🔄 Monitored Cutover Loop: A non-blocking generator and CLI live panel spinner that monitors state transition: Connected ➔ Disconnected ➔ Reconnecting ➔ Target Network Verified.

Installation

Install directly using pip or your favorite package manager:

pip install wifipause-llm

Or run directly using uv (recommended):

uv run wifipause check
uv run wifipause wait --target "YourNewSSID"

CLI Usage

1. Check Network and Audit Tasks

Analyze active connections and identify potentially network-sensitive tasks running in the background:

wifipause check

2. Wait for Network Cutover

Instruct the runner to pause and block execution, waiting for you to complete your WiFi switch:

wifipause wait

To block specifically until you join a specific SSID network:

wifipause wait --target "OfficeWiFi" --timeout 180

Library Usage (Python API)

You can also integrate wifipause directly into your custom automation scripts:

from wifipause.core import get_wifi_ssid, ping_host, audit_network_processes

# Check SSID and internet
ssid = get_wifi_ssid()
online = ping_host()
print(f"Connected to {ssid}: Online={online}")

# Audit network tasks
sensitive_procs = audit_network_processes()
for proc in sensitive_procs:
    print(f"PID {proc['pid']} ({proc['name']}) matches signature: {proc['matched']}")

License

MIT License. Developed by Vector.

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

wifipause_llm-0.1.0.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

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

wifipause_llm-0.1.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for wifipause_llm-0.1.0.tar.gz
Algorithm Hash digest
SHA256 cd9b10a3bc0e09eff8095ad2200df1608b7303f1753d4181f1993f722eacdc11
MD5 981b4a0a206460710dbbf04a88d4ad1f
BLAKE2b-256 ace582986ffb8830d3348422c2dc39f0be76e8bc1cb21862401bde4914c8c7a1

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for wifipause_llm-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ab791cf541efacf175d6ad02bf47f4a81b6d3b62f3c682757351bcaa98f84db
MD5 9bd1c0a4194ac71aaae26ec0b1031d1e
BLAKE2b-256 217ebd8e28483df38ec23f341f503d723ca8570b14040d4d097f9c44bdb18af1

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