npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@zoneploy/server-agent

v0.3.35

Published

The Zoneploy Server Agent is the runtime component installed on each managed VPS. It exposes a private HTTP API used by Platform to:

Readme

Zoneploy Server Agent

The Zoneploy Server Agent is the runtime component installed on each managed VPS. It exposes a private HTTP API used by Platform to:

  • deploy and control containers
  • deploy and control Docker Compose stacks
  • stream metrics and logs
  • expose server-level add-on operations
  • run server preflight checks

Install model

The base agent install is responsible for:

  • Docker availability
  • the zoneploy Docker network
  • Traefik for Zoneploy-managed routing
  • the systemd service for the agent

Infrastructure add-ons are validated separately through server capabilities and add-on requirements. For example, custom-domains-edge can only be installed when the target server meets its own runtime requirements.

Commands

Status

Print a compact status summary for the local agent runtime, including add-on states:

zoneploy-agent-status

Print the same status report as JSON:

zoneploy-agent-status --json

Disable ANSI colors in the human-readable output:

zoneploy-agent-status --no-color

The status report includes:

  • detected zoneploy-agent* services and their active state
  • safe environment values such as SERVER_ID, PLATFORM_URL, AGENT_PORT, and HTTPS_ENABLED
  • Docker installed / daemon running status
  • Traefik status
  • registered server-level add-ons and their current state
  • direct journalctl commands for the detected services

Debug snapshot

Print a high-signal report of the local Zoneploy runtime:

zoneploy-agent-debug

Print the same report as JSON:

zoneploy-agent-debug --json

Filter stack output by stack id, compose project, or service name:

zoneploy-agent-debug --stack eefe305e

The debug snapshot includes:

  • detected Zoneploy agent services
  • safe environment values such as SERVER_ID, PLATFORM_URL, AGENT_PORT, and HTTPS_ENABLED
  • Docker and Docker Compose versions
  • Traefik status, ports, probe target, and dynamic files
  • Zoneploy-managed standalone containers
  • Zoneploy-managed stacks
  • local host probes against Traefik
  • routing warnings such as missing labels or missing override application

Server audit

Run a local audit of the installed agent runtime and host security posture:

zoneploy-agent-audit

Print the same audit report as JSON:

zoneploy-agent-audit --json

Disable ANSI colors in the human-readable output:

zoneploy-agent-audit --no-color

The audit report includes:

  • host OS, package manager, root context, and systemd readiness
  • detected zoneploy-agent* services and required environment variables
  • Docker daemon, Compose v2, Docker socket, and zoneploy network checks
  • Docker Snap detection, which is unsupported for managed installs
  • Traefik container, static config, dynamic config directory, and stale route checks
  • SSH, password authentication, root login, firewall, and fail2ban checks
  • registered server-level add-ons and their health status

Server preflight

Run the same server preflight used by Platform before provisioning:

zoneploy-agent-preflight

Print the preflight report as JSON:

zoneploy-agent-preflight --json

The preflight report includes:

  • platform and distro detection
  • package manager detection
  • firewall backend detection
  • elevated access detection (root, sudo, or none)
  • Docker installed and Docker running checks
  • Docker Snap detection
  • capability summary
  • occupied ports and listeners
  • structured conflicts with severity and codes

Cross-distro smoke coverage

The repository includes a reusable smoke runner for the shell-based preflight:

bash infra/agent/smoke-preflight.sh

GitHub Actions also runs this smoke test in a distro matrix for:

  • Ubuntu 24.04
  • Ubuntu 22.04
  • Ubuntu 20.04
  • Ubuntu 18.04 (legacy best-effort)
  • Debian 12
  • Debian 11
  • Debian 10 (legacy best-effort)
  • Fedora 40 (legacy best-effort)
  • Rocky Linux 9
  • CentOS Stream 9
  • CentOS Stream 8 (legacy best-effort)

This matrix validates shell compatibility, package manager detection, JSON output shape, and occupied-port conflict reporting. It does not replace full VM coverage for systemd, service installation, or firewall integration.

Logs

Show the last 100 journal lines for the production service:

journalctl -u zoneploy-agent -n 100 --no-pager

Follow the service logs live:

journalctl -u zoneploy-agent -f

If the server was provisioned with a non-production environment name, the service name becomes:

zoneploy-agent-<environment>

Examples:

journalctl -u zoneploy-agent-development -n 100 --no-pager
journalctl -u zoneploy-agent-development -f

systemd

Check service status:

systemctl status zoneploy-agent

Restart the agent:

systemctl restart zoneploy-agent

API notes

The agent HTTP API is private and authenticated with the server-specific agent token. Platform talks to the agent over http://<server-ip>:<agent-port>/agent/v1/....

Public troubleshooting should prefer:

  • zoneploy-agent-status
  • zoneploy-agent-status --json
  • zoneploy-agent-audit --json
  • zoneploy-agent-preflight --json
  • zoneploy-agent-debug --json
  • journalctl -u zoneploy-agent -n 100 --no-pager

These outputs are intentionally structured so they can be pasted into support or debugging sessions with minimal extra context.