SuperAPI AI 工具集

unity-csharp-edit

编程与开发

查看项目

更新于 10-15 16:47

技能介绍

用途:以 unity-cli 作为主要写入路径,对 Unity 项目中的 C# 代码进行实现、修复与重构,同时保持 Unity 序列化、UI 绑定路径以及编辑器/运行时边界不被破坏。

适用场景:用户意图修改 .cs 文件中的 C# 行为;创建或重写脚本(单文件或多文件协同);重命名符号、增删成员或重构;在代码变更中同步修改项目或包设置。不适用场景:只读调查应使用 unity-csharp-navigate;检查编辑器状态(控制台、Profiler、包)应使用 unity-editor-tools。

主要能力与流程:先确定写入形态(符号编辑、整文件写入、多文件写入或设置变更);用 read、get_symbols、find_symbol、find_refs 读取最小必要上下文;对有风险的符号编辑先用 apply: false 预览;应用时配合 refresh、waitForCompile、updateIndex,以便后续步骤依赖干净的诊断结果;检查 changedFiles、changedSymbols 和 diagnostics,先修复编译问题再处理无关后续工作。

必要命令示例: unity-cli raw get_symbols --json '{"path":"Assets/Scripts/Player.cs"}' unity-cli raw rename_symbol --json '{"relative":"Assets/Scripts/Player.cs","namePath":"Player/Jump","newName":"Leap","apply":false}' unity-cli raw apply_csharp_edits --json '{"files":[{"relative":"Assets/Scripts/IPlayerMover.cs","newText":"public interface IPlayerMover { void Move(); }\n"}],"validate":true,"apply":true,"waitForCompile":true,"updateIndex":true}' unity-cli raw get_compilation_state --json '{}'

典型示例:在 PlayerController.cs 中实现冲刺冷却并更新相关测试;在不破坏序列化字段名的前提下将玩家包中的 Jump 重命名为 Leap;创建新的编辑器工具脚本并修改匹配的项目设置;在一次协同写入中重构接口、其实现和测试。

限制与前置条件:需满足连接与实例前提(见 runtime-checklist.md);写入方式选择参考 file-write-recipes.md;预览优先、namePath 与写入结果检查参考 lsp-write-safety.md;序列化字段、UI 绑定、编辑器代码、ScriptableObject、SettingsProvider 等约束参考 unity-implementation-guidelines.md;项目与包设置的安全写入参考 settings-write-recipes.md。具体收费、价格与平台支持信息暂未提供。