Skip to main content

Asset contract

Every catalog asset declares a stable machine-readable contract.

Required fields include:

  • stable unique ID;
  • asset kind;
  • semantic version;
  • repository-relative path;
  • supported consumers;
  • lifecycle status;
  • human-readable description.

Optional metadata may describe minimum compatible consumer versions, supported platforms, entrypoints, integrity data, and release information.

Canonical source​

catalog.json is the machine-consumer entry point. It references schemas/catalog.schema.json, which delegates individual asset validation to schemas/asset.schema.json.

Installer assets also have an installer manifest validated by schemas/installer-manifest.schema.json. Catalog version, manifest version, and the asset VERSION file must agree.

Consumer metadata​

The current schema recognizes cli, console, and shared. These values describe the existing catalog contract and should not be assumed to identify every future product repository. A future standalone AI Toolkit CLI may require a more explicit consumer identity model before it becomes a catalog consumer.

Template placeholders​

Template source may use placeholders in the {{PLACEHOLDER_NAME}} format. Concrete installed or rendered output must not contain unresolved placeholders.

Integrity​

Versioned assets should provide enough immutable metadata for a consumer to verify that the selected version and downloaded artifact are the intended content. Floating versions, mutable image tags, branch selectors, or undocumented generated copies are not authoritative asset identities.