Zev : un outil CLI pour l'interrogation rapide des commandes de terminal en langage naturel

Introduction générale

Zev est un outil d'interface de ligne de commande (CLI) facile à utiliser qui permet aux utilisateurs d'interroger et de générer rapidement des commandes de terminal en langage naturel. Au lieu de mémoriser une syntaxe de commande complexe, Zev génère des commandes de terminal en décrivant les besoins en langage courant. Basé sur l'API OpenAI ou l'API native Ollama Zev prend en charge une variété de scénarios d'exploitation, tels que la gestion de fichiers, la visualisation de processus, l'inspection de réseaux et les opérations Git. Zev est conçu pour abaisser le seuil d'utilisation de la ligne de commande et convient aux développeurs et aux novices. Les utilisateurs doivent configurer une clé API OpenAI ou un environnement Ollama local pour l'utiliser. Le code de Zev est ouvert sur GitHub, ce qui permet aux utilisateurs de contribuer librement et de le personnaliser.

Zev:用自然语言快速查询终端命令的CLI工具

 

Liste des fonctions

  • Générer des commandes de terminal en langage naturel, par exemple "afficher l'utilisation du disque du répertoire actuel".
  • Il prend en charge un grand nombre de scénarios opérationnels, notamment la manipulation de fichiers, la gestion de processus, l'inspection de réseaux et les commandes Git.
  • Intégration avec l'API OpenAI pour générer des commandes intelligentes.
  • Prend en charge les modèles natifs d'Ollama, ce qui permet un fonctionnement hors ligne.
  • Fournit une fonction de gestion des clés API pour que les utilisateurs puissent mettre à jour les paramètres.
  • Code source ouvert, soutien aux contributions de la communauté et à l'extension des fonctionnalités.

 

Utiliser l'aide

Processus d'installation

Zev est un outil CLI développé en Python avec un processus d'installation et de configuration simple. Voici les étapes détaillées :

  1. entrepôt de clones
    Ouvrez un terminal et exécutez la commande suivante pour cloner le dépôt GitHub de Zev :

    git clone https://github.com/dtnewman/zev.git

Une fois le clonage terminé, allez dans le répertoire du projet :

cd zev
  1. Installation des dépendances
    Zev dépend d'un environnement Python 3.6+. Assurez-vous que Python est installé, puis installez les dépendances nécessaires :

    pip install -r requirements.txt
    

    Les dépendances incluent les bibliothèques client Python d'OpenAI et d'autres, qui peuvent être trouvées dans le fichier requirements.txt Voir dans.

  2. Configuration des clés API OpenAI
    La première fois que vous lancez Zev, il vous sera demandé une clé API OpenAI. Les utilisateurs doivent ouvrir un compte sur le site web d'OpenAI et créer une clé. Exécutez la commande suivante pour lancer la configuration :

    python zev.py
    

    Saisissez la clé comme demandé et la clé sera enregistrée dans le fichier de configuration local.
    Si vous devez mettre à jour la clé, exécutez :

    zev --update-key
    
  3. (Facultatif) Configuration du modèle Ollama
    Si vous souhaitez utiliser Zev localement, vous pouvez installer Ollama et configurer un modèle local :

    • Visitez le site web d'Ollama pour télécharger et installer Ollama.
    • Lancez le service Ollama et sélectionnez le modèle, par exemple :
      ollama run llama3
      
    • Activez le mode Ollama dans la configuration Zev, exécutez :
      zev --use-ollama
      

    Cela permettra à Zev d'utiliser un modèle local, qui convient aux utilisateurs qui ne disposent pas d'un environnement en réseau ou qui sont soucieux de la protection de leur vie privée.

  4. Courir Zev
    Une fois l'installation et la configuration terminées, lancez la commande suivante pour démarrer Zev :

    python zev.py
    

Principales fonctions

La fonction principale de Zev est de générer des commandes terminales en langage naturel. Voici comment cela fonctionne :

  • Commandes du terminal d'interrogation
    Dans le terminal, tapez zev suivi d'une description en langage naturel. Par exemple, pour voir tous les processus Python en cours d'exécution :

    zev 'show all running python processes'
    

    Zev renvoie quelque chose comme ps aux | grep python commandes. Les utilisateurs peuvent les copier directement pour les exécuter.

  • opération sur les fichiers
    Rechercher les fichiers récemment modifiés, par exemple :

    zev 'find all .py files modified in the last 24 hours'
    

    La commande de sortie peut être :

    find . -type f -name "*.py" -mtime -1
    
  • Demande d'informations sur le système
    Voir l'utilisation du disque :

    zev 'show disk usage for current directory'
    

    Les commandes de sortie telles que :

    du -sh .
    
  • vérification du réseau
    Tester la connectivité du réseau, par exemple :

    zev 'check if google.com is reachable'
    

    La commande de sortie peut être :

    ping -c 4 google.com
    
  • Opérations Git
    Voir les changements non validés dans Git :

    zev 'show uncommitted changes in git'
    

    Les commandes de sortie telles que :

    git status
    

Fonction en vedette Fonctionnement

  • Soutien local au modèle Ollama
    L'exécution de Zev avec Ollama est complètement hors ligne et protège la confidentialité des données. Une fois configuré, Zev appelle automatiquement le modèle local pour générer des commandes sans avoir besoin d'une connexion internet.
    Exemple :

    zev --use-ollama 'list all files in current directory'
    

    Commande de sortie :

    ls -la
    
  • Gestion des clés API
    Les utilisateurs peuvent mettre à jour leur clé OpenAI ou changer de modèle à tout moment. Exécuter :

    zev --update-key
    

    Saisissez la nouvelle clé à l'invite et la configuration prend effet immédiatement.

Précautions de manipulation

  • Assurez-vous que votre réseau est stable pour utiliser l'API OpenAI. Si vous utilisez Ollama, vous devez démarrer le service de modèle à l'avance.
  • La description en langage naturel de l'entrée est aussi claire et spécifique que possible afin d'éviter toute ambiguïté. Par exemple, "liste de documents" peut générer lset "Lister tous les fichiers cachés" génère l'option ls -a.
  • Les commandes générées par Zev sont données à titre indicatif et il est recommandé de vérifier que les commandes répondent aux attentes avant de les exécuter.

Utilisation avancée

  • Génération de commandes personnalisées
    Les utilisateurs peuvent forker le dépôt GitHub de Zev pour modifier le code afin de prendre en charge des scénarios spécifiques. Par exemple, pour ajouter des modèles de commande personnalisés ou pour prendre en charge d'autres modèles d'IA.
  • fonctionnement par lots
    Zev ne permet pas actuellement de générer des commandes par lots, mais les utilisateurs peuvent invoquer Zev par le biais de scripts, par exemple, en écrivant un script shell qui passe en boucle sur le fichier zev pour gérer des tâches multiples.

 

scénario d'application

  1. Environnement de débogage du développeur
    Pour les développeurs qui utilisent fréquemment des commandes de terminal lors du débogage du code, par exemple pour vérifier l'état d'un processus ou d'un fichier, Zev permet de gagner du temps en générant rapidement des commandes en langage naturel. Par exemple, si vous tapez "find processes on port 8080", Zev génère la commande suivante lsof -i :8080.
  2. Apprendre la ligne de commande en tant que novice
    Les nouveaux venus à la ligne de commande sont souvent frustrés par leur incapacité à se souvenir d'une syntaxe complexe. Zev abaisse donc les barrières à l'apprentissage grâce à une saisie en langage naturel. Par exemple, tapez "afficher toutes les tailles de fichiers dans le dossier actuel" et Zev générera ls -lhLes utilisateurs peuvent ainsi se familiariser rapidement avec le système.
  3. Maintenance quotidienne pour les administrateurs de système
    Pour les administrateurs système qui ont besoin de vérifier l'état d'un serveur ou d'effectuer des diagnostics réseau, Zev permet de générer rapidement des commandes telles que "check disk space" pour générer une commande "check disk space". df -het améliorer l'efficacité.

 

QA

  1. Quels sont les systèmes d'exploitation supportés par Zev ?
    Zev est compatible avec macOS, Linux et Windows (environnement Python requis). Certaines commandes peuvent devoir être ajustées manuellement en raison de différences entre les systèmes.
  2. Dois-je utiliser l'API OpenAI ?
    Zev prend en charge les modèles locaux d'Ollama pour ceux qui les utilisent hors ligne ou qui ne veulent pas dépendre des services en nuage.
  3. Comment contribuer au code ?
    entretiens https://github.com/dtnewman/zevPour plus d'informations sur la manière de contribuer au référentiel, voir la page d'accueil du référentiel. CONTRIBUTING.md.
  4. Les commandes générées par Zev sont-elles sûres ?
    Les commandes générées par Zev sont basées sur les données de l'utilisateur et sur le raisonnement du modèle. Il est recommandé de vérifier le contenu des commandes avant de les exécuter afin d'éviter les risques potentiels.
© déclaration de droits d'auteur
AiPPT

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...