Space Doctor
Build with Beam · Reflection AI × Hugging Face · November 2026

Every Space deserves a second life.

A third of the most-liked Hugging Face Spaces no longer run. Beam reads each broken Space and writes a repair; we rebuild it and call its API. A Space only counts as revived when it returns a real result.

Figure 1The 10,000 most-liked Spaces on Hugging Face, one dot each, ordered by likes from the top left. Hover or tap a dot to see the Space.
1 · Results

Spaces Beam brought back

Every Space below crashed on Hugging Face. Each thumbnail is what the repaired app returned when we called it in our rebuild. Tap one to see the original error, Beam's diagnosis, the patch and the full output.

Figure 2Revived Spaces, by likes. Tap any one to see the error, the patch, Beam's diagnosis and the output. Each patch for a Space with 30 or more likes is open as a pull request on the original Space.
Try it

Check any Space

Type one of the 10,000 most-liked Spaces. See whether it ran when we checked, the error Hugging Face showed, the root cause Beam's triage found, and what happened if we treated it.

Try:
2 · Method

Nothing counts on Beam's word

Most broken Spaces did nothing wrong. Spaces reinstall unpinned dependencies on every rebuild, so code that worked when it shipped now meets gradio 5 and 6, huggingface_hub 1.0, numpy 2, torch 2.6 and Python 3.13. The fix is usually small. Finding it means reading the repo, the traceback and the installed package versions together.

Beam gets all of it in one prompt: the repository with the most relevant files first, Hugging Face's error log, our rebuild log, the exact pip freeze, and the Dockerfile the Space is built from. It answers with a patch, a dated lockfile, or the verdict that the Space can't be fixed honestly. Then we check.

Step 1ReproduceRebuild the untouched Space with the Spaces recipe. It must still fail, or it is not a patient.
Step 2DiagnoseBeam cites the log line that proves the cause, and can ask for any file it was not shown.
Step 3Check the patchEdits must apply and lockfiles must resolve. Failures go straight back to Beam, before any rebuild.
Step 4GuardPatches that delete code, drop functions, swallow errors or change special-token text are rejected.
Step 5Rebuild and callThe Space must boot and its main endpoint must return a non-empty result. If not, Beam tries again at higher effort.
Figure 3From census to outcome. Ribbon widths use a square-root scale so the later stages stay visible.
replay

      
Figure 4One repair, replayed from the run's own case file: the reproduced failure, Beam's diagnosis, the patch, and what the rebuilt app returned.
3 · Causes

Why Spaces die, in one call

Beam read the error log of every broken Space in a single long-context call and named the causes, each as a regular expression. We ran its expressions over the logs ourselves, so every count is measured.

fixable in codeplatform, hardware or secretscatch-all regex, not counted
Figure 5Root causes proposed by Beam. Bubble area follows the number of broken Spaces each regex matches first.
4 · Control

Does it take a model?

The obvious alternative needs no model at all: reinstall every dependency as it existed on the day of the Space's last commit, with uv --exclude-newer. We ran it on the same patients, with the same verifier.

Figure 6
5 · Findings

Where Beam could have cheated

Any model graded by an automatic check can learn to pass the check instead of doing the task. These are the places that could have happened in this project, and what the logs show.

6 · Cost

What a revival costs

Appendix

Every patient

Diagnosis, patch, every attempt and what the rebuilt app did, for each Space Beam treated. Failures included.

Limits

What this does not claim

A rebuild, not Hugging Face's builder.We follow the documented Spaces recipe. CPU Spaces use CPU torch wheels, which share the same Python API. Patched READMEs pin the Python version we tested with, so what deploys is what we verified.
Functional is a smoke test.The main endpoint returned a non-empty result for one real input, the Space's own example file when it ships one. It is not a quality grade, so the outputs are shown for you to judge.
GPU Spaces ran on one NVIDIA A10G,the GPU of Hugging Face's a10g-small. Spaces that ran on a T4 or L4 were verified on it too.
Owners decide.Pull requests went only to Spaces we revived, verified and reviewed, each with its evidence. We changed nothing on anyone's Space ourselves.