Sails Dev Env 是一个环境准备类技能,目标是在 macOS、Linux 或 Windows 机器上建立并验证用于标准 Gear/Vara Sails Rust 开发的基础环境。
用途 该技能用于在构建、测试等 Sails Rust 工作开始之前,准备或修复本地开发环境。其目标是让机器达到一个经过验证的基线,包含 rustup、Rust 工具链、Wasm 目标、cargo-sails 以及最新的官方 gear 二进制文件。
主要能力
- 检测当前平台是 macOS、Linux 还是 Windows。
- 在缺少 rustup 时,使用对应平台的官方引导脚本进行安装。
- 安装或更新 stable 与 nightly 工具链,并添加 wasm32-unknown-unknown 和 wasm32v1-none 目标。
- 通过 cargo install sails-cli --locked 安装 Sails Rust CLI,它提供 cargo-sails 以及标准的 greenfield 引导命令 cargo sails new <project-name>。
- 从 https://get.gear.rs/ 安装最新的官方 gear 发布二进制文件。
- 使用 rustup show、cargo sails --version 和 gear --version 验证工具链。
- 根据构建者的下一步任务,路由回 ../sails-new-app/SKILL.md、../ship-sails-app/SKILL.md、../sails-gtest/SKILL.md 或 ../sails-local-smoke/SKILL.md。
使用方式 在 macOS 或 Linux 上,先检查 rustup 是否存在,不存在则通过官方脚本安装;安装后需要重启 shell 或 source 环境变量,使 cargo/rustc 可被解析。随后安装 stable 与 nightly 工具链,设置默认工具链为 stable,并为两个工具链添加 wasm32-unknown-unknown 与 wasm32v1-none 目标。接着执行 cargo install sails-cli --locked 安装 Sails CLI。gear 二进制文件从官方发布地址下载,脚本会根据 uname 自动检测架构(Darwin-arm64、Darwin-x86_64、Linux-x86_64、Linux-aarch64),解压到 ${HOME}/.local/bin 并加入 PATH。最后运行 rustup show、cargo sails --version、cargo sails --help 和 gear --version 进行验证。
在 Windows 上,若未检测到 rustup,则通过 winget install Rustlang.Rustup 安装。之后同样安装 stable 与 nightly 工具链、设置默认工具链、添加两个 Wasm 目标,并执行 cargo install sails-cli --locked。gear 二进制文件从官方发布地址下载 zip 包,解压到 $env:USERPROFILE\AppData\Local\Programs\gear\bin,并将该目录加入 PATH。最后同样运行验证命令。
适用场景 适用于需要在本地机器上开始或修复 Gear/Vara Sails Rust 开发环境的构建者,尤其是在进行构建、测试等标准 Sails Rust 工作之前。
限制与注意事项
- 该技能保持自包含,不依赖同级的 gear 检出或技能目录之外的机器本地脚本。gear 二进制文件直接从 https://get.gear.rs/ 官方发布下载。技能目录中的 scripts/install-gear.sh 和 scripts/install-gear.ps1 辅助脚本可作为替代方案,用于需要更灵活安装(例如自定义标签或目标)的情况。
- 除非用户要求特定标签或从源码构建,否则优先使用最新的官方 gear 发布二进制文件,而不是从源码构建节点。
- 基础包管理器引导被视为超出范围。如果 curl、tar、xz 或 winget 等宿主工具缺失,应先用平台包管理器安装它们,然后继续。
- 不要假设 Node.js、npm 或 sails-js-cli 属于本技能的一部分。仅当当前工作流确实需要时,才单独安装 JS 工具。
- 除非目标仓库已通过工具链文件或失败的构建要求某个特定 nightly 日期,否则不要固定任意的 nightly 日期。