---
title: "The copilot"
description: "Ask Claude Code, Codex or Kimi Code to inspect and edit the document you have open, then review or undo its changes."
canonical: "https://terminal.lottiefiles.com/docs/copilot/"
last_updated: 2026-10-30
---

# The copilot

Ask Claude Code, Codex or Kimi Code to inspect and edit the document you have open, then review or undo its changes.

## Before you ask

Install Claude Code, Codex or Kimi Code on this computer and sign in with that tool. Creator
Terminal uses the installed command (`claude`, `codex` or `kimi`) and its signed-in account. It
does not need a separate AI API key. Before opening the copilot, run `claude` once to sign in,
or `codex login` or `kimi login`. If the app names an old version, update that tool and reopen
the conversation.

The copilot's agent sees only Creator Terminal's tools and a web search; your own settings,
skills and tool servers stay out of it. Kimi Code still starts the tool servers in your
`~/.kimi-code/mcp.json` alongside, without their tools being its.

Press `F2` and leave **App › AI features** on. It controls the copilot, zen's conversation,
Agents Mode and [other AI apps](https://terminal.lottiefiles.com/docs/mcp.md) working in it together. Switching it off stops active
work and ends the copilot conversations in all tabs. Zen still offers the stage alone. The
palette's **AI features on or off** changes the same setting.

The agent process runs on this computer; its model requests use your agent provider.
Attachments and stage pictures you give it go with those requests. The copilot edits the
open document; [Agents](https://terminal.lottiefiles.com/docs/agents.md) makes separate takes from a new brief.

## Asking

Press `/` (or `⌃K`, or **✦ copilot** at the top of the rail) and ask: "make the logo pop in with
a little overshoot", "stagger these by three frames", "what's slow here?". `⌃K` again puts it
away.

Click the agent and model in the header (**claude · sonnet ▾**) for a menu of the agents
installed here and their models, as each one lists them for your account (Claude Code's own
list, Codex's own list; until they answer, Claude's **Sonnet**, **Opus** and **Haiku**). Codex
can also keep **its own model**, the one its settings choose. Choosing another agent or model
starts a new conversation. **new** starts one with the same choices; **×** closes the panel and
keeps the current conversation.

![The copilot header, follow control and suggested first requests before a message is sent.](https://terminal.lottiefiles.com/docs/assets/shots/more-copilot-before-asking.png)

The panel takes the rail's place (the Properties panel in After Effects or Figma). Its
changes appear on the stage and the score (the timeline). Give a concrete target, timing
and limit: “Make this petal open over half a second. Keep its colour and position.”

Drag over conversation text to highlight it and copy it when you release.

### Message keys

| Key | What happens |
|---|---|
| `/` / `⌃K` | Open the copilot and focus its message box; `⌃K` again closes it. |
| `⏎` | Send. Messages sent during a turn wait in a queue. |
| `⇧⏎` / `⌥⏎` | Insert a new line. |
| `esc` | Give the keys back to the stage. |
| `⌃C` | Stop the active turn, or clear the message box when idle. |
| `⌃U` | Clear the message box. |
| `←` `→`, Home / End, `⌃A` / `⌃E` | Move the caret, or go to the start or end. |
| `⌫`, Delete, `⌃W` / `⌥⌫` | Remove the previous character, next character, or previous word. |
| `↑` `↓` | Recall messages when the message box has one line. |
| Page Up / Page Down | Scroll the conversation. |
| `⌃V` / drop a file | Attach a copied picture, or a file. |

## Options from the open document

Ask “three versions of this hover” or “give me alternatives”. The copilot makes a board
starting from the open document, with two to four takes, and opens it. Its **made a board:
Hover · 3 takes ›** line opens that board again. `⌃O` returns to the studio.

The board names the tab it started from. **Use** and **open ↗** put the chosen version in
that same tab as one undo step; `u` restores the document. If you closed the original tab,
the version opens as a file of its own. A request for one change stays in the copilot.

## Watching it work

- **The panel** takes the rail's place: what you asked, what it says, and a line for everything
  it does (◇ when it reads or looks, ◆ when it edits). Click a line to go there.
- **The stage** gets a violet frame and a pointer of its own, which flies to each layer it works
  on and says what it did in a bubble.
- **Its edits show as they land**: the layer is selected, the playhead moves to where it keys,
  the tracks it changed light up in the score, and a move it makes loops on the stage. When it's
  done, the animation plays. **◉ follow** turns this off, so your selection and playhead stay
  put.
- **It sees what you see**: what's selected (so "this" and "these" mean what you picked), what
  you changed since its last reply, and a picture of the stage. It looks at rendered frames to
  check its work.

Document edits for one message form **one undo step**. Press `esc` to return to the stage,
then `u`, or click the turn's **↶ undo**. If you edited afterwards, undo those later edits
first. `⇧U` restores the turn; its undo control can also put it back while it is next on the
redo stack. While you drag, type or draw, its edits wait for you.

**■ stop** stops the turn and clears queued messages; `⌃C` in the message box does the same.
Stopping keeps edits already made. Undo them separately. Undo changes the document; it does
not remove exported files or restore a saved animation preset that was overwritten.

## How it directs

Ask for something creative ("animate the logo", "make an intro", "make it feel premium") and it
works as a motion designer:

1. it studies the design (its parts and personality);
2. it says its idea in a sentence, with the beats and the length;
3. it sets up the canvas;
4. it builds in passes: the hero, then what follows, then the accents;
5. it reviews its own cut and fixes what it finds, then tells you what it made.

What it can do in a single step:

- **choreograph** entrances and exits for many layers at once (fade, rise, slide, pop, spin,
  bounce…), staggered in an order that reads, with springs that overshoot and settle;
- **draw** strokes on, or paint a filled shape (an S, a swoosh, a signature) along its middle as
  a hand would;
- **reveal** with mattes: wipes, irises, rising out of a slot;
- **rig** layers to a parent to move them as one, like a camera push;
- add **effects** (blur, shadow, glow), **sound** effects on the moments that matter (from a
  bank of 185 that comes with the app, or made from words for one it hasn't got: "a glass
  breaking"), and **music** fitted to the animation's beats;
- **voice it over**: lines said in a natural voice, each directed for how it's said ("[warm,
  unhurried]"), the picture timed to their words;
- **review** its own work: a timing chart of every layer, and what's wrong (dead air, no hold,
  everything moving at once, too-quick moves, art cut off).

It can also set and key values, ease and retime, add shapes and text, arrange and lay out
layers, edit paths and morphs, masks and mattes, gradients, motion blur, tokens and themes,
data and charts, state machines, [particles](https://terminal.lottiefiles.com/docs/particles.md), [repeats](https://terminal.lottiefiles.com/docs/repeats.md) and
[behaviours](https://terminal.lottiefiles.com/docs/behaviours.md). It can save and apply [animation presets](https://terminal.lottiefiles.com/docs/editing.md#animation-presets),
duplicate and precompose layers, trace images, add captions, and export when you ask. What an
export, an SVG it brings in or a file it opens couldn't carry comes back to it as data as well as
words (each loss's code, where, how many, and what was drawn instead), as `creator-tui export
--json` reports it ([Command line](https://terminal.lottiefiles.com/docs/cli.md#export)), so it can work around a loss rather than
guess.

### Tuning what it made

Under each turn that animated something are controls: **Speed** (its keys faster or slower) and,
when it moved several layers, **Stagger**, then a few of its own (how far the bounce goes, a
distance, a colour). Drag one and everything it moved follows at once, without asking again. Each
move is one undo step; click a control's name to put it back.

## Zen

Press `z` (or **◯ zen** under the stage, or **Zen** in the palette or on home) and everything
else goes: no tools, no rail, no score. The picture sits in a card in the middle, the
conversation beside it. You ask, you watch it move, you ask again.

- **The time is a ribbon under the picture**, showing how much moves at each moment, with every
  key on it. Click it to go to a moment, drag to scrub.
- **Each turn reads as a small score**: the tracks it keyed, then Speed and Stagger to tune.
- **A word takes it on**: **snappier**, **softer**, **bouncier**, **loop it**, or **↻ another
  take**.
- **The header** says who you're asking; click it for the same menu of agents and models.
- **Themes**: a document with themes has a strip of them under the ribbon. Point at one to see
  it, click to keep it.
- **Try it**: an animation with a state machine has **▶ try** (or `⌃P`): the stage plays it as a
  page would. **■ edit**, `⌃P` or `esc` go back.
- On a blank canvas it suggests things to make: a loader, a like button, a word written on.

The stage still works as in the editor (`c` for notes; `esc` lets go of the message box, then
`space` plays). `z` goes back to the editor, as do `esc` with nothing left to let go of, and `⌃K`.

## Working on it together

- **Give it a picture.** Drop an image on the message box, or `⌃V` a screenshot. "Recreate this"
  builds the design to match, then animates it. **▣ ref** lays the picture over the stage to
  compare.
- **Give it a file.** Drop any file on the message box (a PDF, notes, a script, a Lottie) and it
  goes with your next message.
- **Pin notes on the stage.** **✎ annotate** in the message box (or `c` on the stage): click to
  pin a note, or drag for a box, and type what should change. **▶ fix notes** sends them all; it
  makes the changes and resolves each note with a line saying what it did. A note it can't act on
  gets a question back. Notes are saved with the file, but not in exports.
- **Bring things in from the web.** "Grab the owl from withhide.dev and make it hop": it reads
  the page, shows you what's on it, and brings in the one you mean as it is. With no page named,
  it searches first. It only goes where you, a page it read, or a search sent it.
- **Name a company.** "An intro for Linear": it reads the company's site for its logo, colours,
  type and words, and builds in that look. It brings in the site's own fonts, or the nearest
  open one, and says which.
- **Icons**: an icon the piece needs ("a rocket") comes from open-source sets (Material,
  Phosphor, Tabler, Lucide…), with its licence.
- **Components from UI libraries.** "A flip button from Animate UI", "a number ticker": it finds
  one in shadcn's and the libraries in its directory (Magic UI, Aceternity, React Bits, Motion
  Primitives…) and brings in the real thing, as **Import a component…** does: its layers at rest,
  hovered and pressed, to animate. See [Capture from your app](https://terminal.lottiefiles.com/docs/capture.md).
- **Watch a video.** Give it a link (YouTube, Vimeo, X, TikTok, Loom and more) or a file, and it
  watches it first: its chapters, what's said, and its shots. It can bring in a clip of it, or its
  sound. The tool for this, [yt-dlp](https://github.com/yt-dlp/yt-dlp), is downloaded the first
  time it's needed. What a video says is never taken as instructions.
- **Cut a reel.** "A 30-second reel from this talk": it picks the parts by what's said (the
  video's captions, a `talk.srt` beside a file, or what's heard in it when you're signed in to
  LottieFiles),
  cuts each in the pauses around its words and off a change of shot, and lays them back to back
  with their sound. Then captions, timed to the words, under one null that moves them all.
- **Several directions at once.** "Show me three ways this could come in": each direction is a
  copy in a tab of its own, built at the same time. `{` `}` switch between them; keep the one you
  like.

## Good to know

- Voiceovers, sounds made from words, and hearing what a video without captions says come with
  your LottieFiles sign-in (`⌃L`, or `creator-tui login`): LottieFiles makes them, with no key of
  your own. **Voice** in Settings (`F2`, under AI) picks the voice model: **Recommended**
  (LottieFiles' pick), **Fish Audio S2.1 Pro**, **Fish Audio Drama 3** or **ElevenLabs v4**. The
  words of a line, a sound's description and the sound of a video that's heard are sent to
  LottieFiles, which has them made or heard by Fish Audio or ElevenLabs.

- In a Creator document it can ease, retime and export (what syncs); values stay as they are, as
  they do for you.
- It uses Creator Terminal's tools and web search. It has no shell or access to your other
  connected tools. Files are read through the app's import, data, trace and attachment tools;
  exports go only within the open document's folder. Drop a reference file on the message
  box rather than relying on a path typed into a message.
- An export, saved preset or web request is outside document undo. Check exported files
  separately after a change.
- **Settings** (`F2`) has **Copilot › Agent** and **Model** for the next conversation. Agents
  Mode has separate choices. Preferences are kept in `settings.json`.
- See [Ask the copilot to change a layer](https://terminal.lottiefiles.com/docs/how-to/ask-the-copilot-to-change-a-layer.md) for a
  complete request-and-undo task.

## Behaviours

Use `behave` to list, explain, add, set, remove or bake [behaviours](https://terminal.lottiefiles.com/docs/behaviours.md). It reports
each property's stack and effect indices. For example, add a spring to a landing's Position,
a slow oscillation to an idle, or a drift to a spinner's Rotation. Avoid a blanket wiggle.
Use `look` to inspect what the motion does before calling it done.

`set`, `animate`, `ease` and `retime` edit a driven property's authored base. Keyed behaviour
controls have track names in `document`, which also lists the stacks. `behave set` changes a
control by name and can turn the behaviour on or off. Raw `lottie` replacement of a driven
transform or its effects is refused; use the value tools or bake first. Behaviours are kept
in files, so save a file copy of a Creator document first.

For Oscillate, set `amount` as `[x, y]` (or `[x, y, z]` on a 3-D layer). Loop takes the words
`cycle`, `ping-pong`, `continue` or `offset` for `mode`, and `after`, `before` or `both` for `side`.

For Follow, give `source` in words: `Card position`, `Card scale x`, or
`Controls › Energy slider`. Its `values` take `mode` (`replace`, `add`, `multiply`), `delay`
in seconds, `amount` in percent, `map` on/off, `from` and `to` pairs, and `clamp` on/off.
`document` lists the links and named controls.

Use `behave` with action `controller` to add a Controls layer, then `add-control` with
`control` (`slider`, `angle`, `point`, `colour`, `checkbox`), `name`, and an optional `value`.
`rename-control`, `set-control` and `remove-control` use the effect `index` from `list`.
One Energy slider can drive several properties; one Brand colour can drive several fills.
Use Follow delays for a stagger instead of copying keys, and inspect the result with `look`.

Aim takes a layer `source`, `offset` in degrees and `amount` in percent. Near takes a layer
source, `inner radius`, `outer radius`, `falloff` (`smooth` or `linear`), per-axis `amount`
and `mode` (`add` or `multiply`). A colour amount mixes towards that colour.

`behave` with action `convert` turns recognised After Effects expressions into editable
behaviours in one undo step. `document` reports how many can convert. Unknown forms stay.
For runtime motion, use `live: true` on a supported Follow, Aim or Near. Make the source
layer's Position a token; effect controls cannot be overridden by the player. Live is off by
default. The stage and video use baked keys.

Use `repeat` to make and edit [repeats](https://terminal.lottiefiles.com/docs/repeats.md). For example, make 24 copies of Card with
`arrangement: "circle"`, `stagger: 0.03` and `order: "from centre"`. Add a `near` field on Scale
with Dot as its source for a wave. `set` changes repeat or field values by their rail names;
`list` gives field indices for `remove-field`. `source` and `path` pick new sources. `detach`
keeps plain baked layers. `document` describes each repeat once, without every copy's links.
Use `look` before finishing.

## Tags

Type `@` in the copilot's message box, including zen, to point at an open document,
a take version, a kept style or a recent file. Type words to filter, use `↑` `↓` and
`enter`, or click an item. The menu opens above the box, or below where there is
more room; long lists scroll. `esc` leaves the `@` text in place. The last action
opens the app's **Open a file…** chooser and attaches the selected file.

Tags become chips above the box. They are always references here: pictures go as
reference pictures, documents as files the agent can read or import. A take uses
its version's Lottie file in its thread folder. Click `×` to remove a chip, or
press `⌫` with the message empty to remove the last one.
