Repository map / 仓库结构
Source-of-truth table / 事实源
How content loads / 内容加载顺序
The default TypeScript data provides a complete starting point. JSON overrides only the fields you author. For production scene state, the runtime overlaysPUBLISHED_SCENE_CONFIG from the generated module.
默认 TypeScript 数据提供完整起点,JSON 只覆盖你编辑的字段。生产场景会使用生成模块中的 PUBLISHED_SCENE_CONFIG。
Only ?studio=1 may then overlay living-index.content-draft.v1 for unsaved authoring. Normal routes ignore the browser draft.
只有 ?studio=1 会再覆盖未保存的 living-index.content-draft.v1。普通路由忽略浏览器草稿。
Save outputs / 保存产物
Save to project treats these as one change:- normalized
public/content/site-content.json; - deterministically generated
app/generated/scene-config.ts; - final referenced GLBs promoted to
public/uploads/models; - reference-aware removal of superseded published GLBs;
- cleanup of remaining staged GLBs.
Upload directories / 上传目录
Image unlinking does not remove the stored image. GLB cleanup is reference-aware and automatic at the Studio save boundary.
解除图片引用不会删除图片文件;GLB 则在 Studio 保存边界执行精确引用清理。
Runtime modules / 运行时模块
RoomExperience.tsxcreates one renderer, room geometry, asset runtimes, hitboxes, markers, routes, and the semantic index.model-loading.tsretains a prepared upload buffer so the first preview can avoid an immediate second request.scene-placement.tskeeps plane, height, and heading previews separate from confirmed config.solar-lighting.tsresolves IANA/fixed-offset time and calculates the stylized light state.AboutProfileModule.tsxrenders portrait, bio, and social buttons.PhotographyGallery.tsxrenders every photo, the Spotlight editorial block, and instant-photo dialog.
Agent-native extension / Agent 原生扩展
Read rootAGENTS.md before code changes. It routes work to the repository skills for content, scene composition, native Three.js assets, or cross-layer framework changes.
代码改动前先阅读根目录 AGENTS.md。它会根据内容、场景、原生 Three.js 资产或跨层框架任务选择对应 skill。
See Agent-native development.