Step cards in chat

As Oda works, every step it takes appears in the chat as a card: running a command, changing a file, reading one, searching, fetching a page, or updating its to-do list. This page is the catalog: what each card holds, how much it shows before it folds, and what it says when there is nothing to show. How the cards behave while a step runs, and what a rejected or stopped step looks like, are described on Tool calls in the chat.

The cards at a glance

Kind of stepThe card holdsFolding
Running a commandThe command, with the folder it ran in, and its outputScrolls instead of folding
Changing a fileThe change: added and removed linesNine lines
Reading a fileThe lines Oda read, each with its number from the fileEight lines
Reading an imageThe picture, with a note about itDoes not fold
Searching filesMatches grouped by file, or a list of pathsEight rows
Searching the web or fetching a pageThe answer with its sources, or the address with its HTTP statusDoes not fold
Updating the to-do listThe list with each item's state, and what changedDoes not fold

Terminal cards

A command Oda runs, in Bash or PowerShell, expands to a terminal card. The command and the folder it ran in stay at the top, and the output gets its own scrolling area under them, so a long result is read in place instead of being folded.

A non-zero exit or a signal shows as a small pill reading exit code 1 or signal SIGKILL; a clean exit needs no pill. A settled command that printed nothing visible says No output. When the command has output, Copy copies it. The rows, and how commands end, are described in full on Commands Oda runs.

Diff cards

A file change expands to a comparison of the file: its path, then its added and removed lines. A new file, or an overwrite, has no earlier text, so nothing is shown as removed.

The card keeps nine lines before its middle folds: the beginning and the end of the change stay visible, and a control between them states how many lines are hidden, for example … 12 more lines. The same control folds them away again.

The size of the change is on the row as +12 -3, and the card's footer repeats it with the number of files it touched. Copy copies the whole change, folded lines included. The turn's list of every file it changed is a different card; see Changed files and comparisons.

Read and image cards

A file read expands to the lines Oda read, each with its number from the file. The card names the file, and when the read covered only part of it, the card says so, for example Showing 40 of 180 lines. The card keeps eight lines before folding, the same way a diff does. Copy copies the excerpt's text without the line numbers, and the file's path on the row opens the file at the line where the read started.

An image read expands to the picture, with a short note about the image under it. Oda shows pictures from PNG, JPEG, WebP and GIF files; when the picture cannot be shown, the note stays as text.

Both cards, and what happens when a read does not finish, are described on Reading files and images.

Search cards

A content search expands to its matches, grouped by file, each match with its line number; a file-name search expands to a list of paths, one per row. The card's header counts what it holds, for example 3 matches · 2 files or 2 paths, and when the search found more than that, the count says so: Showing 3 of 42 matches · 2 files. The card keeps eight rows before folding, and a capped search leaves a line below the card about the complete result: where it is stored, or that it could not be saved. A search that matched nothing is not an error: the card reads No results. The full story is on Searching your files.

Web cards

A web search expands to the answer, over the numbered sources Oda used; each source is a link, with an excerpt and a date when the provider gave them. A page fetch expands to the page's address, as a link, and the HTTP status the request came back with, for example HTTP 200. When the source list or a fetched page was cut short, the card says so: Source list truncated or Content truncated. A search that found nothing reads No results found.

To-do cards

The Update to-do list step expands to the list itself, and recaps what the update changed. The row counts the progress, for example 3/5 completed, and names the task in progress; when several tasks run at once, the row adds a count, for example +2. In the card, each item shows its state: Completed, In progress or Pending.

Each update marks what moved since the previous list: added items carry a +, removed items a −, and updated items say how they changed, a status change or a reorder. The row adds counts like 1 added · 1 updated, and the unchanged items fold behind a footer, for example 2 unchanged. The first recorded list reads Initial list; when the previous list cannot be compared, the card says Previous list unavailable. An empty list says The to-do list is empty; an update that moved nothing says No changes to the list.

When a card cannot be drawn

Oda does not guess. When a step's record cannot be read as one of the cards above, the step opens to a plain block instead: IN holds the recorded request, OUT holds the recorded result, and each side scrolls on its own. The row still shows the step's kind and how it ended, so you can tell what it was.

Questions, answered

How much of a card shows before it folds?

A change folds after nine lines, a file read after eight, and a search after eight rows. Each keeps the beginning and the end and hides the middle behind a control. The other cards do not fold: a long one, like a command's output or a web card's source list, scrolls inside the card.

What happens to the lines a card folds away?

They stay in the card: the control in the middle states how many lines are hidden, for example … 12 more lines, and shows them when you click it. Copy takes them too, so what a diff, read or search card copies includes the lines the fold hides.

Why does a command card scroll instead of folding?

Command output is read from top to bottom. The card gives it a scrolling area of its own and keeps the command visible above it, so you scroll inside the card instead of opening and closing parts.

What does No output mean on a command card?

The command finished and printed nothing visible, so the card says so instead of showing an empty area. The command still ran and still has its ending, like any other command.

Which image formats can a step show?

PNG, JPEG, WebP and GIF. When a file is not one of those, or the chat cannot receive pictures, the picture does not show; the note about the image stays as text instead.

What does a web step show?

A web search shows its answer over the sources Oda used, each a link with an excerpt and a date when the provider gave them. A page fetch shows the page's address and the HTTP status it came back with, for example HTTP 200. When a list or a page's text was cut short, the card says so.

What does the HTTP status on a web step mean?

It is the response status of the page Oda fetched, shown next to the page's address, so you can see what came back.

What does 3/5 completed mean on a to-do step?

Three of the list's five items are done. The row also names the task in progress and, when several tasks run at once, adds a count like +2 for the rest.

Why do unchanged to-do items fold behind a footer?

The card recaps the update: the items that changed are marked and stay visible, while the ones that did not move sit behind a footer, so a long list stays readable. Open the footer to see them.

Why does a step show a plain block instead of a card?

Its recorded call could not be read as one of the cards above, so Oda does not guess: the block shows the recorded request under IN and the recorded result under OUT. How the fallback fits into a task is on Tool calls in the chat.