[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-a17b9756-279a-4513-a7ff-2d843a9a50ec":3,"$fzncuFHIPOKZqxhqQowiXjfbOAfsLQeqnRWNI4FQqe50":42},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":33},"a17b9756-279a-4513-a7ff-2d843a9a50ec","apify-actorization","演员化将现有软件转换为与Apify平台兼容的可重用无服务器应用程序。演员是打包为Docker镜像的程序，接受定义良好的JSON输入，执行操作，并可选择产生结构化JSON输出。","cat_coding_backend","mod_coding","sickn33,coding","---\nname: apify-actorization\ndescription: \"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.\"\nrisk: unknown\nsource: community\n---\n\n# Apify Actorization\n\nActorization 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.\n\n## Quick Start\n\n1. Run `apify init` in project root\n2. Wrap code with SDK lifecycle (see language-specific section below)\n3. Configure `.actor\u002Finput_schema.json`\n4. Test with `apify run --input '{\"key\": \"value\"}'`\n5. Deploy with `apify push`\n\n## When to Use This Skill\n\n- Converting an existing project to run on Apify platform\n- Adding Apify SDK integration to a project\n- Wrapping a CLI tool or script as an Actor\n- Migrating a Crawlee project to Apify\n\n## Prerequisites\n\nVerify `apify` CLI is installed:\n\n```bash\napify --help\n```\n\nIf not installed:\n\n```bash\nbrew install apify-cli\n\n# Or: npm install -g apify-cli\n# Or install from an official release package that your OS package manager verifies\n```\n\nVerify CLI is logged in:\n\n```bash\napify info  # Should return your username\n```\n\nIf not logged in, check if `APIFY_TOKEN` environment variable is defined. If not, ask the user to generate one at https:\u002F\u002Fconsole.apify.com\u002Fsettings\u002Fintegrations, add it to their shell or secret manager without putting the literal token in command history, then run:\n\n```bash\napify login\n```\n\n## Actorization Checklist\n\nCopy this checklist to track progress:\n\n- [ ] Step 1: Analyze project (language, entry point, inputs, outputs)\n- [ ] Step 2: Run `apify init` to create Actor structure\n- [ ] Step 3: Apply language-specific SDK integration\n- [ ] Step 4: Configure `.actor\u002Finput_schema.json`\n- [ ] Step 5: Configure `.actor\u002Foutput_schema.json` (if applicable)\n- [ ] Step 6: Update `.actor\u002Factor.json` metadata\n- [ ] Step 7: Test locally with `apify run`\n- [ ] Step 8: Deploy with `apify push`\n\n## Step 1: Analyze the Project\n\nBefore making changes, understand the project:\n\n1. **Identify the language** - JavaScript\u002FTypeScript, Python, or other\n2. **Find the entry point** - The main file that starts execution\n3. **Identify inputs** - Command-line arguments, environment variables, config files\n4. **Identify outputs** - Files, console output, API responses\n5. **Check for state** - Does it need to persist data between runs?\n\n## Step 2: Initialize Actor Structure\n\nRun in the project root:\n\n```bash\napify init\n```\n\nThis creates:\n- `.actor\u002Factor.json` - Actor configuration and metadata\n- `.actor\u002Finput_schema.json` - Input definition for the Apify Console\n- `Dockerfile` (if not present) - Container image definition\n\n## Step 3: Apply Language-Specific Changes\n\nChoose based on your project's language:\n\n- **JavaScript\u002FTypeScript**: See [js-ts-actorization.md](references\u002Fjs-ts-actorization.md)\n- **Python**: See [python-actorization.md](references\u002Fpython-actorization.md)\n- **Other Languages (CLI-based)**: See [cli-actorization.md](references\u002Fcli-actorization.md)\n\n### Quick Reference\n\n| Language | Install | Wrap Code |\n|----------|---------|-----------|\n| JS\u002FTS | `npm install apify` | `await Actor.init()` ... `await Actor.exit()` |\n| Python | `pip install apify` | `async with Actor:` |\n| Other | Use CLI in wrapper script | `apify actor:get-input` \u002F `apify actor:push-data` |\n\n## Steps 4-6: Configure Schemas\n\nSee [schemas-and-output.md](references\u002Fschemas-and-output.md) for detailed configuration of:\n- Input schema (`.actor\u002Finput_schema.json`)\n- Output schema (`.actor\u002Foutput_schema.json`)\n- Actor configuration (`.actor\u002Factor.json`)\n- State management (request queues, key-value stores)\n\nValidate schemas against `@apify\u002Fjson_schemas` npm package.\n\n## Step 4: Test Locally\n\nRun the actor with inline input (for JS\u002FTS and Python actors):\n\n```bash\napify run --input '{\"startUrl\": \"https:\u002F\u002Fexample.com\", \"maxItems\": 10}'\n```\n\nOr use an input file:\n\n```bash\napify run --input-file .\u002Ftest-input.json\n```\n\n**Important:** Always use `apify run`, not `npm start` or `python main.py`. The CLI sets up the proper environment and storage.\n\n## Step 5: Deploy\n\n```bash\napify push\n```\n\nThis uploads and builds your actor on the Apify platform.\n\n## Monetization (Optional)\n\nAfter deploying, you can monetize your actor in the Apify Store. The recommended model is **Pay Per Event (PPE)**:\n\n- Per result\u002Fitem scraped\n- Per page processed\n- Per API call made\n\nConfigure PPE in the Apify Console under Actor > Monetization. Charge for events in your code with `await Actor.charge('result')`.\n\nOther options: **Rental** (monthly subscription) or **Free** (open source).\n\n## Pre-Deployment Checklist\n\n- [ ] `.actor\u002Factor.json` exists with correct name and description\n- [ ] `.actor\u002Factor.json` validates against `@apify\u002Fjson_schemas` (`actor.schema.json`)\n- [ ] `.actor\u002Finput_schema.json` defines all required inputs\n- [ ] `.actor\u002Finput_schema.json` validates against `@apify\u002Fjson_schemas` (`input.schema.json`)\n- [ ] `.actor\u002Foutput_schema.json` defines output structure (if applicable)\n- [ ] `.actor\u002Foutput_schema.json` validates against `@apify\u002Fjson_schemas` (`output.schema.json`)\n- [ ] `Dockerfile` is present and builds successfully\n- [ ] `Actor.init()` \u002F `Actor.exit()` wraps main code (JS\u002FTS)\n- [ ] `async with Actor:` wraps main code (Python)\n- [ ] Inputs are read via `Actor.getInput()` \u002F `Actor.get_input()`\n- [ ] Outputs use `Actor.pushData()` or key-value store\n- [ ] `apify run` executes successfully with test input\n- [ ] `generatedBy` is set in actor.json meta section\n\n## Apify MCP Tools\n\nIf MCP server is configured, use these tools for documentation:\n\n- `search-apify-docs` - Search documentation\n- `fetch-apify-docs` - Get full doc pages\n\nOtherwise, the MCP Server url: `https:\u002F\u002Fmcp.apify.com\u002F?tools=docs`.\n\n## Resources\n\n- [Actorization Academy](https:\u002F\u002Fdocs.apify.com\u002Facademy\u002Factorization) - Comprehensive guide\n- [Apify SDK for JavaScript](https:\u002F\u002Fdocs.apify.com\u002Fsdk\u002Fjs) - Full SDK reference\n- [Apify SDK for Python](https:\u002F\u002Fdocs.apify.com\u002Fsdk\u002Fpython) - Full SDK reference\n- [Apify CLI Reference](https:\u002F\u002Fdocs.apify.com\u002Fcli) - CLI commands\n- [Actor Specification](https:\u002F\u002Fraw.githubusercontent.com\u002Fapify\u002Factor-whitepaper\u002Frefs\u002Fheads\u002Fmaster\u002FREADME.md) - Complete specification\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,220,1878,"2026-05-16 13:03:37",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"编程开发","coding","mdi-code-braces","代码生成、调试、审查，提升开发效率",2,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":25,"skillCount":32,"createdAt":26},"后端开发","backend","mdi-server","API、数据库、服务端架构",296,[34],{"id":35,"skillId":4,"version":36,"fileName":37,"fileSize":38,"filePath":39,"fileHash":40,"manifest":41,"createdAt":19},"5ae743d5-f4d5-47d3-bb00-a5ec1aec4099","1.0.0","apify-actorization.zip",8010,"uploads\u002Fskills\u002Fa17b9756-279a-4513-a7ff-2d843a9a50ec\u002Fapify-actorization.zip","9c7965d58b38d9fb852f1ff44f3ddf05ff52bc60d07158fb82582a52e34a358e","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":6826},{\"path\":\"references\u002Fcli-actorization.md\",\"isDirectory\":false,\"size\":2300},{\"path\":\"references\u002Fjs-ts-actorization.md\",\"isDirectory\":false,\"size\":2422},{\"path\":\"references\u002Fpython-actorization.md\",\"isDirectory\":false,\"size\":2467},{\"path\":\"references\u002Fschemas-and-output.md\",\"isDirectory\":false,\"size\":4225}]",{"code":43,"message":44,"data":45},200,"success",{"items":46,"stats":47,"page":50},[],{"averageRating":48,"totalRatings":48,"ratingCounts":49},0,[48,48,48,48,48],{"limit":51,"offset":48,"hasMore":52,"nextOffset":51,"ratedOnly":16},15,false]