Optional, all of it
Deki has no AI in it. The engine, the editor and the games you make never call a model, need no account and send nothing anywhere. Everything on this page is a way for an agent you already use to work the editor, and every one of those things can be done by hand in the editor too.
If you don’t use agents, skip this page. Nothing else on the site depends on it, and nothing changes in your project.
How Deki is made
The engine and the editor are AI-assisted: they are developed with an AI agent working alongside, much of it through the tools on this page. That is how Deki is made, not something it asks of you. What ships is ordinary C++, and the games you build with it contain no AI.
What an agent can do
The editor has an MCP server built in. An agent connected to it gets the same tools the editor’s own command line has, about 80 of them:
| Area | Tools |
|---|---|
| Scene | Create, delete, duplicate, rename and reparent objects; move, rotate, scale; add and remove components; read and set properties; undo and redo; open, save and create scenes. |
| Assets | List, import, move, create and open assets; select one in the Asset Browser. |
| Project | Create and open projects, set project settings and the startup scene, install packages, rebuild the code. |
| Builds | Pick a platform, build the firmware, flash or install it, check the toolchain, clean. |
| The board | Take a screenshot of what a connected board shows, read its frame rate and free memory. |
| The window | Screenshots of the editor or one panel, frame sequences, clicks, drags, keys and typing, open and focus panels, answer dialogs. |
It can also read the open scene, the component list and the project settings as MCP resources. Packages can add their own tools, and those show up in the same list.
The longest loop this allows: change a component, rebuild, play the scene, take a screenshot, build the firmware, flash the board, take a screenshot of the board and read its frame rate. An agent can go round that with no one in between. Every editor image on this site was made through these tools.
Connect a client
Every editor window runs the server on its own computer only (127.0.0.1),
and it answers only requests that carry its token. MCP in the status bar,
bottom right, shows it running.
- Open your project in the editor.
- Right-click MCP in the status bar. That copies the connection URL, token included.
- Give the URL to your MCP client as an SSE server.
With Claude Code, for example:
claude mcp add --transport sse deki "<the copied URL>"
The token is new each time the editor starts. For a setup that survives a
restart, set DEKI_MCP_TOKEN (16 characters or more) for both the editor and
the client, start the editor with --mcp, and use a fixed URL:
DekiEditor --mcp /path/to/project
http://127.0.0.1:3000/sse?token=<your DEKI_MCP_TOKEN>
--mcp-port picks another port when 3000 is taken. Click MCP in the status
bar to stop the server.
Without MCP
An agent that can run commands doesn’t need MCP at all. The same tools are on the editor’s command line:
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 runs a JSON list of steps in order and stops at the first that
fails. A step can save its result with "as", and a later step can use it:
[
{ "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" } }
]
When an editor has the project open, these run in that editor and the changes
show up live. When none has, they open one minimized, without taking focus,
and leave it open. --headless runs them in a hidden editor that closes
afterwards, for CI.
Watching it work
An agent works in an editor you can see. For each call that changes something, a violet pointer moves to what the call acts on: the object’s row in the Hierarchy, the property in the Inspector, the asset, the exact pixel of a click. A label says what it is doing, such as “Setting SpriteComponent.color”. The pointer never appears in screenshots, and it fades after a few idle seconds.
The pointer makes each change wait 0.3 seconds. To turn it off, uncheckEditor Settings > MCP > Agent Pointer, and calls run at once.
What stays with you
- Undo. Scene changes an agent makes go into the same undo history as yours, so Ctrl+Z takes them back one at a time.
- Questions. When the editor would stop to ask you something in a dialog, it asks the agent the same way. The agent sees the dialog and has to answer it; nothing is agreed to for it.
- Your desktop. Nothing a tool does brings the editor to the front or takes the keyboard, so an agent can work while you use the computer for something else.
- Your machine. The server listens on loopback only and refuses requests without the token. Other machines on the network can’t reach it.