将 Oracle Agent 内存与 Codex 一起使用

编码代理通常在没有决策、存储库约定、体系结构注释和故障排除之前会话中发现的课程的情况下开始执行任务。从源文件和聊天历史记录中重新构建该上下文会花费时间和金钱,并可能导致不一致的更改。

Codex 的 Oracle AI Agent Memory 插件(现在称为 ChatGPT Work)为 Codex 提供了持久的项目内存。Codex 可以在大量工作之前搜索先验知识,为以后的会话添加简洁的持久事实,并在显式启用时在当前内存线程中捕获用户提示和最终助手回复。

本指南将现有的 Codex 插件打包为可下载的本地市场,并介绍使用它所需的两个角色:

警告:包含的 MCP 服务器是学习和参考部署。它使用共享机密 JWT,其默认配置在本地计算机上提供纯 HTTP。在信任环境之外使用身份验证、传输安全性、凭证存储、令牌生命周期、授权和可观察性之前,请先查看和调整身份验证、传输安全性、凭证存储、令牌生命周期、授权和可观察性。

下载插件

下载 Codex 插件项目 codex_plugin.zip 。归档文件是基于系统信息库的 examples/codex_plugin 目录构建的,其中包含插件清单、内存技能、MCP 配置、钩子和引用服务器。

将其解压缩到运行 Codex 的计算机上。在安装插件清单之前,请先阅读 .mcp.json 和 hooks/hooks.json。有关常规插件概念和安装行为,请参见 ChatGPT 插件文档。

unzip codex_plugin.zip
cd codex_plugin

了解组件

下载的项目有三个插件组件和一个管理员运行的服务:

插件默认为 http://127.0.0.1:8000/mcp。当管理员和 Codex 在同一台计算机上运行时,这起作用。对于管理员管理的服务,在分发或安装插件之前,将 .mcp.json 中的 url 更改为批准的 MCP 端点。

安装 Python 要求

钩子和 MCP 服务器在不同的 Python 环境中运行。在执行位置安装其要求。

环境 必需的磁带库
用于启动 Codex 的 Python requests. 插件挂钩调用环境的 python 可执行文件。
用于运行引用 MCP 服务器的 Python oracleagentmemory、fastmcp、PyJWT 和 python-dotenv 以及 Oracle AI Database 连接以及配置的嵌入和 LLM 提供程序。

例如,在从中启动 Codex 的环境中安装挂钩依赖性:

python -m pip install requests

在将启动服务器的环境中安装引用服务器相关项:

python -m pip install oracleagentmemory fastmcp PyJWT python-dotenv

有关 SDK 和数据库设置,请参阅设置指南和在本地运行 Oracle AI Database 。

管理员:配置内存 MCP 服务器

服务器从 misc/.env 读取其连接、型号和签名配置。复制提供的模板并使用您的环境的值填充模板:

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>"

生成一次签名密钥,将其安全存储,然后将该值放置在 misc/.env 中。发出用户令牌时需要相同的密钥。

export JWT_SECRET="$(openssl rand -hex 32)"

从提取的插件目录启动服务器:

python misc/remote_mcp_server.py \
  --host 127.0.0.1 --port 8000

注:如果服务器是远程服务器,请使用适合该部署的主机和端口,然后使其端点与插件的 .mcp.json 配置匹配。

管理员:发出用户令牌

引用服务器从 Bearer 标记派生 user_id 和 agent_id 范围,而不是从 Codex 接受这些值。为应共享内存的用户和代理上下文创建标记。导出服务器使用的同一签名密钥,然后运行:

export JWT_SECRET="<same-signing-secret>"
python misc/create_token.py \
  --user-id "<user-id>" \
  --agent-id "<agent-id>"

通过批准的密钥传送机制将打印的标记提供给预期的 Codex 用户。将其视为其中编码的内存作用域的身份证明。引用令牌生命周期和签名方法是行为示例,而不是生产令牌管理策略。

用户:在 Codex 中安装该插件

从提取的插件目录中,添加本地市场并安装插件:

codex plugin marketplace add .
codex plugin add oracle-ai-agent-memory@codex-oam

使用管理员提供的令牌启动 Codex:

OAM_MCP_TOKEN="<user-token>" codex

运行 /mcp 并确认 memory 服务器随 search 和 add 工具一起提供。这些工具无需自动捕获即可工作。

用户:可选择启用自动会话捕获

插件的钩子将每个提交的用户提示和最终助手回复发送到内存 MCP 服务器。安装并重新启动 Codex 后,运行 /hooks,检查 Oracle AI Agent Memory UserPromptSubmit 和 Stop 挂钩,并仅在需要该行为时明确信任它们。有关挂钩行为和配置详细信息,请参见 ChatGPT 挂钩文档。

离开钩子不可信会禁用自动捕获,但不会阻止 Codex 通过 MCP 工具搜索或添加内存。

结论

在本指南中,我们了解了如何下载和安装 Oracle AI Agent Memory Codex 插件、配置其参考 MCP 服务器、发出限定用户令牌以及(可选)捕获会话消息。Codex 现在可以搜索持久的项目情境,并将可重用的知识保存到以后的编码环节。

→在了解如何将 Oracle Agent Memory 与 Codex 一起使用后,您可能还对将代理内存与 MCP 服务器一起使用感兴趣。