Passer au contenu principal

Level CLI (lvl) : Premiers pas

Install and sign in to the Level CLI, manage your fleet from a terminal, and connect lvl to a coding agent.

Level CLI, ou lvl, vous permet de gérer votre compte Level depuis un terminal. Vous pouvez inspecter les appareils, les mises à jour, les fichiers, les moniteurs, les alertes, les scripts, les automatisations et l'historique d'exécution sans passer à l'application Web Level.

Vous pouvez également installer la compétence Level pour un agent de codage. La compétence enseigne aux agents compatibles comment utiliser les commandes et la sortie JSON fournies par la version installée de lvl. Vous fournissez l'agent de codage, le modèle et les jetons.

ℹ️ REMARQUE : Le lvl CLI gère votre compte Level. Il est distinct de l'agent Level installé sur les appareils gérés.

Avant de commencer

Vous avez besoin de :

  • Un compte Level avec accès à la CLI.

  • Un ordinateur compatible fonctionnant sous Windows, macOS ou Linux avec un processeur AMD64 ou ARM64.

  • Un navigateur que vous pouvez utiliser pour approuver la connexion à la CLI.

Si vous prévoyez d'utiliser lvl avec un agent de codage, installez cet agent séparément. Level n'héberge pas le modèle et ne fournit pas ses jetons.

Installer la CLI

  1. Ouvrez la page des versions de Level CLI. (Bientôt disponible)

  2. Téléchargez l'archive correspondant à votre système d'exploitation et à votre processeur :

    • windows-amd64 ou windows-arm64

    • darwin-amd64 ou darwin-arm64 pour macOS

    • linux-amd64 ou linux-arm64

  3. Comparez l'archive téléchargée avec la valeur SHA-256 indiquée dans checksums.txt sur la version.

  4. Extrayez l'archive.

  5. Renommez l'exécutable en lvl (lvl.exe sous Windows), puis déplacez-le dans un répertoire de votre PATH.

  6. Vérifiez que la CLI est disponible :

lvl --help

Se connecter

Exécutez :

lvl auth login

La CLI affiche un code à usage unique et une URL de vérification, puis tente d'ouvrir l'URL dans votre navigateur.

  1. Connectez-vous à Level dans le navigateur. Vos exigences habituelles en matière de SSO et de MFA s'appliquent toujours.

  2. Vérifiez que le navigateur affiche le même code à usage unique que votre terminal.

  3. Approuvez l'accès.

  4. Retournez au terminal. La CLI détecte l'approbation et finalise la connexion.

Si le navigateur ne s'ouvre pas, copiez l'URL affichée dans un navigateur sur n'importe quel ordinateur.

Vérifiez la session active :

lvl auth status

Déconnectez-vous et supprimez la session locale :

lvl auth logout

Exécutez vos premières commandes

Listez les appareils :

lvl device list

Listez les mises à jour logicielles disponibles :

lvl update list

Listez les fichiers du dépôt :

lvl file list

Listez les moniteurs et les politiques de moniteurs :

lvl monitor list
lvl monitor policy list

Listez les alertes actives :

lvl alert list

Utilisez un identifiant d'appareil si possible. Vous pouvez également désigner un appareil par son nom d'hôte, son nom, son surnom ou un nom d'hôte qualifié par groupe tel que Servers/web-01. Si un nom correspond à plusieurs enregistrements, lvl s'arrête et demande une référence plus précise au lieu d'en choisir une.

Choisir un format de sortie

La plupart des commandes affichent un tableau par défaut. Utilisez JSON lorsqu'un autre programme doit lire le résultat :

lvl device list -o json

Utilisez le filtre jq intégré pour sélectionner une partie du résultat JSON :

lvl device list --jq '.list[] | .name'

Les commandes de liste renvoient jusqu'à 100 résultats par défaut. Utilisez --limit pour modifier le nombre, ou récupérez toutes les pages :

lvl device list --limit 250
lvl device list --limit all

Exportez les ressources compatibles au format CSV en redirigeant la sortie standard vers un fichier :

lvl device export > devices.csv
lvl alert export --status resolved > resolved-alerts.csv
lvl run export --status error > failed-runs.csv

⚠️ AVERTISSEMENT : La sortie JSON des commandes à clé API peut contenir le jeton complet. Protégez les données exportées et les journaux CI, et ne consignez pas les identifiants dans le contrôle de source.

Exécuter des scripts

Exécutez un script enregistré sur un appareil :

lvl script run "Check disk space" --device web-01 --wait

Exécutez une commande sans enregistrer préalablement un script :

lvl script run --device web-01 --command 'hostname' --wait

Vous pouvez cibler plusieurs appareils en répétant les indicateurs --device indicateurs, ou ciblez un groupe d'appareils avec --group.

Sans --wait, la commande renvoie les nouveaux identifiants d'exécution après que Level a accepté la demande. Utilisez les commandes d'exécution pour vérifier la progression et les résultats :

lvl run list
lvl run get --wait

Pour plus de détails sur les scripts enregistrés, les shells, les délais d'expiration, les variables, la sortie et les codes de sortie, consultez Présentation des scripts.

Gérer les automatisations sous forme de spécifications

Exportez une automatisation au format YAML :

lvl automation spec "Patch Servers" --format yaml > patch-servers.yaml

Prévisualisez les modifications avant d'appliquer le fichier :

lvl automation apply -f patch-servers.yaml --dry-run

Appliquez la spécification :

lvl automation apply -f patch-servers.yaml

Le fichier décrit le nom de l'automatisation, les déclencheurs, les actions et les variables. Vous pouvez conserver le fichier dans le contrôle de source, examiner un diff et l'appliquer à nouveau après avoir effectué des modifications.

⚠️ AVERTISSEMENT : L'application d'une spécification d'automatisation réconcilie l'automatisation active avec le fichier. Les déclencheurs ou actions existants absents du fichier peuvent être supprimés. Les modifications sont appliquées en séquence, et non en une seule transaction ; une erreur peut donc laisser les modifications antérieures en place. Exécutez toujours --dry-run, examinez le plan et conservez un export à jour avant d'appliquer les modifications.

Les spécifications d'automatisation font référence aux ressources du compte telles que les scripts, les groupes, les balises, les fichiers et les champs personnalisés par identifiant. Traitez une spécification exportée comme un instantané pour le même compte Level.

Pour les concepts d'automatisation et l'éditeur Web, consultez Présentation des automatisations et Création d'automatisations.

Utiliser lvl avec un agent de codage

Installez la compétence générée par votre lvl version :

lvl skill install

La commande installe un SKILL.md fichier où les agents de codage compatibles peuvent la découvrir. Les exemples incluent Cursor, Claude Code, Codex, Gemini, Hermes et OpenClaw.

Après l'installation, vous pouvez demander à votre agent de codage d'inspecter votre parc via lvl, rédigez un script ou rédigez une spécification d'automatisation. Examinez chaque commande et fichier proposés avant de les exécuter ou de les appliquer.

Réinstallez la compétence après la mise à niveau de lvl afin que son index de commandes et ses définitions de sortie correspondent à la version installée :

lvl skill install

Affichez la compétence générée sans l'installer :

lvl skill show

Inspectez les indicateurs actuels et la structure de sortie JSON d'une commande :

lvl skill describe device list
lvl skill describe automation action add

ℹ️ REMARQUE : L'installation de la compétence n'installe pas un agent de codage ni ne connecte Level à un fournisseur LLM. Vous choisissez et configurez vous-même l'agent de codage, le modèle et les jetons.

Confirmer les modifications et vérifier l'achèvement

Les commandes qui suppriment définitivement des ressources prennent en charge --yes. Dans un terminal interactif, lvl invite à confirmer avant ces modifications. Dans une session non interactive, comme un CI, les commandes nécessitant une confirmation échouent sauf si vous fournissez --yes.

Certaines commandes déclenchent un travail asynchrone et renvoient un résultat avant que l'appareil ne le termine. Cela inclut le redémarrage, l'arrêt, les vérifications de mises à jour, l'installation de mises à jour, les scripts et les automatisations. Utilisez lvl run get <run-id> --wait, l'historique d'exécution, les journaux de mises à jour ou l'application Web Level pour confirmer le résultat final.

⚠️ AVERTISSEMENT : Traitez les clés d'installation, les jetons API, l'inventaire exporté, la sortie des scripts et les fichiers d'automatisation comme des données sensibles. Évitez de les afficher dans des terminaux partagés ou des journaux CI.

Obtenir de l'aide sur les commandes

Affichez la liste des commandes de niveau supérieur :

lvl --help

Affichez l'aide pour un groupe de commandes ou une commande :

lvl device --help
lvl script run --help
lvl automation apply --help

La CLI installée est la source de vérité pour ses indicateurs de commandes et structures de sortie actuels. Utilisez lvl skill describe lorsque vous avez besoin d'une référence de commandes lisible par une machine.

Avez-vous trouvé la réponse à votre question ?