Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.worldflux.ai/llms.txt

Use this file to discover all available pages before exploring further.

The catalog is two artifacts that stay in sync:
  • src/worldflux/curated.py — the Python source the CLI reads at worldflux init --recipe <id> and worldflux curated * time.
  • web/lib/catalog-data.ts — the TypeScript copy the dashboard’s Catalog tab renders.
Both files describe the same adapter set. The TS file is regenerated from the Python source; do not hand-edit it.

Entry shape

type CatalogAdapter = {
  id: string;
  name: string;
  description: string;
  provider: string;
  providerSlug: string;
  runtime: string;                 // "local" | "replicate"
  tier: "active" | "historical";
  modelFamily: string;
  endpointTypes: string[];         // "rollout" | "train" | "eval" | "embed" | "predict" | "serve" | "generate"
  minimumVramGb: number | null;
  minimumCuda: string | null;
  upstreamLicense: string;
  version: string;
  smokePrompt: string;
  metricKeys: string[];
  outputArtifacts: string[];
  evalBenchId: string | null;
  knownIssues: string[];
};
Field notes:
FieldPurpose
idWhat you pass to --recipe. Matches the directory under src/worldflux/templates/ for adapters that ship a template.
runtimeThe runtime plugin to use. Today the catalog only points at local or replicate; aws-ec2 and modal come from the adapter’s recipe overrides.
tieractive if CI runs against it, historical if it loads but no longer gets fixes. The dashboard pill is green / red.
endpointTypesWhat the adapter can do. Used by the dashboard’s filter + the recipe’s task picker.
minimumVramGbObserved floor on a clean install. Lower works for tiny modes; do not assume.
minimumCudaRequired CUDA toolkit version, if any. null for CPU-friendly adapters.
evalBenchIdThe eval bridge wired in for this adapter (libero, robocasa, vjepa_embed, minecraft_offline).
metricKeysThe metric names the adapter writes into manifest.metrics. Used by worldflux compare to know what to diff.
outputArtifactsFilenames the adapter promises to commit. The manifest writer rejects runs that miss them.
smokePromptThe prompt or seed used by the smoke test.
knownIssuesShort notes the dashboard surfaces in a yellow callout.

What ships today

idTierRuntimeBench
cosmos_predict25activereplicaterobocasa
dreamer4activelocalminecraft_offline
internvla_m1activelocallibero
openpiactivelocallibero
vjepa2activelocalvjepa_embed
diamondhistoricallocal(not wired)
dreamerv3historicallocal(not wired)
stormhistoricallocal(not wired)
tdmpc2historicallocal(not wired)
vjepa2_vitlhistoricallocalvjepa_embed

Templates

Three adapters ship with a starter run.py under src/worldflux/templates/:
  • cosmos_predict25/
  • openpi/
  • vjepa2_vitl/
worldflux init <project> --recipe <id> copies the template into the project root and rewrites the manifest paths.

Browsing

worldflux curated list
worldflux curated inspect cosmos_predict25
inspect prints the full record, including known issues. The dashboard’s Catalog tab renders the same data with search and runtime/tier filters.

Adding an adapter

1

Add to curated.py

Append a CuratedAdapter(...) entry to src/worldflux/curated.py. Fill every field; the dashboard treats null as “unknown” and renders accordingly.
2

Regenerate the TS copy

cd web && npm run generate:api re-emits lib/catalog-data.ts from the Python source. Commit both files.
3

Run it once

The cutoff for tier: active is one passing CI run plus a documented benchmark id. Until then, set tier: "historical" and evalBenchId: null.
4

Drop a template (optional)

If the adapter has a non-trivial run.py, add it under src/worldflux/templates/<id>/. The init command picks it up automatically.