Skip to content

Chat Interface

The chat interface is your primary tool for building and refining your app. You describe what you want, and Primio writes the code.

Type your request in the text field at the bottom of the screen and press Enter or click the send button.

  • Shift+Enter inserts a newline without sending
  • An error message appears if you exceed the character limit
  • While the AI is processing, the send button is replaced with a stop button (■). Click it to abort the current generation. The agent will wrap up and present what it has so far

You can ask for anything: new features, design changes, bug fixes, questions about the code, or complete rewrites of specific screens.

As you work, you’ll see several types of messages in the chat:

What you typed. If you attached an image or file references, those appear alongside your text.

The AI’s responses, streamed in with a typewriter animation. These explain what the AI is doing and often include context about the changes being made to your code.

These show the AI’s work in real time. Each tool message has a primary line describing the purpose (e.g., “Creating login screen”) and a secondary line showing details.

The AI agent has access to several categories of tools:

File operations — Creating, editing, deleting, viewing, and moving files in your Flutter project. File edit operations show the file path. Other tools (like Grep, Glob) display the tool name alongside their parameters.

Code search & analysis — The agent can search for files and patterns across your entire project. These are internal tools the AI uses automatically — they are not triggered by user requests.

Lists the files that were created or modified during a generation step. Useful for understanding the scope of a change.

When something goes wrong — usually a compilation error — the AI will often try to fix it automatically at no extra token cost. If it can’t, you’ll see options to rollback to the previous working state or edit your prompt to try a different approach.

This message appears during initial app generation with a brief delay. It’s normal — Primio is setting up your project before code generation begins.

Scroll up to see older messages. History loads in pages of 20 messages, with more loading automatically as you scroll (infinite scroll). Date separators appear between messages from different days so you can orient yourself in longer conversations.

Click the microphone button next to the text field to dictate your prompt. The transcribed text is appended to whatever you’ve already typed, so you can combine typing and speech.