mcpField
O
oracle

oracle

github.com/trancong12102开发7141 次安装5 周前更新
代码仓库

关于 oracle

oracle 是将深入代码分析委托给 Codex CLI 的技能,面向需要基于代码库回答问题的开发者。它通过只读沙箱启动 Codex,由其自行探索代码,并支持在同一会话中继续追问。

主要功能

  1. 01将明确的问题交给 Codex CLI 分析
  2. 02Codex 可只读访问并探索代码库
  3. 03支持提供外部上下文文件
  4. 04通过会话 ID 延续后续提问
  5. 05整理 Codex 分析结果后呈现

适用场景

  1. 01分析代码库中的架构问题
  2. 02调查特定函数或文件的行为
  3. 03基于代码探索跟进未解答的问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/trancong12102/agentskills --skill oracle

安装后在 Claude Code 中输入/oracle确认已加载。

附带文件scripts/codex-oracle.py

详细介绍

Oracle

将深入分析委托给 Codex CLI——向它提出明确的问题并启动它,等待它完成,然后呈现结果。Codex 在只读沙箱中运行,可以访问完整代码库,因此会自行收集所需上下文。

先决条件

  • Codex CLI(必需):使用 npm i -g @openai/codex 安装,并通过 codex login 进行身份验证

如果尚未安装 Codex CLI,请停止并告知用户安装它。

工作流

不要阅读脚本源代码。直接运行脚本,并使用 --help 查看用法。

步骤 1:拟定问题

Codex CLI 可以完整读取代码库,并自行浏览文件、搜索代码和进行网络搜索。你的工作是拟定一个清晰、具体的问题,而不是为此收集上下文。

  1. 理解用户的问题以及需要分析的内容。
  2. 拟定一个清晰、具体的问题,准确表达用户的意图——包括相关文件路径、函数名称或架构部分,为 Codex 指明方向。
  3. 可以选择使用 --context-file 提供 Codex 无法自行访问的外部上下文(例如,用户提供的仓库外文件或粘贴的内容)。
步骤 2:运行 Codex

脚本位于相对于此技能目录的 scripts/ 中。运行 <script> --help 查看完整用法。

以后台 Bash 任务(run_in_background: true)的方式启动 scripts/codex-oracle.py。Codex CLI 最长可能需要 30 分钟。

# New session
python3 scripts/codex-oracle.py --question "..." [--context-file path] [--focus text] [--dry-run]

# Resume a previous session for follow-up
python3 scripts/codex-oracle.py --session-id <id> --question "follow-up question..." [--context-file path] [--focus text]

启动后台任务后,立即结束响应并等待。不要轮询、读取输出文件或检查进程状态。Codex 完成后,你会自动收到通知。

步骤 3:查看响应
  1. 从后台任务完成通知中读取 Codex 输出。
  2. 从最后一行获取 oracle-session-id,并在内部保存以供后续使用。
  3. 自行审阅响应。判断它是否充分回答了用户的问题,还是需要澄清或深入分析。
步骤 4:后续追问循环(如有需要)

如果 Codex 的响应不完整、含糊,或者你需要它进一步深入分析,请在向用户呈现任何内容之前发送后续问题。根据需要重复此流程。

  1. 使用已保存的 oracle-session-id 和 --session-id 继续会话。Codex 会保留完整的对话历史。
  2. 只发送新的追问——不要重复先前的问题或系统提示词。
  3. 以后台任务方式启动,等待完成,并审阅新的响应。
  4. 返回判断是否已获得充分答案,或是否还需要继续追问。

每轮都会累积会话上下文,让后续回答更有参考价值。只有主题完全改变时,才开始新会话(步骤 1)。

步骤 5:呈现结果

从 Oracle 获得完整、清晰的答案后(可能需要一轮或多轮),请:

  1. 将所有 Codex 响应综合为一份连贯的答案,呈现给用户。
  2. 自行决定如何组织格式以及突出哪些内容;不必逐一复述每轮的所有细节。

规则

  • 由 Codex 负责分析,你的职责是拟定问题、启动任务并呈现结果。 Codex 运行期间,不要自行并行分析。
  • 按主题而非严重程度组织发现。 根据问题类型调整结构(架构问题可按组件和权衡组织;漏洞问题可按根因假设组织;安全问题可按威胁模型组织,等等)。
  • 使用完成通知中提供的 output-file 路径,通过 Read 工具读取后台任务输出。 TaskOutput 无法找到后台 Bash 任务 ID,使用后会失败。
  • 始终使用包装脚本运行 Codex。 该脚本会设置正确的模型和只读模式;直接调用 codex CLI 会绕过这些设置。

评论

支持 Markdown