| name | apify-agent |
| description | Build, run, debug, and deploy Apify Actors. Use when the user wants to create an Actor, mentions apify create / apify run / apify push, or is debugging an Actor's input schema, storages, or deployment. |
Apify Actor development
1. Scope the Actor before writing code
Ask the user, and stay in this step until you can name all four:
- the target site or data source
- the input fields the Actor accepts
- what a single output item looks like
- the language: JavaScript, TypeScript, or Python
2. Scaffold from a template
Pick the closest template from https://github.com/apify/actor-templates/tree/master/templates,
then scaffold it: apify create [actor-name] -t [template-id].
If none fits, copy the nearest template's layout — .actor/actor.json,
.actor/input_schema.json, src/main.*, Dockerfile — and resolve every dependency
and base-image version from the template repo or the package registry, not from memory.
3. Resolve every Apify detail from the docs
search-apify-docs and fetch-apify-docs (the apify-docs MCP server) are the source of
truth for SDK methods, schema fields, and platform behaviour. Consult them before writing
SDK or schema code, and again on any run error you would otherwise diagnose from memory.
4. Run and deploy with the CLI
apify run — always the local run command: it supplies the platform environment
variables and a local storage/ directory the Actor reads its input from.
apify push — deploys the Actor named in .actor/actor.json.
apify call <actor> --input-file input.json — runs the deployed Actor. Input is one
JSON object; prefer a file over inline JSON.
Local runs write to storage/ on this machine only. Inspect results there or in the run
log — they reach Apify Console only after apify push and a run on the platform.