agentsclimarketplace

Apify prod checklist

Skill jeremylongshore/claude-code-plugins-plus-skills/plugins/saas-packs/apify-pack/skills/apify-prod-checklist

425 plugins, 2,810 skills, 200 agents for Claude Code. Open-source marketplace at tonsofskills.com with the ccpi CLI package manager.

Install
npx -y skills add jeremylongshore/claude-code-plugins-plus-skills --skill apify-prod-checklist

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Production readiness checklist for Apify Actor deployments. Use when deploying an Actor to production, preparing for launch, or validating Actor configuration, scheduling, monitoring, and rollback before going live. Trigger with "apify production", "deploy actor to prod", "apify go-live", "apify launch checklist", "actor production ready".

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.3 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it

Apify Production Checklist

Overview

Complete checklist for deploying Actors to the Apify platform and integrating them into production applications. Covers Actor configuration, scheduling, monitoring, alerting, and rollback. Work top to bottom: clear the pre-deployment gates, then run the six deploy steps, then wire the alert conditions.

Prerequisites

  • Actor tested locally with apify run
  • apify login configured with production token
  • Familiarity with apify-core-workflow-a and apify-deploy-integration

Pre-Deployment Checklist

Actor Configuration

  • .actor/actor.json has correct name, title, description
  • INPUT_SCHEMA.json validates all required inputs
  • Dockerfile uses pinned base image version (apify/actor-node:20, not latest)
  • package-lock.json committed (deterministic installs)
  • Memory set appropriately (start at 1024MB, tune after profiling)
  • Timeout set with buffer (2x expected runtime)

Code Quality

  • Actor.main() wraps entry point (handles init/exit/errors)
  • failedRequestHandler logs failures without crashing Actor
  • Input validation at Actor start (if (!input?.startUrls) throw ...)
  • No hardcoded URLs, credentials, or magic numbers
  • Proxy configured for target sites that block datacenter IPs
  • maxRequestsPerCrawl set to prevent runaway costs

Data Output

  • Dataset schema documented (consistent field names)
  • SUMMARY key-value store record saved with run stats
  • Large payloads chunked (9MB dataset push limit)
  • PII sanitized before storage

Instructions

Read the Actor's .actor/actor.json, INPUT_SCHEMA.json, and Dockerfile first to confirm the pre-deployment gates above, then run the six deploy steps. Each step's full command and code block lives in references/implementation.md; the skeleton is below.

  1. Deploy Actorapify push, then apify builds ls to confirm the build, then apify actors call with a small production-like input to smoke-test on-platform.
  2. Configure Scheduling — create a cron schedule with client.schedules().create({...}) (or Apify Console: Actors > Your Actor > Schedules). Set cronExpression, runInput, and runOptions (memory/timeout).
  3. Set Up Webhooksclient.webhooks().create({...}) on ACTOR.RUN.SUCCEEDED/FAILED/TIMED_OUT with a payloadTemplate posting runId, status, and datasetId to your server.
  4. Monitor Runs — a checkActorHealth(actorId, lookbackHours) helper lists recent runs and reports success rate, failures, timeouts, and total cost.
  5. Implement Rollbackapify builds ls, then repoint the Actor at a prior build via the POST /v2/acts/ACTOR_ID?build=N API, or redeploy from a git tag.
  6. Cost GuardrunWithCostGuard(actorId, input, maxCostUsd) polls usageTotalUsd every 30s and aborts the run if it exceeds budget.

The first deploy step in full:

# Build and push to Apify platform
apify push

# Verify the build succeeded
apify builds ls

Output

Working through this skill produces a production-ready Actor with:

  • A pushed, verified build (apify builds ls shows a SUCCEEDED build).
  • A live cron schedule and a completion webhook firing on success/failure/timeout.
  • A repeatable health check printing success rate, failure/timeout counts, and 24h cost.
  • A tested rollback path (build repoint or git-tag redeploy).
  • A cost guard that aborts runs exceeding budget.

Health-check output looks like:

Actor: username/product-scraper
Last 24h: 3 runs, 66.7% success
Failed: 1, Timed out: 0
Total cost: $0.4213

Production Alert Conditions

AlertConditionSeverity
Run failedstatus === 'FAILED'P1
Run timed outstatus === 'TIMED-OUT'P2
Low yieldDataset items < expected thresholdP2
High costusageTotalUsd > budgetP2
Consecutive failures3+ failures in a rowP1
No runs in windowSchedule didn't triggerP1

Error Handling

IssueCauseSolution
Build fails on platformLocal deps differCommit package-lock.json
Schedule not firingCron syntax errorValidate at crontab.guru
Webhook not receivedURL not reachableUse ngrok for testing; check HTTPS
Memory exceededWorkload too largeIncrease memory or reduce concurrency
Unexpected cost spikeNo maxRequestsPerCrawlAlways set an upper bound

Examples

Four worked examples — a first production deploy, health-check output, a cost guard aborting a runaway run, and a build rollback — are in references/examples.md. A first production deploy in brief:

# Smoke-test on-platform with a tiny input before scheduling
apify actors call username/product-scraper \
  --input='{"startUrls":[{"url":"https://target.com"}],"maxItems":10}'

Then create the daily schedule and completion webhook (implementation.md Steps 2–3).

Resources

Next Steps

Once production is stable, plan version upgrades with the apify-upgrade-migration skill: it covers bumping the Actor base image, migrating INPUT_SCHEMA.json fields without breaking existing schedules, and re-running this checklist against the new build before repointing traffic.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.