为Unity-Skills开发新技能:[UnitySkill]特性、反射注册与参数校验全解
【免费下载链接】Unity-SkillsAI automation skills specifically designed for Unity项目地址https://gitcode.com/gh_mirrors/un/Unity-Skills点击查看免费下载Unity-Skills 是一个让 AI 通过本地 REST API 直接操控 Unity 编辑器的自动化技能框架内置 805 个技能覆盖场景、脚本、资产、光照等场景。想让它学会你的独门操作只需三步写一个静态方法 → 贴上[UnitySkill]特性 → 框架通过反射自动注册并暴露为 REST 接口。本文带新手一次走通 [UnitySkill] 特性、反射注册与参数校验的完整开发链路。一个技能的生命周期从方法到 REST 接口在动手之前先理解新技能被看见的完整链路编写静态方法 [UnitySkill] 特性 ↓ SkillRouter.Initialize() 反射扫描TypeCache ↓ 构建技能注册表名称、参数、风险元数据 ↓ GET /skills/schema 可查签名POST /skill/name 可执行 ↓ 参数校验必填 / 类型 / 保留参数 / 语义规则→ 执行或 dryRun 报告好消息是你只负责第一步后面全部由框架自动完成。前置条件是把包装进项目Unity 2022.3在 Package Manager 中添加com.besty.unity-skills即可写好 [UnitySkill] 特性一次声明所有元数据技能特性的定义在 UnitySkillAttribute.cs。它只能标记在公共静态方法上第 84-85 行字段可分为三组1️⃣ 基础字段字段作用Name技能的 REST 名称如cleaner_find_unused_assets不填则按方法名转蛇形命名Description技能描述AI 检索时的重要线索TracksWorkflow是否参与工作流快照追踪2️⃣ 意图层元数据供 AI 路由与推荐Category所属模块对应 SkillCategory 中的 54 个分类GameObject、Material、Cleaner…Operation操作类型Query / Create / Modify / Delete / Execute / Analyze可组合Tags语义标签影响recommend意图检索的召回Outputs/RequiresInput产出与依赖的关键字段用于技能间的数据串联RequiredParams强制必填的参数即使 C# 签名给了默认值ReadOnly是否纯查询、无副作用3️⃣ 风险与影响元数据决定治理层行为MutatesScene/MutatesAssets是否改场景或磁盘资产MayTriggerReload/MayEnterPlayMode是否触发编译重载或进出播放模式LongRunning长耗时同步操作提示 AI 不要误判为超时重试RiskLevellow默认/medium/highModeSkillMode 权限档位SemiAuto直接执行FullAuto默认在 Approval 模式下需用户授权一个真实的最小例子来自 CleanerSkills.cs[UnitySkill(cleaner_find_unused_assets, Find potentially unused assets of a specific type, Category SkillCategory.Cleaner, Operation SkillOperation.Analyze, Tags new[] { cleaner, unused, assets, dependencies }, Outputs new[] { assetType, potentiallyUnusedCount, assets }, ReadOnly true, Mode SkillMode.SemiAuto)] public static object CleanerFindUnusedAssets( string assetType Material, string searchPath Assets, int limit 100) { ... }反射自动注册SkillRouter 如何发现你的方法编辑器启动或域重载后SkillRouter.Registry.cs 中的Initialize()通过 Unity 的TypeCache.GetMethodsWithAttributeUnitySkillAttribute()一次性扫出全部技能方法无需手动维护任何注册列表。注册时会做几件关键的事过滤规则跳过非public、非static的方法——忘了static是最常见的技能消失原因参数白名单方法签名参数 保留参数verbose、offset、limit等构成AllowedParameterSet多传参数会报错而不是静默忽略构建反向索引Outputs声明的字段会建立产出字段 → 技能的映射支撑 AI 自动规划先查谁、再调谁读取参数描述从[SkillParam]特性提取每个参数的语义说明注入 schema所以给新技能起名有讲究REST 名用小写蛇形xxx_yyy动词对象asset_reimport、light_set_properties与项目内 805 个既有命名保持一致AI 才能猜得中、叫得对。参数校验三层防线让调用叫得准、错得明白参数校验逻辑集中在 SkillRouter.Validation.cs 的ValidateParameters()共三层第一层必填与类型无默认值的参数视为必填缺失进入missingParams报MISSING_PARAM有默认值的参数缺省自动填默认值想强制必填用特性的RequiredParams new[] { xxx }声明类型不匹配进入typeErrors报TYPE_MISMATCH并附期望类型特例目标是string却收到 JSON 数组/对象批量类技能的queryJson参数常见会自动序列化回字符串无损兼容第二层参数语义描述 —— SkillParam[SkillParam(...)]是给名字本身说不清含义的参数写的语义小注坐标系、单位、取值范围、与其它参数的优先级。它会作为description出现在 schema、recommend 与 dryRun 响应里是 AI 正确调参的关键。项目中的实例AssetSkills.cs[SkillParam(Unity FindAssets syntax: name substrings and/or t:Type (e.g. t:Material). Not a path or glob.)] string filter t:Material第三层保留参数与语义规则verbose必须是布尔、offset/limit/pageOffset/pageLimit有类型和最小值检查ValidateReservedBodyParameters最后由SkillPlanningService.ApplySemanticValidation执行跨参数语义规则。技能体内部还可主动校验项目约定写法是 Validate.Required见 AnimatorSkills.cs 中的大量用法if (Validate.Required(assetPath, assetPath) is object err) return err;校验结果如何被看见调用任意技能时带上?modedryRun即使参数全错也不会写任何东西只返回一份校验报告——这正是新技能上线前最好的试飞方式。上线自测三条命令验证新技能新技能编译通过后按顺序验证查注册GET /skills/schema?names你的技能名—— 能返回签名说明反射注册成功查检索GET /skills/recommend?intent关键词—— 看Tags和Description是否足够让 AI 命中它查校验POST /skill/你的技能名?modedryRun故意传错参数确认返回MISSING_PARAM/TYPE_MISMATCH而非静默通过技能发现协议与错误码全表可参考 protocol-discovery.md 与 protocol-error-codes.md整体调用约定见 SKILL.md。新手避坑清单 症状原因修复schema 里查不到技能方法不是public static或类不在 Editor 程序集内检查方法签名与 asmdef 归属AI 从不推荐你的技能Description/Tags太泛或没有用意图动词 具体对象命名补标签删类操作直接执行漏标Mode SkillMode.FullAuto或风险元数据默认FullAuto即走授权流勿手改默认dryRun 显示 valid 但执行失败技能内部Validate.Required的语义错误未声明进RequiredParams把带默认值的必填参数写进RequiredParams调用看起来卡死长耗时同步操作未标LongRunning标注后 AI 会停止误重试写在最后Unity-Skills 的技能体系把声明与注册彻底解耦你专注写好一个带注释的静态方法[UnitySkill] 特性负责风险与意图元数据TypeCache反射负责自动发现三层校验负责让每次失败都错得明白。照着本文的三步走你的第一个自定义技能比如批量重命名某类资产今天就能跑通。更多设计细节可深入阅读 SkillRouter.cs 系列分文件与 OPERATING_MODES.md。赞分享【免费下载链接】Unity-SkillsAI automation skills specifically designed for Unity项目地址https://gitcode.com/gh_mirrors/un/Unity-Skills点击查看免费下载相关推荐告别SQL注入隐患pgx 5.6 StrictNamedArgs命名参数校验新特性详解告别SQL注入隐患pgx 5.6 StrictNamedArgs命名参数校验新特性详解 在Go语言开发PostgreSQL数据库应用时SQL注入始终是悬在开数据库后端unity-mcp 中 unity_reflect 工具全解析用实时反射校验 Unity C API告别过时的训练数据unity mcp 中 unity_reflect 工具全解析用实时反射校验 Unity C API告别过时的训练数据 unity_reflect 是 unMCP 服务AI 应用游戏开发工具调用TanStack Table 特性选项映射全解析深入 TableOptions_FeatureMap 与按需特性注册机制TanStack Table 特性选项映射全解析深入 TableOptions_FeatureMap 与按需特性注册机制 TanStack Table 以 前端UI组件创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

【10月最新】汇总2026国内外10款降ai率工具(内含工具优缺点对比图)

【10月最新】汇总2026国内外10款降ai率工具(内含工具优缺点对比图)

看到45%的AIGC疑似度红字,确实心累。为解决生硬的机器味,我熬夜试遍了各种aigc免费降重偏方,结果没实现降低ai率,反倒把句子改得坑坑洼洼。 为了帮大家避坑,我实测并整理了10个亲测好用的降ai率工具。无论你想找免费降…

2026/10/11 16:13:31 阅读更多 →
SSH、limits、systemd、logrotate、crontab:运维必懂配置文件实战解析

SSH、limits、systemd、logrotate、crontab:运维必懂配置文件实战解析

这个系列聊到第二篇。上一篇讲的主要是系统初始化阶段那些“开机就得对”的配置,比如挂载表、主机名、环境变量之类。今天想换个角度,专门挑几个日常运维里出场率最高、也最容易让新手翻车的“重要配置文件”来拆一遍——SSH 的 sshd_config 、资源限制…

2026/10/11 16:13:31 阅读更多 →
共形阵列波束控制与测向算法实战指南

共形阵列波束控制与测向算法实战指南

简介:本资源是一份面向雷达、通信与电子对抗领域研究生及工程师的学术研究型文档,聚焦共形阵列天线在实际平台(如飞行器、导弹弹体)中面临的波束控制与测向难题。针对半圆柱阵和圆环阵两类典型构型,系统提出应对遮蔽效…

2026/10/11 16:13:30 阅读更多 →

最新新闻

open-code-review:从个人经验到流程驱动的代码审查实践

open-code-review:从个人经验到流程驱动的代码审查实践

1. 项目缘起与核心定位第一次看到“open-code-review”这个标题,我脑子里蹦出来的不是某个具体工具,而是一整套协作流程。代码审查这件事,但凡在团队里写过几年代码的人都懂——它既是保证质量的最后一道闸门,也是最容易变成走过场…

2026/10/12 19:49:04 阅读更多 →
Confluence多空间检索指南:CQL语法与实操技巧

Confluence多空间检索指南:CQL语法与实操技巧

最近有个同事跑过来问我:"我想在Confluence里一次性搜好几个项目空间的内容,CQL应该怎么写?"他手里管着四五个业务空间,每次找资料要么一个空间一个空间地切,要么用全局搜索出来一大堆无关结果,烦…

2026/10/12 19:49:04 阅读更多 →
员工信息管理系统课设文档:从需求分析到数据库设计的完整工程实践

员工信息管理系统课设文档:从需求分析到数据库设计的完整工程实践

简介:本资源是一份面向计算机专业本科生与初学者的软件工程课程设计完整文档,聚焦企业员工信息管理系统的分析、设计与实现,解决传统手工管理效率低、易出错等现实问题。文档采用模块化设计思想,基于Windows XP平台,以…

2026/10/12 19:49:04 阅读更多 →
Cucumber测试报告实战:从Gherkin到CI/CD的完整避坑指南

Cucumber测试报告实战:从Gherkin到CI/CD的完整避坑指南

做自动化测试这么多年,我经手最多的就是Cucumber测试报告。很多人跑完一条用例,看到控制台飘出一屏幕绿色就觉得万事大吉,可真走到CI流水线、走回归、走验收评审的时候,报告要么差字段,要么打不开,要么失败…

2026/10/12 19:49:04 阅读更多 →
大模型工具调用实战:WorkMate内置工具包从设计到落地复盘

大模型工具调用实战:WorkMate内置工具包从设计到落地复盘

做 AI 应用这一年多,我最大的感受是:模型本身的能力早就不是瓶颈,真正拉开差距的,是它“够得着”什么。WorkMate 这个内部助手项目刚起步时,我们只给它接了两三个 API,结果它就像一个刚入职但双手被绑住的新…

2026/10/12 19:49:04 阅读更多 →
2026年亲测AI论文平台榜单(合规高效版):把Base URL改到TaoToken的实测记录

2026年亲测AI论文平台榜单(合规高效版):把Base URL改到TaoToken的实测记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 19:48:04 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →