Parallel Monitor
Continuously track the web for changes. A monitor is a recurring research task that runs on a cadence (hourly / daily / weekly / every two weeks) and emits an event each cycle. Optionally deliver events to a webhook.
When to Use
Trigger this skill when the user asks for:
- "monitor [thing]", "track changes to [thing]", "watch [page/topic]"
- "alert me when [X] changes / files / launches / posts"
- "keep an eye on [pricing page / competitor / SEC filings]"
- Recurring research that should re-run automatically without re-prompting
Use Search for one-off lookups; use Monitor when the user wants ongoing observation.
Quick Start
parallel-cli monitor create "Track price changes for iPhone 16 Pro" --json
CLI Reference
Basic Usage
parallel-cli monitor create "<objective>" [options]
parallel-cli monitor list --json
parallel-cli monitor get mon_xxx --json
parallel-cli monitor update mon_xxx [options] --json
parallel-cli monitor delete mon_xxx
parallel-cli monitor events mon_xxx --json
parallel-cli monitor simulate mon_xxx --json
Common Flags (create / update)
| Flag | Description |
|---|---|
-c, --cadence | hourly, daily (default), weekly, every_two_weeks |
--webhook <url> | Webhook URL for event delivery (required for simulate) |
--output-schema <json> | JSON schema for structured event output |
--json | Output as JSON |
Examples
Create a basic monitor (daily cadence):
parallel-cli monitor create "Track new SEC filings from Tesla" --json
Hourly monitor with webhook delivery:
parallel-cli monitor create "New AI funding announcements" \
--cadence hourly \
--webhook https://example.com/hooks/funding \
--json
Structured-output monitor:
parallel-cli monitor create "Track iPhone 16 Pro pricing on apple.com" \
--output-schema '{"properties":{"price_usd":{"type":"number"},"in_stock":{"type":"boolean"}}}' \
--json
List existing monitors (default 10):
parallel-cli monitor list --json
Inspect events from a monitor:
parallel-cli monitor events mon_xxx --json
Test webhook delivery without waiting for a real cycle:
parallel-cli monitor simulate mon_xxx --json
(simulate requires a --webhook was set on the monitor; otherwise it errors.)
Update cadence on an existing monitor:
parallel-cli monitor update mon_xxx --cadence weekly --json
Delete a monitor:
parallel-cli monitor delete mon_xxx
Best-Practice Prompting
Objective
Write 1-3 sentences describing:
- What signal the monitor should look for (e.g., "price changes", "new filings", "site outage")
- What "change" means (numeric threshold, new entity appearing, status flip)
- Source preference if relevant (e.g., "from sec.gov", "on the official pricing page")
Cadence
Pick the slowest cadence that still catches the signal in time:
hourly— breaking news, pricing fluctuations, status pagesdaily(default) — most ongoing trackingweekly/every_two_weeks— slow-moving topics, regulatory filings, executive changes
Output Schema (optional)
Provide a JSON schema when you want structured per-event output (e.g., {price_usd, in_stock}). The Monitor API will populate that schema each cycle, making downstream automation easier.
Response Format
monitor create and monitor list return JSON with fields like:
monitor_id—mon_xxxobjective— the natural-language descriptioncadence— current schedulewebhook— delivery URL (if set)created_at/updated_at— timestampslast_event_at— most recent event timestamp (if any)
monitor events returns an array of {event_id, observed_at, output} objects.
Output Handling
When relaying monitor results to the user:
- Always echo the
monitor_idso the user can manage the monitor later - Default
monitor listto-n 10to avoid megabyte-scale dumps in long-lived workspaces - For
eventsoutput, summarize the trend across cycles, not just the latest event
Running Out of Context?
For long-running monitor management sessions, save state and use sessions_spawn:
parallel-cli monitor list --json -o /tmp/monitors.json
Then spawn a sub-agent:
{
"tool": "sessions_spawn",
"task": "Read /tmp/monitors.json and produce a summary of active monitors grouped by cadence.",
"label": "monitor-summary"
}
Error Handling
| Exit Code | Meaning |
|---|---|
| 0 | Success |
| 1 | Unexpected error (network, parse) |
| 2 | Invalid arguments |
| 3 | API error (non-2xx) |
Prerequisites
Requires parallel-cli (installed and authenticated). If parallel-cli --version fails, or if a later command fails with an authentication error, tell the user to see https://docs.parallel.ai/integrations/cli and stop.