SuperAPI AI 工具集

write-script-rust

编程与开发

查看项目

更新于 10-16 14:37

技能介绍

用途:指导在 Windmill 中编写 Rust 脚本,并选择合适的 CLI 命令来迭代、测试与部署。

主要能力与写法:脚本需包含 main 函数,参数为拥有所有权的类型,返回类型需可序列化(#[derive(Serialize)]),返回值类型为 anyhow::Result<T>。依赖通过脚本开头的内嵌 cargo.toml 片段声明,例如 [dependencies]、anyhow、reqwest、tokio;Serde 已内置无需重复添加。若需异步函数,保持 main 为同步并在其中创建运行时,如 tokio::runtime::Runtime::new()? 后用 rt.block_on(async { ... })。库会自动安装,无需展示安装步骤。

命令与用法:本地迭代用 wmill script preview <script_path>,它不部署;运行已部署版本用 wmill script run <path>;改动导入或 main 参数后运行 wmill generate-metadata 重新生成本地 .script.yaml 与 .lock 并刷新 wmill-lock.yaml 哈希,可用 --dry-run 查看影响范围、用路径参数或 --strict-folder-boundaries 收窄;仅需刷新哈希时用 wmill generate-metadata rehash。部署需用户明确要求,通过 git push 或 wmill sync push 完成,不要为测试而推送。发现资源类型可用 wmill resource-type list --schema。

适用场景与限制:资源类型未同步时相关类型会缺失,可提示超级管理员同步 Hub 类型;生成元数据可能抬高未锁定版本,应在部署前对比依赖变化。资料未提供定价、平台支持范围等信息。