Mirobody C++ 引擎中没有 skills 注册表。 那套
SKILL.md + metadata.json 的 “Agent Skills” 机制 —— 一个在启动时被自动发现的 skills/ 目录 —— 属于更早期的设计,在当前的 C++ 引擎(Mirobody)中并未实现。res/agents/base.cpp 中的那个唯一 Agent 会构建一段固定的内联 system prompt,按 provider 选择一个 LLM 客户端,并把这一轮流式返回,其间调用内置的 MCP 工具。它不会加载 SKILL.md 文件,也没有 skill 加载器。应该改用什么
扩展 Agent 能力的方式,是添加一个 MCP 工具 —— 一个位于res/mcp_tools/ 中、在编译时自注册的小小 C++ 文件。工具是”Agent 调用的代码”:模型像调函数那样调用它,并读取其返回值。不存在单独的”Agent 加载进上下文的散文”这一层。
添加自定义工具
用
MIROBODY_REGISTER_TOOL 宏在 res/mcp_tools/ 中添加一个 C++ 工具,然后重新构建。内置工具
引擎默认提供的 9 个 MCP 工具。
引导 Agent 的行为
如果你想改变 Agent 如何行事 —— 它的语气、它了解的领域,或者它何时去调用某个工具 —— C++ 引擎中的调节杆是:- System prompt。 Agent 的指令是
res/agents/base.cpp中构建的一段固定内联字符串(build_system_prompt)。它已经告诉模型通过list_files/read_file获取上传文件、通过family_health获取健康记录。编辑这段字符串并重新构建,即可改变 Agent 的常驻指令。 - 工具描述。 每个工具的
description及其每个Param的文字(声明在它的res/mcp_tools/*.cpp中),是模型在决定是否以及如何调用它时所看到的内容 —— 因此清晰的描述是引导使用方式的主要途径。示例见 内置工具。
下一步
工具与 Agent 概览
那个唯一的 Agent、MCP 工具与 provider 如何协同。
MCP 集成
通过
/mcp 把工具暴露给 Claude、Cursor 和 ChatGPT。