Skip to content

The working session ​

The goal in one line: you always know what your AI is doing, and nothing it does makes you wait.

The rail tells the story ​

Every agent turn, running or reopened, shows the AI's words and between them the steps it took, in the order they happened. A finished turn no longer folds behind a button.

Each step is named after what it is. A wait says what it waits for ("Waiting for generate-articles.sh"), a stop names the task it stopped, a helper is "Started a helper: <its task>", a web search carries its query and a web page its address, a tool from Obsidian or Logseq says so, a skill names itself, and a command the AI described is labeled by that description. Finished steps read in the past tense ("Read package.json").

Each row carries one grey glyph for what it is - a file, a folder, a search, a pencil, a terminal, the web, a helper, an hourglass, a plug for a tool, a sparkle for a skill - and its time once it has run past ten seconds. Your tools carry their own marks: Obsidian, Logseq and Blender show their logos, monochrome like every other glyph. Color means status only: a soft ring breathes around a running step, and a failed one turns red, says how long it ran, and opens itself with the error text. A command that printed its output and then exited with an error code (the last command of a chain, git status outside a repository) is not a failed step: the row shows the code in amber, "exit 128", and what it printed stays above it. Red is for a command that printed nothing and failed, timed out, or was stopped, with the reason: "The command timed out", "Exit code 1", or the signal that stopped it.

Thoughts are rows - "Thought for 12 s", opening to the text - and a chain of tiny thoughts reads as one row. The plan shrinks to the current item with a "3 of 7" count; click for the rest. A command row copies its command, a file row opens the file, and a failed row offers Try again.

Simple or Detailed ​

A Simple | Detailed control sits in the rail header. Simple folds steps of a kind into one row ("Read 4 files and searched twice", "Ran 3 commands"), folds a wait into the step it waits for and keeps thoughts out of the way. Detailed opens every step by itself, and the rail follows its newest row. Projects open Detailed by default; change it on any rail, in Settings, or with Ctrl+O. Esc stops a running turn. Chat with tools has its own shape and no such control.

What the header says ​

While a turn runs, the header says who is working where, and the line under the rail says what is happening now, how long, and how much. While the model reads the project in, it says "Taking in the project so far · 60%". The header of a finished turn sums it up: "Read 4 files, ran 3 commands, edited 2 files · 6 m 20 s · 4.7k tokens", with a "2 files changed +52 -9" chip that opens every diff.

The folder chip in the app header says what the project is doing: starting, running, waiting for you, done.

Background tasks and helpers ​

A command the AI runs in the background keeps running on its own row, "still running", with its latest line and its clock, until the agent ends it; a wait on it is named after it. A task that outlives the turn stays as its own row until it ends, and the last line it printed is kept in the record, so a reopened turn still says it. A helper's own steps nest under its row, its progress shows as the row's line, a wait on it reads "Waiting for the helper", and its text never lands in the AI's reply.

A running task or helper has a Stop button. A stopped task reads "Stopped", not failed; a task that fails ends red with its exit code.

A model this computer runs that sends nothing for four minutes in a project - no step, no text, no command of its own running - is stopped, with a note on the turn: nothing came from the model for four minutes, and a model that goes quiet this long is usually going in circles. The line below says what to do next.

The permission card ​

When Auto stops at a step it will not run on its own, the question comes to you as a card above the input field, where you are - no scrolling or clicking to find it - and the rail keeps your decision as a one-line receipt. See Permissions and approvals.

Fast to the first step ​

The coding model loads in the background the moment a project opens, tools the AI never used no longer ride every call, the embedding model warms before your first question, and the field clears the instant you send. Every local session gets a reading room of at least 32k tokens and learns the served size from the engine itself, so it condenses its notes only when it must. When a tools session warns that the model's room is small, it says why: a reading room pinned in Fine-tune is named as the cause, with where to change it; a machine that cannot afford more is told the other way round - a bigger-window model, or fewer tools on the AI.

Say something while it works ​

Type and send while the agent is working and your message reaches it at its next step, without canceling the work in progress. It shows in the conversation where you sent it and the work carries on below.

When a small model struggles ​

When a model this computer runs gives up on project work - two steps end red, a tools turn never gets a tool call to work, or the model answers a question about the folder without reading it and says it has no tools - one line above the message box says so, once per session, and names the way up. The line comes as soon as the second step fails, while the turn is still running.

It names the bigger model when there is one ("Ornith on this computer does better at project work", with Use Ornith here). With a plan it adds that your plan's online models do these in one go, and Let this AI use online models stops the turn, sets the AI to Auto - Online and Offline, and asks the same question again. Without a plan it says online models are an optional paid service and everything offline stays free, with See online models. Don't ask again for this AI keeps it quiet. Never on a fault of the app's own.

What a finished turn carries ​

  • The check outcome. If the project has a check command, the turn says "Checks passed (npm run typecheck)" or lists the errors that remain after the agent's two rounds of fixes.
  • Undo this turn's changes. Under the steps of the last finished turn that changed files - every edit put back, created files removed, deleted files restored, and the undo written into your records.
  • Why a picture was not looked at. When the model could not see an image, the rail says what happened instead - a line that stays readable after the steps fold.
  • More of the truth in the record. Each step's tool name, server, start and end times, the last line a background task printed, and why a failed step failed. When a very long turn has to be trimmed, the AI's spoken words are kept; only the steps in the middle go.

Nothing holds up your turn ​

Remembering something for the project happens in the background. Project memory is kept ready and updated in place, so reading it never delays the agent, and reading the project's own notes does not ask permission.

Leaving mid-turn ​

Leave the chat while your AI is working and the turn keeps going. Nothing asks first. Coming back opens the running turn at once, and a turn that ended while you were away is recorded in the conversation like any other. The activity tray lists it until you have seen it, with Open, and when the agent needs an answer from you the row says so with Allow and Don't allow right there. See Replies keep going.

A project turn that ran longer than half a minute and ends while the window is not in front sends a desktop notification: the AI's name, "finished in" or "stopped in" the folder, never the reply.

Waiting on the world ​

A silent online call is named for what it is - waiting on the provider, or waiting on your server. An agent reads only the addresses you gave it, or pages a page it already read links to; any other address comes to you as a permission card, "Read <address>", with Allow and Don't allow. An Offline Only AI never searches the web, and an AI with web access off reads nothing from it; the agent is told so and the line above the message box says what would change that. See Web access.

Tools turns in chat ​

A tools turn in chat runs on the same machinery, in its own shape. See Tools.

Opening a project conversation ​

It lands on its last message, and its history is whole: every step it took is there to reopen, and a conclusion spoken before silent steps shows as the answer even for conversations recorded before this behavior existed. Switching AI with a project open reopens the session for the new AI.

Private AI on your machine. No one in control but you.