c’est en gros ce que fait l’installeur de IntéGraal qui est uniquement en spip-cli :
▻https://git.spip.net/spip-contrib-outils/spip-cli/src/branch/master/src/Command/IntegraalGenerer.php
Sachant qu’en spip-cli, enfin avec le module Console de Sf quoi, une fois qu’on a fait des commandes unitaires pour ci ou ça, on peut aussi faire des commandes qui appelle d’autres commandes.
Moi je fais donc tout en PHP/spip-cli/Console, vu que c’est bien plus simple à coder, propre, beau avec des couleurs, tableaux, barre de défilement, etc, sans avoir à coder en Bash.
Pour spip-cli, par contre, hors commandes de base, ça va chercher que les commandes qui sont dans des plugins activés, d’où le fait que pour l’instant celle pour IntéGraal est dans le socle commun, sinon on peut pas l’utiliser.
Ce qu’on pourrait imaginer c’est que spip-cli cherche aussi au moins les commandes placées dans un dossier « spip-cli » à la racine du dossier où on le lance et/ou à la racine du spip (pas juste les plugins activés).