CLI osl
Il binario osl guida il loop di authoring per sviluppatori e CI.
Comandi
Sezione intitolata “Comandi”| 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à |
Esempio
Sezione intitolata “Esempio”$ 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):
- Python —
pyosl(REST + MCP). Raccomandato per i job di Dagster, le estensioni di dbt, gli script. - TypeScript —
osl-client(REST). Per app web e Node.js.