Skip to content

Approvals

Ron Yitzhaki edited this page Oct 21, 2026 · 2 revisions

Approvals

In Ask mode, every change the AI wants to make waits for you in After Effects. You see exactly what will run and click Allow or Deny.

Turn it on in the panel: What the AI may do › Ask. See The Surehand panel.

What waits for approval

Waits Doesn't wait
Every tool that edits the project Reading the project (project, comp, layer and property info, selection, bounds, comp map)
Every script (ae_run_script), also one that only reads: Surehand can't know in advance Previews: rendered frames and contact sheets
Every script file (ae_run_script_file), with the file's path and contents Proofs, Preflight, Project X-ray and project history snapshots, which don't change the project
The one-time FFmpeg download for Preflight's file checks

Each request names the AI app that asks.

The approval card

When a request waits and the panel is visible, the card appears at the top of the feed:

  • "<app> asks" and the time left to answer. A request gives up after 10 minutes with "No one approved this change in the Surehand MCP panel within 10 minutes." Nothing runs.
  • The title is the tool that will run, for example Run script. It is not the AI's own description.
  • "The AI says: …": for a script, its first comment, quoted. It's the AI's own words, so read the code too.
  • Chips name what the request does, found in the whole script or the call's arguments (not only the part on screen): for example deletes, runs a shell command, saves the project, writes files, closes or opens a project (shown in red), and runs menu commands, imports files, reads files, creates comps, adds layers, changes properties. At most four are shown. The chips are a reading aid found by matching text, not a guarantee; the code is what runs.
  • Show the script (or Show the details for a tool) opens the exact code or arguments. Up to 5,000 characters are shown; the rest is counted ("… n more characters not shown").
  • Allow and Deny.
  • "Esc denies", and how many more requests wait after this one.

Requests are shown one at a time, oldest first.

The pop-up when the panel is closed

If a request waits and the panel isn't visible (closed, or hidden behind another panel in its group), After Effects opens a small window, Surehand needs your OK, with the same request: who asks, what will run, the chips, the time left, Allow and Deny.

  • Show details in the panel opens the panel, which shows the same request with the full script, and closes the pop-up.
  • After you answer it shows Allowed · closing or Denied · closing, then the next request, or it closes.
  • If the pop-up can't open in your After Effects, the panel opens instead.

The panel and the pop-up show the same queue. The first answer counts, from either one; a later answer is refused ("Already answered").

Keyboard

Key Effect
Esc Denies the request on screen.
Space or a click on a focused Allow Allows.
Enter Never allows, not even on a focused Allow button.
Tab Moves between the buttons; focus is shown only when you use the keyboard.

Why Enter never allows. You are often typing when a request arrives: in the AI app, in a text layer, in a field in After Effects. An Enter meant for something else must never approve a change you haven't read. Allowing always takes a deliberate click or Space.

The 1-second arming

A new request can't be answered in its first moment on screen. Its buttons show … for a little over a second, then Allow and Deny.

This protects against a double-click or a key press meant for the previous request landing on the next one. The bridge enforces it too: it accepts an answer only for the request that is on screen, only for the oldest one waiting, and only once that request has been visible for at least one second. An answer that comes too early is refused, not applied.

Withdrawn requests

A request can go away without your answer:

  • you answered it in the other window (the pop-up or the panel);
  • the AI app cancelled it, or gave up waiting;
  • the 10 minutes ran out.

Then the card shows That request was withdrawn for about a second and a half before the next request appears, so you never answer one request believing it is another.

While paused

If you click Pause AI while requests wait, an allowed request still doesn't run: it is refused because the AI is paused. See The Surehand panel.

Who can answer

Only the Surehand panel and the pop-up, inside After Effects. Answers need a secret that the bridge keeps in memory and hands only to them through After Effects' extension events. The AI app has the access token, but not this secret, so it can't approve its own requests. See Security.

Clone this wiki locally