Use it when starting from an object/context or intent and needing generated output; use design_compose instead to inspect layout first or code_generate for an existing schema. Returns step results, schemaRef with expiry, versioned artifacts, dependencies and validationReceipt. options controls validation/render skipping and optional static accessibility checks; save persists the schema beyond its process-local 30-minute reference. Generation validation forwards draft/build/release without downgrade. Release verifies supplied evidence without rerunning it; unresolved accessibility pairs stay unmeasured. Oversized output goes to files unless options.payloadMode is inline. Calls may write composition and saved-schema records. Reference: TOOL-REFERENCE.md#pipeline_run; full schema: oods://schemas/pipeline_run.input.json.

Inputs

Name Type Required Description
object string no Object name from the OODS registry (e.g., Subscription, User).
intent string no A short intent sentence, matched against fixed keyword and phrase tables (a sentence that matches no layout keyword becomes a low-confidence dashboard). Prefer object and context.
context "detail" | "list" | "form" | "timeline" | "card" | "inline" | "workflow" no View context for object-aware composition.
layout "dashboard" | "form" | "detail" | "list" | "card" | "timeline" | "landing" | "auto" no Layout template to use. 'landing' is a content/marketing page (hero + sections + CTA), not bound to a data object. 'auto' infers the best template from intent keywords.
preferences object no Layout and appearance preferences.
actionMappings object[] no Stage1 bridge-summary action mappings: flat, verb-keyed entries.
framework "react" | "vue" | "html" no Target framework for code generation.
styling "inline" | "tokens" | "tailwind" no Styling strategy for code generation.
profile "draft" | "build" | "release" no Validation profile forwarded unchanged to code.generate, including its workflow-state contract gate. build is the default blocking gate of static checks; the static gate does not install or run the generated application.
releaseEvidence object no Hash-bound release evidence forwarded unchanged to code.generate.
save string | object no Optional schema save config. String for name-only, or { name, tags } for full control. Variant fields: name, tags. Read the full schema for each variant.
options object no Operation options.

Outputs

Name Type Required Description
payload object no The rendered page and the generated files, written to disk instead of returned (payloadMode).
validationReceipt validationReceipt yes Mandatory generation-profile disclosure. Pipeline preserves code.generate checks and accepted caller-supplied evidence envelopes, verifies the child receipt against the requested profile and artifact, and records target resolution provenance.
schemaRef string no Schema reference returned by compose, reusable across tools.
schemaRefCreatedAt string no ISO timestamp when the schemaRef was created.
schemaRefExpiresAt string no ISO timestamp when the schemaRef expires. Save it with the schema tool (action: save) to keep it past expiry.
schemaRefTtlWarning object no Proactive warning when schemaRef TTL is approaching expiration (< 5 minutes remaining).
compose object yes
validation object no
render object no
code object no
saved object no
summary string no One-line natural language description of what was generated.
metrics object no Quality metrics for the pipeline output.
pipeline object yes
error object no

A real call

Recorded by this site's tools run, step pipeline, with the published OODS Foundry 0.10.1.

Its input:

{
  "object": "User",
  "context": "detail",
  "framework": "react"
}

Its result, first lines:

{
  "validationReceipt": {
    "profile": "build",
    "defaulted": true,
    "rationale": "Build is the default blocking gate: target, bindings, dependencies and fallbacks must resolve under static checks; the static gate does not install or run the generated application.",
    "axes": {
      "scope": "generated-artifact",
      "enforcement": "blocking",
      "fallback": "forbidden",
      "target": {
        "requested": "react",
        "resolved": "react",
        "source": "explicit"
      }
    },
    "checks": [
      "schema-structure",
      "component-registry",
      "state-contract",
      "target-readiness",
      "normalization-fidelity",
      "binding-contract",
      "props-contract",
      "slots-contract",
      "events-contract",
      "dependency-closure"
    ],
    "notChecked": [
      "fallback-policy",
      "rendered-evidence",
      "interaction-evidence",
      "accessibility-evidence",
      "theme-evidence",
      "determinism-evidence",
      "performance-evidence",
      "certification-evidence"
    ],
    "evidence": {
      "required": [],
      "provided": [],
      "missing": [],
      "mismatched": [],
      "accepted": [],
      "notApplicable": [],
      "artifactContentHash": "sha256:e82e33e02b86dc12a2524b747baf6f68f2c8200bc7c7eeabdc7eb18a3296efe4"
    }
  },
  "compose": {
    "object": "User",
    "context": "detail",
    "layout": "detail",
    "componentCount": 12
  },
  "pipeline": {
    "steps": [
      "compose",
      "validate",
      "render",
      "codegen"
    ],

The whole call, 5 KB of JSON