Motion Agent Lab
Edit an After Effects video by writing what to change, with a plan first and undo after.
Working Available to download. Below, a browser demo on sample data.
The problem
An assistant that edits a motion project is only useful if you can see what it will do, stop it before anything risky, and take it back.
What I built
A set of clear commands for text, size, position, color, timing and removing layers, with a plan you can read before each change.
- A plan before every change
- Asks before risky edits
- Exact undo and a log of every step
Download for After EffectsTry the browser demo
Features and limits
Built and tested
- Plain sentences become typed operations: change text, size, position, color and timing, remove a layer, undo.
- Every plan says what it changes and which properties it touches, before anything happens.
- Approval gate: changes to animated properties, removals and long text wait for an explicit approval; locked layers are refused.
- Requests it cannot do are refused with a reason and a suggestion, never guessed.
- Audit log of every request, refusal, approval and undo; undo restores the previous state exactly.
- Before and after preview of the toy scene at any time on its timeline.
Limits
- Tested in After Effects 26.5.0 on macOS 27.0.1 on a fictional title card, installed from the Window menu; docking, the audit log export dialog and Windows are not yet tested. Premiere Pro is not covered.
- Rule-based command parser. Supports the command patterns shown in the examples.
- No masks, effects or expressions.
Planned
Permission gates, preview plans, rollback, provider-agnostic adapters.
How to use
- Type a supported request or choose an example.
- Review the plan. Nothing changes until you apply it.
- Apply the change, or cancel the plan. Review any approval request before confirming.
- Use Undo to return to the previous state.
How it works
- Grammar rules map each sentence to one operation (setText, scale, move, color, retime, remove) on a named layer, or to a refusal.
- Plans are computed from the current scene: touched properties, approval reason, and a one-line summary.
- The session keeps every earlier scene, so undo is a pop, not a reverse calculation; tests check three undos restore the original byte for byte.
- The After Effects panel runs the same plan, approval and undo logic on real layers; each change records what it replaced, so undo restores values, keyframe times and easing exactly.
Tested versions & limits
- Pass Unit: grammar to typed operations; refusals with reasons Node 22, Linux
- Pass Unit: plans name touched properties; animated, destructive, locked changes gated Node 22, Linux
- Pass Unit: no change without approval; audit log; exact undo Node 22, Linux
- Pass Browser: approval gate, cancel, locked refusal, log Chromium (Playwright), 1280px
- Pass Panel on a mock After Effects comp and mock ScriptUI: same outcomes and final state as the page; buttons plan, apply, undo, refuse; remove and undo exact Node 22, Linux
- Pass Host: panel installed in After Effects, listed in the Window menu and opened; 13 commands and the panel's own buttons give the page's outcomes and final state After Effects 26.5.0, macOS 27.0.1
Last verified 2026-11-01.
Grammar, plans, gate, log and undo work on a toy scene in the browser. The After Effects panel (same grammar on any comp, plan, approval, exact undo, audit log) ran in After Effects 26.5.0 on macOS 27.0.1: on a fictional title card 13 requests gave the page's outcomes and final state, the panel's own buttons planned, applied, undid, asked approval with a reason and refused, and the installed panel was listed in the Window menu and opened. The host runs found two ExtendScript behaviors Node does not have (a percent that was not read; chained ternaries read left to right, which sent up and left moves the wrong way), fixed before release; tools/extendscript-lint.mjs now checks every host script for both. No language model is involved. Evidence: labs/host-tests/results/2026-11-01-mac-t15-run3.
Details
- Input
- Synthetic AE/Premiere scene and user instruction
- Output
- Visible plan, operations and audit
- Runs in
- Installs as an After Effects panel (ScriptUI) with the same grammar, plans, approval gate, log and undo, working on any comp (tested in After Effects 26.5.0 on macOS 27.0.1). The demo runs the same engine in your browser on a toy scene.
- Source
- Original, rebuilt from scratch