FI

firecrawl-prod-checklist

Pre-launch validation steps for applications using Firecrawl APIs.

Install

mkdir -p .claude/skills/firecrawl-prod-checklist && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/3094" && unzip -o skill.zip -d .claude/skills/firecrawl-prod-checklist && rm skill.zip

Installs to .claude/skills/firecrawl-prod-checklist

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Execute Firecrawl production deployment checklist and rollback procedures.
74 charsno explicit “when” trigger
Intermediate

Key capabilities

  • Verify production API key security.
  • Configure crawl safety limits like `limit` and `maxDepth`.
  • Implement error handling for rate limits and credit exhaustion.
  • Set up monitoring for scrape success/failure rates and credit consumption.
  • Execute a rollback procedure to disable Firecrawl integration.

How it works

This skill provides a checklist and instructions to validate Firecrawl deployments, covering security, crawl limits, error handling, and monitoring. It includes bash and TypeScript examples to perform checks and implement safe crawling.

Inputs & outputs

You give it
Firecrawl API key, application configuration, or deployment commands
You get back
Verification of API connectivity, health check status, or production crawl status

When to use firecrawl-prod-checklist

  • Preparing for production launch
  • Setting crawl safety limits
  • Configuring webhook security

About this skill

Firecrawl Production Checklist

Overview

Pre-deployment validation checklist for applications using Firecrawl's scrape, crawl, map, and extract APIs. Covers credential management, crawl safety limits, error handling, monitoring, and rollback.

Prerequisites

  • Staging environment tested and passing
  • Production API key from firecrawl.dev/app
  • Monitoring infrastructure ready

Pre-Deployment Checklist

Credentials & Security

  • Production FIRECRAWL_API_KEY in secure vault (not in code or .env)
  • Key starts with fc- and is scoped to production
  • Different API keys for dev/staging/production
  • .env files in .gitignore
  • Webhook secrets stored securely
  • Git history scanned for leaked keys

Crawl Safety

  • All crawlUrl calls have limit parameter set
  • maxDepth configured to prevent unbounded crawling
  • includePaths / excludePaths filters applied where appropriate
  • Credit budget tracking implemented (daily limit alerts)
  • No hardcoded URLs in production code

Error Handling

  • 429 rate limit handling with exponential backoff
  • 402 credit exhaustion handled gracefully (no crash)
  • 401 auth failure logged and alerted
  • Async crawl jobs have timeout with deadline
  • Fallback from crawl to individual scrape on failure
  • Empty markdown detection (JS rendering issues)

Monitoring & Alerting

  • Scrape success/failure rate tracked
  • Credit consumption monitored
  • Crawl job completion rate tracked
  • Alert on credit balance below threshold
  • Alert on error rate > 5%
  • Webhook delivery failures logged

Instructions

Step 1: Verify API Connectivity

set -euo pipefail
# Test production key
curl -s https://api.firecrawl.dev/v1/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY_PROD" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","formats":["markdown"]}' | jq '.success'

# Check credit balance
curl -s https://api.firecrawl.dev/v1/team/credits \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY_PROD" | jq .

Step 2: Health Check Endpoint

import FirecrawlApp from "@mendable/firecrawl-js";

const firecrawl = new FirecrawlApp({
  apiKey: process.env.FIRECRAWL_API_KEY!,
});

export async function healthCheck() {
  const start = Date.now();
  try {
    const result = await firecrawl.scrapeUrl("https://example.com", {
      formats: ["markdown"],
    });
    return {
      status: result.success ? "healthy" : "degraded",
      latencyMs: Date.now() - start,
      hasContent: (result.markdown?.length || 0) > 0,
    };
  } catch (error: any) {
    return {
      status: "unhealthy",
      latencyMs: Date.now() - start,
      error: error.statusCode || error.message,
    };
  }
}

Step 3: Production-Safe Crawl Wrapper

export async function productionCrawl(url: string, opts: {
  maxPages: number;
  paths?: string[];
  timeout?: number;
}) {
  // Hard credit safety — never exceed configured limit
  const limit = Math.min(opts.maxPages, 500);

  const job = await firecrawl.asyncCrawlUrl(url, {
    limit,
    maxDepth: 3,
    includePaths: opts.paths,
    scrapeOptions: { formats: ["markdown"], onlyMainContent: true },
  });

  // Poll with timeout
  const deadline = Date.now() + (opts.timeout || 600000);
  let pollInterval = 2000;
  let status = await firecrawl.checkCrawlStatus(job.id);

  while (status.status === "scraping" && Date.now() < deadline) {
    await new Promise(r => setTimeout(r, pollInterval));
    pollInterval = Math.min(pollInterval * 1.5, 30000);
    status = await firecrawl.checkCrawlStatus(job.id);
  }

  if (status.status !== "completed") {
    throw new Error(`Crawl ${job.id} did not complete: ${status.status}`);
  }
  return status;
}

Step 4: Rollback Procedure

set -euo pipefail
# Immediate rollback — disable Firecrawl integration
kubectl set env deployment/app FIRECRAWL_ENABLED=false
kubectl rollout restart deployment/app

# Verify rollback
curl -s https://app.example.com/health | jq '.services.firecrawl'

Alerting Rules

AlertConditionSeverity
API unreachableHealth check fails 3xP1
Credits < 1000Balance checkP2
Error rate > 5%429/5xx rateP2
Crawl timeoutJob stuck > 10minP3
Auth failureAny 401 responseP1

Resources

Next Steps

For version upgrades, see firecrawl-upgrade-migration.

Prerequisites

Staging environment tested and passingProduction API key from firecrawl.dev/appMonitoring infrastructure ready

Limitations

  • All `crawlUrl` calls must have `limit` parameter set.
  • `maxDepth` must be configured to prevent unbounded crawling.
  • Credit budget tracking must be implemented.

How it compares

This skill provides a structured checklist and code examples for Firecrawl production deployment, unlike a generic deployment process.

Compared to similar skills

firecrawl-prod-checklist side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
firecrawl-prod-checklist (this skill)127dCautionIntermediate
gcp-cloud-run55moReviewIntermediate
flow-nexus-platform64moReviewBeginner
smithery-mcp-deployment88moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

More by jeremylongshore

View all by jeremylongshore

analyzing-logs

jeremylongshore

Analyze application logs to detect performance issues, identify error patterns, and improve stability by extracting key insights.

14123

ollama-setup

jeremylongshore

Configure auto-configure Ollama when user needs local LLM deployment, free AI alternatives, or wants to eliminate hosted API costs. Trigger phrases: "install ollama", "local AI", "free LLM", "self-hosted AI", "replace OpenAI", "no API costs". Use when appropriate context detected. Trigger with relevant phrases based on skill purpose.

1167

backtesting-trading-strategies

jeremylongshore

Backtest crypto and traditional trading strategies against historical data. Calculates performance metrics (Sharpe, Sortino, max drawdown), generates equity curves, and optimizes strategy parameters. Use when user wants to test a trading strategy, validate signals, or compare approaches. Trigger with phrases like "backtest strategy", "test trading strategy", "historical performance", "simulate trades", "optimize parameters", or "validate signals".

1071

generating-database-seed-data

jeremylongshore

Process this skill enables AI assistant to generate realistic test data and database seed scripts for development and testing environments. it uses faker libraries to create realistic data, maintains relational integrity, and allows configurable data volumes. u... Use when working with databases or data models. Trigger with phrases like 'database', 'query', or 'schema'.

1033

cursor-codebase-indexing

jeremylongshore

Execute set up and optimize Cursor codebase indexing. Triggers on "cursor index setup", "codebase indexing", "index codebase", "cursor semantic search". Use when working with cursor codebase indexing functionality. Trigger with phrases like "cursor codebase indexing", "cursor indexing", "cursor".

885

testing-mobile-apps

jeremylongshore

Execute mobile app testing on iOS and Android devices/simulators. Use when performing specialized testing. Trigger with phrases like "test mobile app", "run iOS tests", or "validate Android functionality".

810

You might also like

gcp-cloud-run

aj-geddes

Deploy containerized applications on Google Cloud Run with automatic scaling, traffic management, and service mesh integration. Use for container-based serverless computing.

5107

flow-nexus-platform

ruvnet

Comprehensive Flow Nexus platform management - authentication, sandboxes, app deployment, payments, and challenges

691

smithery-mcp-deployment

CaullenOmdahl

Best practices for creating, optimizing, and deploying MCP servers to Smithery. Use this skill when:(1) Creating new MCP servers for Smithery deployment(2) Optimizing quality scores (achieving 90/100)(3) Troubleshooting deployment issues (0/0 tools, missing annotations, low scores)(4) Migrating existing MCP servers to Smithery format(5) Understanding Smithery's schema format requirements(6) Adding workflow prompts, tool annotations, or documentation resources(7) Configuring smithery.yaml and package.json for deployment

881

deployment-pipeline-design

wshobson

Design multi-stage CI/CD pipelines with approval gates, security checks, and deployment orchestration. Use when architecting deployment workflows, setting up continuous delivery, or implementing GitOps practices.

670

vercel-deployment

davila7

Expert knowledge for deploying to Vercel with Next.js Use when: vercel, deploy, deployment, hosting, production.

359

netlify-deploy

openai

Deploy web projects to Netlify using the Netlify CLI (`npx netlify`). Use when the user asks to deploy, host, publish, or link a site/repo on Netlify, including preview and production deploys.

740

Search skills

Search the agent skills registry