Unity CI 流水线工具集。提供 ci_agent.py Python CLI 与 CiRunner.cs Unity Editor 脚本,实现全自动化 Unity批量模式构建、编译检查等功能。
Unity CI Kit: 目的
功能概述
Unity CI Kit: 目的是一项面向实际任务的技能,主要用于用于 Unity 项目的可全自动建立测试验证管道的 lipp- in CI 工具包;Python 代理( ci agent. py ) 处理 Unity 批量模式的引用和。
核心要点
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
Unity CI Kit
用途
一款即插即用的 Unity 项目 CI 工具包,支持构建–测试–验证全流程的完全自动化。
Python 代理(ci_agent.py)负责调用 Unity 的 batchmode 模式并解析执行结果;
C# 运行器(CiRunner.cs)则在 Unity 编辑器内部提供可复用的步骤化执行框架。
二者协同工作,可在开发迭代过程中彻底消除对 Unity 编辑器的手动交互需求。
适用场景
当出现以下任一情况时,应触发本技能:
- 用户提出“为 Unity 设置 CI”或“自动化 Unity 构建”等需求
- 用户希望从命令行运行 Unity batchmode 编译
- 用户需要将硬编码的 CI 脚本迁移为可复用、配置驱动的工具包
- 用户在 Unity 自动化上下文中提及
ci_agent.py、ci_config.json或CiRunner.cs - 用户正在初始化一个新 Unity 项目,并希望从第一天起就采用经过验证的 CI 流水线
请勿将本技能用于非 Unity 项目,或仅需简单一次性 shell 脚本、无需可复用框架的场景。
工作流程
步骤 1:初始化项目
在 Unity 项目根目录下运行 ci_agent.py init。该命令将生成含默认值的 ci_config.json。
请编辑该配置文件,设置以下字段:
unity_version— 例如"2022.3.62f3c1"(需与 ProjectVersion.txt 中版本一致)unity_path— 留空可启用自动发现;也可手动指定 Unity 可执行文件的绝对路径execute_method— 指定要调用的 Unity 静态方法,例如"StarVanguard.Editor.AutoCI.RunCI"或"UnityCI.Editor.CiRunner.RunCI"
步骤 2:安装 Unity 端运行器
将本技能 templates/ 目录下的 templates/CiRunner.cs 复制到项目中的 Assets/Editor/(或 Assets/_Project/Scripts/Editor/)目录。
编辑 RunPipeline() 方法,插入项目专属的构建步骤。每个步骤均使用 Step(string name, Func 辅助函数:
private static bool RunPipeline()
{
bool ok = true;
ok &= Step("Create Assets", () => { AssetBuilder.Run(); return true; });
ok &= Step("Run Validation", () => { TestRunner.RunAll(); return testsPassed; });
ok &= Step("Apply Font", () => { FontSetup.Apply(); return true; });
AssetDatabase.SaveAssets();
return ok;
}
该辅助函数会自动为每个步骤添加 try-catch 包裹,并输出形如 [AutoCI] STEP: name => OK/FAIL 的日志。
Python 代理将解析这些日志行,生成结构化的 JSON 输出。
步骤 3:验证环境
运行 python ci_agent.py check 以验证以下各项:
- Python 版本兼容
ci_config.json文件存在且格式有效- Unity 可执行文件已在配置路径中找到,或已通过自动发现机制定位
- 项目包含
Assets/目录
步骤 4:运行 CI
python ci_agent.py build # 全流程执行(batchmode + executeMethod + 解析) python ci_agent.py compile # 仅编译(快速检查) python ci_agent.py status # 读取上一次构建结果 JSON
build 命令执行以下操作:
- 以 batch mode 启动 Unity(参数:
-batchmode -quit -nographics) - 执行配置中指定的
execute_method - 读取
ci_output.log并解析 C# 编译错误与警告 - 将结构化 JSON 写入
ci_result.json - 向标准输出打印摘要信息
步骤 5:集成至 AI 工作流
ci_result.json 输出的结构化 JSON 专为 AI 消费设计:
{
"timestamp": "2026-06-30T08:30:00",
"build_ok": true,
"errors": [],
"error_count": 0,
"warnings": [...],
"warning_count": 3,
"ci_pass": true,
"log_file": "ci_output.log"
}
AI 代理可执行如下操作:
- 编写代码变更
- 运行
python ci_agent.py compile验证编译是否通过 - 若存在错误,则解析
ci_result.json→ 修复 → 循环重试 - 确认无错误后,运行
python ci_agent.py build执行完整验证 - 全部通过后提交并推送变更
文件布局
project-root/
├── ci_config.json # 由 `ci_agent.py init` 创建
├── ci_output.log # Unity batchmode 生成
├── ci_result.json # `ci_agent.py build` 生成
├── ci_agent.py # 从本技能的 scripts/ 目录复制
└── Assets/
└── Editor/
└── CiRunner.cs # 从本技能的 templates/ 目录复制
配套资源
scripts/ci_agent.py
主 Python CLI 脚本。请将其复制至项目根目录。运行 python ci_agent.py 查看帮助信息。
支持命令:init、check、build、compile、status。
templates/ci_config.json
最小化配置模板。字段包括:unity_version、unity_path、execute_method、timeout_seconds、log_file、result_file。
templates/CiRunner.cs
通用 Unity 编辑器脚本。提供 Step() 执行框架及 RunCI() 入口方法。
命名空间:UnityCI.Editor;方法签名:public static void RunCI()。
references/setup_guide.md
面向新项目的分步搭建指南。
热门AI工具
相关专题
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题梳理XORM框架的入门路径,从框架定位、依赖安装、连接数据库到跑通第一个增删改查示例,讲清Engine初始化、日志开启与项目目录规划,并对比GORM等同类ORM的差异,帮助Go开发者建立整体认知。
0
2026.11.04
本专题聚焦Docker Desktop容器端口映射与访问配置,整理从创建容器、设置端口绑定到验证本地服务访问的操作流程。针对端口被占用、映射配置错误、容器服务无法访问等情况,也提供相应的检查方向,方便用户完成端口配置。
0
2026.11.03
想使用Docker Desktop将本地项目构建成Docker镜像?本专题围绕镜像构建的实际操作展开,介绍Dockerfile编写、构建命令使用、镜像标签设置和构建日志查看等内容,同时整理镜像无法生成、依赖安装失败及构建缓存异常等问题的排查思路。
0
2026.11.03
本专题聚焦Docker Desktop容器创建与运行配置,介绍通过本地镜像或远程镜像创建容器的方法,以及容器启动、终端访问、日志查看和基础管理等操作。针对端口冲突、参数配置不当、容器无法启动等情况,也整理了相应的排查方向。
0
2026.11.03
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.7万人学习
共6课时 | 54.7万人学习