EAI

AI 智能体

编辑器可以通过 MCP 或命令行交给 AI 智能体操作:场景、资源、包、构建、开发板和截图。用不用全凭你,Deki 的任何部分都不需要它。

全部是可选的

Deki 里没有 AI。引擎、编辑器以及你做的游戏都不会调用任何模型,不需要账号,也不会向任何地方发送任何东西。本页讲的是让你已经在用的智能体来操作编辑器的方法,而其中每一件事,你都可以在编辑器里亲手完成。

如果你不用智能体,可以跳过本页。网站的其他部分不依赖它,你的项目也不会有任何变化。

Deki 是怎么做出来的

引擎和编辑器是在 AI 辅助下开发的:开发时有 AI 智能体一起工作,其中很多是通过本页介绍的工具完成的。这是 Deki 的制作方式,而不是对你的要求。发布出来的是普通的 C++,你用它做的游戏里也没有 AI。

智能体能做什么

编辑器内置一个 MCP 服务器。连上它的智能体可以使用与编辑器自身命令行相同的工具,大约 80 个:

方面工具
场景创建、删除、复制、重命名和重新设置父对象;移动、旋转、缩放;添加和移除组件;读取和设置属性;撤销与重做;打开、保存和新建场景。
资源列出、导入、移动、创建和打开资源;在资源浏览器中选中资源。
项目创建和打开项目,设置项目设置和启动场景,安装包,重新构建代码。
构建选择平台,构建固件,烧录或安装,检查工具链,清理。
开发板截取已连接开发板正在显示的画面,读取它的帧率和剩余内存。
窗口编辑器或单个面板的截图、帧序列、点击、拖动、按键和输入文字,打开和聚焦面板,回答对话框。

它还能以 MCP 资源的形式读取当前场景、组件列表和项目设置。包可以添加自己的工具,它们会出现在同一个列表里。

由此能跑通的最长循环是:修改组件、重新构建、运行场景、截图、构建固件、烧录开发板、截取开发板画面并读取帧率。智能体可以不经任何人反复跑这个循环。本站所有编辑器截图都是用这些工具制作的。

连接客户端

每个编辑器窗口都只在本机(127.0.0.1)上运行服务器,并且只响应带有其令牌的请求。状态栏右下角的 MCP 表示它正在运行。

  1. 在编辑器中打开你的项目。
  2. 右键点击状态栏里的 MCP,即可复制包含令牌的连接 URL。
  3. 把这个 URL 作为 SSE 服务器交给你的 MCP 客户端。

以 Claude Code 为例:

claude mcp add --transport sse deki "<复制的 URL>"

令牌在每次启动编辑器时都会更新。若要一个重启后仍可用的配置,请为编辑器和客户端都设置 DEKI_MCP_TOKEN(16 个字符或以上),用 --mcp 启动编辑器,并使用固定的 URL:

DekiEditor --mcp /path/to/project
http://127.0.0.1:3000/sse?token=<你的 DEKI_MCP_TOKEN>

3000 端口被占用时,用 --mcp-port 换一个端口。点击状态栏里的 MCP 可以停止服务器。

不用 MCP

能运行命令的智能体完全不需要 MCP。同样的工具就在编辑器的命令行上:

DekiEditor --list-tools /path/to/project
DekiEditor --tool get_scene_info /path/to/project
DekiEditor --tool create_object --args '{"name": "Player"}' /path/to/project

--script 按顺序执行一个 JSON 步骤列表,并在第一个失败的步骤处停止。某个步骤可以用 "as" 保存结果,后面的步骤就能使用它:

[
  { "tool": "create_object", "args": { "name": "Player" }, "as": "player" },
  { "tool": "set_position", "args": { "object_id": "${player.id}", "x": 160, "y": 120 } },
  { "tool": "save_scene" },
  { "tool": "screenshot", "args": { "path": "C:/shots/player.png", "panel": "Scene View" } }
]

如果有编辑器已经打开了这个项目,这些命令就在那个编辑器里运行,修改会实时显示。如果没有,它们会以最小化、不抢焦点的方式打开一个编辑器,并让它保持打开。--headless 会在一个结束后自动关闭的隐藏编辑器里运行,适用于 CI。

看着它工作

智能体在一个你看得见的编辑器里工作。每当一个调用要改动什么,一个紫色指针就会移到它作用的地方:层级面板里对象所在的行、检视器里的属性、资源,或者点击的那个确切像素。旁边的标签会说明它在做什么,例如“Setting SpriteComponent.color”。指针不会出现在截图里,空闲几秒后就会淡出。

指针会让每次修改等待 0.3 秒。取消勾选 Editor Settings > MCP > Agent Pointer 即可关闭它,调用会立即执行。

掌控权在你手里

  • 撤销。 智能体对场景的修改与你的修改进入同一个撤销历史,Ctrl+Z 可以一步步撤回。
  • 询问。 编辑器需要用对话框问你的时候,它也会同样地问智能体。智能体会看到对话框并且必须作答,不会替它默认同意。
  • 你的桌面。 工具做的任何事都不会把编辑器带到前台,也不会抢占键盘,所以智能体工作时你可以用电脑做别的事。
  • 你的机器。 服务器只监听回环地址,没有令牌的请求一律拒绝。网络上的其他机器无法访问它。