Troubleshooting
Each section below covers one problem: what you see, why it happens and how to fix it. Error codes in capitals (such as BUDGET_EXCEEDED) are shown in the failed step's details on the execution page; click the red step in the Steps diagram to read them (open Details on the run page to see each step's raw data). You can also ask the assistant "Why did my last run fail?" on the run's page.
"Content search is not available yet" when searching project files
Symptom. On a project's Files tab, Search inside files for "…" shows Content search is not available yet. Through the API, the search answers with indexNotReady: true and no results.
Cause. Either no Embedding provider is set up for the installation, or the project's files have not been indexed (made searchable) yet. Files uploaded before a provider existed are marked Failed in their Search index status.
Fix. Ask an administrator to add an Embedding provider (see Semantic search and Inference providers). Then, on the Files tab, open ⋮ → Reindex for search and Queue reindex (25 files per batch; repeat for more). Name filtering keeps working in the meantime.
Search results missing after switching embedding models
Symptom. Search-by-meaning worked, an administrator changed the default Embedding provider or its model, and now searches return little or nothing even though files show Indexed.
Cause. Each embedding model has its own separate index, and the new one starts empty. Files indexed with the old model still say Indexed, so the bulk Reindex for search action skips them.
Fix. Use Reindex on each file you need, or have someone with API access reindex the whole project with includeIndexed: true. Details are in Semantic search.
TRANSCRIPTION_UNAVAILABLE or TRANSCRIPTION_FAILED in a video analysis step
Symptom. A VideoAnalyze step fails with TRANSCRIPTION_UNAVAILABLE ("Transcription is Required but no transcription-capable inference provider is configured.") or TRANSCRIPTION_FAILED.
Cause. The step's transcription setting (transcription) is Required, which tells ReelBolt to stop rather than edit without a transcript. Either no speech-to-text (Transcription) provider is set as default, or the one that exists returned an error.
Fix. Either:
- ask an administrator to add a
Transcriptionprovider and make it the default (the bundled localwhisperservice works; see Inference providers), and click Test connection to confirm it works; or - change the step's
transcriptionsetting toOptional(the default), which carries on without a transcript when none is available, orOff.
VISION_UNAVAILABLE is the same situation for on-screen descriptions: the step's vision setting is Required but no Vision provider is the default.
Anthropic, Gemini or DeepSeek cannot be used for transcription
Symptom. When saving or testing a provider, ReelBolt refuses with a message such as "Anthropic providers cannot serve the Transcription capability — Anthropic exposes no speech-to-text API", and the Capability list does not offer Transcription (ASR) for these kinds.
Cause. Anthropic (Claude), Google Gemini and DeepSeek do not offer a speech-to-text service that ReelBolt can use. The same applies to some other pairings: video generation is MiniMax only, voiceover is Fish Audio only, and embeddings need Azure OpenAI or an OpenAI-compatible service.
Fix. Keep your Anthropic, Gemini or DeepSeek connection for Chat (and Vision), and add a separate Transcription provider of kind Azure OpenAI or OpenAI-compatible, such as the bundled whisper service. See the table in Inference providers.
BUDGET_EXCEEDED in a video generation step
Symptom. A VideoGenerate step fails with BUDGET_EXCEEDED, and no clips were created.
Cause. Before buying any clip, ReelBolt checks three spending limits, and at least one would have been exceeded:
- the step's own Max Spend cap (
maxSpendUsd), compared with the estimated cost of every clip the step would create; - the project's daily budget (20 US dollars per UTC day by default);
- the installation-wide daily budget (50 US dollars per UTC day by default).
Nothing is bought when this happens, so you have not been charged.
Fix.
- If the error says the plan's estimated cost exceeds the step limit, raise
maxSpendUsdon the step, or ask for fewer or shorter clips (fewer takes, a shorter duration, or a lowermaxClips). - If a daily budget is the problem, wait until the next UTC day, or ask whoever runs the installation to raise the daily budgets.
- When rerunning, choose reuse previous clips instead of Regenerate (costs money), so clips that were already made are reused for free.
A run is refused because the workspace is out of credits
Symptom. A run is refused before it starts — or a step that needs more credits than are available is refused — and the message names a plan or credit limit. The run did not start, and nothing was charged.
Cause. The workspace's plan does not have enough available credits for the work, or the plan does not include the kind of step the run wants (an editing "room" or generated video on a plan without it). ReelBolt refuses before the step runs rather than overspend, so a run that cannot be afforded never starts and nothing is charged.
Fix.
- On a paid plan, top up credits from Settings → Plan and billing → Buy credits, or move to a bigger plan whose monthly credits fit your usage (see Plans and credits).
- If the refusal names a feature the plan does not include (rooms or generated video), upgrade to a plan that has it, or change the workflow to a step type the plan does allow.
- On a self-hosted install with billing off there is no balance to run out — the billing pages are simply switched off, so this error would not appear there.
A step fails with NO_RUNNER_ONLINE
Symptom. A run stops at a media step with the error NO_RUNNER_ONLINE, and the step does not run.
Cause. The workspace's compute preference is Only my machines (the "Only my machines" choice in Organization → Settings → Where your work runs), and no paired machine was online and able to take the step. That choice never falls back to the cloud: the run stops there instead of quietly billing the cloud. A Prefer my machines or Automatic workspace would instead have sent the step to the cloud pool, which is not in service yet — no pool workers are enrolled — so such a step would sit in a queue that nothing picks up, rather than fail this way. See Desktop runner.
Fix.
- Start (or leave on) the paired machine you want to run the work, make sure it is paired to this workspace on Runners, and run the step again.
- If you do not need to force it onto your machine, change the preference to Prefer my machines or Automatic so a step can run on the platform when your machine is offline.
- If the step is a Remotion render, the machine must have reported a container runtime (Docker or Podman); an ffmpeg-only machine cannot take renders.
EGRESS_REFUSED in a video generation step
Symptom. A VideoGenerate step that works from a shot plan fails with EGRESS_REFUSED before anything is generated.
Cause. The shot plan asked for a generated clip to start or end on a frame taken from your own footage (a firstFrame or lastFrame). Doing that would mean sending part of your footage to the video-generation service, and the step's allowSourceMediaEgress setting is false (the default), which forbids it. The whole step is refused so that nothing is bought.
Fix. Either set allowSourceMediaEgress to true on the step if you are happy for frames of your footage to leave your installation, or change the plan so shots do not ask for a starting or ending frame. Note that even with permission, sending a frame is not yet supported, so such clips are generated from their text description alone.
INSERTS_REQUIRE_REENCODE, GENERATED_CLIPS_REQUIRE_REENCODE and similar compile errors
Symptom. A VideoCompile step fails immediately with INSERTS_REQUIRE_REENCODE or GENERATED_CLIPS_REQUIRE_REENCODE. Related codes with the same cause are GRAPHICS_REQUIRE_REENCODE, MUSIC_REQUIRES_REENCODE, SFX_REQUIRES_REENCODE, COLOR_GRADE_REQUIRES_REENCODE, TRANSITIONS_REQUIRE_REENCODE and MULTI_SOURCE_REQUIRES_REENCODE.
Cause. The compile step's mode is set to StreamCopy, a fast mode that only joins cut pieces without re-rendering the picture. Tracked screen inserts, generated b-roll clips, graphics, music, sound effects, colour grading, transitions and combining several source videos all change the picture or sound, so they need the video to be re-rendered.
Fix. Set the compile step's mode to Reencode (the default), or switch off the feature named in the error (for example enableInserts or enableGeneratedClips). See Step types and the tracked screen insert recipe.
A workflow run seems stuck in Running or Queued
Symptom. The execution page shows RUNNING for a very long time with no step finishing, or stays QUEUED.
Cause. Several possibilities:
- It is just slow. Agent steps that build and render animation, and analysis of long footage, can take a long time, especially on slower AI services. Each agent step has a time limit (50 minutes by default) after which it fails with "Agent '…' timed out after … seconds".
- It is waiting for a slot. Only a limited number of runs work at the same time (4 by default); extra runs wait as
Queueduntil one finishes. - The system restarted mid-run. If the workflow service was stopped abruptly (not shut down cleanly), the run can be left showing
Runningeven though nothing is working on it.
Fix. Check the Steps diagram and the "what is happening now" line (open Details for the live token counters): if steps are progressing or tokens are increasing, let it run. If nothing has changed for a long time, click Stop, which marks the run Cancelled, then click Run again. If agent steps keep timing out on a slow AI service, ask whoever runs the installation to raise that agent's time limit (the Agents:<AgentName>:RunTimeoutSeconds setting).
A media step stays Queued and never starts
Symptom. A media step (a Remotion render, a video compile or a video analysis extraction) sits in Queued for a long time and never starts, under a workspace whose compute preference would send it to the ReelBolt cloud pool (Automatic or Prefer my machines with no machine online, or Never use my machines).
Cause. The ReelBolt cloud pool is not in service yet: no pool workers are enrolled, so a step that falls back to the pool moves to a queue that nothing currently picks up. Nothing errors, which is exactly why this is written down here. Work on a paired machine, and work the platform runs itself, are not affected.
Fix. Pair a machine to the workspace (see Desktop runner) and leave it online, or change the workspace's compute preference so the step runs on the platform. Until the pool is in service, work only finishes where a paired machine (or the platform itself) can run it — do not rely on a fallback to the pool finishing your work.
A paired machine is not taking work
Symptom. A machine you paired is not receiving media work, and a step that would have run on it fails with NO_RUNNER_ONLINE (under the Only my machines preference) or waits in a queue the pool cannot pick up (under the other preferences).
Cause. The machine's governor has stopped it for a reason it can evaluate, or the machine is simply offline. Run reelbolt-runner status on the machine: the line names the reason — user-active (you are at the keyboard, in idle schedule mode), on-battery, outside-window (a time window) or paused (an explicit pause). A machine whose schedule has stopped it has dropped its connection to the gateway entirely while it is idle, so it is not even holding a connection open.
Fix. reelbolt-runner resume clears an explicit pause — one command, whoever placed it, without editing a file. For a schedule gate, the same status line names the gate and when it next changes ("work resumes Mon 09:00"); change or remove the schedule block in the machine's runner.json if you want the machine to work in that window. If nothing responds at all, stop and restart the runner process: a pause is never persisted, so a restart always comes back working. The full settings and defaults are in The runner's settings on the Desktop runner page.
A workflow run was cancelled and you did not stop it
Symptom. A run shows CANCELLED with the message "Interrupted: the workflow engine shut down while this execution was running."
Cause. The workflow service was restarted or shut down (for example during maintenance or an update) while your run was working. ReelBolt cancels runs cleanly in that situation rather than leaving them half-finished. A run you stopped yourself says "Stopped by user" followed by your user id instead.
Fix. Click Retry on the execution page. Steps that already finished may be reused from the cache, so the retry usually picks up quickly.
Retry is refused with "Cannot retry an execution that is already running or queued"
Symptom. Retrying a run fails with that message.
Cause. A run can only be retried once it has finished, failed or been cancelled.
Fix. Wait for it to finish, or click Stop first and then Retry.
The assistant says the rate limit was exceeded
Symptom. When you ask the assistant to run a workflow, it reports "rate limit exceeded, try again later".
Cause. The assistant can start at most 10 runs per hour for each user in each project (a rolling hour counting runs that started in the last 60 minutes). This protects against runaway spending. Whoever runs the installation can change the number with the Assistant:MaxExecutionsPerHour setting.
Fix. Wait until an earlier run is more than an hour old, or start the run yourself with Run on the workflow page, which is not subject to this limit.
The assistant's workflow proposal says "Proposal out of date"
Symptom. Clicking Apply changes on a workflow proposal shows Proposal out of date and nothing changes.
Cause. The workflow was edited (by you, or in another tab) after the assistant made its proposal. ReelBolt refuses to apply a proposal to something that no longer matches what you were shown.
Fix. Ask the assistant to propose the change again, then apply the new proposal.
No video generation provider configured (PROVIDER_NOT_FOUND)
Symptom. A VideoGenerate step fails with PROVIDER_NOT_FOUND ("No video generation provider configured."). Related codes from the service itself are PROVIDER_AUTH_FAILED (the key was rejected) and PROVIDER_INSUFFICIENT_BALANCE (the account with the video service has run out of credit).
Cause. No VideoGeneration provider is set as default and the step does not name one, or the service refused the request.
Fix. Ask an administrator to add a MiniMax provider with the Video Generation capability, set it as default and test it. For an authentication error, check the API key; for insufficient balance, top up the account with the video service.
A provider endpoint is rejected as a private address
Symptom. Saving a provider fails with "Endpoint must be a public https/http URL; internal/private/loopback addresses are not allowed."
Cause. Cloud-only kinds (Azure OpenAI, Anthropic, Gemini, DeepSeek, MiniMax, TypeSafe) must point at a public internet address. Only the self-hostable kinds (OpenAI-compatible, Fish Audio and the self-hosted decision server) may point at a server on your own network or inside the installation.
Fix. For a service you host yourself, choose OpenAI-compatible (or Fish Audio for voiceover) as the kind. For a cloud vendor, use its public address.
An Anthropic, Gemini or DeepSeek provider fails with no API key
Symptom. A provider of one of these kinds fails its test or fails during runs, and its API key field was left blank.
Cause. For these kinds ReelBolt never silently uses a key from the server's environment; a blank key is an error.
Fix. Enter the API key, or enter the literal value env: to use the key from the server's environment variables (ANTHROPIC_API_KEY, GEMINI_API_KEY or DEEPSEEK_API_KEY), which whoever runs the installation must set. See Inference providers.
A provider cannot be deleted
Symptom. Deleting a provider is refused.
Cause. It is the default provider for its capability, and ReelBolt will not leave a capability without its default by accident.
Fix. Make another provider the default for that capability first, then delete the old one. Agents that were specifically pointed at a deleted provider go back to using the default automatically.
A user never received their reset password
Symptom. An administrator reset a user's password, but the user did not get the new temporary password.
Cause. A reset password is only ever sent by email; it is not shown on screen. If the installation has no email (SMTP) set up, the new password cannot be delivered.
Fix. Ask whoever runs the installation to configure email (the SMTP_* settings), then reset the password again. New accounts are different: their temporary password is shown on screen in the User Created box. See Managing users.