首页龙虾技能列表 › K8s Prefect Flow Builder

K8s Prefect Flow Builder

v1.0.0

Build, modify, and review Prefect-based offline orchestration in this repository. Use when adding a new Prefect flow, wrapping an existing offline computatio...

0· 96·0 当前·0 累计
by @exenvitor (ExenVitor)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/3/23
安全扫描
VirusTotal
无害
查看报告
OpenClaw
安全
high confidence
The skill is an instruction-only authoring guide for Prefect v3 flows and its requested/declared surface is consistent with that purpose.
评估建议
This skill is a repo-centric guide for creating and deploying Prefect v3 flows; it contains patterns and templates but does not request credentials or install software. Before using it: ensure your CI/Kubernetes secrets (PREFECT_API_URL, PREFECT_DEPLOY_IMAGE, and runtime Secrets/ConfigMaps) are managed securely, confirm the target Prefect/Kubernetes versions match the templates, and review any generated prefect.yaml or CI deployment commands before applying them. If you need the skill to perform...
详细分析 ▾
用途与能力
Name and description match the content of SKILL.md and the included reference docs; all recommendations and required artifacts (prefect.yaml, src/prefect_flows/, CI variables) are coherent with building Prefect flows.
指令范围
Runtime instructions are limited to repository conventions, local files, and Prefect/Kubernetes/CI configuration guidance. There are no commands, external endpoints, or directives to read arbitrary system files or exfiltrate data.
安装机制
No install spec and no code files — the skill is instruction-only, so nothing is written to disk or downloaded during install.
凭证需求
The SKILL.md references CI-provided deploy-time values (PREFECT_API_URL, PREFECT_DEPLOY_IMAGE) and Kubernetes runtime env via env_from; no credentials or unrelated environment variables are requested.
持久化与权限
always is false and the skill is user-invocable only. There is no indication it modifies other skills or requires persistent elevated presence.
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.02026/3/23

- Initial release of the prefect-flow-builder skill. - Provides clear guidelines for adding, modifying, and reviewing Prefect-based offline orchestration in the repository. - Outlines best practices for flow structure, separation of orchestration from business logic, concurrency control, and deployment configuration. - Includes a workflow for classifying and validating changes, along with repository anchors and reference documentation for further guidance. - Documents default behaviors and usage recommendations for Prefect v3 tasks, flows, and deployments.

● 无害

安装命令 点击复制

官方npx clawhub@latest install k8s-prefect-flow-builder
镜像加速npx clawhub@latest install k8s-prefect-flow-builder --registry https://cn.clawhub-mirror.com

技能文档

Overview

Use this skill to add or refactor Prefect-managed offline workflows in this repository without mixing orchestration concerns into business logic.

Workflow

  • Classify the change.
  • New flow or major refactor: read references/flow-design.md and references/template-prefect-yaml.md.
  • Deployment-only or config change: read references/deployment-patterns.md.
  • Resource or concurrency tuning: read references/resources-and-concurrency.md.
  • If the system model is unclear, read references/architecture.md first.
  • Keep orchestration separate from compute.
  • Put heavy business logic in reusable job or service modules under src/core/....
  • Keep Prefect wrappers in src/prefect_flows/....
  • Use tasks for independently observable units or meaningful side effects; avoid exploding one logical step into many tiny tasks just for structure.
  • Choose task invocation mode deliberately: direct call for simple serial execution, .submit() or .map() for in-flow concurrency, and .delay() only for background execution on separate infrastructure.
  • If a child flow is intentionally serial, call tasks directly inside the loop and let the child flow own error aggregation and final failure semantics. Do not default to .submit() just because the unit is a task.
  • Reserve .submit() for cases that actually need Prefect futures, parallel fan-out, or non-blocking wait and collection behavior, and make sure terminal futures are resolved before the flow returns.
  • Introduce child flows only when you need a separate scaling, resource, or failure boundary.
  • Put concurrency controls at the right layer.
  • Use task-runner concurrency for in-flow task execution only; it is not a substitute for deployment or infrastructure throttling.
  • Use deployment, work-pool, worker, or work-queue limits to control how many flow runs the platform launches.
  • Use tag-based concurrency limits when many tasks across flows share an external bottleneck such as a database, API, or memory-heavy resource.
  • Treat prefect.yaml as deployment source of truth.
  • Put deployment names, schedules, work pool selection, resources, concurrency policies, and deployment parameter defaults in prefect.yaml.
  • Let CI provide only deploy-time values such as PREFECT_API_URL and PREFECT_DEPLOY_IMAGE.
  • Keep runtime business env in Kubernetes via env_from, not CI.
  • Keep infrastructure choices aligned with Prefect's worker model: deployments target work pools, and workers poll compatible pools to execute runs.
  • Make failures observable.
  • Raise exceptions instead of returning non-zero codes silently.
  • Include key context in exception messages and logs.
  • Use readable task and flow names so Prefect UI can identify the failing unit quickly.
  • When a batch must continue after per-item failures, convert each item into a structured result, finish the batch, then raise once at the flow boundary if the aggregate outcome should be failed.
  • Validate in this order.
  • Run focused tests for changed flow and job code.
  • Review prefect.yaml for deployment or resource drift.
  • Trigger a small manual run before enabling or changing schedules.
  • If the question is about Prefect semantics rather than repo conventions, verify against the official v3 docs before codifying a pattern.

Repository Anchors

  • Flow entrypoints: src/prefect_flows/
  • Reusable compute logic: src/core/
  • Deployment definitions: prefect.yaml
  • Team guide: docs/cg_offline_prediction/prefect_orchestration_overview.md

Prefect v3 Defaults

  • Tasks support three distinct execution modes in v3: direct call blocks and returns a result, .submit() returns a PrefectFuture for concurrent execution in the same flow, and .delay() is for background execution on separate workers.
  • Task runners are optional. If you are not intentionally using concurrency, do not introduce .submit() or a task runner configuration just to preserve the task decorator.
  • Task states are orchestrated client-side and may appear with eventual consistency in the UI, so design recovery and resume logic around durable business outcomes instead of assuming every intermediate task-state transition is the source of truth.

References

  • references/architecture.md for the system model and lifecycle.
  • references/deployment-patterns.md for deployment design and config ownership.
  • references/flow-design.md for wrapping existing jobs as flows and tasks.
  • references/resources-and-concurrency.md for sizing and concurrency decisions.
  • references/template-prefect-yaml.md for reusable deployment templates.
  • Prefect v3 Tasks: https://docs.prefect.io/v3/concepts/tasks
  • Prefect v3 Task runners: https://docs.prefect.io/v3/concepts/task-runners/
  • Prefect v3 Flows: https://docs.prefect.io/v3/concepts/flows
  • Prefect v3 Deployments: https://docs.prefect.io/v3/concepts/deployments
  • Prefect v3 Workers: https://docs.prefect.io/v3/concepts/workers
  • Prefect v3 Tag-based concurrency limits: https://docs.prefect.io/v3/concepts/tag-based-concurrency-limits
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务