Project Auditor Fixes

unity-technologies/skills/skills/project-auditor-fixes

作者 unity-technologiescb1dccb8f5ad无许可证1K 个星标收录于 2026年10月8日更新于 2026年10月8日仓库今天更新

Instructions for how to use Project Auditor to find and fix a list of issues.

AI 生成的概览

指导代理运行 Unity Project Auditor 扫描,并以可审阅的提交修复报告的问题。

功能
该技能提供使用 Unity Project Auditor 对 Unity 项目进行静态分析扫描并读取生成的 CSV 问题列表的说明。它介绍了 audit 与 audit_status 命令、终止状态、CSV 列,以及自动 tick、热重载和异步轮询等常见注意事项。随后给出流程:按文件和类型分组问题、分批修复、修改前后运行测试,并逐步提交。
适用场景
适用于需要对 Unity 项目执行 Project Auditor 扫描,并对报告的问题进行分诊和修复的场景。也适合要求用测试用例验证改动、并按用户版本控制设置逐步提交的工作。
运行要求
需要安装 Unity CLI 及 unity-cli 技能、在 Unity 编辑器中打开的 Unity 项目,以及 Project Auditor 及其分析规则(在内置模块编辑器中为 com.unity.project-auditor-rules 包)。该技能不包含脚本,仅为说明文档。

Using Project Auditor Project Auditor carries out a static analysis scan of the Unity Project and reports a list of CSV issues that may be fixed. Trigger, poll, read.

Prerequisites

To use Project Auditor you'll need the Unity CLI installed - see the unity-cli skill for more details. Once you have that, the audit and audit_status commands run Project Auditor checks.

bash
unity command audit                              # optional: --categories Code,ProjectSetting --output my.csvunity command audit_status                       # repeat until a terminal status is returned

audit_status terminal status are completed (with csvPath + issueCount), failed, unavailable, and interrupted (a domain reload killed the scan — just re-run audit). Polling is responsive while a scan compiles assemblies and is busy on the main thread. You can only run one scan at a time: a second audit returns busy. There is no cancel — stop polling to abandon a scan.

The output CSV has columns: Category, Severity, Areas, Description, RelativePath, Line, DescriptorId, Recommendation (these are diagnostics only, so every row is something to fix; Recommendation says how to do it).

Requires Project Auditor plus its rules. unavailable means the Editor has no Project Auditor, or it has no analysis rules — in a built-in-module Editor the rules live in the separate com.unity.project-auditor-rules package (unity command package_add --identifier com.unity.project-auditor-rules --confirm true). Read the message field; the command never reports an empty completed scan that would look like a clean project.

Gotchas

  • set_autotick first. Without it, recompile and tests can hang while the editor is unfocused. The package's watchdog relies on the tick loop staying alive.
  • Hot reload needs the game running. reload_file_override / reload_file apply to a live game — enter Editor Play Mode (unity command editor_play) first, or run a dev Player.
  • Player-only commands need a dev Player. log, set_timescale, runtime_status, etc. hit the Runtime server, which does not run in the Editor.
  • Async commands poll. recompile→recompile_status, run_tests --async_tests→ test_status. Never assume completion from the trigger call's response.
  • Target a specific instance with --instance host:port or --project-path <path> when more than one is running.

Best Practice

When fixing a list of issues it's best practice to have a test case to make sure things are still working correctly. This might be a particular scene to open and start play mode, or a particular platform to build and run. If this isn’t present and there are no instructions, suggest a test case to the user and ask for confirmation. Run the test case before and after changes to make sure the project is still working.

As you work, make sure any changes are committed in alignment with user version control setup. Wherever possible, commit step-by-step, breaking things down into changes that a user can easily understand.

Recipe

  1. Make sure the project opens cleanly (with no compile or other errors in the Editor). If there are issues present, check with the user; they may know about them and want to ignore them. Run the test case and make sure you know what state it's in, fixing things if necessary.
  2. Commit any changes so that we start the upgrade process with clean version control.
  3. Open the project in the Unity Editor. Then use Unity CLI to run the audit command.
  4. Group the issues by file and by type.
  5. Choose a type of issue to work through one group or file at a time. 5.a. Default to fixing settings issues on assets or the projects by type. 5.b. Default to fixing code issues by file and subfolder. 5.c. However, it’s important to fix issues in human manageable and reviewable batches. 5.c.i. Making the same small change across a large number of files (for example, switching a boolean setting across many textures) is probably best done in one commit, or a commit per subfolder. 5.c.i.. When making code changes, the code should compile between each commit. 5.d. Make changes based on the recommendations from Project Auditor. Commit each change once there are no errors in the editor.

来源与署名

来源:unity-technologies/skills位于skills/project-auditor-fixes提交cb1dccb

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架