windmill
windmill-labs/windmill加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
周一早上,市场部的小王跑来提需求:需要一个后台,能让销售填试用申请、主管点同意、自动在 CRM 建档、发 Slack 通知。以往这活儿要么等工程师排期两周,要么业务自己去搭 n8n 之类别扭的拖拽流程。
Windmill 的思路是:小王在浏览器里用 AI Session 让它写一个 TypeScript 脚本,参数一填,平台自动生成表单界面、REST 接口和定时任务;小王自己就能改,改完走"工作区 fork → 代码评审 → 晋级到生产"的流程,工程师只审不写。同一平台,业务团队自助,工程师握闸门。
Windmill 是 Windmill Labs 出品的开源可自托管平台,定位是"代码优先(code-first)的工作流、应用与 AI Agent 平台",对标 Lovable、Retool、n8n、Airflow、Prefect 与简化版 Temporal。截至 2026 年 10 月,GitHub 上已积累 18,328 星、1,132 个 fork、167 位贡献者、超过 15,500 次提交,仍在活跃迭代(最近一次推送为 2026-10-30)。项目采用 AGPLv3 + Apache 2.0 双许可:后端主体为 AGPLv3,API 客户端与 OpenAPI 规范为 Apache 2.0,企业特性另行商业授权。

图:Windmill 官方项目横幅
如果说 Airflow 像机场的航班调度塔——所有任务都必须在跑之前先向塔台报备——那 Windmill 更像"函数调用的快递站":每个脚本是一个独立包裹,参数即面单,平台只负责调度、隔离、记账和交付结果。任务启动几乎没有额外开销,从队列取出、启动、结果回写数据库的延迟约 50 毫秒,一个轻量 Bun 任务端到端约 100 毫秒。
另一个类比是"自动贩卖机":你把代码投进去,平台自动给你配好 UI、接口、定时器、权限和日志,你只要按按钮。不同的是 Windmill 这台贩卖机是用 Rust 写的、同时支持二十多种语言的脚本投币口。
脚本即全栈产物。 一个带类型标注的函数就是完整交付物:参数类型自动解析成前端表单控件(字符串联合类型会变成下拉框),函数返回值自动成为 JSON 响应,函数签名同时变成 CLI 子命令和 HTTP 路由。开发者不再为"写接口""做表单""加个定时器"重复劳动。
工作流也是代码。 除可视化 flow 编辑器和 YAML 之外,2026 年 4 月上线的 workflow-as-code 允许在 TypeScript/Python 中用 task()、waitForApproval()、workflow() 直接编排,带检查点、并行与容错。等待人工审批时 worker 会被释放而不是空转。
AI 是一等公民而非插件。 2026 年 10 月 20 日发布的 AI Sessions 让 AI 在"工作区 fork"中以整个工作区为上下文写脚本/流程/应用,提供 plan 模式、skills、MCP 服务器、实时预览和部署前 diff 评审。配套还有 AI sandboxes(把 Claude Code、Codex 等编码 Agent 跑在带持久卷的隔离环境里)、MCP server(让外部编码 Agent 读写工作区资源、跑脚本、监控 job)。团队自己就用这套做内部工单自动化:Discord/Slack/邮件工单汇聚到一个队列,用 Claude 分诊并起草回复。
数据层下沉到引擎。 内置 Data tables(工作区托管的 Postgres 表,无需暴露连接串即可用类型检查的 SQL 查询)、DuckDB(跨 S3/Azure Blob 的 Parquet/CSV 查询)、DuckLake(湖仓表),以及 alpha 阶段的 Pipelines——按读写的数据依赖自动推导执行,而非手绘 DAG。现有 dbt 项目可原样当作脚本运行。
安全与隔离。 沙箱基于 Google 的 nsjail,配合 PID namespace 隔离(compose 默认开启 FAVOR_UNSHARE_PID),阻止任务读取 worker 进程内存;每个工作区一把加密密钥保护 K/V 存储中的凭据;另有 Protection rulesets 阻断直接部署。
性能主打。 官方基准称在"40 个轻量任务"与"10 个长任务"两类 flow 上均快于 Airflow、Prefect 与 Temporal。

图:内置 Web IDE 脚本编辑器
这是本次评估的重点。容器化支持完整:仓库根目录提供多阶段 Dockerfile(Rust 编译后端 + Node 构建 Svelte 5 前端 + 从源码编译 nsjail),同时提供 docker-compose.yml、Caddyfile 与 .env 三个文件的标准自托管路径:
curl https://raw.githubusercontent.com/windmill-labs/windmill/main/docker-compose.yml -o docker-compose.yml
curl https://raw.githubusercontent.com/windmill-labs/windmill/main/Caddyfile -o Caddyfile
curl https://raw.githubusercontent.com/windmill-labs/windmill/main/.env -o .env
docker compose up -d
起来后访问 http://localhost,默认账号 admin@windmill.dev / changeme。compose 编排了 PostgreSQL 18、windmill_server(API,无状态)与 windmill_worker(默认 3 副本,每个限 2GB 内存,需 privileged 模式开 PID namespace),另有 linter、indexer、oauth2-proxy 等辅助服务。Kubernetes 场景走独立的 windmill-helm-charts 仓库(helm repo add windmill https://windmill-labs.github.io/windmill-helm-charts/),也支持 AWS EKS/ECS、GCP、Azure、Fly.io、Hetzner 等。
门槛判断:
docker compose up -d 即可跑通。pg_dumpall 整集群)、OAuth/SSO/SMTP 接入、密钥加密、worker 资源规划等。开发者路径选择: 工程师可用 CLI(wmill init 会生成 AGENTS.md 与 Claude Code/Cursor 的 skill 文件)、VS Code 扩展与 Git 双向同步;业务团队则在浏览器里用 AI Session 零安装起步。两条路汇入同一个工作区。

图:可视化 flow 编辑器
Windmill 折射的是 2025-2026 年 AI 编程工具的一个关键转折:AI 写出的代码越来越多,但"谁来审、谁来部署、谁担责"的问题被推到了台前。Windmill 的答案是把传统的 GitOps 治理纪律搬进低代码世界——fork、diff、评审、环境保护规则、跨环境晋级、AI 专用 worker 隔离。业务团队获得自助搭建的效率,工程师保留生产闸门。
从产品轨迹看,它正从"最快的自托管工作流引擎"向"AI 时代的内部软件交付平台"位移:workflow-as-code(2026-04)、AI sandboxes(2026-04)、Windows 原生自动化(2026-04)、Git sync 与工作区 fork、到 AI Sessions(2026-10)——一年半内完成了从编排引擎到 Agent 平台的转身。
对企业的现实价值在于:当"每个部门都要一个小工具"这种需求潮涌而至时,用一个可自托管、可审计、代码与 AI 共存的平台承接,比堆叠多个 SaaS 内嵌工具更可控。这也正是它 18,000+ 星背后的真实驱动力。

图:全代码应用构建器(React/Svelte)

图:官方自托管工作流引擎性能基准对比