autodesk-platform-services/open-architecture-standards-2d-floor-plans

oas-program

Use when capturing OAS design intent — room requirements, area targets, adjacency rules, circulation rules, or global constraints — before any geometry has been resolved.

Voir la source

Mode d’emploi

  1. Copiez la commande et examinez le paquet avant de l’installer dans votre environnement agent.
  2. Consultez le document original pour les outils, identifiants et environnements requis.
  3. Décrivez les entrées et le livrable souhaité ; comparez la sortie aux sources.
npx skills add https://github.com/autodesk-platform-services/open-architecture-standards-2d-floor-plans --skill oas-program

Avant de commencer

  • L’installation n’inclut ni abonnement au modèle, ni quota API, ni accès aux fichiers.
  • Étoiles et installations reflètent l’activité, pas un test indépendant de qualité ou de sécurité.
Document Skill original

Rendu depuis le dépôt source en conservant titres, exemples, code, tableaux, liens et images.

OAS Program

When to use

Use this skill when the user is describing what they want rather than what exists: target areas, must-be-near rules, circulation preferences, count of rooms, hard limits. Program is the brief; Layout is the answer. If a polygon or wall coordinate is being emitted, you're in oas-layout territory, not here.

Key fields (the document is a flat JSON object, not typed classes)

  • oas_program, plan_id, title, description — metadata; plan_id links program → layout
  • design_goal — natural-language intent sentence (helps LLM context)
  • global_constraints — target_area_m2, max_area_m2, orientation_preference, climate, accessibility_level, etc.
  • rooms[] — each entry has id, usage, desired_area_m2, must_have, should_have, adjacency, avoid
  • adjacency — uses prefixed keys: must_touch, should_touch, avoid_touch, must_connect_via
  • circulation — primary_entry + free-form rules[]
  • rationale — optional reasoning string per room

Critical rules

  1. Intent only — no resolved geometry. Program documents must not contain boundary_polygon, walls, or coordinates. Resolved geometry lives in OAS-Layout.
  2. `desired_area_m2` accepts `{ "min": X, "max": Y }` or an exact number. Both are valid per the spec — don't reject a scalar.
  3. Constraint strength is encoded by the field prefix, not a flag. must_have/must_touch are hard; should_have/should_touch are soft; avoid_touch is a hard negative. There's no separate hard: true field.
  4. Refer to rooms by program `id`, not Layout ids. Layout ids don't exist yet — adjacency targets are program-level ids like "corridor" or "living_kitchen".
  5. Circulation `rules[]` are natural-language strings. Solvers parse them heuristically; keep them concise and declarative.

Full schema

See docs/program.md for the complete reference, including constraint composition and adjacency weighting.

Related skills

  • oas-layout — the resolved geometry derived from a program
  • oas-core — for the vocabulary of usage values shared with Layout

Tâches connexes

du même dépôt

Autres Skills

Tous les Skills