Package Exports
- @upmonitor/cli
- @upmonitor/cli/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@upmonitor/cli) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@upmonitor/cli
AI-native website diagnostics for your terminal and CI/CD.
The UpMonitor CLI runs SSL, DNS, HTTP, security-header, and performance audits on any URL, directly from the command line. Pair it with the UpMonitor MCP server to let AI agents (Claude Desktop, Claude Code, Cursor) run the same diagnostics through natural language.
Stable (
1.0.0).check,register,handle-protocol,login, andmonitor add/list/rmare all production-ready.
Install
npm install -g @upmonitor/cliOr run on demand without installing:
npx @upmonitor/cli check https://example.comRequirements
- Node.js ≥ 20
- An UpMonitor API key (get one free)
Setup
Export your API key once:
export UPMONITOR_API_KEY=up_...Or create a .env file in your project:
UPMONITOR_API_KEY=up_...Commands
upmonitor check <url> (alias: audit)
Runs the full diagnostic suite (SSL, DNS, HTTP, security headers, performance) on a URL:
upmonitor check https://example.comOptions:
| Option | Description |
|---|---|
-c, --checks <list> |
Comma-separated checkers (e.g. ssl,dns,httpStatus) |
--checkers <types...> |
Deprecated — space-separated checkers for backward compatibility |
--ci |
CI-friendly output: no colors, no progress messages, machine-readable |
--fail-on <level> |
Exit 1 when any result matches warning or failure |
--format <type> |
Output format: pretty (default), json, csv |
--region <id> |
Run from a specific region (requires authentication — coming in v0.1.0-beta) |
Exit codes:
0— all checks passed (or--fail-onnot set)1— a check matched the--fail-onthreshold2— configuration error or network failure
Examples:
# Standard local check
upmonitor check https://example.com
# CI pipeline gate — fail build on any failure
upmonitor check https://example.com --ci --fail-on failure
# Machine-readable JSON for piping into jq
upmonitor check https://example.com --format json | jq '.results.ssl'
# Subset of checkers
upmonitor check https://example.com --checks ssl,dns,securityHeadersupmonitor register
Registers the upmonitor:// URL scheme on your OS so AI-agent alerts can deep-link into the CLI. Windows registry is fully supported; macOS and Linux print manual-setup instructions.
upmonitor registerupmonitor handle-protocol <uri> (internal)
Handles inbound upmonitor:// deep-links. Invoked by the OS, not typically called directly. Currently supports upmonitor://check?url=<url> and upmonitor://audit?url=<url>.
upmonitor login
Authenticates the CLI via a device-code browser flow. Prints a verification URL and code, opens your default browser, and polls for approval. On success, the token is written to ~/.config/upmonitor/credentials.json (permissions 0600 on Unix) and used automatically by subsequent commands.
upmonitor loginOptions:
| Option | Description |
|---|---|
--no-browser |
Skip auto-opening the browser; print the URL for manual copy/paste. |
Precedence for token resolution on every command:
$UPMONITOR_API_KEYenvironment variable (highest)~/.config/upmonitor/credentials.json(fromupmonitor login)- Error — prompts you to run
loginor set the env var
upmonitor monitor add <url>
Create a continuous monitor. Tier limits (free ≥ 5min interval, up to 3 monitors; PRO ≥ 1min, up to 25; Agency ≥ 1min, up to 100) are enforced server-side.
upmonitor monitor add https://example.com
upmonitor monitor add https://example.com -i 1 -n "Production API" -c ssl,httpStatus,performanceOptions: -n/--name, -i/--interval <minutes>, -c/--checks <list>, -r/--regions <list>.
upmonitor monitor list (alias: ls)
List your monitors as a terminal-friendly table or JSON.
upmonitor monitor list
upmonitor monitor list --format json | jq '.monitors[] | select(.status == "down")'upmonitor monitor rm <id> (alias: delete)
Delete a monitor by ID.
upmonitor monitor rm AbC123XyZ...Full docs
License
Apache-2.0 — see LICENSE. Copyright 2026 UpMonitor LTD.