Utiliser la mémoire de l'agent Oracle avec Codex
Les agents de codage commencent souvent une tâche sans les décisions, les conventions de référentiel, les notes d'architecture et les leçons de dépannage repérées dans les sessions précédentes. La reconstruction de ce contexte à partir de fichiers source et de l'historique des discussions coûte du temps et de l'argent, et peut entraîner des modifications incohérentes.
Le module d'extension Oracle AI Agent Memory pour Codex (maintenant ChatGPT Work) fournit la mémoire persistante du projet Codex. Codex peut rechercher des connaissances antérieures avant un travail substantiel, ajouter des faits durables concis pour une session ultérieure et, lorsqu'elle est explicitement activée, capturer les invites utilisateur et les réponses de l'assistant final dans le thread de mémoire actuel.
Ce guide regroupe le plugin Codex existant en tant que marché local téléchargeable et passe en revue les deux rôles requis pour l'utiliser :
- un administrateur configure et exécute le serveur MCP de référence inclus et émet un jeton ciblé sur un utilisateur et un agent ; et
- un utilisateur Codex installe le plugin téléchargé, fournit ce jeton et, éventuellement, active les crochets automatiques de capture de message.
Avertissement : le serveur MCP inclus est un déploiement d'apprentissage et de référence. Il utilise un jeton JWT secret partagé et sa configuration par défaut sert de HTTP brut sur l'ordinateur local. Vérifiez et adaptez l'authentification, la sécurité du transport, le stockage des informations d'identification, le cycle de vie des jetons, l'autorisation et l'observabilité avant de l'utiliser au-delà d'un environnement sécurisé.
Télécharger le plug-in
Téléchargez le projet de plug-in Codex, codex_plugin.zip. L'archive est créée à partir du répertoire examples/codex_plugin du référentiel et contient le manifeste de module d'extension, la brique de mémoire, la configuration MCP, les hooks et le serveur de référence.
Extrayez-le sur l'ordinateur où vous allez exécuter Codex. Lisez le manifeste de module d'extension, .mcp.json et hooks/hooks.json avant de l'installer. Pour connaître les concepts généraux de plug-in et le comportement d'installation, reportez-vous à la documentation relative au plug-in ChatGPT.
unzip codex_plugin.zip
cd codex_plugin
Comprendre les composants
Le projet téléchargé comporte trois composants de module d'extension et un service géré par l'administrateur :
skills/memorydonne des instructions au Codex sur l'utilisation responsable de la mémoire de projet persistante.searchetaddsont les outils MCP exposés au Codex.- Les points d'accrochage
UserPromptSubmitetStoppeuvent enregistrer les invites utilisateur et les réponses finales de l'assistant. Ils ne sont pas activés tant que l'utilisateur n'a pas vérifié et fait confiance à eux dans le Codex. misc/remote_mcp_server.pyest le service de référence qui stocke et recherche la mémoire avec la mémoire de l'agent Oracle.
Le module d'extension est par défaut http://127.0.0.1:8000/mcp. Cela fonctionne lorsque l'administrateur et Codex fonctionnent sur le même ordinateur. Pour un service géré par un administrateur, remplacez url dans .mcp.json par l'adresse MCP approuvée avant de distribuer ou d'installer le module d'extension.
Installer les exigences Python
Les hooks et le serveur MCP sont exécutés dans différents environnements Python. Installez leurs exigences là où elles s'exécutent.
| Environnement | Bibliothèques requises |
|---|---|
| Python utilisé pour lancer Codex | requests. Le hook de module d'extension appelle l'exécutable python de cet environnement. |
| Python utilisé pour exécuter le serveur MCP de référence | oracleagentmemory, fastmcp, PyJWT et python-dotenv, ainsi que la connectivité Oracle AI Database et les fournisseurs de LLM et d'intégration configurés. |
Par exemple, installez la dépendance de crochet dans l'environnement à partir duquel vous démarrez Codex :
python -m pip install requests
Installez les dépendances du serveur de référence dans l'environnement qui démarrera le serveur :
python -m pip install oracleagentmemory fastmcp PyJWT python-dotenv
Pour la configuration du kit SDK et de la base de données, reportez-vous à Guide de configuration et à Exécution locale d'Oracle AI Database.
Administrateur : configurer le serveur Memory MCP
Le serveur lit sa configuration de connexion, de modèle et de signature à partir de misc/.env. Copiez le modèle fourni et renseignez-le avec les valeurs de votre environnement :
cp misc/.env.sample misc/.env
DB_USER="<database-user>"
DB_PASSWORD="<database-password>"
DB_CONNECT_STRING="<database-connect-string>"
EMBEDDER_MODEL_ID="<embedding-model-id>"
EMBEDDER_API_BASE="<embedding-api-base>"
EMBEDDER_API_KEY="<embedding-api-key>"
LLM_MODEL_ID="<llm-model-id>"
LLM_API_BASE="<llm-api-base>"
LLM_API_KEY="<llm-api-key>"
JWT_SECRET="<signing-secret>"
Générez la clé secrète de signature une fois, stockez-la en toute sécurité et placez la valeur dans misc/.env. La même clé secrète est requise lors de l'émission de jetons utilisateur.
export JWT_SECRET="$(openssl rand -hex 32)"
Démarrez le serveur à partir du répertoire du module d'extension extrait :
python misc/remote_mcp_server.py \
--host 127.0.0.1 --port 8000
Remarque : si le serveur est distant, utilisez l'hôte et le port appropriés pour ce déploiement, puis faites correspondre son adresse à la configuration .mcp.json du module d'extension.
Administrateur : émettre un jeton utilisateur
Le serveur de référence dérive la portée user_id et agent_id du jeton porteur plutôt que d'accepter ces valeurs du Codex. Créez un jeton pour le contexte utilisateur et d'agent qui doit partager la mémoire. Exportez le même secret de signature que celui utilisé par le serveur, puis exécutez :
export JWT_SECRET="<same-signing-secret>"
python misc/create_token.py \
--user-id "<user-id>" \
--agent-id "<agent-id>"
Donner le jeton imprimé à l'utilisateur prévu du Codex par l'intermédiaire d'un mécanisme de distribution de secret approuvé. Traitez-le comme des informations d'identification pour la portée de mémoire encodée. La durée de vie du jeton de référence et l'approche de signature sont des exemples de comportement, et non une stratégie de gestion de jeton de production.
Utilisateur : installez le module d'extension dans Codex
A partir du répertoire du module d'extension extrait, ajoutez le marketplace local et installez le module d'extension :
codex plugin marketplace add .
codex plugin add oracle-ai-agent-memory@codex-oam
Démarrez Codex avec le jeton fourni par l'administrateur :
OAM_MCP_TOKEN="<user-token>" codex
Exécutez /mcp et vérifiez que le serveur memory est disponible avec les outils search et add. Ces outils fonctionnent sans capture automatique.
Utilisateur : activez éventuellement la capture automatique de session
Les crochets du plug-in envoient chaque invite utilisateur soumise et la réponse finale de l'assistant au serveur Memory MCP. Après avoir installé et redémarré Codex, exécutez /hooks, inspectez les crochets Oracle AI Agent Memory UserPromptSubmit et Stop, et ne leur faites explicitement confiance que si vous le souhaitez. Pour plus d'informations sur le comportement et la configuration des hooks, reportez-vous à la documentation relative aux hooks ChatGPT.
Laisser les crochets non sécurisés désactive la capture automatique, mais n'empêche pas Codex de rechercher ou d'ajouter de la mémoire via les outils MCP.
Conclusion
Dans ce guide, nous avons appris à télécharger et installer le module d'extension Oracle AI Agent Memory Codex, à configurer son serveur MCP de référence, à émettre un jeton utilisateur ciblé et, éventuellement, à capturer des messages de session. Codex peut désormais rechercher un contexte de projet durable et sauvegarder des connaissances réutilisables pour des sessions de codage ultérieures.
→ Après avoir appris à utiliser la mémoire d'agent Oracle avec Codex, vous pouvez également être intéressé par Utilisation de la mémoire d'agent avec un serveur MCP.