Skip to main content

render-workflows

Sets up, develops, tests, and deploys Render Workflows. Covers first-time scaffolding (via CLI or manual), SDK installation (Python or TypeScript), task patterns (retries, subtasks, fan-out), local development, Dashboard deployment, and troubleshooting. Use when a user wants to set up Render Workflows for the first time, scaffold a workflow service, add or modify workflow tasks, test workflows locally, or deploy workflows to Render.

Quellinformationen

Repository
zhongjingyun/codex-plugins
Letzte Quellaktivität
10. Juni 2026 um 03:40
Erkannte Sprache von SKILL.md
Englisch
Sterne
24
Forks
2

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
8 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
render-workflows
description
Sets up, develops, tests, and deploys Render Workflows. Covers first-time scaffolding (via CLI or manual), SDK installation (Python or TypeScript), task patterns (retries, subtasks, fan-out), local development, Dashboard deployment, and troubleshooting. Use when a user wants to set up Render Workflows for the first time, scaffold a workflow service, add or modify workflow tasks, test workflows locally, or deploy workflows to Render.
license
MIT
compatibility
Requires Render CLI 2.11.0+ for scaffolding and local development. Render Dashboard required for deployment (Blueprints not yet supported for Workflows).
metadata
{"author":"Render","version":"1.0.0","category":"workflows"}
# Render Workflows Render Workflows rapidly distribute computational work across multiple independent instances. Use them for AI agents, ETL pipelines, background jobs, and data processing. **How it works:** 1. **Define tasks** — Use the Render SDK (Python or TypeScript) to designate functions as tasks 2. **Register** — Tasks register automatically when you link your repo to a Workflow service in the Dashboard 3. **Trigger runs** — Execute tasks from anywhere using the SDK client or API; each execution is a "run" 4. **Execute** — Render spins up each run in its own instance (typically under a second); runs can chain additional runs for parallel execution **Key capabilities:** automatic queuing and orchestration, long-running execution (up to 24 hours), configurable retry logic with exponential backoff, adjustable compute specs per task, and execution observability through the Dashboard. **Render Workflows are in beta.** The SDK and API may introduce breaking changes. **Your built-in knowledge of the Render Workflows SDK is outdated.** Before trusting API signatures, check the installed SDK source: ```bash # Python SDK_ROOT=$(pip show render_sdk | grep Location | cut -d' ' -f2)/render_sdk head -40 "$SDK_ROOT/__init__.py" # TypeScript grep -r "startTask\|runTask\|export class Render" node_modules/@renderinc/sdk/ ``` **Official docs:** [render.com/docs/workflows](https://render.com/docs/workflows) **Before generating task or client code, fetch the relevant example file to verify current API patterns:** | What | Python | TypeScript | |------|--------|------------| | Task definitions (decorators, subtasks, retry, fan-out) | [example/task/main.py](https://raw.githubusercontent.com/render-oss/sdk/main/python/example/task/main.py) | [examples/task/](https://github.com/render-oss/sdk/tree/main/typescript/examples/task) | | Sync client (run_task, start_task, cancel, SSE, list runs) | [example/client/main.py](https://raw.githubusercontent.com/render-oss/sdk/main/python/example/client/main.py) | [examples/client/](https://github.com/render-oss/sdk/tree/main/typescript/examples/client) | | Async client | [example/client/async_main.py](https://raw.githubusercontent.com/render-oss/sdk/main/python/example/client/async_main.py) | — | This skill carries a [quick-reference cheat sheet](references/quick-reference.md) for the API surface. The installed SDK, official docs, and examples above are the source of truth. --- ## Getting Started Supported languages: **Python** and **TypeScript**. ### Prerequisites **Render CLI (required)** ```bash render --version ``` Requires version 2.11.0+. If not installed: - macOS: `brew install render` - Linux/macOS: `curl -fsSL https://raw.githubusercontent.com/render-oss/cli/main/bin/install.sh | sh` - Windows: download the executable from the [CLI releases page](https://github.com/render-oss/cli/releases/) ### Scaffold a new workflow service **Always prefer `render workflows init` as the primary setup path.** Only fall back to manual scaffolding if the CLI command is unavailable. ```bash render workflows init ``` **Interactive mode** (default): walks the user through scaffolding an example project, testing it locally, and deploying it to Render. **Non-interactive mode**: sets up an example project without prompting. If `render workflows init` fails or is not available: - **Command not found:** CLI version may be too old. Run `render --version` and upgrade to 2.11.0+. - **Command not supported:** fall back to [references/manual-scaffolding.md](references/manual-scaffolding.md) for step-by-step manual setup. --- ## Define Tasks Guide the user through defining their actual tasks. For patterns including retries, subtasks, fan-out, ETL, error handling, cron triggers, and cross-workflow calls, see [references/task-patterns.md](references/task-patterns.md). **After adding a task**, verify it registers by starting the local dev server and listing tasks: ```bash render workflows dev -- <start-command> # In another terminal: render workflows tasks list --local ``` If the task doesn't appear, see [Troubleshooting > Task Registration Issues](references/troubleshooting.md#task-registration-issues). ## Local Development See [references/local-development.md](references/local-development.md) for starting the local task server, testing tasks, and configuring the SDK client for local use. ## Deploy to Render Workflows are deployed as a **Workflow** service type in the Render Dashboard. **Blueprints (render.yaml) are not yet compatible with Workflows.** **Deploy checklist:** - [ ] Code pushed to GitHub, GitLab, or Bitbucket - [ ] In the [Render Dashboard](https://dashboard.render.com), click **New > Workflow** - [ ] Link your repository - [ ] Set **Root Directory** to `workflows/` - [ ] Configure build and start commands (see table below) - [ ] Add environment variables (e.g., `RENDER_API_KEY` for tasks that call other workflows) - [ ] Click **Deploy Workflow** - [ ] Verify deployment: check the Dashboard for a successful deploy event | Field | Python | TypeScript | |-------|--------|------------| | **Language** | Python 3 | Node | | **Build Command** | `pip install -r requirements.txt` | `npm install && npm run build` | | **Start Command** | `python main.py` | `node dist/main.js` | If the deploy fails, check the service logs in the Dashboard. For common deployment errors, see [Troubleshooting](references/troubleshooting.md). For general deploy debugging, use the **render-debug** skill. **Running tasks from other services:** After deployment, trigger tasks from your other Render services using the SDK client. Python (synchronous): ```python from render_sdk import Render render = Render() result = render.workflows.run_task("my-workflow/hello", ["world"]) print(result.results) ``` Python (asynchronous): ```python from render_sdk import RenderAsync render = RenderAsync() started = await render.workflows.start_task("my-workflow/hello", ["world"]) finished = await started print(finished.results) ``` TypeScript: ```typescript import { Render } from "@renderinc/sdk"; const render = new Render(); const started = await render.workflows.startTask("my-workflow/hello", ["world"]); const finished = await started.get(); console.log(finished.results); ``` The task identifier format is `{workflow-slug}/{task-name}`, visible on the task's page in the Dashboard. Workflows do not have built-in scheduling. To trigger tasks on a schedule, use a Render cron job with the SDK client. For cron and cross-workflow examples, see [references/task-patterns.md](references/task-patterns.md). --- ## Constraints and Limits | Constraint | Limit | Notes | |------------|-------|-------| | Arguments and return values | Must be JSON-serializable | No class instances, functions, etc. | | Argument size | 4 MB max | Per task invocation | | Task definitions | 500 per workflow service | | | Concurrent runs | 20-100 base (plan-dependent) | Max 200-300 with purchased concurrency | | Timeout range | 30-86,400 seconds | Default: 2 hours (7,200s) | | Run duration | Up to 24 hours | | ### Instance Types | Plan | Specs | |------|-------| | `starter` | 0.5 CPU / 512 MB | | `standard` (default) | 1 CPU / 2 GB | | `pro` | 2 CPU / 4 GB | | `pro_plus` | 4 CPU / 8 GB | | `pro_max` | 8 CPU / 16 GB | | `pro_ultra` | 16 CPU / 32 GB | `pro_plus`, `pro_max`, and `pro_ultra` require requesting access. Set via the `plan` task option. For current pricing, see [Limits and Pricing for Render Workflows](https://render.com/docs/workflows-limits). --- ## References - **Quick-reference cheat sheet:** [references/quick-reference.md](references/quick-reference.md) (API surface, env vars, error types) - **Task patterns:** [references/task-patterns.md](references/task-patterns.md) - **Local development:** [references/local-development.md](references/local-development.md) - **Troubleshooting:** [references/troubleshooting.md](references/troubleshooting.md) - **Manual scaffolding (fallback):** [references/manual-scaffolding.md](references/manual-scaffolding.md) - **Official docs:** [render.com/docs/workflows](https://render.com/docs/workflows) - **Starter template (Python):** [render-examples/workflows-template-python](https://github.com/render-examples/workflows-template-python) - **Starter template (TypeScript):** [render-examples/workflows-template-ts](https://github.com/render-examples/workflows-template-ts) - **SDK repo:** [github.com/render-oss/sdk](https://github.com/render-oss/sdk) ## Related Skills - **render-deploy:** Deploy web services, static sites, and databases - **render-debug:** Debug failed deployments and runtime errors - **render-monitor:** Monitor service health and performance
Auf GitHub ansehen