Skip to content

Long Renders Keep Going — The Chat Does Not Freeze

August 19, 2026

A two-minute video render, a ten-image batch, or a Monte Carlo in Code Executor used to hold the whole conversation until they finished. Those jobs now detach. You get a live card in this thread, the chat stays usable, and the result comes back here when it is done — including after you reload.

What you can do

  • Keep talking while a long tool runs. Video Lab, Music Lab, Image Lab batches of 2 or more images, heavy Video Editor renders, and long Code Executor Python runs hand off to a background job and return a handle instead of blocking the turn.
  • Watch the real state on the card. Running, delivering, finished, failed, or cancelled — including the first time you open the chat after the job already completed. Reloading no longer leaves a spinner on a finished render.
  • Ask Alfrada OS to list or stop one. The background_job tool lists what is still running in this conversation, and cancels one by id when the prompt was wrong, you changed your mind, or the output is no longer needed.
  • Batch distinct images in one job. Image Lab accepts up to 10 different prompts in a single call (prompts); the whole batch renders in the background instead of ten separate blocking calls.
  • Detach a known-long Code Executor run immediately. When the agent knows up front the Python will take a while (training, a deliberate sleep, a heavy simulation), it flags expected_long_run and the job leaves the turn in about a second instead of waiting out the usual ~45s inline grace.

Where this shows up

You asked for a 15-second product clip and a poster set in the same breath. The video and the image batch each get a card; you can keep briefing the next scene instead of staring at a frozen composer.

You kicked off a restyle on a long recording, closed the laptop, and came back. The card already shows finished (or failed) instead of spinning forever.

You realised the prompt named the wrong product halfway through a Music Lab render. "Cancel that background job" stops it. The result is discarded; spend the provider already took is not refunded.

Try it

  • "Generate a 10-second product clip, then keep going — draft the landing-page copy while it renders."
  • "Make these eight distinct poster variants in one Image Lab batch and tell me when they're in out/."
  • "Restyle this trailer in watercolor, keep the faces, and ping this chat when the MP4 is ready."
  • "List what's still rendering in this conversation. Cancel the music job — wrong mood."
  • "Run a 50,000-path Monte Carlo on in/model.xlsx; you know it's a long run, so don't wait on it."

Heads up

  • This is not Task Scheduler. Task Scheduler starts a new run later (daily brief, Monday 8am). Background jobs are this conversation, still working after the turn ended. Wake Me is the other sibling: a timer that re-enters the chat to check on something external.
  • Cancel discards the result. It does not refund provider spend already incurred. Cancel because the output is unwanted, not as a reflex.
  • Only this conversation. Listing and cancelling look at jobs started in the current thread, not across your account.

Built for Alfrada OS.