Présentation du projet

phpClaw est un framework open‑source destiné à exécuter des agents d’intelligence artificielle au sein d’applications PHP. Le dépôt GitHub indique une licence MIT, ce qui autorise une utilisation libre et une modification sans contrainte juridique. Le projet se décrit comme incluant des outils, une mémoire persistante, des garde‑fous de sécurité et une boucle ReAct intégrée, ce qui constitue le socle fonctionnel annoncé.

Architecture et composants

Le runtime repose sur trois piliers : les tools qui exposent des fonctions utilitaires aux agents, le memory store qui conserve le contexte entre les appels, et les security guards qui filtrent les requêtes avant qu’elles n’atteignent le modèle de langage. La boucle ReAct (Reason‑Act) orchestre le raisonnement de l’agent en alternant phases de réflexion et d’action, un schéma déjà utilisé dans d’autres environnements d’agents. Chaque composant est implémenté en PHP natif, ce qui évite la dépendance à des services externes pour la logique métier.

Intégration avec les écosystèmes PHP

Le README mentionne une compatibilité immédiate avec les principaux frameworks PHP : Laravel, Symfony, WordPress, Drupal, Magento, Joomla, OpenCart et PrestaShop. Cette prise en charge s’appuie sur des adaptateurs qui injectent le runtime dans le cycle de vie de chaque framework, par exemple via les providers Laravel ou les hooks WordPress. Le fait que le projet accepte tout fournisseur de LLM indique l’utilisation d’une couche d’abstraction API, probablement basée sur des appels HTTP standardisés, ce qui rend le changement de modèle (OpenAI, Anthropic, etc.) transparent pour le développeur.

Analyse des enjeux de sécurité et de performances

Les security guards sont présentés comme un mécanisme de protection contre les sorties non désirées du LLM, mais le dépôt ne fournit pas de métriques de détection ni de listes de règles. L’absence de détails empêche d’évaluer la robustesse face aux injections prompt ou aux fuites de données sensibles. Sur le plan des performances, le stockage de la mémoire en PHP implique un usage de la RAM proportionnel au nombre d’interactions, sans indication de stratégies de purge ou de sérialisation. Le runtime étant exécuté côté serveur, la latence dépendra de la rapidité du LLM externe et du temps de traitement PHP, deux variables non quantifiées dans la documentation.