claude-code-best/docs
bonerush 91ee1428fa
Fix bug OpenAI tooluse,Improve error messaging for deferred-loading tools under OpenAI‑compatible models. (#199)
* fix: reorder tool and user messages for OpenAI API compatibility (#168)
Fixes #168
OpenAI requires that an assistant message with tool_calls be immediately
followed by tool messages. Previously, convertInternalUserMessage
output user content before tool results, causing 400 errors.
Now tool messages are pushed first.

* fix: 修复OpenAI兼容层中deferred tools处理问题

  提交描述:
  修复了在使用OpenAI兼容API时TaskCreate工具调用失败的问题。

  问题:
  - 当使用OpenAI兼容API模型时,调用TaskCreate工具出现"InputValidationError: The required
  parameter `subject` is missing"错误
  - OpenAI兼容层没有正确处理deferred tools的过滤逻辑,导致工具schema没有被正确发送给模型

  修复:
  1. 在OpenAI兼容层中添加了与Anthropic API路径一致的deferred tools处理逻辑
  2. 导入必要的工具搜索相关函数: isToolSearchEnabled, extractDiscoveredToolNames,
  isDeferredTool等
  3. 实现工具过滤逻辑:
     - 检查工具搜索是否启用
     - 构建deferred tools集合
     - 过滤工具列表: 只包含非deferred工具或已发现的deferred工具
     - 为deferred tools设置deferLoading标志
  4. 修正了extractDiscoveredToolNames函数的导入路径错误

  影响:
  - 解决了TaskCreate工具调用时的参数验证错误
  - 确保OpenAI兼容层与Anthropic API路径在处理deferred tools时行为一致
  - 支持工具搜索功能在OpenAI兼容模式下正常工作

  修改的文件:
  - src/services/api/openai/index.ts - 主要修复文件

  测试建议:
  1. 使用OpenAI兼容API模型时,TaskCreate工具应该可以正常调用
  2. 如果工具搜索功能启用,可能需要先使用ToolSearchTool来发现TaskCreate工具
  3. 验证工具调用时不再出现"InputValidationError"错误

  这个修复确保了当使用OpenAI兼容API(如Ollama、DeepSeek、vLLM等)时,deferred
  tools(如TaskCreate)能够被正确处理,解决了工具调用失败的问题。

* fix: 更新工具模式未发送提示,增加OpenAI兼容模型使用指南
2026-04-08 18:08:59 +08:00
..
agent docs: 文档更新 2026-04-01 16:43:45 +08:00
context docs: 文档优化完成 2026-04-01 17:18:48 +08:00
conversation docs: 文档优化完成 2026-04-01 17:18:48 +08:00
extensibility docs: 文档优化完成 2026-04-01 17:18:48 +08:00
features feat: enable GrowthBook local gate defaults for P0/P1 features 2026-04-06 17:00:30 +08:00
images docs: 更新文档, 加上配图 2026-04-01 11:14:20 +08:00
internals docs: 添加文档 2026-04-03 11:52:14 +08:00
introduction docs: 文档优化完成 2026-04-01 17:18:48 +08:00
logo docs: 尝试修复 docs 的位置 2026-04-01 10:09:00 +08:00
plans 分离OpenAI和Anthropic模型的环境变量 2026-04-05 03:31:06 +08:00
safety 完善沙箱文档 (#195) 2026-04-08 16:49:24 +08:00
test-plans docs: 完成新版测试文档 2026-04-02 17:37:06 +08:00
tools feat: 修正 web search 工具 2026-04-03 00:47:37 +08:00
auto-updater.md feat: 关闭自动更新 2026-04-03 09:39:32 +08:00
external-dependencies.md feat: 添加 测试 agent 及一些文档 2026-04-03 19:27:23 +08:00
favicon.svg docs: 尝试修复 docs 的位置 2026-04-01 10:09:00 +08:00
feature-exploration-plan.md docs: 添加一大堆 feature 的描述 2026-04-02 22:52:32 +08:00
feature-flags-audit-complete.md feat: enable SHOT_STATS, PROMPT_CACHE_BREAK_DETECTION, TOKEN_BUDGET feature flags 2026-04-05 21:07:38 +08:00
lsp-integration.md docs: 调整文档 2026-04-03 19:56:35 +08:00
openai-task-tools.md Fix bug OpenAI tooluse,Improve error messaging for deferred-loading tools under OpenAI‑compatible models. (#199) 2026-04-08 18:08:59 +08:00
projects-collection.md docs: 更新文档 2026-04-03 20:23:51 +08:00
REVISION-PLAN.md docs: 完成大量文档 2026-04-01 14:44:21 +08:00
telemetry-remote-config-audit.md feat: 关闭 Datadog 日志发送 2026-04-03 09:49:59 +08:00
testing-spec.md test: 新增一波测试文件 2026-04-02 16:21:24 +08:00
ultraplan-implementation.md docs: 添加一大堆 feature 的描述 2026-04-02 22:52:32 +08:00