UStackUStack
openGyver icon

openGyver

openGyver est un outil CLI open source en Go : conversions, encodage, hachage, formatage, validation et générateurs, autonome ou via automatisation/agents IA.

openGyver

Qu'est-ce qu'openGyver ?

openGyver est un outil CLI open source en Go, véritable couteau suisse, qui propose 47 commandes et plus de 180 sous-commandes pour les conversions et utilitaires quotidiens. Il couvre des tâches comme l'encodage/décodage, le hachage, le formatage de fichiers, la validation, la génération (par exemple mots de passe, QR codes, UUID) et des utilitaires temporels.

Le projet est conçu pour s'exécuter comme un exécutable autonome mono-binaire sur Linux, macOS et Windows, et peut aussi s'intégrer dans des workflows d'automatisation comme les pipelines CI/CD, scripts shell et agents IA.

Fonctionnalités principales

  • CLI Go mono-binaire à distribution sans dépendance pour Linux, macOS et Windows, pour utiliser le même outil dans les environnements courants.
  • Couverture étendue des conversions, incluant unités et devises (9 catégories, 38 devises), et conversions de fichiers pour formats audio, documents/tableurs, images, vidéo, graphiques vectoriels, polices, présentations et CAO.
  • Utilitaires d'encodage, hachage et sommes de contrôle, incluant Base64/Base32/Base58/URL/HTML/hex/binaires, ROT13 et Morse, plus hachages comme MD5 et variantes SHA-1/SHA-2 et HMAC/bcrypt listés.
  • Outils de données et formats, comme formatage/validation JSON et conversions YAML/TOML/XML/CSV, plus formatage/minification HTML/XML/CSS/SQL et diffs de fichiers (texte/json/csv).
  • Commandes de génération pour artefacts courants comme mots de passe, clés API/secrets, OTP, nanoid/snowflake/IDs courts, UUID v4/v6, et création QR/barres (ASCII en terminal, plus PNG/SVG pour QR).
  • Modes de sortie multiples par commande (notamment JSON pour scripts, sortie valeur unique abrégée, et mode silencieux pour supprimer les messages de confirmation des convertisseurs de fichiers).

Comment utiliser openGyver

  1. Installez-le via une des options du dépôt : Homebrew (via un tap), go install, ou compilation depuis la source avec go build.
  2. Commencez par une commande simple selon votre tâche. Exemples du projet : conversion d'unités (convert), encodage (encode), hachage (hash), génération (generate password).
  3. Pour l'intégrer dans des scripts ou automatisations, utilisez des modes de sortie comme --json/-j pour résultats structurés et --quiet/-q pour réduire les messages interactifs des conversions de fichiers.

Cas d'usage

  • Convertir unités et devises en shell : par exemple, openGyver convert 100 cm in ou openGyver convert 100 usd eur pour obtenir les valeurs converties.
  • Encoder ou hacher des chaînes sans script personnalisé : p. ex., openGyver encode base64 "hello world" et openGyver hash sha256 "hello".
  • Générer identifiants et données de test sécurisées : openGyver generate password --length 32 pour un mot de passe, openGyver uuid pour un UUID v4 aléatoire, ou openGyver testdata person --count 5 -j pour enregistrements JSON fictifs.
  • Convertir documents et tableurs en ligne de commande : utilisez convertFile pour transformer formats comme CSV/XLSX/MD/HTML/DOCX/PDF/PS vers un autre format (avec options comme -o pour sortie et -q pour mode silencieux).
  • Valider et formater markup/données en développement : exécutez openGyver validate html --file index.html, openGyver json format avec format/beautify/minify, ou comparez fichiers avec diff (texte/json/csv) pour révisions.

FAQ

  • openGyver est-il disponible en binaire compilé ? Le dépôt indique qu'il est construit en Go pour une « distribution mono-binaire sans dépendance » sur Linux, macOS et Windows.

  • Peut-il être utilisé pour l'automatisation et les scripts ? Oui. Chaque commande supporte des modes de sortie incluant JSON (--json/-j) et mode silencieux (--quiet/-q), utiles pour piping et scripting.

  • Comment l'installer ? La page liste les options via Homebrew, Go (go install github.com/mj/opengyver@latest), et compilation depuis source avec git clone et go build.

  • Peut-il être utilisé avec des outils/agents IA ? Le dépôt mentionne un plugin Claude Code qui installe des « outils MCP natifs » et pointe vers une configuration de marketplace de plugins, incluant exemples pour installer opengyver et recharger plugins.

  • Quels types de conversions supporte-t-il ? Le README liste des commandes pour unités et devises, plus conversions de fichiers multiples incluant audio, CAO, ebooks, documents/tableurs, polices, images, présentations, vecteurs et vidéo.

Alternatives

  • Suites de conversion de fichiers polyvalentes (par exemple, outils en ligne de commande pour médias et documents) : plus larges dans des domaines spécifiques, mais openGyver est un CLI unique couvrant conversions + encodage/hachage/validation/génération.
  • Approches de conversion basées sur scripts (scripts shell ou petits programmes appelant des bibliothèques) : flexibles, mais nécessitent souvent d’assembler plusieurs outils et de gérer soi-même formatage/validation/sortie ; openGyver regroupe de nombreuses tâches courantes sous une interface unique.
  • Autres collections d’utilitaires CLI axés sur encodage/hachage/formatage : selon les besoins, elles couvrent un sous-ensemble (comme encodage/hachage uniquement), alors qu’openGyver englobe conversions, générateurs, validation et modes de sortie structurés.
  • Outils dédiés au formatage/validation de données : plus spécialisés sur un format, tandis qu’openGyver offre un workflow multi-formats sous un CLI unique avec options JSON/silencieux.