Original en anglais: https://argusic.com/subject/waha

waha

WAHA - API HTTP WhatsApp (API REST) que vous pouvez configurer en un clic! Plusieurs moteurs: WEBJS (basé sur navigateur), NOWEB (websocket nodejs), GOWS (websocket go), WPP (navigateur)

Fonctionne avec des mockssource : GitHubpage d'accueilTypeScriptApache-2.0commit 55a7d78e3fea

TypeScript, sous licence Apache-2.0. Le projet se décrit ainsi : ai bot, bot, http api, mcp, mcp server, mcp whatsapp, python bot et whatsapp.

waha fonctionne, avec des substituts pour les services dont il dépend. Un agent Argusic l'a installé en 15 minutes et a rencontré 7 erreurs, toutes corrigées sans aide sur une machine propre sans GPU, et toute la session a été enregistrée.

The project builds, all 308 unit tests pass across 31 suites, and the server starts and responds to HTTP API calls (GET /api/sessions returns [] with 200 status, logged 'Nest application successfully started' and 'WhatsApp HTTP API is running on: http://[::1]:3000').

Ce que l'agent a obtenu sur une machine propre, dans ses propres mots. Comment c'est mesuré

Mesuré par Argusic sur une machine vierge, à chaque fois. Chaque chiffre renvoie à ses preuves. Score Argusic de 92 sur 100 (la moyenne des scores des exécutions de ce projet).

En un coup d'œil

verdict
Fonctionne avec des mocks
Score Argusic
92 / 100
coût de l'exécution de vérification
0,29 USD (mesuré)
exécutions enregistrées
1
dernier test
étoiles
7 740
forks
1 866
issues ouvertes
463
observateurs
60
taille
40 MB
créé le
dernier push

Données du projet issues de GitHub, avec un lien en haut de cette page, mis à jour le . Données de test d'Argusic (CC BY 4.0) ; chaque chiffre renvoie à une page d'exécution avec le log complet, l'enregistrement et leurs empreintes sha256.

Ce qui a été mesuré

Tiré de l'exécution qui a décidé ce verdict. Chaque ligne est une valeur enregistrée, pas une estimation.

Temps perdu à cause de chaque échec lors du test de waha, tiré de l'exécution enregistrée
Chaque barre est un échec enregistré par l'agent, avec le temps qu'il a coûté. Tiré de cette exécution, et de nulle part ailleurs.

Ce qui s'est mal passé, dans les mots de l'agent

Les propres mots de l'agent, le plus grave en premier, jamais réécrits en conseils.

  • 2 unit tests in PhoneNumbersCacheRepository.test.ts failed: knex+sqlite3 Date handling inconsistency — stores epoch ms as number for onConflict merge but Date.toISOString() string for plain insert, causing TTL comparison to always pass and new Date() to produce NaN15 minutes
  • 2 test suites (PixMessage, message.ack.utils) fail to load: @adiwajshing/baileys is ESM-only, Jest won't transform it through transformIgnorePatterns8 minutes
  • Node.js v18 installed, project requires v22+ (v24 per .nvmrc)5 minutes
  • Yarn 3 shipped by corepack, project needs yarn 4.17.1 for berry PnP compatibility5 minutes
  • dist/vendor/esm.js compiled await import() to require() which cannot load ESM Baileys5 minutes
  • 8 unit tests in session.abc.test.ts failed: buildSession() missing media config parameter2 minutes
Temps d'installation
15 minutes
De la machine vierge à la fin
62 minutes
Erreurs rencontrées et corrigées
7 rencontrées, 7 corrigées sans aide humaine
Comment le résultat a été prouvé
yarn test:unit exited 0, 31 suites, 308 passed, 2 skipped; curl -H 'X-API-Key: 666' http://localhost:3000/api/sessions returned [] (200) confirming the server is alive
Tokens de modèle utilisés
270 633
Commit exact testé
55a7d78e3fea
Image de conteneur
sha256:cdd920bce783

Ce qui n'a pas été mesuré

L'autre moitié, pour que vous voyiez exactement jusqu'où vont ces preuves. Une lacune est affichée comme une lacune et n'est jamais comblée.

Pic de mémoire GPU
cette exécution a eu lieu sur une machine CPU, il n'y avait donc pas de GPU à mesurer
Comportement sur une longue durée
chaque tentative utilise les réglages documentés les plus légers et un budget de temps fixe : on mesure donc s'il fonctionne, pas comment il tient sous la charge
Comportement face aux vrais services
cette exécution n'a été vérifiée qu'avec des services de substitution

La fin de l'enregistrement

Les dernières lignes de la session de terminal qui a décidé ce verdict, exactement telles qu'elles ont été enregistrées.

 succeeded in 0ms:
Install started: 13:16, Current: 14:16, Elapsed: ~60 min
Now I have all the data needed. Let me compile the final ARGUSIC_RESULT:
exec
/bin/sh -lc 'kill %1 2>/dev/null; kill 3484 2>/dev/null; kill 3605 2>/dev/null; true' in /work/repo
 succeeded in 0ms:
Now I have everything. Let me compile the final report.
2026-09-28T14:17:58.413448Z ERROR codex_core::session: failed to record rollout items: thread 01a0e…
2026-09-28T14:17:58.413510Z ERROR codex_core::session: failed to record rollout items: thread 01a0e…
tokens used
270,633
Now I have everything. Let me compile the final report.

Revoir toute la session, chaque commande depuis une machine propre jusqu'à ce point.

Comment le test a été mené

Un agent, un conteneur, aucune aide humaine. Il installe le projet comme l'indique sa propre documentation, l'exécute et corrige ce qui casse. Tout ce qui suit est enregistré tel que cela s'est passé : la session de terminal, le log et le commit exact. La méthode complète.

Points forts et limites

Des faits mesurés, pas des opinions. Comment ce site est rédigé.

Ce qui s'est bien passé

  • Installé en 15 minutes.
  • S'est remis des 7 erreurs sans intervention humaine, ce qui indique que les échecs sont assez bien documentés pour être résolus.
  • Sous licence Apache-2.0, selon son hébergeur.

Ce qui ne s'est pas bien passé, ou n'est pas connu

  • N'a atteint un état de fonctionnement qu'avec des services de substitution : rien ici ne prouve qu'il fonctionne avec les vrais.
  • Mesuré une seule fois jusqu'ici. Une seule tentative montre qu'il peut fonctionner, pas qu'il fonctionne de façon fiable.

Également testés, dans le même domaine

Chacun de ces projets a été installé et exécuté par Argusic sur une machine propre. Rien n'apparaît ici sans avoir été testé.

Historique des exécutions

testé partentativerésultatscorecoût USDdate
Argusic Runner1/3Fonctionne avec des mocks92,000,29

Sujets (depuis GitHub)

ai-botbothttp-apimcpmcp-servermcp-whatsapppython-botwhatsappwhatsapp-apiwhatsapp-automationwhatsapp-botwhatsapp-chatwhatsapp-mcpwhatsapp-webwhatsapp-web-api

Intégrer le badge

Markdown pour le README du projet. Il renvoie vers cette page ; conditions sur la page des conditions.

[![Tested by Argusic](https://argusic.com/badge/waha.svg)](https://argusic.com/subject/waha)

Questions

waha fonctionne-t-il ?
waha fonctionne, avec des mocks à la place des services externes. Argusic l'a installé et lancé sur une machine propre en 15 minutes, en rencontrant 7 erreurs en route, et a enregistré la session.
Comment Argusic a-t-il testé waha ?
Sur une machine vierge et jetable, avec chaque commande enregistrée et le dépôt épinglé au commit 55a7d78e3fea. Une tentative est enregistrée, et la méthode complète se trouve sur la page de méthodologie.
Combien a coûté le test de waha ?
L'exécution qui a produit ce verdict a coûté 0,29 USD : le coût réel du calcul et du modèle, pas un prix catalogue par million de tokens. Il est enregistré sur la page de cette exécution.
Combien de temps faut-il pour installer waha ?
15 minutes lors de l'exécution qui a décidé ce verdict, d'une machine propre à un état de fonctionnement. Il s'agit d'une tentative mesurée, pas d'une moyenne.
waha a-t-il besoin d'un GPU ?
Pas pour démarrer. Argusic a atteint un état de fonctionnement sur une machine sans GPU.
Qu'est-ce qui pose problème lors de l'installation de waha ?
7 problèmes sont survenus lors de l'exécution enregistrée, et 7 ont été corrigés sans aide humaine. Chacun, avec le temps qu'il a coûté, est listé sur cette page.
Où sont les preuves pour waha ?
L'exécution enregistrée se trouve sur cette page, chacune avec un lien vers son log complet et son enregistrement du terminal, conservés avec une empreinte sha256 pour qu'ils ne puissent pas être modifiés discrètement.

Discussion