npm-proxy
SKILL.md
NPM Proxy Skill
Manage Nginx Proxy Manager (NPM) via its REST API.
Configuration
Set the following environment variables:
NPM_URL: The URL of your NPM instance (e.g.,https://npm.example.com)NPM_EMAIL: Your NPM admin emailNPM_PASSWORD: Your NPM admin password
Usage
# List all proxy hosts
python scripts/npm_client.py hosts
# Get details for a specific host
python scripts/npm_client.py host <host_id>
# Enable/Disable a host
python scripts/npm_client.py enable <host_id>
python scripts/npm_client.py disable <host_id>
# Delete a host
python scripts/npm_client.py delete <host_id>
# List certificates
python scripts/npm_client.py certs
Workflows
Adding a new Proxy Host
To add a new host, use curl directly (the script is currently minimal).
Example payload for POST /api/nginx/proxy-hosts:
{
"domain_names": ["sub.example.com"],
"forward_scheme": "http",
"forward_host": "192.168.1.10",
"forward_port": 8080,
"access_list_id": 0,
"certificate_id": 0,
"ssl_forced": false,
"meta": {
"letsencrypt_email": "",
"letsencrypt_agree": false,
"dns_challenge": false
},
"advanced_config": "",
"locations": [],
"block_exploits": true,
"caching_enabled": false,
"allow_websocket_upgrade": true,
"http2_support": true,
"hsts_enabled": false,
"hsts_subdomains": false
}
Enabling SSL (Let's Encrypt)
- List certs with
certsto see if one exists. - Update the host with
certificate_idandssl_forced: true.
Weekly Installs
3
Repository
clawdbot/skillsInstalled on
windsurf2
codex2
trae1
opencode1
cursor1
claude-code1