Salta ai contenuti

CLI osl

Il binario osl guida il loop di authoring per sviluppatori e CI.

Comando Scopo
osl validate <project_dir> JSON Schema + cross-reference + esistenza dei modelli dbt
osl compile <project_dir> [--output target/] Emettere il manifest.json canonico
osl plan <project_dir> <query> Dry-run di una query — ispeziona il piano SQL/retrieval + il controllo di policy
osl publish <project_dir> --to <engine> Caricare il manifest (atomico; --revert)
osl migrate from-metricflow <src> <dst> Generare un progetto OSL da un progetto MetricFlow
osl export to-metricflow <src> <dst> Esportare un progetto OSL come MetricFlow puro
osl test <project_dir> Test di golden SQL, chunk-schema, round-trip dei joint, lexicon
osl conformance test --level <level> <project_dir> Eseguire la suite ufficiale di conformità
Ventana de terminal
$ osl validate ./caixabank-cartera-eu/
✔ project.yml valid
✔ models/customers.yml valid (3 models, 12 dimensions, 4 measures)
✔ metrics/arr.yml valid
✗ facets/meeting_transcripts.yml 2 errors
E0201 chunk_schema missing required field 'embedding' at line 12
E0204 embedding.provider == tenant-byo requires .adapter at line 18
✔ joints/customer.yml valid
Summary: 5 files valid, 1 file with errors. Exit code: 1.

Client di riferimento Apache-2.0

Sezione intitolata “Client di riferimento ”

Il motore di riferimento include due librerie client (la spec non le richiede — qualsiasi client HTTP funziona):

  • Pythonpyosl (REST + MCP). Raccomandato per i job di Dagster, le estensioni di dbt, gli script.
  • TypeScriptosl-client (REST). Per app web e Node.js.