codex 这种输出完让用户选择的是怎么实现的

2026-04-29 09:302阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐
问题描述:

ScreenShot2026-04-261146080201776×1054 211 KB

网友解答:
--【壹】--:

首先你要知道几个概念:

  1. MCP:模型上下文协议,规定模型和外部世界如何交互的协议
  2. Tools:基于 MCP 定义模型可以调用的外部工具
  3. Function Calling:模型会按照 MCP 规定的格式调用外部工具
  4. ReAct Loop:Reasoning-Acting 循环,Agent 设计中让模型交替进行行动和思考

有了这四者,在 ReAct 循环中,模型会基于 MCP 和 Function Calling 让不断使用 Tools 获取外界信息。

知道了这些,那么这个 Ask 怎么实现就很简单了:

  1. 首先 Agent 中会基于 MCP 定义如何 Ask 的 Tool。
  2. 由于 ReAct 的存在,模型在认为需要你进行进一步的确认时,会通过 Function Calling 调用 Ask 的 Tool,把要问的问题作为工具调用的参数传回来。
  3. Codex 会解析工具调用,把问题显示出来。
  4. 你回答问题,作为工具调用的结果,把回答的结果传回给模型
  5. 模型进入下一次 ReAct 循环,开始思考并进行下一步都行动

不仅是这个功能这样,像平时模型对文件进行读写,执行命令等等,都是这样的过程。

另外 Codex cli 是开源的,可以看看源码实现: GitHub - openai/codex: Lightweight coding agent that runs in your terminal · GitHub

或者看看另一家 OpenCode 的实现:GitHub - anomalyco/opencode: The open source coding agent. · GitHub


--【贰】--:

欸?为啥你这没IDE背景
image433×144 9.97 KB


--【叁】--:

codex内置的工具:request_user_input,我印象里之前只能在plan模式下使用,后续增加了新的feature开了之后可以在默认模式下使用


--【肆】--:

就是个工具调用,在UI上展示出来罢了,没什么特别的。


--【伍】--:

忘了cx cli了 确实都可以看看, 学习一下


--【陆】--:

类似copilot的user_ask
或者opencode的question
本质tool
感兴趣可以看一下opencode的开源实现


--【柒】--:

image2000×204 23 KB
ai的回答,我是桌面端应用的原因吧。


--【捌】--:

哦哦哦,计划模式就可以了。。。。。。。。


--【玖】--:

ToolUse,Ask User Question这种。

直观理解的话,想想如果自己要做Agent,想搞类似的东西,你可以注入一个上下文叫:
当你想对用户说“咕咕嘎嘎”的时候,输出[tool][咕咕嘎嘎]。

然后做客户端,检测到这一段话,就不把内容直接展示,而是大声播放一段咕咕嘎嘎。
这就让模型有了不止说话,还有了咕咕嘎嘎的能力。

然后这么一堆咕咕嘎嘎,我们就叫他Tools。


--【拾】--:

不清楚哎,是不是我用账号登的原因,之前用api好像见过这个


--【拾壹】--:

推荐一个superpowers skill, 这个skill在实现功能前也会一步一步问需求


--【拾贰】--:

langgraph/adk的人工介入机制吧?需要 ck 点恢复。


--【拾叁】--: Diana:

开源实现

其实Codex也是开源的,都可以看看怎么实现的


--【拾肆】--:

这个交互应该不是很难实现 我记得有篇博客说了这个的


--【拾伍】--:

非计划模式也是可以的,就是你可以在提示词中说什么有问题主动问我,或者说Ask questions,它就会主动调这个。它本质上是一个Tools。


--【拾陆】--:

image1803×781 64 KB
左下角计划模式点开,应该就行吧。是这个吧

标签:纯水
问题描述:

ScreenShot2026-04-261146080201776×1054 211 KB

网友解答:
--【壹】--:

首先你要知道几个概念:

  1. MCP:模型上下文协议,规定模型和外部世界如何交互的协议
  2. Tools:基于 MCP 定义模型可以调用的外部工具
  3. Function Calling:模型会按照 MCP 规定的格式调用外部工具
  4. ReAct Loop:Reasoning-Acting 循环,Agent 设计中让模型交替进行行动和思考

有了这四者,在 ReAct 循环中,模型会基于 MCP 和 Function Calling 让不断使用 Tools 获取外界信息。

知道了这些,那么这个 Ask 怎么实现就很简单了:

  1. 首先 Agent 中会基于 MCP 定义如何 Ask 的 Tool。
  2. 由于 ReAct 的存在,模型在认为需要你进行进一步的确认时,会通过 Function Calling 调用 Ask 的 Tool,把要问的问题作为工具调用的参数传回来。
  3. Codex 会解析工具调用,把问题显示出来。
  4. 你回答问题,作为工具调用的结果,把回答的结果传回给模型
  5. 模型进入下一次 ReAct 循环,开始思考并进行下一步都行动

不仅是这个功能这样,像平时模型对文件进行读写,执行命令等等,都是这样的过程。

另外 Codex cli 是开源的,可以看看源码实现: GitHub - openai/codex: Lightweight coding agent that runs in your terminal · GitHub

或者看看另一家 OpenCode 的实现:GitHub - anomalyco/opencode: The open source coding agent. · GitHub


--【贰】--:

欸?为啥你这没IDE背景
image433×144 9.97 KB


--【叁】--:

codex内置的工具:request_user_input,我印象里之前只能在plan模式下使用,后续增加了新的feature开了之后可以在默认模式下使用


--【肆】--:

就是个工具调用,在UI上展示出来罢了,没什么特别的。


--【伍】--:

忘了cx cli了 确实都可以看看, 学习一下


--【陆】--:

类似copilot的user_ask
或者opencode的question
本质tool
感兴趣可以看一下opencode的开源实现


--【柒】--:

image2000×204 23 KB
ai的回答,我是桌面端应用的原因吧。


--【捌】--:

哦哦哦,计划模式就可以了。。。。。。。。


--【玖】--:

ToolUse,Ask User Question这种。

直观理解的话,想想如果自己要做Agent,想搞类似的东西,你可以注入一个上下文叫:
当你想对用户说“咕咕嘎嘎”的时候,输出[tool][咕咕嘎嘎]。

然后做客户端,检测到这一段话,就不把内容直接展示,而是大声播放一段咕咕嘎嘎。
这就让模型有了不止说话,还有了咕咕嘎嘎的能力。

然后这么一堆咕咕嘎嘎,我们就叫他Tools。


--【拾】--:

不清楚哎,是不是我用账号登的原因,之前用api好像见过这个


--【拾壹】--:

推荐一个superpowers skill, 这个skill在实现功能前也会一步一步问需求


--【拾贰】--:

langgraph/adk的人工介入机制吧?需要 ck 点恢复。


--【拾叁】--: Diana:

开源实现

其实Codex也是开源的,都可以看看怎么实现的


--【拾肆】--:

这个交互应该不是很难实现 我记得有篇博客说了这个的


--【拾伍】--:

非计划模式也是可以的,就是你可以在提示词中说什么有问题主动问我,或者说Ask questions,它就会主动调这个。它本质上是一个Tools。


--【拾陆】--:

image1803×781 64 KB
左下角计划模式点开,应该就行吧。是这个吧

标签:纯水