Agent skill
monitor-zyte-ops
Use for Monitor-specific Zyte Scrapy Cloud operations: deploys, ad hoc runs, machine-friendly job control, exported-items-first validation, dashboard-only settings changes, and fetch/proxy diagnosis handoff.
Install this agent skill to your Project
npx add-skill https://github.com/lambdamechanic/skills/tree/main/monitor-zyte-ops
SKILL.md
monitor-zyte-ops
Use this skill for Monitor-specific Zyte Scrapy Cloud work.
Use cases
- Deploying or scheduling Monitor spiders on staging or production
- Inspecting jobs in a machine-friendly way
- Deleting jobs after explicit user approval
- Changing durable spider or project settings in the Zyte dashboard
- Validating whether a crawl really succeeded
- Routing fetch/proxy diagnosis to the existing
fetch-test-spiderworkflow
Start here
- Resolve the target first with
scripts/resolve_monitor_zyte_target.py staging|production. - Choose the surface:
shubfor deploys, ad hoc runs, log tails, quick manual item export, and image operationsscripts/monitor_zyte_jobs.pyfor machine-friendlyrun,list,stop,delete,items,logs, andrequestsplaywright-clifor persistent dashboard-only edits such as Raw Settings and periodic jobs
- Stop immediately if a required dependency is unavailable.
Blocked paths
- If
SHUB_APIKEY,SCRAPINGHUB_API_KEY, andZYTE_API_KEYare all missing, stop before anyshubor API-backed job operation. - If
playwright-cliis unavailable, stop before any dashboard write or read-modify-write flow. - If the
fetch-test-spiderskill is unavailable, stop before improvising a proxy/fetch diagnosis flow.
Surface rules
shubcommands run frommonitor_project/, never the repo root.- A one-off debug run stays temporary. Use
shub schedule -s KEY=VALUEor APIjob_settings; do not persist that change in the dashboard. - Persistent settings and periodic-job edits are dashboard work, not
shubwork. - Scrapy Cloud listing responses are dict-shaped mappings. Use keyed lookups, not object methods.
Operation triage
- Classify the requested action before deciding whether approval is needed.
read-only inspection:- target resolution
- job listing and job-detail lookups
- items, logs, and requests retrieval
shub log,shub items, and other dashboard/API reads that do not change Zyte state
ephemeral job control:- deploys
- ad hoc runs or schedules
- stopping an in-flight job
- other one-off runtime actions that do not persist project or spider configuration
destructive or persistent mutation:- delete operations
- durable spider or project settings edits
- periodic-job edits
- Raw Settings writes
- any other action that deletes data or persists configuration in Zyte
Approval rules
- Read-only inspection never needs approval. Fetching details about existing runs is always read-only.
- For ephemeral job control, do not ask for a second approval when the user already asked for that concrete action. If the target or impact is ambiguous, stop and clarify instead of guessing.
- Before any destructive or persistent mutation, summarize:
- target environment and project id
- object being changed or deleted
- exact mutation
- surface being used
- Wait for explicit user approval in-thread before proceeding.
- Do not treat an ambiguous request as approval for a destructive action or a production write.
Validation rules
- Treat exported items as the primary success artifact.
- Fetch or export items before deciding a crawl succeeded.
- Use logs, stats, and job metadata only as supporting context.
- For fetch/proxy diagnosis, route to
fetch-test-spiderand inspectitems.jsonlforsuccess: trueplus a 2xxstatus_code.
Read only what you need
- Read
references/monitor-targets.mdfor project ids, dashboard URLs, and themonitor_project/rule. - Read
references/shub.mdfor operator CLI workflows. - Read
references/scrapy-cloud-api.mdfor structured API operations and dict-style handling. - Read
references/dashboard-settings.mdfor dashboard-only settings and periodic-job guardrails.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
lambda-workflow
One lifecycle for Lambda repos: choose a bd task, start work, land the PR, and watch GitHub via Dumbwaiter MCP until it merges.
testing-patterns
Testing patterns and standards for this codebase, including async effects, fakes vs mocks, and property-based testing.
dumbwaiter-mcp
Provider-agnostic wait-for-change skill that uses the Dumbwaiter MCP server to wait on PR events (GitHub first) via wait.start/status/cancel/await, with progress notifications and durable state.
rust-guidelines
Pragmatic Rust conventions to keep code readable, testable, and performant for this project.
galahad
how to approach tests, types and coverage
template-skill
Replace with description of the skill and when Claude should use it.
Didn't find tool you were looking for?