
Security News
AGENTS.md Gains Traction as an Open Format for AI Coding Agents
AGENTS.md is a fast-growing open format giving AI coding agents a shared, predictable way to understand project setup, style, and workflows.
This is a Python tool/library developed for macOS 13.5, Ubuntu 22.04, and Windows 10/11, primarily providing operations for wireless interfaces. It includes functionalities such as listing available wireless interfaces, scanning for WiFi signals using a specified wireless interface, connecting a chosen wireless interface to a specific WiFi access point, retrieving information about the connected WiFi access points for the specified wireless interface, and disconnecting the specified wireless interface.
pip install pywifi comtypes
pip install "pyobjc-core>=9.2" "pyobjc-framework-Cocoa>=9.2" "pyobjc-framework-CoreWLAN>=9.2"
Requires nmcli
to be installed:
sudo apt-get install network-manager
% py-wifi-helper --help
usage: py-wifi-helper [-h] [--action {device,scan,connect,disconnect}] [--device DEVICE] [--ssid SSID] [--password PASSWORD] [--scanner-path SCANNER_PATH]
options:
-h, --help show this help message and exit
--action {device,scan,connect,disconnect}
command action
--device DEVICE interface
--ssid SSID ssid
--password PASSWORD password
--scanner-path SCANNER_PATH
Path to WiFiScanner.app (macOS only)
> py-wifi-helper
{
"version": "1.0.0",
"device": {
"default": "Intel(R) Wi-Fi 6 AX201 160MHz",
"list": [
"Intel(R) Wi-Fi 6 AX201 160MHz"
],
"error": null,
"select": "Intel(R) Wi-Fi 6 AX201 160MHz"
},
"connection": {
"default": {
"ssid": "MyWiFi",
"log": null
},
"Intel(R) Wi-Fi 6 AX201 160MHz": {
"ssid": "MyWiFi",
"log": null
}
},
"action": {
"name": "device",
"status": true,
"error": null,
"log": null
}
}
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.3 LTS
Release: 22.04
Codename: jammy
$ sudo py-wifi-helper
{
"version": "1.0.0",
"device": {
"default": "wlxd1234567890",
"list": [
"wlxd1234567890"
],
"error": null,
"select": "wlxd1234567890"
},
"connection": {
"default": {
"ssid": null,
"log": null
},
"wlxd1234567890": {
"ssid": null,
"log": null
}
},
"action": {
"name": "device",
"status": true,
"error": null,
"log": null
}
}
Starting from macOS 15+, scanning WiFi networks requires Location Services permission. You need to set up WiFiScanner.app first:
# Default setup (creates WiFiScanner.app in current directory)
py-wifi-helper-macos-setup
# Or specify a custom location
py-wifi-helper-macos-setup --target-path ~/Applications/WiFiScanner.app
After setup, you'll need to:
% sw_vers
ProductName: macOS
ProductVersion: 13.5
BuildVersion: 22G74
% py-wifi-helper
{
"version": "1.0.0",
"device": {
"default": "en0",
"list": [
"en0"
],
"error": null,
"select": "en0"
},
"connection": {
"default": {
"ssid": "MyHomeWIFIAP",
"log": null
},
"en0": {
"ssid": "MyHomeWIFIAP",
"log": null
}
},
"action": {
"name": "device",
"status": true,
"error": null,
"log": null
}
}
For scanning operations, you can either use the default WiFiScanner.app location or specify a custom path:
# Use default WiFiScanner.app location
py-wifi-helper --action scan
# Use custom WiFiScanner.app location
py-wifi-helper --action scan --scanner-path ~/Applications/WiFiScanner.app
py-wifi-helper --action scan
py-wifi-helper --action connect --ssid "MyWiFi" --password "12345678"
py-wifi-helper --action disconnect
py-wifi-helper --action scan --device "wlan0"
py-wifi-helper-macos-setup
)FAQs
A cross-platform WiFi management tool for Windows, macOS, and Ubuntu
We found that py-wifi-helper demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
AGENTS.md is a fast-growing open format giving AI coding agents a shared, predictable way to understand project setup, style, and workflows.
Security News
/Research
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.