kestra
kestra-io/kestra加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
如果你每天的早晨都在做同一件事——等数据管道跑完、看告警、手动触发下游任务——那么你正活在一个"编排"的真空里。Kestra 想填的就是这个洞。

Kestra 是一个开源的、事件驱动的编排平台,用声明式 YAML 描述流程,把定时触发和事件触发统一到同一套模型里。2019 年由法国团队起步,到 2026 年 10 月发布 2.0.7 版本(Apache-2.0 协议),GitHub 上已经积累 30042 星、3484 个 fork、427 位贡献者。
2.0 版本最大的变化是把控制面彻底重构:Worker 与控制面之间的通信从 JDBC 队列换成了 gRPC worker-controller,数据面与控制面解耦,可以跨区域、跨受限网络部署。任务运行输出被挪到独立存储,不再内联在执行记录里,数据库体积明显缩小,执行列表页加载更快。
而对 AI 工程师来说最刺激的变化是:任何一个 Kestra 流程,加一个 trigger,立刻就变成 MCP 服务器上一个具名的工具。AI Agent 发出工具调用,Kestra 用匹配的输入跑流程,再把输出返回回去——不需要你写一层 REST 包装,也不需要轮询。输入会自动映射到工具的 JSON Schema,每一次由 Agent 触发的执行都会被打上来源和会话标记,方便审计"你的 AI 到底碰了什么"。
如果把 Kestra 想象成一个"工厂车间的调度台":
而 2.0 引入的 MCP Server 相当于给车间装了一个"智能工头"的耳麦——任何带耳麦的 AI(Claude Code、Cursor、Codex)都能指挥这条产线。

Kestra 特别强调"同一份流程三种写法、始终同步"。你在 UI 里拖拽改拓扑编辑器,YAML 立刻跟着变;你在 YAML 编辑器里手改,UI 也会实时刷新语法校验和高亮。这意味着无论团队里是 Java 工程师还是数据分析师,产出物都是可 Git 版本管理、可 Code Review 的声明式代码——这是它和纯低代码工具最本质的差别。
内置的 AI Copilot 在 2.0 里升级成了常驻侧边栏,分 Ask / Edit / Plan 三种模式,并且会读取 namespace 的元数据,让建议能直接复用你已经配置好的凭据。同时 Kestra 还提供 Agent Skills,让 Claude Code、Cursor、Windsurf 这类编码助手直接生成和管理流程。
Kestra 的 AI 设计思路是"不绑模型":
安全方面也有实打实的设计:2.0 重写了权限模型,从通用的 CRUD 四动作改成"资源 + 动作"模型(例如 EXECUTION: ACCESS_LOGS、TRIGGER: BACKFALL),并内置 Viewer、Launcher、Editor、Developer、Admin 五个托管角色。


路径一,最快(适合评估):官方 docker-compose 一键起,包含了 postgres:18 依赖、存储卷和健康检查:
docker compose up -d
# 打开 http://localhost:8080
路径二,最常用(单机裸机):直接跑官方镜像,加挂载数据卷:
docker run -p 8080:8080 -v kestra_data:/app/storage kestra/kestra:latest
路径三,生产级:charts/kestra/values.yaml 提供了完整的 Helm Chart,可配置镜像仓库、持久化、Ingress、租户与队列后端等;HA 模式可用 PostgreSQL/MySQL 作为 repository 与 queue,存储可切到对象存储。
从源码构建门槛不低:后端是 Java 25 + Micronaut + Gradle,前端是 Vue 3 + TypeScript + Vite(要求 Node ≥ 24),gradlew :webserver:build 才能产出完整应用。但对使用者来说镜像已经够用。
硬件方面对 AI 任务本身无强制要求——控制面不吃 GPU,大模型调用是走外部 API;但如果你要用 Ollama 本地跑模型或做本地 Embedding,那就要按模型大小自己配显存。
其一,学习曲线真实存在。 Micronaut + Gradle 多模块 + Vue 前端的代码库体量很大,仓库根目录有 60 多个 Gradle 模块,worker-controller、indexer、jdbc-postgres 等分得很细。想贡献代码或深度改架构,门槛比 Airflow、Dagster 更高一个量级。
其二,2.0 的破坏性变更不小。 ForEach / ForEachItem 被统一的 Loop 任务取代,语义和输出表达式有变化,需要按迁移指南改写;权限模型重写、存储抽象重构,意味着 1.3.x 升级到 2.0 不是无痛的。虽然官方提供了自动迁移工具能改写大部分流程,仍会标出需人工介入的用例。
其三,官方 compose 的默认配置只适合开发。 示例里 PostgreSQL 密码是明文 k3str4,Kestra 以 root 运行以访问 Docker socket,8081 管理端口默认不暴露但注释里写明"暴露管理端口仅限开发用途"——直接拿到生产环境是危险的。
其四,README 里的架构承诺需要实测验证。 官方宣称"可扩展到百万级执行",但这依赖于后端选型(PostgreSQL vs MySQL)和分区策略,官方自己也专门写了如何选后端的对比文档,说明这个结论不是无条件成立的。
Kestra 的成长曲线本身就是趋势的注脚:从"数据编排工具"(对标 Airflow/Dagster)进化到"AI 时代的工作流控制平面"——既能把 AI Agent 编排进流程(流程里跑 Agent),也能把流程暴露给 AI Agent(Agent 调流程)。这种双向打通正是当前 Agent 基础设施的主战场。
值得注意的是 Kestra 在 2.0 里没有像不少同类项目那样改协议或砍社区版功能,而是继续以 Apache-2.0 开放,并采用一年期 LTS 支持策略。30042 星背后是 427 位贡献者、每周持续提交(最近一次 push 就在 2026 年 10 月 28 日),加上完整写入 AGENTS.md、CLAUDE.md 的 AI 编码规范和 .agents/skills 目录——这套"AI 友好"工程实践本身,就已经是它给 AI 开发者的一份示范。
| 指标 | 数值 |
|---|---|
| Stars | 30042 |
| Forks | 3484 |
| Contributors | 427 |
| Open Issues | 845 |
| 最新版本 | v2.0.7(2026-10-20) |
| 许可证 | Apache-2.0 |
| 主语言 | Java 54.9% / TypeScript 29.8% / Vue 13.9% |
| 部署方式 | Docker、Compose、Helm Chart、裸机 |
| Web UI | 有(Vue 3 + Vite) |
| 外部依赖 | PostgreSQL/MySQL/H2、消息队列、对象存储 |