Aller au contenu

CLI osl

Le binaire osl pilote la boucle d’autoring pour les développeurs et la CI.

Commande Objectif
osl validate <project_dir> JSON Schema + cross-references + existence des modèles dbt
osl compile <project_dir> [--output target/] Émettre le manifest.json canonique
osl plan <project_dir> <query> Dry-run d’une query — inspecte le plan SQL/retrieval + le contrôle de politique
osl publish <project_dir> --to <engine> Envoyer le manifest (atomique ; --revert)
osl migrate from-metricflow <src> <dst> Générer un projet OSL depuis un projet MetricFlow
osl export to-metricflow <src> <dst> Exporter un projet OSL en MetricFlow pur
osl test <project_dir> Tests de golden SQL, chunk-schema, round-trip de joints, lexicon
osl conformance test --level <level> <project_dir> Lancer la suite officielle de 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.

Clients de référence Apache-2.0

Section intitulée « Clients de référence »

Le moteur de référence embarque deux bibliothèques clientes (la spec ne les exige pas — n’importe quel client HTTP fonctionne) :

  • Pythonpyosl (REST + MCP). Recommandé pour les jobs Dagster, les extensions dbt, les scripts.
  • TypeScriptosl-client (REST). Pour les apps web et Node.js.