Skip to main content
The chat panel on the left side of the editor is where you tell Lovable what to build. You describe what you want in plain language, Lovable does the work, and each response shows what changed so you can review it, steer it, or undo it. Behind every message, Lovable’s agent works in a loop: it gathers context from your conversation and project, takes action with tools, and checks the result before moving on. You’ll see that loop reflected in everything below, from activity cards to the questions Lovable asks.
You can ask Lovable anything, not just build requests. Ask how your app works, what a term means, or anything else on your mind, and Lovable answers in chat.You can also ask Lovable to run project actions from chat, for example publish my app, deploy this project, or ship it. See Publish from chat.
Every draft has a chat of its own. While you’re in a draft, Lovable applies your requests to that draft instead of to your project, and you can ask it to update or accept the draft from there.

The prompt box

Type your message into the text field at the bottom of the chat panel, then press Enter or click the send button. You don’t need any special phrasing. Describe the outcome you want rather than the implementation:
See Prompting best practices for more guidance, and the prompt library for ready-made prompts. Around the text field you’ll find:
  • The microphone: Dictate your message instead of typing. Click it to start recording, or press Option+V (Mac) or Alt+V (Windows/Linux). When you finish, click the check, and Lovable transcribes your words into the prompt box for you to review and send. Click the X instead to discard the recording.
  • The mode toggle: Switch between Build and Plan mode, or press Option+P (Mac) or Alt+P (Windows/Linux).
  • The button: Open the Chat actions menu to attach files, add references, and reach common project tools.

Modes

The mode toggle next to the chat input switches how Lovable responds:
  • Build: Lovable makes changes directly in your project. This is the default, and the right choice for most requests, from small tweaks to whole features. Cost is usage-based, and many requests cost less than one credit. See Build mode.
  • Plan: Lovable discusses, investigates, and plans without touching your code. Use it to think through a bigger feature, debug an issue safely, or compare approaches before building. Each Plan mode message costs one credit. See Plan mode.
You can switch modes at any time, and the conversation carries across both.

Chat actions

Click the button next to the chat input to open the Chat actions menu, the quickest route to attaching context and common project tools:
  • Settings: Open the settings dialog on your project’s General tab, where you rename the project, manage publishing options, and more. See Project settings.
  • History: Open your project’s version history to browse and restore earlier versions.
  • Knowledge: Write persistent instructions that Lovable follows in every request, such as your product context or design rules. See Knowledge.
  • GitHub: Connect your project to a GitHub repository with two-way sync, so changes flow in both directions. See GitHub.
  • GitLab: Connect your project to a GitLab repository with two-way sync, so changes flow in both directions. See GitLab.
  • Project connectors: See the services your project is connected to and the chat connectors available to it, and click any connection to manage it. See Connectors.
  • Take a screenshot: Capture the current preview and attach it to your message, useful for pointing at what you’re discussing.
  • Add reference: Open the @ picker to point Lovable at:
    • Code: Files in your project’s codebase.
    • Files: Documents you uploaded or Lovable generated.
    • Connectors: A selection of popular connectors to pull content from.
    • Projects: Other projects in your workspace.
  • Add skill: Browse your workspace’s skills, reusable instruction sets, and run one. Picking a skill types the / command for you.
  • Attach: Add files from your computer to your message. See Attach files as context.

Attach files as context

Attachments show Lovable what you mean. Attach a design mockup to match, a screenshot of a bug to fix, or a document to build from, like a product brief, a spreadsheet of data, or an audio note. Attachments work the same when you create a project from the dashboard: attach files to your very first prompt. To add files, use Attach in the Chat actions menu, drag files into the chat, or paste them. Lovable reads what you attach: images, PDF, Word, Excel, and PowerPoint files, and even audio recordings. Ask questions about an attached document, or tell Lovable to use its content in your app. Each file can be up to 20 MB on the Free plan, 256 MB on paid plans, and 1 GB on Enterprise. You can attach up to 10 files per message. Images can total up to 15 MB per message, and Lovable compresses large ones automatically. If an upload fails, try again with fewer or smaller files. Click any attached file to open a preview. Code files open with syntax highlighting and the language named, and Markdown files open as formatted text with a Preview and Source switch for the raw file. Files over 1 MB can’t be previewed, but they still work as context. After attaching an image, click it to open the preview: click the image to zoom in, drag to pan, and use the zoom controls, a pinch, or Ctrl+scroll for finer control. To draw on the image, for example to circle the part you want changed, select Draw, sketch, and choose Save. Lovable receives the annotated image with your message. The same viewer opens images that appear in the conversation, including images Lovable shows you, like screenshots of your app from its work. There, select Add to chat to attach the image you’re viewing to your next message, so you can point at it and describe what to change. To put an image or video into your app itself rather than show it to Lovable, see Add images and videos to your app.

Figma .fig files

Drop a .fig file into the chat and Lovable parses it in your browser and shows a preview on the attachment. Lovable reads the design data inside the file: variables, colors, typography, and frame structure, plus the preview image saved in the file. It uses these to match your design’s style, not to rebuild every screen in the file, so tell Lovable in your prompt what you want built. Use a .fig attachment for a one-shot handoff that works without keeping Figma open. For iterative work against a live Figma file, where you point Lovable at specific frames or components, connect Figma through the Lovable desktop app instead. To export a .fig from Figma, open the file and choose File → Save local copy.

Add images and videos to your app

To place media in the app you’re building, use whichever of these fits:
  • Ask Lovable to generate it: Lovable can generate images, edit existing ones (including making backgrounds transparent), and even generate short videos. Describe what you want:
  • Attach the image in chat: Upload the image and tell Lovable where it goes:
  • Point at an existing image: In the preview, use Select elements in the preview toolbar to select the image you want to change, attach the replacement or paste its URL, and describe the update.
  • Reference a hosted URL: If the image already lives somewhere online, paste its URL in chat and tell Lovable where to use it. Be mindful of copyright.
  • Upload to your Git repository: If your project is connected to GitHub or GitLab, upload media files to the repository’s public folder, then reference them by path:
  • Embed a video: Link to a hosting service like YouTube and ask Lovable to embed it. For example:
Large files stored in your project make it slower to load and preview. Compress images to the size they’re displayed at, and host videos on a service like YouTube instead of uploading the file to your repository.

While Lovable works

Lovable working on one request doesn’t block you. Here is what you can do in the meantime.

Send follow-ups while Lovable works

Follow-ups are rolling out gradually and replace the message queue. Until your account switches, the queue works as before. If your queued messages show a Send now button, your account has switched and kept the queue: use the button to send a message into the running task, or disable Message queue in Settings → Your account to switch to follow-ups.
You don’t have to wait for Lovable to finish before sending your next message. In both Build and Plan mode, Lovable picks up new messages at its next natural stopping point, usually within seconds. If your message changes the direction, Lovable adjusts course. If it adds something, Lovable includes it in the current work. If it asks a question, Lovable answers it in its reply. Lovable keeps everything it has already completed, and follow-ups keep the files, elements, and references you attached to them. A follow-up steers the work, but it doesn’t interrupt Lovable mid-step. If you need Lovable to stop what it is doing right away, stop it first and then send your message: Lovable keeps the work it finished and starts fresh with your new instruction. Until Lovable picks it up, your message appears grayed out at the bottom of the chat. If Lovable is stopped, or is waiting for you to answer a question, grayed-out messages wait: answer the question or send a new message, and Lovable picks up the waiting messages along with it. If you change your mind about a message Lovable has already picked up, you can still edit it and try again. Some messages always run as their own request after the current one instead of joining it, for example Try to fix, other one-click fixes, and any message you send while a free fix is running. Lovable marks these Runs after the current task. Answers to Lovable’s question cards are different: they steer the current run directly. If you have several changes in mind, send them as one message rather than as many rapid follow-ups. Lovable is more reliable with one list than with a stream of separate messages.

Message queue (deprecated)

The message queue is deprecated: follow-ups replace it as the default way of sending messages while Lovable works. The queue appears only if you actively used it recently, for example by reordering, editing, or pausing queued messages. If you don’t see it, you send follow-ups, and the queue cannot be enabled. If you still have the queue, it works as before: messages you send while Lovable works wait in a visible queue above the chat input and run one at a time, in order. You can pause and resume the queue, reorder, edit, copy, or remove queued messages, and repeat a queued message up to 50 times. Queued messages keep the files, elements, and references you attached to them. Each queued message also has a Send now button, which delivers it into the running task right away, the same way a follow-up is. To switch to follow-ups, disable Message queue in Settings → Your account. You can re-enable it from the same place.

Follow the work in activity cards

Lovable’s work shows up in chat as activity cards that track its individual actions: file edits, commands, web searches, browser tests, and the subagents it delegates research to. Click a card while Lovable works, or Details on a finished change, to open the Details view, which opens where the preview usually appears and shows the full timeline of steps and file changes. On bigger Build mode requests, Lovable also shows the tasks it’s working through. See Build mode.

Stop mid-task

If you need to change course, click the stop button while Lovable is responding. Lovable keeps the work completed so far, and the message is charged for the work already done. You can then send a new message with better direction.

Answer Lovable’s questions

When Lovable needs more direction, it can pause and show a question card instead of guessing. The card holds up to four questions, each with answer options, and you can pick an option or write your own answer. You stay in control of how much you answer:
  • Move between questions and change earlier answers before submitting.
  • Skip a single question, or skip them all. If you skip everything, Lovable picks reasonable defaults and continues.
  • Draft answers are kept in your browser, so refreshing the page doesn’t lose them.
For open-ended visual work, Lovable can also show design directions to choose from directly in chat, so you steer the look before it builds. See Design guidance.

Act on Lovable’s responses

When Lovable finishes a task, its response summarizes what it did and what changed, and a row of actions lets you react without typing:
  • Undo latest edit (latest response only): Reverse Lovable’s most recent change in one click, with no confirmation.
  • Revert to this version (earlier responses): Restore your project to that point after you confirm. Works the same as reverting from version history.
  • Copy: Copy the response text, for example to save an explanation Lovable gave you.
  • Helpful / Not helpful: Rate the response to give feedback on the result.
The More options menu on a response shows:
  • Copy message link: Copy a direct link to that message, handy for pointing a collaborator or support to the exact step where something happened.
  • Preview: See your app as it was right after that message, without reverting anything.
  • Worked for and Credits used: How long Lovable worked on the message and what it cost. See Credits and usage.
On the activity card of a finished change, the Bookmark in history toggle saves that version to your bookmarks so it’s easy to find and restore later. See Version history.

See time and cost while Lovable works

You don’t have to wait for a response to finish to see what it costs. The More options menu is also available on the message Lovable is still working on, where the same two rows update as the work progresses:
  • Working for: How long Lovable has spent on the message. This measures active work, so it stops while the message is paused and waiting on you, for example to approve an action or answer a credit check-in, and continues when the work resumes.
  • Credits used: The credits deducted for the message so far. This row appears with the first deduction, so at the start of a message you may see only Working for. The value is what Lovable has already charged rather than an estimate, and it reaches the final cost when the message finishes.
When the message finishes, the labels change to Worked for and Credits used, and both values are final.
While a message is paused for a credit check-in or because your workspace ran out of credits, the More options menu is hidden. The credit check-in card states what the message has cost so far.

Edit a message and try again

If an earlier request sent things the wrong way, hover over one of your own past messages and select Edit message. Rewrite the message and confirm with Revert and resend: your project returns to the state before that message, and Lovable runs the new version instead. This works on your own text-only messages. Learn more in Version history.

Fix errors and get unstuck

When a build error appears while Lovable works, a Try to fix button appears on the activity card. Click it and Lovable scans the logs, finds the issue, and attempts a fix. Your account includes 10 free fixes, shared across Try to fix and fixes from the Security view, in all your workspaces and projects. Each free fix becomes available again 24 hours after you use it. Once you have used all 10, Try to fix still works and runs as a normal chat message that uses credits like any other request. If the error keeps coming back, or your app runs without errors but doesn’t behave as you intended, work through these steps instead of retrying the same prompt:
1

Ask Lovable to investigate

Describe what you see and what you expected. Lovable can inspect errors, logs, and console output, and test your app in a browser.
2

Revert and re-prompt

Roll back to the version just before the issue appeared using version history, then try a clearer, more specific prompt.
3

Plan before rebuilding

Switch to Plan mode and ask Lovable to outline an approach first. Review the plan, adjust it, then build step by step.
If you’re on a paid plan and believe the issue is with Lovable itself, contact Support.
With Project monitoring, Lovable can also watch your project on a schedule and post a brief in chat when it detects an issue, with the option to fix or ignore it. Monitoring is off by default: turn it on in Project settings → General → Project monitoring. Available on Pro plans and above.

Suggestions from Lovable

After a response, Lovable may suggest features to build next as clickable chips near the chat input. Click one and it fills the prompt box, so you can adjust the wording before sending, or ignore the chips and write your own. Suggestions are based on your project and what you just built. You can turn them off with the Chat suggestions toggle in your account settings.

FAQ

Yes. Messages in both Build and Plan mode consume credits. The More options menu on a message shows Credits used: the credits spent so far while Lovable is working, and the total when the message finishes. See Credits and usage.
The first fixes are free. Your account includes 10 free fixes, shared across Try to fix on build errors and fixes suggested by the Security scans. The 10 fixes count across all your workspaces and projects, not per project. Each free fix becomes available again 24 hours after you use it. Once you have used all 10, further fixes run as normal chat messages and use credits like any other request. Security scans themselves are always free and do not count toward the 10.
Yes. While Lovable is working, keep typing: Lovable picks up each message at its next natural stopping point and includes it in the work without losing anything it has already done. See Send follow-ups while Lovable works. If you still have the message queue, your messages keep queueing in order instead. Send now on a queued message delivers it into the running task right away, and you can disable the queue in Settings → Your account.
No. Credits work the same as if you had sent the message while Lovable was idle. In Build mode you are charged for the work Lovable completes, and a follow-up doesn’t add a separate fee.
Click Undo latest edit under Lovable’s latest response to reverse its most recent change in one click. To go further back, revert from version history, or use Edit message on your own message and choose Revert and resend to rewrite it and try again.
Use Attach in the Chat actions menu, drag files into the chat, or paste them. You can also use Take a screenshot to capture the preview. See Attach files as context.
Yes. Open the Code tab in the project toolbar to read and edit your project’s code by hand. See Edit code.
Ask Lovable to publish, deploy, ship, or go live, and the agent handles the deploy while respecting your workspace settings. To pick a subdomain, add it to the prompt, for example Publish to my-todos.lovable.app. You can also click Publish in the top-right corner of the editor to use the Publish dialog. See Publish your Lovable project.
Single files larger than 10 MB cannot be saved into your project’s code, usually after adding large images, videos, or other media. Ask Lovable in chat to migrate them, and it moves the files to Lovable’s CDN and updates your code to load them from there:
Files pushed from your own computer through GitHub or GitLab can be larger, but Lovable cannot change them afterwards.
Lovable keeps working. Your request runs on Lovable’s servers, not in your browser, so you can close the tab and come back later to find the finished result in chat.
The message pauses rather than ending, and a card appears in chat. Choose Add credits to resume where Lovable left off, or Wrap up to have Lovable finish the work in progress and stop. Paused work waits until you decide. See What happens when you run out of credits.
Yes. On desktop, Lovable may offer to enable browser notifications so you know when it finishes a task or needs your input. You can dismiss the prompt and keep working without them.