Files
BlueRoseNote/07-Other/AI/AI Agent/UnrealEngine/UnrealMcp/UE5.8 MCP 1.md

2.1 KiB
Raw Blame History

UAgentSkill 分析

1. 它是什么

UAgentSkill 是 UE5.8 MCP 的 AI prompt 增强机制,功能等价于 Claude Code 的 Skill

UE5.8 UAgentSkill Claude Code Skill
载体 Blueprint 资产UAgentSkill 子类) Markdown 文件
作用 注入领域知识 + 指令到 AI 上下文 注入工作流指引到对话
依赖 Toolsets 字段声明需加载哪些 toolset
动态生成 GeneratePrompt() 虚函数可编程 静态内容
创建 AI 通过 MCP CreateSkill 创建 文件写入

它不是功能性工具,不执行编辑器操作——只提供上下文:"这个领域怎么用、工具有哪些、最佳实践是什么"。

2. 相关类

  • UAgentSkill:基类,核心属性 Description + Instructions + Toolsets虚函数 GeneratePrompt()
  • UAgentSkillBestPractices:改写 GeneratePrompt追加技能编写规范
  • UAgentSkill_NiagaraBase:改写 GeneratePrompt前置 Niagara 概述 + 资产发现路径
  • UAgentSkillToolset:继承 UToolsetDefinition暴露 MCP CRUDListSkills / GetSkills / CreateSkill / UpdateSkill
  • FAgentSkillDetailsDTO最终生成的 Instructions + 依赖 toolset 名列表

核心流程GetDetails() → GeneratePrompt(Instructions) → FAgentSkillDetails → AI 拿到最终 prompt。

3. 编写一个基础 UAgentSkill

C++ 子类方式:

  1. 继承 UAgentSkill
  2. 设置 Description简短摘要ListSkills 返回它)
  3. 设置 Instructions详细指令会被 GeneratePrompt 处理)
  4. 在 Toolsets 中声明依赖的功能性 toolset软引用系统据此自动加载
  5. 重写 GeneratePrompt_Implementation() 在指令前后注入额外上下文

Niagara 实现模式:前置概念概述 → 遍历 toolset 获取专属 prompt → 插入原始 Instructions → 追加资产发现路径。

MCP 运行时创建AI 调用,需用户许可): CreateSkill(/Game/Skills/, MySkill, "描述", {Instructions:"...", Toolsets:["/Script/..."]}),本质是创建以 UAgentSkill 为父类的 Blueprint 资产,写入 CDO 属性。