New to Claude Skills? Learn how to install them →

sickn33 on GitHub

Apify Actorization

Free

Transform software into reusable Apify serverless applications.

Get this skill

Free · Opens the source repo

What Apify Actorization does

Apify Actorization is a skill designed to facilitate the conversion of existing software into reusable serverless applications that are compatible with the Apify platform. By packaging your applications as Docker images, this skill allows you to define inputs and outputs in a structured JSON format, making it easier to deploy and manage your applications on Apify. The process involves wrapping your code with the Apify SDK lifecycle, which ensures that your application can interact seamlessly with the Apify ecosystem.

Getting started with Apify Actorization is straightforward. You begin by running the apify init command in your project root, which sets up the necessary structure for your actor. This includes creating configuration files that define the actor's metadata, input schema, and output schema. You can then test your actor locally using the apify run command, which simulates how your actor will behave once deployed. Once you are satisfied with its performance, deploying your actor is as simple as running apify push, which uploads your application to the Apify platform.

This skill is particularly useful for developers looking to migrate existing projects to the Apify platform or for those who want to add Apify SDK integration to their projects. It is also beneficial for wrapping command-line tools or scripts as actors, allowing for greater reusability and scalability. By leveraging the Apify platform, you can also monetize your actors through various models, such as Pay Per Event (PPE) or subscription-based access.

Overall, Apify Actorization streamlines the process of transforming traditional applications into serverless actors, making it an essential tool for developers and designers aiming to harness the power of the Apify platform.

When to use it

Use this skill when you need to package an existing project as a serverless actor on Apify or integrate Apify SDK into your application.

When not to use it

This skill is not suitable for applications that do not require serverless architecture or for projects outside the Apify ecosystem.

What you can build with it

Migrating a Crawlee Project

If you have an existing Crawlee project, you can use this skill to easily migrate it to the Apify platform, ensuring compatibility and scalability.

Wrapping CLI Tools

This skill allows you to wrap command-line tools or scripts as actors, making them reusable and deployable on the Apify platform.

Integrating Apify SDK

Use this skill to add Apify SDK integration into your existing projects, enabling them to leverage Apify's serverless capabilities.

How to install Apify Actorization

View source

1. Install with the skills CLI

npx skills add sickn33/agentic-awesome-skills/apify-actorization --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by sickn33

Apify Actorization

Actorization converts existing software into reusable serverless applications compatible with the Apify platform. Actors are programs packaged as Docker images that accept well-defined JSON input, perform an action, and optionally produce structured JSON output.

Quick Start

  1. Run apify init in project root
  2. Wrap code with SDK lifecycle (see language-specific section below)
  3. Configure .actor/input_schema.json
  4. Test with apify run --input '{"key": "value"}'
  5. Deploy with apify push

When to Use This Skill

  • Converting an existing project to run on Apify platform
  • Adding Apify SDK integration to a project
  • Wrapping a CLI tool or script as an Actor
  • Migrating a Crawlee project to Apify

Prerequisites

Verify apify CLI is installed:

apify --help

If not installed:

brew install apify-cli

# Or: npm install -g apify-cli
# Or install from an official release package that your OS package manager verifies

Verify CLI is logged in:

apify info  # Should return your username

If not logged in, check if APIFY_TOKEN environment variable is defined. If not, ask the user to generate one at https://console.apify.com/settings/integrations, add it to their shell or secret manager without putting the literal token in command history, then run:

apify login

Actorization Checklist

Copy this checklist to track progress:

  • Step 1: Analyze project (language, entry point, inputs, outputs)
  • Step 2: Run apify init to create Actor structure
  • Step 3: Apply language-specific SDK integration
  • Step 4: Configure .actor/input_schema.json
  • Step 5: Configure .actor/output_schema.json (if applicable)
  • Step 6: Update .actor/actor.json metadata
  • Step 7: Test locally with apify run
  • Step 8: Deploy with apify push

Step 1: Analyze the Project

Before making changes, understand the project:

  1. Identify the language - JavaScript/TypeScript, Python, or other
  2. Find the entry point - The main file that starts execution
  3. Identify inputs - Command-line arguments, environment variables, config files
  4. Identify outputs - Files, console output, API responses
  5. Check for state - Does it need to persist data between runs?

Step 2: Initialize Actor Structure

Run in the project root:

apify init

This creates:

  • .actor/actor.json - Actor configuration and metadata
  • .actor/input_schema.json - Input definition for the Apify Console
  • Dockerfile (if not present) - Container image definition

Step 3: Apply Language-Specific Changes

Choose based on your project's language:

Quick Reference

LanguageInstallWrap Code
JS/TSnpm install apifyawait Actor.init() ... await Actor.exit()
Pythonpip install apifyasync with Actor:
OtherUse CLI in wrapper scriptapify actor:get-input / apify actor:push-data

Steps 4-6: Configure Schemas

See schemas-and-output.md for detailed configuration of:

  • Input schema (.actor/input_schema.json)
  • Output schema (.actor/output_schema.json)
  • Actor configuration (.actor/actor.json)
  • State management (request queues, key-value stores)

Validate schemas against @apify/json_schemas npm package.

Step 7: Test Locally

Run the actor with inline input (for JS/TS and Python actors):

apify run --input '{"startUrl": "https://example.com", "maxItems": 10}'

Or use an input file:

apify run --input-file ./test-input.json

Important: Always use apify run, not npm start or python main.py. The CLI sets up the proper environment and storage.

Step 8: Deploy

apify push

This uploads and builds your actor on the Apify platform.

Monetization (Optional)

After deploying, you can monetize your actor in the Apify Store. The recommended model is Pay Per Event (PPE):

  • Per result/item scraped
  • Per page processed
  • Per API call made

Configure PPE in the Apify Console under Actor > Monetization. Charge for events in your code with await Actor.charge('result').

Other options: Rental (monthly subscription) or Free (open source).

Pre-Deployment Checklist

  • .actor/actor.json exists with correct name and description
  • .actor/actor.json validates against @apify/json_schemas (actor.schema.json)
  • .actor/input_schema.json defines all required inputs
  • .actor/input_schema.json validates against @apify/json_schemas (input.schema.json)
  • .actor/output_schema.json defines output structure (if applicable)
  • .actor/output_schema.json validates against @apify/json_schemas (output.schema.json)
  • Dockerfile is present and builds successfully
  • Actor.init() / Actor.exit() wraps main code (JS/TS)
  • async with Actor: wraps main code (Python)
  • Inputs are read via Actor.getInput() / Actor.get_input()
  • Outputs use Actor.pushData() or key-value store
  • apify run executes successfully with test input
  • generatedBy is set in actor.json meta section

Apify MCP Tools

If MCP server is configured, use these tools for documentation:

  • search-apify-docs - Search documentation
  • fetch-apify-docs - Get full doc pages

Otherwise, the MCP Server url: https://mcp.apify.com/?tools=docs.

Resources

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

Frequently asked questions about Apify Actorization

Similar skills