InteriorAgent Documentation

InteriorAgent is an agentic system for composing structured 3D indoor scenes. At its core sits IDSDL — an Interior-Design-aware Scene Description Language for expressing scenes through high-level object registration, group-based placement, and scene optimization. The two fit together simply: IDSDL is the language; InteriorAgent is the agent that writes it.

This documentation covers both halves — the language (most of these pages) and the agent interface that drives it (the MCP Quickstart) — and is intended to help readers understand what the language can express and how to use it to build scenes efficiently.

What this documentation covers

The language is organized around three main ideas:

  • Object registration
    Adding scene assets and highlighting the various functionalities available on them.

  • Object placement via groups
    Arranging objects using functional groups as reusable spatial abstractions. We provide several implementations, including relative groups, grid groups, around groups, and room groups.

  • Scene optimization
    Refining layouts with geometric and higher-level constraints to improve plausibility and spatial coherence. These include both gradient-based and VLM-based constraints.

Together, these components allow users to describe indoor scenes at a level closer to design intent than low-level 3D manipulation.

The language is also built to be driven by AI agents: the repo ships an MCP server that lets tools like Claude Code plan, write, and build scenes from a plain-language prompt, backed by a library of 55+ worked example scenes.

Start here

If you are new to the language, follow these pages in order:

  1. Installation
    Set up the environment and dependencies needed to run InteriorAgent-IDSDL.

  2. Getting Started
    Walk through a complete example scene program and learn the overall workflow of writing and exporting a scene.

  3. Object Registration
    Add assets and learn everything an object can do: retrieval, scaling, rotation, copying, geometry queries, and lighting.

  4. Groups
    Arrange objects with the four group types — RelativeGroup, AroundGroup, GridGroup, and RoomGroup — and learn how groups nest to form hierarchies.

  5. Constraints
    Refine layouts with gradient constraints (overlap, bounds, clearance, access, visibility) and VLM constraints (proportions, room size, wall overlap).

When you’re comfortable with the basics: Extending the Language tells how the group vocabulary grows — by hand, by the agent itself, and with a human in the loop — the MCP Quickstart shows how to drive the whole pipeline from an AI agent, the Worked Examples catalog the layout patterns behind 55+ finished scenes, and Beyond the Basics covers the advanced placement machinery.

About the project

InteriorAgent-IDSDL is part of the Ph.D. thesis work of Kunal Gupta, a CSE Ph.D. student at UC San Diego. His research investigates how to codify the expertise of artists and designers in computational form, with the broader goal of enabling generative AI systems to perform better on creative tasks.

Within that larger research agenda, InteriorAgent-IDSDL serves as a structured language for expressing interior design intent in a way that is both human-authored and machine-actionable.

Next step

Continue to Installation to set up the system.


This site uses Just the Docs, a documentation theme for Jekyll.