---
title: "Build one with a coding agent"
description: "Lesson 13.4 of Creator Terminal's lesson films (Plugins): Start a plugin with one line, let a coding agent write it, then check, try and install it from the command line, and use it."
canonical: "https://terminal.lottiefiles.com/build-one-with-a-coding-agent/"
last_updated: 2026-11-06
---

# Build one with a coding agent

> Lesson 13.4 of Creator Terminal's lesson films (Plugins): Start a plugin with one line, let a coding agent write it, then check, try and install it from the command line, and use it.

- The film (1:47): https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/d8ff4217a275/13.4-build-one-with-a-coding-agent.mp4
- Vertical cut: https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/ea5009e73e26/13.4-build-one-with-a-coding-agent-vertical.mp4
- Captions: https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/a86fe0fc5d5e/13.4-build-one-with-a-coding-agent.vtt
- The page: https://terminal.lottiefiles.com/build-one-with-a-coding-agent/
- A file the film uses: https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/4c028b446c26/ripple.zip

## Step by step

A plugin is a folder of plain files: a manifest, one JavaScript file with its commands, and,
if you like, presets and themes. That makes it something a coding agent such as Claude Code or
Codex can write for you, and check as it goes. In this tutorial you'll see the whole loop with
Ripple, a plugin Claude Code made: start a plugin with one command, ask your agent for what it
should do, then check it, try it, install it and use it. Ripple starts the selected layers'
animations one after another by their distance from a point, so a move spreads across a grid
like a ripple on water.

### Before you start

- Creator Terminal, installed ([Install Creator Terminal](/install/)), and a terminal open.
- A coding agent: Claude Code (`claude`) or Codex (`codex`), installed and signed in.
- To skip straight to trying it, `ripple.zip` from **Follow along** on this page: unzip it into a
  folder, and run the commands below from there.

### 1. Start a plugin

Every plugin starts with one line, `creator-tui plugin new` and its name: at most 24 lowercase
letters, digits and hyphens.

```sh
creator-tui plugin new ripple
```

It makes a working plugin in a folder named `ripple`: `plugin.json` (its name, its commands and
the tools they edit with), `com.lottiefiles.creator-terminal/plugin.js` (the commands, one
function each), a preset, `example.json` to try it on, a skill in `skills/` for agents, and
`AGENTS.md` and `CLAUDE.md`, which tell your coding agent how plugins are made and how to check
and try one.

![The folder: AGENTS.md, CLAUDE.md, the plugin's files, example.json and skills.](https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/827c28ef9ef5/build-one-with-a-coding-agent-the-folder-agents-md-claude-md-the-plugin.webp)

### 2. Ask your agent

Open the folder in your coding agent (`cd ripple`, then `claude` or `codex`), and say what the
plugin should do. Ripple was made from this:

```text
Make this plugin ripple: one command that delays each selected layer's keys by its distance from a point, so the nearest moves first and the farthest last. Let me choose the spread in seconds, where it starts from and whether it goes outward or inward.
```

The agent reads the plugin guide (`creator-tui plugin docs` prints it, with every tool a command
can edit with), writes the command, and runs `check` and `try` after every change. Here's the
heart of what it wrote: for each selected layer, a `retime` edit that moves its keys later by its
share of the spread.

```js
moving.forEach((layer, i) => {
  // 0 for the nearest layer, 1 for the farthest (the other way round, inward).
  let share = (distances[i] - nearest) / span;
  if (input.direction === "Inward") share = 1 - share;
  const by = Math.round((share * input.spread) / frame) * frame;
  if (by > 0) edits.push({ tool: "retime", args: { layers: [layer.id], by } });
});
```

A command reads the open document and the selection, and returns edits. It can't read or write
files, use the network or start anything, and it stops after two seconds.

### 3. Check it

```sh
creator-tui plugin check ripple
```

Check reads the plugin as Creator Terminal will, and says what it adds: one command, a skill, and
the one tool it edits with, `retime`. A problem is named with the file and field it's in, and how
to fix it.

![The check: ripple 1.0.0, 1 command, 1 skill, edits with retime, checked.](https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/6f5dd023cacf/build-one-with-a-coding-agent-the-check-ripple-1-0-0-1-command.webp)

### 4. Try it

```sh
creator-tui plugin try ripple ripple --on ripple/example.json
```

Try runs a command on a copy of a document and says what it changed. Nothing you have open is
touched. Here every tile's keys move later, the farther out, the later: 26 edits, as the two tiles
in the middle keep their timing. `--input '{"spread": 1.2}'` tries other values, and `--out
result.json` writes the result to open.

![The try: a line for each tile's keys, moved later by up to 0.6 seconds, then 26 edits.](https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/301518c00d57/build-one-with-a-coding-agent-the-try-a-line-for-each-tile-s.webp)

### 5. Install it

```sh
creator-tui plugin install ripple
```

It's on in Creator Terminal from now on. (The Plugins page installs a folder too: **Install from
a folder…**.)

### 6. Use it

Open the plugin's example in Creator Terminal, and press `space` to play it: 28 tiles, all
jumping at the same moment.

```sh
creator-tui ripple/example.json
```

Drag a box round the tiles to select them. Press `:`, type `Ripple` and press `⏎` (Return). Its
inputs, **Spread**, **From** and **Direction**, open on the right, and it's tried at once: in the
score (the timeline), each tile's keys step later, the farther out. Press `⏎` to keep it.

![The score after Ripple: each tile's keys step later, the farther the tile is from the middle.](https://terminal.lottiefiles.com/media/13.4-build-one-with-a-coding-agent/bdd9c6a29280/build-one-with-a-coding-agent-the-score-after-ripple-each-tile-s-keys.webp)

Press `0`, then `space`. The jump rolls out from the middle to the edges.

### 7. Share it

Zip the folder and send the `.zip`: the Plugins page installs it as it is. Its skill tells Claude
Code, Codex and other agents when to use its command, and the copilot, and AI apps connected with
`creator-tui mcp`, get a tool for it once it's installed.

### What you learned

- `creator-tui plugin new` starts a working plugin, with `AGENTS.md` for your coding agent.
- `creator-tui plugin check` and `creator-tui plugin try` are the loop: the agent runs them after
  every change, and so can you.
- `creator-tui plugin install` installs a folder; its commands are then in the palette and the
  left panel.

[Plugins](/docs/plugins/) in the manual has the folder's layout, and `creator-tui plugin docs`
prints the whole authoring guide, with every tool's schema.

## In this lesson

### One folder (0:08)

Every plugin starts with one line, creator-tui plugin new, and its name. That makes a working plugin in a folder, like this one, with AGENTS.md, which teaches your coding agent how plugins are made.

### Ask your agent (0:24)

Then open the folder in Claude Code or Codex, and say what it should do. We asked for a ripple, the selected layers' animations starting one after another, out from their middle.

### Check it (0:36)

Your agent runs two commands after every change, and so can you. Check reads the plugin as Creator Terminal will. One command, a skill, and the one tool it edits with.

### Try it (0:48)

Try runs a command on a copy of a document, and says what it changed. Here, every tile's keys move later, the farther out, the later.

### Install it (0:59)

Happy with it? Install it, and it's on in Creator Terminal from now on.

### Open the example (1:04)

Now open its example in Creator Terminal, and press space. Twenty-eight tiles, all jumping at the same moment.

### Ripple them (1:13)

Drag a box round them. Then press colon, type ripple, and press Return. Its inputs open on the right, and it's tried at once. In the score, each tile's keys step later, the farther out. Return keeps it.

### Play it (1:28)

Press zero, then space. Now the jump rolls out from the middle, like a ripple on water.
