A web UI for managing macOS LaunchAgents -- create, edit, start, stop, and reload agents from your browser
Project description
Mac Agents Manager
A web UI for managing macOS LaunchAgents. Create, view, edit, start, stop, and reload user LaunchAgents from your browser.
Install
Option A: pip (recommended)
pip install mac-agents-manager-ai
mam
Then open http://localhost:8081.
Option B: Install as a LaunchAgent (auto-start on login)
cd ~/workspace
git clone https://github.com/pkasinathan/mac-agents-manager.git
cd mac-agents-manager
bash install.sh
This will:
- Create a Python virtual environment in
venv/ - Install the package in editable mode
- Generate and load a user-specific plist at
~/Library/LaunchAgents/user.productivity.mac_agents_manager.plist - Start the web app at http://localhost:8081
Option C: Run from source
git clone https://github.com/pkasinathan/mac-agents-manager.git
cd mac-agents-manager
python3 -m venv venv
source venv/bin/activate
pip install -e .
mam
Project Structure
src/mac_agents_manager/
__init__.py Package version
app.py Flask app and routes
cli.py CLI entry point (mam command)
models.py LaunchAgent parsing, serialization, and UI data
launchctl.py Thin wrapper around launchctl commands
templates/ HTML templates
static/ CSS styles
install.sh-- Creates venv, installs package, installs/loads LaunchAgentstart_mac_agents_manager.sh-- Start script used by the LaunchAgentpyproject.toml-- Package metadata for PyPI
Common Commands
Unload / reload the app agent:
launchctl unload ~/Library/LaunchAgents/user.productivity.mac_agents_manager.plist
launchctl load ~/Library/LaunchAgents/user.productivity.mac_agents_manager.plist
Or use the Makefile:
make stop
make start
make logs
Environment Variables
| Variable | Description |
|---|---|
FLASK_DEBUG |
Set to 1 or true to enable Flask debug mode (default: off) |
MAM_PORT |
Port to listen on (default: 8081) |
MAM_LABEL_PREFIXES |
Comma-separated extra label prefixes to include (e.g. com.myorg.,com.acme.) |
Security
This tool binds to 127.0.0.1 only and is designed for single-user, localhost use. See SECURITY.md for the full security model and vulnerability reporting instructions.
Development
git clone https://github.com/pkasinathan/mac-agents-manager.git
cd mac-agents-manager
python3 -m venv venv
source venv/bin/activate
pip install -e ".[dev]"
make lint
make test
Notes
- Default port is 8081. Override with
MAM_PORTenv var. - If you move the project folder, re-run
install.sh(it rebuilds the venv and refreshes the LaunchAgent paths).
License
Apache-2.0. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mac_agents_manager_ai-1.1.1.tar.gz.
File metadata
- Download URL: mac_agents_manager_ai-1.1.1.tar.gz
- Upload date:
- Size: 31.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
45f34509440340a644fec0904e3700765edbe773031e5300faecdaa0a77c7828
|
|
| MD5 |
e50396eeac9a3c21f6fe3d66beb9fb39
|
|
| BLAKE2b-256 |
cb17e4334e939a43e9940d05078614b990035367ca4cd07371965e0604901af2
|
File details
Details for the file mac_agents_manager_ai-1.1.1-py3-none-any.whl.
File metadata
- Download URL: mac_agents_manager_ai-1.1.1-py3-none-any.whl
- Upload date:
- Size: 33.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f279f64bc884965f46f3f8d7e07ba15de8f1eb33377919f1a3c7ec60f17b2adb
|
|
| MD5 |
2f6793f916a2195e2893aa94e7782e5f
|
|
| BLAKE2b-256 |
d5a233a3338333a8f0e9716790c999ef951622531b8ed8d554e8e8e3d15f6fd8
|