>_ DevTrendsfr

Langue

Accueil

Langages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarqué Sécurité
Go

IRIS — une alternative rapide à Fig pour l'autocomplétion en terminal

Si vous avez utilisé Fig pour l'autocomplétion de commandes dans le terminal macOS, vous vous souvenez probablement des mauvaises nouvelles de l'automne 2024. Le projet a été abandonné, et le travail a été intégré dans Amazon Q Developer avec une connexion cloud obligatoire et une interface lourde.

L'autocomplétion de style IntelliSense dans le terminal est véritablement utile. On s'habitue rapidement à cette commodité : commencez à taper un nom d'utilitaire et un menu apparaît avec des arguments, des branches Git ou des options.

L'auteur du projet IRIS a décidé de reconstruire ce concept from scratch. Au lieu d'Electron et de dépendances serveur, il a créé un binaire Go unique qui affiche les suggestions directement dans le TTY.

Ghostty terminal showcase

Pourquoi le TTY change tout

Les superpositions graphiques traditionnelles comme Fig sont fortement liées à des systèmes d'exploitation et des terminaux graphiques spécifiques. Essayez de transmettre la superposition de Fig dans une session SSH sur un serveur Linux distant ou de l'exécuter dans une console virtuelle nue — rien ne fonctionne.

IRIS adopte une approche différente. Il s'injecte directement dans la sortie du terminal (TTY), le rendant fonctionnel nativement dans des environnements variés :

  • Terminaux locaux sur macOS et Linux
  • Sessions distantes via SSH
  • Sessions dans tmux
  • Consoles virtuelles Linux sans shell graphique

Configurer l'environnement sur un serveur est aussi simple que de copier un seul fichier. Pas besoin d'installer des gestionnaires de plugins pour Zsh ou Fish, de chercher des thèmes, ou de tirer des gigaoctets de dépendances.

Ce qu'il y a dedans et comment ça fonctionne

IRIS indexe vos alias et votre historique de commandes. Lorsque vous commencez à taper, l'outil affiche les suggestions les plus pertinentes de votre historique ou des spécifications de commandes.

Deux styles visuels sont disponibles : Moderne et Classique. Le style Moderne paraît plus doux et utilise des icônes Nerd Fonts, tandis que Classique est plus simple et plus proche des interfaces TUI traditionnelles.

Thèmes Moderne et Classique

Une fonctionnalité remarquable est le support des réseaux de neurones. Si vous souhaitez des suggestions contextuelles, vous pouvez activer un provider IA dans la configuration. Dès le départ, il prend en charge :

  1. Groq (fonctionne via l'API cloud, une clé gratuite suffit)
  2. Ollama (pour ceux qui exécutent des modèles locaux comme qwen2.5-coder)

Le debounce d'entrée est contrôlé par le paramètre debounce_ms. Si vous êtes habitué à taper rapidement, l'IA ne vous submergera pas de requêtes à chaque frappe.

Suggestions IA

Le fichier de configuration utilise des structures TOML simples et se trouve à ~/.config/iris/config.toml. Les modifications sont prises en compte à la volée, il n'est donc pas nécessaire de redémarrer le shell.

[core]
mode = "last"
expand-alias = true

[ui]
style = "modern"
ghost-text = true
nerd-fonts = true

[ai]
enabled = false
provider = "ollama"

[ai.providers.ollama]
endpoint = "http://localhost:11434/v1/chat/completions"
model = "qwen2.5-coder"
timeout_ms = 5000

Pièges et conseils d'installation

Il existe plusieurs façons d'installer l'outil. L'AUR propose le paquet iris-autocomplete, Homebrew propose la formule versenilvis/iris/iris. Les utilisateurs de Nix Flakes peuvent également trouver des paquets pré-construits, ainsi que des paquets Debian .deb et .rpm réguliers dans les releases GitHub.

Avant de lancer, désactivez tous les plugins d'autocomplétion existants que vous utilisez. Des outils comme zsh-autosuggestions ou atuin intercepteront les combinaisons de touches et encombraient l'écran de texte en double.

Windows n'est pas encore supporté. Les développeurs sur cet OS devront exécuter l'outil dans WSL.

La navigation dans le menu utilise des raccourcis familiers :

  • Shift + Tab — masquer ou afficher le menu
  • Tab — insérer la commande sélectionnée
  • Стрелка вправо — accepter la suggestion en texte fantôme
  • Ctrl + R — basculer le mode (historique ou spécifications)

En mode debug, iris -d enregistre tout ce que vous tapez dans la console. Gardez cela à l'esprit lors de la soumission de rapports de bugs pour éviter de fuir accidentellement des mots de passe ou des clés privées.

Cela vaut-il le coup d'essayer

Si vous regrettiez Fig ou que vous en avez assez de configurer les mêmes plugins d'autocomplétion sur une douzaine de serveurs, IRIS semble être une alternative intéressante. Il ne nécessite pas d'inscription, est léger et démarre rapidement.

Le projet est open source sous licence 0BSD, ce qui signifie que le code est entièrement libre d'utilisation.

Projets similaires