The Icon Vocabulary
Every icon in eXLib — rail, rows, tabs, Settings, Pseudo Effect Authoring, the Dependency Map, context menus, all of it — is drawn from a single shared registry. This page is that vocabulary, so a glyph you see anywhere in the panel can be looked up. Every glyph below is the actual file the panel draws.
One registry, one meaning
The law behind the registry is worth stating plainly, in the app's own words: one icon, one meaning, everywhere. A glyph never means two different things depending on where you see it — Apply is always the play glyph, Audition is always headphones, copy-to-clipboard is always the clipboard glyph, and Export is the same export glyph whether it's exporting a single item, a whole folder, or the whole library.
The registry is organized into five groups: 45 action glyphs, 12 surface identities, 5 status tones, 11 structural marks (disclosure carets, drag grips, and the like), and 15 owner-drawn glyphs outside the shared icon set.
The law also shows up in something you can check on any Library row: every row draws its actions in one fixed order, from the primary verb to the destructive one — Apply first, then Audition, then the open/edit verbs, then organizing verbs, and Delete, always last and the only red action. Both expressions and pseudo rigs share the same icons, sizes, and order, so a verb you learn on one row means the same thing on every row.
These screenshots were captured in an earlier beta. Toolbar and Library layouts have since changed; the written instructions on this page describe v0.145.4. See A Tour of the Panel for the current controls.
The action glyphs
Two ids may share a glyph when they are one meaning at two scopes — Edit and Rename are both "change this in place," Export is one verb at three scopes — which is why the same mark appears more than once below.
| Glyph | Action | What it does |
|---|---|---|
| Apply | Commits this expression onto the After Effects property you have selected. | |
| Evaluate | Runs this expression once and shows the value it returns, without writing it anywhere. | |
| Audition | Previews this expression on the selected property and puts back what was there when you stop. | |
| Open | Leaves this panel and opens the item in the surface that owns it. | |
| Open in the IDE | Loads this expression into the code editor as a tab you can edit. | |
| Edit | Opens the inline editor for this row’s name, description, tags and icon. | |
| Rename | Turns this row’s name into an editable field so you can type a new one. | |
| Move | Puts this item into a different folder. | |
| Move up a level | Lifts this folder out of its parent so it sits one level higher in the tree. | |
| Duplicate | Makes a second, independent copy of this saved item beside the original. | |
| Copy | Puts this text on the system clipboard so you can paste it elsewhere. | |
| Export | Writes this one saved item out to a file you choose. | |
| Export folder | Writes everything in this folder out to a file you choose. | |
| Export library | Writes the entire library out to a single .exlib archive you choose. | |
| Import | Reads saved items out of an .exlib archive and adds them to your library. | |
| Backups | Opens Backup & Restore — launch-rotation backups and manual .exlib archives. | |
| Pull | Pulls the selected After Effects property expression into the IDE editor. | |
| Apply | Applies the expression in the IDE editor to the selected After Effects property. | |
| Pull | Brings the current values out of After Effects and into the editor. | |
| Publish | Sends what is in the editor up into the library as a saved item. | |
| Save | Writes the current state to disk so it survives closing the panel. | |
| Delete | Removes this item permanently — it leaves the disk, not just the view. | |
| Clear | Empties this field back to nothing; the row it belongs to stays where it is. | |
| Erase | Removes this row’s value or wiring and leaves the row itself in place. | |
| Undo | Steps back one change, putting things as they were before it. | |
| Redo | Re-applies the change that Undo stepped back. | |
| Reset | Discards your override and restores the value this shipped with. | |
| New | Creates a new, empty item of whatever kind this list holds. | |
| New folder | Creates a new folder inside the one you are looking at. | |
| Add variable | Adds a new named variable to this expression’s variable list. | |
| Add control null | Stages a new AE null layer to host the controls this card creates — the layer itself is only made when you press Apply. | |
| Pin | Locks this property as the apply target so changing the selection cannot lose it. | |
| Unpin | Releases the pinned target so the panel follows the live selection again. | |
| Reveal | Selects this property in the After Effects timeline and scrolls it into view. | |
| Pick | Starts the pickwhip so you can point at the property you want to bind. | |
| Insert | Writes a reference to the chosen property into your code at the cursor. | |
| Detect | Scans the current code and offers the literal values it thinks should become variables. | |
| Refresh | Re-reads the source and redraws this list with whatever is there now. | |
| Search | Narrows this list to the rows matching what you type. | |
| Settings | Opens the Settings surface. | |
| Command palette | Opens the command palette for keyboard-driven access to every panel command. | |
| Find and replace | Opens find-and-replace over the expression source in the editor. | |
| Rebind | Captures the next key chord you press and assigns it to this command. | |
| Close | Closes this and does nothing else. | |
| Cancel | Stops what is in progress and leaves everything as it was. |
Delete, Clear, and Erase are three different actions with three different scopes — one worth spelling out, since the distinction is easy to miss: Delete removes an entity you created; Clear and Erase both empty a value while the row itself survives, at two different scopes (a single field vs. a row's wiring). Which glyph a given button draws comes down to what its handler actually destroys, not what its label happens to say.
Surface identities and status tones
Surface identities are the glyphs that stand for a place in the app — the same glyph appears in the rail, a tab, a panel title, and a context-menu entry for that surface, so it always reads as the same destination.
| Glyph | Surface | What it identifies |
|---|---|---|
| Library | The Library surface — every saved expression, rig, folder and pack in one place. | |
| IDE | The code editor surface, where expressions are written and validated. | |
| Author | The Author surface — write a library expression together with its variables and save it. | |
| Variables | The Variables surface — the named values an expression exposes and binds. | |
| Controls | After Effects Effect Controls — the native controls an expression reads its values from. | |
| Rigs | Pseudo Effects — saved control rigs that install onto a layer as a native effect. | |
| Expressions | Saved expressions — the content kind, and the compact Library tab that lists them. | |
| Evaluator | The Evaluator surface — run an expression and inspect the value it returns. | |
| Dependency Map | The Dependency Map — what an expression reads from, and what reads from it. | |
| Comp Expressions | Every expression in the open composition, listed and reachable in one place. | |
| Composition | An After Effects composition — one of the timelines in the open project, with its own layers. | |
| MCP Bridge | The authenticated link between this panel and an external MCP client — pairing, peer identity, and what the agent is allowed to do. |
Status tones are the family a row uses to say how it's doing:
| Glyph | Tone | What it reports |
|---|---|---|
| Ready | Everything this row needs is present — there is nothing to fix. | |
| Needs attention | This will still run, but something about it disagrees and is worth a look. | |
| At apply | This value is not known yet — it gets resolved at the moment you apply. | |
| Error | This is blocked and cannot proceed until the problem is fixed. | |
| Not established yet | Nothing has said what type this is yet — it gets inferred as the expression uses it, and that is normal. |
Error deliberately shares its base shape with the other verdict tones — a circle with a different mark inside — rather than a separate silhouette like the bare warning triangle you'll see elsewhere in the panel as a non-blocking annotation. The two are easy to conflate but mean different things: the triangle flags something worth noticing, while the circle family reports a row's actual status. The question mark is the odd one out on purpose: it says there is no verdict yet, which is not a problem to fix.
Structural marks
Structural marks are chrome rather than verbs — they say which way something moves or where you can grab it, so the same caret legitimately expands a section on one row and moves an item down on another.
| Glyph | Mark | What it means |
|---|---|---|
| Expand | A collapsed section or tree node — pressing it reveals what is inside. | |
| Collapse | An expanded section or tree node — pressing it hides what is inside again. | |
| Move up | Moves this row one place earlier in its list. | |
| Move down | Moves this row one place later in its list. | |
| Collapse pane | Folds this split pane away toward its own edge. | |
| Collapse pane | Folds this stacked pane away toward the top edge. | |
| Library tree | Shows or hides the library folders/packs/tags pane. | |
| Drag | The handle you press and hold to drag this row somewhere else in the list. | |
| Drag | The handle you press and hold to drag a horizontally-arranged element. | |
| Resize | The corner you drag to make a floating panel larger or smaller. | |
| Working | This control’s operation is still running — the spinner replaces its glyph until it finishes. |