Un WES entre le WMS et le pilotage des robots
Open WES est un système d'exécution d'entrepôt (WES) open source, écrit en Java et publié sous licence MIT. Sa documentation le place entre le WMS, qui tient les commandes et le stock, et le RCS, le système qui pilote les robots. Open WES transforme les ordres de réception et d'expédition en tâches, choisit le stock et le poste de travail, puis transmet les déplacements de conteneurs aux équipements. D'après la même documentation, un site sans WMS peut aussi l'employer comme WMS autonome.
Allocation par zone, callbacks scriptables et plugins Java
- Zones robotisées et zones manuelles séparées : dans les zones robotisées, le module d'algorithmes affecte les commandes aux postes et alloue le stock ; les zones manuelles ont leur propre allocation de stock.
- Callbacks avec convertisseur : une tâche conteneur créée, un robot appelé, une commande préparée ou un conteneur scellé déclenchent un callback vers le WMS ou vers le système des équipements. Avant l'envoi, un convertisseur en JavaScript, en Java ou sous forme de gabarit peut réécrire le message.
- Plugins pf4j : chaque domaine expose une interface de plugin avec des points d'accroche avant et après traitement. Le dépôt fournit un SDK et un plugin d'exemple.
- Métriques métier dans Prometheus : les trois serveurs exposent
/actuator/prometheus, avec des compteurs pour la réception, l'expédition, les tâches et le stock. L'interface web affiche les tableaux de bord Grafana.
Seize conteneurs Docker, aucune release depuis janvier 2025
Le démarrage rapide du README compile tout sur place. Sa commande lance un docker-compose.yml de seize conteneurs : le front et les trois serveurs Java (passerelle, WES, Station) sont construits depuis les sources, à côté de MySQL 8.0, Redis 7.2, Nacos 2.0.0 et d'une pile Prometheus, Grafana et Loki. Le front télécharge ses paquets npm sur le miroir chinois npmmirror.com, sauf si NPM_REGISTRY en désigne un autre. Le fichier garde root comme mot de passe root de MySQL et publie sur l'hôte les ports de MySQL, Redis et Nacos. Nacos reste en 2.0.0 : la 3.0 exigeant une authentification, le mainteneur conseille l'ancienne version (ticket #21).
Le plancher matériel est de 4 cœurs et 8 Go de RAM. Le guide de déploiement en production y ajoute 100 Go de SSD et recommande 8 cœurs, 16 Go de RAM et 500 Go de stockage pour la production.
L'interface existe en anglais et en chinois. Ce sont les deux seuls fichiers de traduction du client web.
L'IA du dépôt est un assistant conversationnel branché sur ZhipuAI. Le module ai-core contient un chat, une génération de SQL à partir du schéma de la base et des outils qui interrogent articles, inventaires, entrepôts et configuration. La configuration livrée pointe vers le modèle GLM-4-air de ZhipuAI et vers une base vectorielle Pinecone, deux services hébergés.
Le README vise les entrepôts très automatisés. Il recommande Open WES aux sites qui coordonnent en temps réel robots, AGV ou objets connectés, et oriente vers un WMS classique les sites peu automatisés qui veulent un produit éprouvé. Pour ce second cas, ModernWMS, un WMS open source pour PME, couvre la réception, le stock et l'expédition.
La seule release est la v1.0.0, du 20 janvier 2025. Le développement continue sans nouvelle version : le dernier commit de master date du 1er juin 2026, et une branche de fonctionnalité a reçu des commits jusqu'au 13 octobre 2026. Le compte jingsewu signe 127 commits de master, le contributeur suivant 40. Le site openwes.top cité par le README a expiré fin 2025, selon le mainteneur dans le ticket #29 : la documentation vit depuis dans le dépôt openwes-docs, et la page GitHub du projet renvoie vers openwes.site.
