From 3e7956c44225310d8df100dacef3dec112f40a3c Mon Sep 17 00:00:00 2001 From: MelekTaus Date: Sun, 18 Oct 2026 12:49:02 +0200 Subject: [PATCH] MCP: the editor follows the agent's edits (#429) - MCP: what the editor shows after run_commands, the scene switch inside the undo step, the Follow agent switch, and the camera of an open graph tab going after the nodes. The test list names the new checks. - Behaviors: a song tab shows Arrange with its routing only. Co-Authored-By: Claude Opus 5.5 --- Behaviors.md | 2 +- MCP.md | 25 ++++++++++++++++++++----- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/Behaviors.md b/Behaviors.md index 2040ef5..173d7b8 100644 --- a/Behaviors.md +++ b/Behaviors.md @@ -627,7 +627,7 @@ the inspector). switching it on never shuffles a graph that is already laid out, and a node nobody drags never moves. Every node of a selection snaps **for itself**, so dragging a group is how you line one up; the offset is a decision about rectangles and lives with the others in `editor/framing.ts`. -- **Arrange** (next to the magnet, in every graph tab; #429) lays the graph out: the flow runs left +- **Arrange** (next to the magnet, in every graph tab, in a song's only with its routing; #429) lays the graph out: the flow runs left to right in columns, a node that only feeds others (a Get, the Owner) stands just left of the first one it feeds, each column is put in the order that crosses the fewest links, and the nodes are moved up or down towards the ports they link to without ever overlapping. With several nodes diff --git a/MCP.md b/MCP.md index c3680d3..c9f48a7 100644 --- a/MCP.md +++ b/MCP.md @@ -22,7 +22,8 @@ clicks run. Laying out the graphs it builds comes next (see the issue). appears beside the account menu and shows how many agents are connected: an agent counts while it keeps its event stream open or has called a tool in the last two minutes. Claude Code opens spare sessions when it connects, they never call a tool and do not count. A click on the badge - switches the agent off again. + switches the agent off again. *Follow agent* right below decides whether the editor shows you + what the agent changes (on unless you switch it off, see below). 3. Ask Claude Code about the editor. Without a tab switched on, every tool answers that no editor is connected and how to fix that. @@ -97,6 +98,15 @@ it. One Ctrl+Z takes the whole call back. - **Deleting asks you.** A call that deletes an asset that was there before opens a dialog *The agent asks: Delete "..."?* with the same text as your own Delete. The call waits for your answer, up to 110 seconds; Cancel, Escape or no answer leave everything as it was. +- **You see what the agent works on.** After each call the editor brings up what its last step + worked on: the graph's tab with every node the call touched there selected, the scene or + container with its objects selected, or the asset in the inspector. Objects in another scene + switch the scene, inside the agent's undo step, so Ctrl+Z goes back to the scene you had. + Account menu → *Follow agent* switches this off (kept in this browser); while the game runs the + editor never follows. `open` and `select` stay for anything else the agent wants to show. + In a graph tab that is open already the camera goes after the nodes: by just as much as it takes + to bring them in, at the same zoom, and not at all when they are in sight. Only nodes too far + apart to fit at this zoom are framed afresh, which zooms out. - **While the game runs** a change goes into the running copy, as yours would, and the answer says it is gone when the game stops. @@ -149,13 +159,18 @@ What is behind it on the server, and the routes it uses: [API](API), [Developmen - `tests/editor/agent-view.test.ts`: what `get_view` answers, its one line, the tools' arguments. - `tests/editor/agent-edit.test.ts`: a walking object built in one call and taken back whole by one undo, a failing step that leaves nothing, argument checks, deletes that ask, nodes arranged at the - end of a call while placed ones stay, `arrange_graph`, the reading tools and the catalog. + end of a call while placed ones stay, `arrange_graph`, what the editor shows after a call (and + the scene switch inside the undo step, and nothing with *Follow agent* off), the reading tools + and the catalog. - `tests/editor/graph-arrange.test.ts`: the layout on the graph an agent really built for "walk with the arrow keys" (no overlaps, no link over a node, none backwards, at most 8 crossings with one Owner for four moves and 4 with one each), chains running straight, nodes that stay, groups kept clear, loops, and what `lint_graph` counts. +- `tests/editor/graph-framing.test.ts`: how far the camera goes after nodes: not at all when they + are in sight, just far enough otherwise, zooming out only for what does not fit. - e2e step 71 (`tools/e2e/71-mcp.mjs`): a token made in the dialog, the agent switched on in the account menu, an MCP client reading the view, hearing a tab switch and taking a screenshot; the - agent building a walking object whose nodes come out arranged, Arrange in the header untangling - it as one undo step, the object moving when played, one Ctrl+Z taking it back, a delete waiting - for the user's Cancel; and the badge switching it off. + agent building a walking object whose graph comes up with its nodes selected and arranged, + Arrange in the header untangling it as one undo step, the open tab's camera going after a node + added far away, the object moving when played, one Ctrl+Z taking it back, a delete waiting for + the user's Cancel; and the badge switching it off.