The agent built a 3D Paris gallery from two hugging face spaces.
I asked a coding agency to build me a beautiful website that showcases the monuments of Paris as 3D Gaussian splats. I have never opened the image generator. I have never touched the 3D reconstruction tools. The agent generated all assets (images and 3D splats) by directly calling two Hugging Face Spaces and connected them to a cinematic viewer.
Here are the results: Appears as static space.
👉 Missig/Monument de Paris
This post explains how that is now possible and why I think this is a preview of how much multimedia software will be built in the future.
The building block economy has arrived in multimedia as well.
Mitchell Hashimoto recently described a change he calls the building block economy. This means that the most effective route to software is no longer sophisticated monoliths, but small, well-documented components that can be assembled by others (increasingly agents). His key observation is that while AI is good at building everything from scratch, it is very good at piecing together proven pieces.
That proposition has primarily been expressed using code libraries. But the same forces are hitting multimedia AI as well. The hard part of using state-of-the-art image models, video models, TTS models, or 3D reconstruction models wasn’t the models. It was the integration of SDK, weights, GPU, input formats, and polling. If each model is a documented callable block, the agent can paste them together in the same way it globs npm packages together.
That’s exactly what Hugging Face Spaces has quietly become.
All spaces are constructs via agents.md
The hub hosts thousands of state-of-the-art models, the majority of which are open weight, most of which are deployed as interactive spaces. At this time, all Gradio Spaces also publish a plaintext Agents.md that tells agents exactly how to call them.
Karl https://huggingface.co/spaces/VAST-AI/TripoSplat/agents.md
It returns everything you need in one shot, including schema URLs, invocation and polling templates, file upload methods, and authentication hints.
API schema: GET …/gradio_api/info Call endpoint: POST …/gradio_api/call/v2/{endpoint} {“param_name”: value, …} Polling result: GET …/gradio_api/call/{endpoint}/{event_id} File input: POST …/gradio_api/upload -F “files=@file.ext” Authentication: Bearer $HF_TOKEN
There are no client libraries. There are no hard-coded integrations. Agents can read it and move the space end-to-end. Just set HF_TOKEN and you’re done.
The real unlocking is chaining. The output of one space becomes the input to the next space. Prompt → Image → 3D. That’s the whole pipeline behind this gallery.
Example of operation: Monument in Paris → Splat
The agent has chained two spaces together.
Image: ideogram-ai/ideogram4 turned each monument into a “specimen” shot with a clean dark background (even made the Eiffel Tower into a small diorama on a pedestal). Prompt input, image output. Splats: VAST-AI/TripoSplat reconstructed 3D Gaussian splats (.ply) from each single image. Image input, 3D output.
generated image

Reconstructed splat
All six agent-generated source images are separated by black and are ready for single-image 3D reconstruction.




From there, the agent also did some “gluing” work. I noticed that the output of TripoSplat was pointing down in the Y direction, so I flipped it upside down, autoframed each monument, compressed the .ply files to .ksplat (which is about 3 times smaller, so they load faster), built a Three.js viewer with a scroll-to-switch, drag-and-rotate UI, and deployed the whole thing as a static space. The only human input was preference-level, such as “zoom out,” “replace obelisk with something suitable for splatting,” and “transition too long.”
Some of these steps were real-life reactions for the agent. Wide glass pyramids sparsely. The thin obelisk is bland. Single view reconstruction infers the back surface. This is exactly the “outsourced R&D, fast iteration” loop that the building block economy predicts, except that R&D was a conversation.
why is this important
The model will be composable. SOTA splat models and SOTA image models from different organizations are chained together with zero integration code. The Hub’s openweight catalog turns into a library of callable multimedia primitives. Agents like things that are documented and contactable. Agents.md provides easy access to spaces, so agents choose spaces over models that require manual configuration. This is the same as the dynamic Hashimoto flag in open source libraries. The barrier was integration, but that has largely disappeared. I once had a project called “Turn a prompt into a rotating 3D monument.” This was a step in the pipeline.
try it yourself
Point your agents to the space’s Agents.md and let it cook.
Karl https://huggingface.co/spaces/ideogram-ai/ideogram4/agents.md Karl https://huggingface.co/spaces/VAST-AI/TripoSplat/agents.md
Paste one of the links into your coding agent (like Claude Code), set HF_TOKEN, and ask it to build something. The complete reproducible pipeline for this gallery, the scripts that access these two Agents.md endpoints, can be found in the Space repository.
The building blocks are right there in the hub. Agents already know how to glue.

