用途
roblox-tooling 用于在文件系统工作流中设置或修复 Roblox 项目的工具链。当需要处理工具与依赖包的版本锁定、代码检查(linting)、sourcemap 以及持续集成(CI)时加载本技能。它面向的是以文件为真实来源的 Roblox 开发方式,而非仅在 Studio 内完成全部工作。
主要能力与工具覆盖
技能覆盖以下工具的使用与排查:Rojo、Wally、pesde、Selene、StyLua、Lune、Rokit、luau-lsp,以及测试与 CI/CD 配置。
- Rojo:用于「文件拥有真实来源」的工作流;sourcemap 用于编辑器工具链。
- Wally:用于 manifest 与 lockfile(可显式指定 realm)。
- 工具版本固定:通过项目自身的包管理器进行;新项目以 Rokit 为首选(Aftman 已归档,可读取 aftman.toml)。
- Selene + StyLua:在 CI 中启用 check-mode(不进行静默改写)。
- Lune:用于独立的 Luau 运行。
使用方式与工作原则
技能强调若干操作规则:
- 真实来源优先。编辑前先确认是 Studio 还是文件,绝不假设两者已同步。
- rojo syncback 会拉取已保存地点的编辑,但不等于实时双向同步;应先做 dry-run。
- 不要强加可选工具。
- TestEZ 已归档:在仍使用它的地方保留即可。
- 来自插件或 MCP 的脚本写入应通过 ScriptEditorService:UpdateSourceAsync 完成(直接写 .Source 可能覆盖已打开的编辑器),并对每次有边界的变更使用一次 ChangeHistoryService 记录。
- Script Sync 冲突按「保留 Studio」与「保留磁盘」方式解决,绝不假定任一方获胜。
CI 相关
CI 门禁应基于解析后的结果和计数,而不是退出码;测试套件应拆分为逻辑 / 文件 / HTTP / 引擎四类(详见 full.md)。
适用场景
适用于需要以文件为中心搭建或修复 Roblox 工具链的项目,包括工具与依赖固定、代码检查、sourcemap 生成、独立 Luau 运行以及 CI 集成等场景。
限制与注意事项
本段资料未提供具体版本号、安装命令、支持的平台或收费信息;相关细节暂未提供,需参考 references/full.md(包含 setup、文件布局与 CI 示例)。自动化脚本写入存在覆盖打开编辑器的风险,应遵循上述 API 与冲突解决策略。