Official agent skill

Apify Orchestrator Actor Development

by apify in apify/awesome-skills

Build TypeScript Apify orchestrator Actors — coordinate a sequence of sub-Actors (optionally with an LLM step) using the apify-orchestrator library.

OfficialApache-2.0Auto-check: warningsData & Analytics

Install Apify Orchestrator Actor Development

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add apify/awesome-skills --skill apify-orchestrator-actor-development -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install apify/awesome-skills apify-orchestrator-actor-development --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/apify/awesome-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/apify-orchestrator-actor-development .claude/skills/apify-orchestrator-actor-development && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
apify-orchestrator-actor-development
GitHub stars
262
Token cost
~3k tokens
SKILL.md length
1,124 words
Files
13 (incl. references)
Skills in repo
26
Repo updated
First seen
Licence
Apache-2.0

At a glance

Build TypeScript Apify orchestrator Actors — coordinate a sequence of sub-Actors (optionally with an LLM step) using the apify-orchestrator library.

  • Works in 7 steps: Elicit the sub-Actor sequence → Fetch each sub-Actor's schema via Apify… → Decide data flow between steps → …
  • Creating a new orchestrator Actor
  • SKILL.md covers Prerequisites and setup, Interactive creation flow, Reference material and Security, plus 4 more sections
  • Calls npm, curl and bash; reaches mcp.apify.com; needs APIFY_TOKEN

What it does

Apify Orchestrator Actor Development is an agent skill from apify/awesome-skills, published by the product's own GitHub organization. Build TypeScript Apify orchestrator Actors — coordinate a sequence of sub-Actors (optionally with an LLM step) using the apify-orchestrator library. Use when creating a new orchestrator Actor, chaining Apify Actors together, adding an OpenRouter LLM step between Actors, or scaffolding parent-Actor workflows that call other Actors.

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 13 other files, including reference files (for example `references/actor-json.md`, `references/actor-readme.md` and `references/cost-tracking.md`).

It sits in Data & Analytics, covering Web scraping. It works with Apify, TypeScript, OpenRouter and Model Context Protocol. The repository describes itself as: Community collection of Apify agent skills for AI coding assistants. The licence is Apache-2.0.

When your agent uses it

  • Creating a new orchestrator Actor
  • Chaining Apify Actors together
  • Adding an OpenRouter LLM step between Actors
  • Scaffolding parent-Actor workflows that call other Actors

Example prompts

  • “/apify-orchestrator-actor-development”

Requirements

  • Node.js
  • A credential in APIFY_TOKEN

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Elicit the sub-Actor sequence
  2. Fetch each sub-Actor's schema via Apify MCP
  3. Decide data flow between steps
  4. Note the total cost cap
  5. Ask about an optional LLM step
  6. Scaffold the project
  7. Test locally, then deploy

What it can do on your machine

Read from SKILL.md and the folder at commit 1eb0cd0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm
    • curl
    • bash
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • mcp.apify.com

    Also links to:

    • docs.apify.com
    • github.com
    • console.apify.com
    • apify.com
    • raw.githubusercontent.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • APIFY_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Apify Orchestrator Actor Development loads about 3k tokens when it runs, and up to ~19k if it reads all its reference files. Until then it costs about 92 tokens; SKILL.md has 1,124 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~92
When it runs · the whole SKILL.md, loaded when a task matches
~3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~19k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningPipes a downloaded script straight into a shellSKILL.md:27
    nstalled, use a package manager (never `curl | bash`):
  • NoteMentions a .env fileSKILL.md:136
    source code, config files, or committed `.env` files. Use `process.env.APIFY_TOKEN`.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from apify/awesome-skills at commit 1eb0cd0, republished under its Apache-2.0 licence (© apify). 1,124 words, ~2,999 tokens.

Download SKILL.mdSave it as .claude/skills/apify-orchestrator-actor-development/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.
name
apify-orchestrator-actor-development
description
Build TypeScript Apify orchestrator Actors — coordinate a sequence of sub-Actors (optionally with an LLM step) using the apify-orchestrator library. Use when creating a new orchestrator Actor, chaining Apify Actors together, adding an OpenRouter LLM step between Actors, or scaffolding parent-Actor workflows that call other Actors.
author
Fabian Maume
author_url
https://github.com/fmaume
metadata.category
actor-development
metadata.keywords
orchestrator, sub-actor, actor-chaining, apify-orchestrator, typescript, cost-cap, maxTotalChargeUsd, openrouter, llm-step, scaffolding, input-schema…

Apify orchestrator Actor development

An orchestrator Actor is a parent Apify Actor whose job is to coordinate a sequence (or parallel fan-out) of other Actors. It takes user input, calls sub-Actor A, feeds A's output into sub-Actor B, optionally runs an LLM transformation between them, and emits the combined result to its own dataset.

This skill covers TypeScript-only orchestrators built on the apify-orchestrator library. It does not cover Python, JavaScript, or Standby-mode Actors.

Important: Before writing code, fill in the generatedBy property in .actor/actor.json (e.g., "Claude Code with Claude Opus 4.7"). This helps Apify improve tooling for specific AI models.

Prerequisites and setup

Verify the apify CLI is installed:

bash
apify --help

If not installed, use a package manager (never curl | bash):

bash
npm install -g apify-cli
# or on Mac: brew install apify-cli

Confirm login:

bash
apify info   # should return your username

If not logged in, run apify login (opens a browser) or export APIFY_TOKEN from https://console.apify.com/settings/integrations. Never pass tokens on the command line — arguments show up in process listings and shell history.

Interactive creation flow

When the user asks for a new orchestrator Actor, follow these steps in order:

  1. Elicit sub-Actor sequence
  2. Fetch each sub-Actor's schema via Apify MCP
  3. Decide data flow between steps
  4. Note the total cost cap (a Run option, not an input field)
  5. Ask about optional LLM step
  6. Scaffold the project
  7. Test locally, then deploy
Step 1 — Elicit the sub-Actor sequence

Ask the user which Apify Actors to chain together, in order. Accept either:

  • A list up-front (e.g., "apify/website-content-crawler then apify/rag-web-browser"), or
  • One at a time (ask for the first, discuss it, then ask what comes next).

If the user names a task instead of an Actor ID ("scrape LinkedIn profiles"), use the Apify MCP search-actors tool to propose candidates and let the user pick.

Step 2 — Fetch each sub-Actor's schema via Apify MCP

For every sub-Actor in the chain, call the Apify MCP fetch-actor-details tool. The parameter is actor, not actorId. Present the input schema back to the user with the fields listed in inputSchema.required highlighted. See references/mcp-schema-discovery.md for the truncation gotcha (500-char descriptions; enum lists arrive whole), the frequently absent outputSchema, and the fallback path via the REST API / raw INPUT_SCHEMA.json on GitHub.

Never guess field names. If the MCP truncation is limiting, fetch the raw schema from the Actor's GitHub repo.

Step 3 — Decide data flow between steps

For each pair of adjacent sub-Actors, ask:

  • Which fields from step N's output feed into step N+1's input?
  • Which top-level orchestrator inputs should be exposed to the user (via the orchestrator's own .actor/input_schema.json)?
  • Which sub-Actor inputs should be hardcoded?
Step 4 — Note the total cost cap

The total cost cap is a Run option (maxTotalChargeUsd) — the caller sets it when they start the orchestrator via the Apify Console, API, or SDK. It's not an input schema field. See the Apify API docs for how callers pass it.

At Run time the orchestrator:

  1. Reads its own cap via client.run(actorRunId).get().options.maxTotalChargeUsd.
  2. Divides the total evenly across the sub-Actor steps at compile time — declare a STEPS tuple and compute perStepCap = maxTotalChargeUsd / STEPS.length.
  3. Passes each step's share as maxTotalChargeUsd when calling the sub-Actor (for pay-per-event Actors) or as maxItems (for pay-per-result Actors).
  4. Tracks cumulative cost across sub-Actor Runs and refuses to launch the next step once the running total reaches the cap. Note that run.usageTotalUsd reads 0 on the object .call() returns and then accrues over several seconds, so the tally has to re-read each child Run rather than trust that value. The Run-level maxTotalChargeUsd is what enforces the ceiling; the tally is reporting plus a backstop for a step that ran uncapped. See references/cost-tracking.md.

Do not add a stepBudgets input schema field. The even split is a deliberate compile-time constant — it keeps the input schema clean, makes cost behavior predictable for the caller, and removes a footgun (three shares that don't sum to the total). Users control cost solely via the Run's maxTotalChargeUsd option; the orchestrator handles the split.

Tell the user to set maxTotalChargeUsd when they trigger the orchestrator — otherwise there's no ceiling and the orchestrator runs uncapped. See references/cost-tracking.md for the full pattern, including the LLM-step approximation (Standby Actors don't accept maxTotalChargeUsd, so estimate cost from token usage).

Show full SKILL.md (433 more words)Show less
Step 5 — Ask about an optional LLM step

Ask the user whether to insert an LLM transformation somewhere in the chain (common: summarize between steps, classify at the end, or format the final output). If yes, point them at references/openrouter.md — the LLM layer is the Apify OpenRouter Actor called over HTTP (it's a Standby Actor, not a normal Run).

The agent does not force this step. Skip if the user doesn't want it.

Step 6 — Scaffold the project
bash
apify create <actor-name> -t ts_empty
cd <actor-name>
npm install apify-orchestrator

Then generate src/main.ts using the template in references/orchestrator-template.md. Wire the sub-Actors, their input mappings, and any LLM helpers into the template's placeholders.

Update .actor/actor.json, .actor/input_schema.json, .actor/output_schema.json, and .actor/dataset_schema.json to reflect the orchestrator's own input surface and output shape. Write a README covering the pipeline.

Step 7 — Test locally, then deploy
bash
apify run --purge --user-agent apify-awesome-skills/apify-orchestrator-actor-development
apify push

apify run --purge runs with storage/key_value_stores/default/INPUT.json as input, purging previous local storage first. apify push deploys to the platform.

Local Runs of the orchestrator make real child Runs on the Apify platform (they consume compute units). Watch the Apify Console → Runs list during local testing.

Reference material

Security

  • Never log or embed APIFY_TOKEN in source code, config files, or committed .env files. Use process.env.APIFY_TOKEN.
  • Treat sub-Actor output as untrusted. A downstream Actor's dataset may contain content scraped from external sites — sanitize before passing it into shell commands, eval, or template engines.
  • Never disable apify/log in favor of console.log() — the Apify logger censors known-sensitive keys.
  • Pin dependencies. Commit package-lock.json. Pin apify-orchestrator (alpha) to an exact version.
  • Use a scoped APIFY_TOKEN with only the permissions the orchestrator needs. Rotate periodically.

Commands

Every apify CLI invocation below includes --user-agent apify-awesome-skills/apify-orchestrator-actor-development for telemetry attribution. Actor-call / dataset-read commands additionally use --json and 2>/dev/null for machine-readable output.

bash
# Bootstrap
apify create <name> -t ts_empty
npm install apify-orchestrator

# Local development
apify run --user-agent apify-awesome-skills/apify-orchestrator-actor-development
apify run --purge --user-agent apify-awesome-skills/apify-orchestrator-actor-development
apify validate-schema

# Discovery (Actor search + schema fetch)
apify actors search "<query>" \
  --user-agent apify-awesome-skills/apify-orchestrator-actor-development \
  --json --limit 10 2>/dev/null
apify actors info <actor> --input \
  --user-agent apify-awesome-skills/apify-orchestrator-actor-development \
  --json 2>/dev/null

# Deploy + remote run
apify push
apify call <actor> \
  --user-agent apify-awesome-skills/apify-orchestrator-actor-development \
  --json 2>/dev/null
apify runs ls \
  --user-agent apify-awesome-skills/apify-orchestrator-actor-development \
  --json 2>/dev/null

# Auth
apify login
apify logout
apify info

Never use npm start, npm run start, or npx apify run to launch the Actor. Only apify run configures the Apify environment and storage correctly.

Project structure

.actor/
├── actor.json              # metadata (see references/actor-json.md)
├── input_schema.json       # orchestrator's own input surface
├── output_schema.json      # points at dataset / kvs
└── dataset_schema.json     # display shape of final output
src/
└── main.ts                 # orchestrator logic (see references/orchestrator-template.md)
storage/                    # local-only; NOT synced to Apify Console
Dockerfile
package.json
tsconfig.json

MCP tools

Apify MCP (required for schema discovery)
  • fetch-actor-details — primary tool for pulling sub-Actor input/output schema and README.
  • search-actors — find candidate sub-Actors by keyword.
  • search-apify-docs / fetch-apify-docs — documentation lookup.

If MCP is not configured, use the hosted server URL: https://mcp.apify.com/?tools=actors,docs.

Resources

© apify, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 12 other files (references) in skills/apify-orchestrator-actor-development of apify/awesome-skills.

  • SKILL.md
  • references/actor-json.md
  • references/actor-readme.md
  • references/cost-tracking.md
  • references/dataset-schema.md
  • references/input-schema.md
  • references/key-value-store-schema.md
  • references/logging.md
  • references/mcp-schema-discovery.md
  • references/openrouter.md
  • references/orchestrator-library.md
  • references/orchestrator-template.md
  • references/output-schema.md

Open the folder on GitHubat commit 1eb0cd0

Compare with similar skills

Apify Orchestrator Actor Development next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Apify Orchestrator Actor Development compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Apify Orchestrator Actor Development this skillapify/awesome-skills262—~3kAutomated safety check: WarnApache-2.0
Etsy Search Listingssickn33/agentic-awesome-skills47k1 repos~1.2kAutomated safety check: PassMIT
Apify Product Lookupdavepoon/buildwithclaude3.6k—~1.4kAutomated safety check: PassMIT
Apify Actor Developmentapify/agent-skills2.4k—~2.9kAutomated safety check: PassNone
Skyvern Browser AutomationSkyvern-AI/skyvern23k—~1.9kAutomated safety check: PassAGPL-3.0
Ketch1broseidon/ketch6961 repos~3.9kAutomated safety check: PassMIT

Similar skills

  • Etsy Search Listings

    sickn33/agentic-awesome-skills

    Fetch live Etsy search listing rows for a keyword, market phrase, or category via Apify Actor publicrecords/etsy-search-scraper (MCP).

    47k GitHub starsUsed in 1 repo~1.2k tokens
    Data & AnalyticsAuto-check passed
  • Apify Product Lookup

    davepoon/buildwithclaude

    Fetch a real product's current price, stock, rating, or images from retailer pages over the Apify MCP server, and return them as typed fields rather than prose.

    3.6k GitHub stars~1.4k tokensUpdated yesterday
    Data & AnalyticsAuto-check passed
  • Apify Actor Development

    apify/agent-skills

    Official

    Creates, changes, debugs and deploys Apify Actors, including their input and output schemas, using the Apify CLI.

    2.4k GitHub stars~2.9k tokensUpdated today
    Data & AnalyticsAuto-check passed
  • Skyvern Browser Automation

    Skyvern-AI/skyvern

    Automates websites with Skyvern's AI browser agent to fill forms, extract data, download files, log in and run multi-step workflows through SDKs, REST, MCP or a CLI.

    23k GitHub stars~1.9k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Ketch

    1broseidon/ketch

    Research skill for ketch — a fast stateless CLI for web search, OSS code search, curated library docs, page scraping, and site crawling; an optional MCP server exists for operators who want it, but…

    696 GitHub starsUsed in 1 repo~3.9k tokens
    Data & AnalyticsAuto-check passed
  • Querying Indonesian Gov Data

    suryast/indonesia-gov-apis

    Query 57 Indonesian government APIs and data sources — BPJPH halal certification, BPOM food safety, OJK financial legality, BPS statistics, BMKG weather/earthquakes, Bank Indonesia exchange rates…

    172 GitHub stars~997 tokensUpdated yesterday
    Data & AnalyticsAuto-check passed

More from apify/awesome-skills

All 26 skills in this repo
  • Apify Buying Signal Detection

    apify/awesome-skills

    Official

    Set up a recurring buying-signal detection pipeline that finds companies showing buying intent across three signal types — job postings (hiring for the persona), fundraising events (recent raises)…

    262 GitHub stars~5.1k tokensUpdated 14 days ago
    Auto-check: notes
  • Apify Product Data Setup

    apify/awesome-skills

    Official

    Wire an AI agent to live e-commerce product data using Apify's E-commerce Scraping Tool over MCP, either as runtime tool calls or as a scheduled refresh into a vector store.

    262 GitHub starsUsed in 1 repo~2k tokens
    Auto-check passed
  • Apify Lead Scoring Enrichment

    apify/awesome-skills

    Official

    Score and enrich a CSV of B2B leads using Apify Actors. An agent skill from apify/awesome-skills.

    262 GitHub stars~4.4k tokensUpdated 14 days ago
    Auto-check: notes
  • Apify App Store Intelligence

    apify/awesome-skills

    Official

    Pull structured Apple App Store and Google Play data — app metadata, price, rating, the 1–5★ ratings histogram, version, developer, and reviews — and watch it for changes over time.

    262 GitHub stars~3.5k tokensUpdated 14 days ago
    Auto-check passed
  • Apify Ashby Jobs Scraper

    apify/awesome-skills

    Official

    Scrape Ashby jobs or discover companies using Ashby with the Apify Ashby Job Board API Actor (johnvc/ashby-job-board-scraper).

    262 GitHub stars~3.7k tokensUpdated 14 days ago
    Auto-check passed
  • Apify Company Data API

    apify/awesome-skills

    Official

    Pull structured B2B company data from Clutch.co with the Clutch.co Agency API Actor (johnvc/clutch-agency-api).

    262 GitHub stars~2.8k tokensUpdated 14 days ago
    Auto-check passed

Questions about Apify Orchestrator Actor Development

What does Apify Orchestrator Actor Development do?

Build TypeScript Apify orchestrator Actors — coordinate a sequence of sub-Actors (optionally with an LLM step) using the apify-orchestrator library. Apify Orchestrator Actor Development is an agent skill from apify/awesome-skills, published by the product's own GitHub organization. Build TypeScript Apify orchestrator Actors — coordinate a sequence of sub-Actors (optionally with an LLM step) using the apify-orchestrator library.

When should I use Apify Orchestrator Actor Development?

Apify Orchestrator Actor Development fits situations like: creating a new orchestrator Actor; chaining Apify Actors together; adding an OpenRouter LLM step between Actors; scaffolding parent-Actor workflows that call other Actors.

How do I install Apify Orchestrator Actor Development in Claude Code?

Run `npx skills add apify/awesome-skills --skill apify-orchestrator-actor-development -a claude-code`. Or copy the skill folder (skills/apify-orchestrator-actor-development in apify/awesome-skills) into .claude/skills/apify-orchestrator-actor-development in your project. Claude Code loads it when a task matches its description.

How do I install Apify Orchestrator Actor Development in Codex?

Run `npx skills add apify/awesome-skills --skill apify-orchestrator-actor-development -a codex`. Or copy the skill folder (skills/apify-orchestrator-actor-development in apify/awesome-skills) into .agents/skills/apify-orchestrator-actor-development in your project. Codex loads it when a task matches its description.

Can I use Apify Orchestrator Actor Development in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add apify/awesome-skills --skill apify-orchestrator-actor-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/apify-orchestrator-actor-development, .gemini/skills/apify-orchestrator-actor-development, .github/skills/apify-orchestrator-actor-development and .opencode/skills/apify-orchestrator-actor-development in your project.

What does Apify Orchestrator Actor Development need to run?

Going by SKILL.md and its folder, Apify Orchestrator Actor Development needs the command-line tools its instructions call (npm, curl, bash and npx) and credentials named APIFY_TOKEN. Our summary lists: Node.js; A credential in APIFY_TOKEN.

Does Apify Orchestrator Actor Development access the network?

SKILL.md names 6 domains. In commands or code: mcp.apify.com; the agent is likely to contact it when it follows the instructions. As links in the text: docs.apify.com, github.com, console.apify.com, apify.com and raw.githubusercontent.com. This is read from the text; nothing was executed.

Is Apify Orchestrator Actor Development safe to install?

Our automated static check of SKILL.md flagged 1 warning(s): pipes a downloaded script straight into a shell. Read the flagged lines before installing; the check is not a guarantee either way.

What licence does Apify Orchestrator Actor Development use?

Apify Orchestrator Actor Development is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Apify Orchestrator Actor Development use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 16k tokens, read only when the agent opens those files.

What are the alternatives to Apify Orchestrator Actor Development?

Skills that share tags, products or a category with Apify Orchestrator Actor Development: Etsy Search Listings (sickn33/agentic-awesome-skills, 47k stars), Apify Product Lookup (davepoon/buildwithclaude, 3.6k stars), Apify Actor Development (apify/agent-skills, 2.4k stars) and Skyvern Browser Automation (Skyvern-AI/skyvern, 23k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Apify Orchestrator Actor Development?

apify (a GitHub organization, an official publisher) maintains it in apify/awesome-skills, which has 262 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on September 22, 2026.

Source: apify/awesome-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.