Skip to content

Documentation to use "tool_search"? #1872

Closed

Description

@Smileynator

Documentation problem type

Missing documentation

Documentation location

none

What is wrong or missing?

I can't for the life of me figure out how to get a local model to do "tool search".
When a lot of tools are available in codex, the tools are not send to the LLM with every request, but a tools search is expected from Codex in order to include them on the next turn.
This behavior seems to be largely undocumented, all i know is that it comes natural to most OpenAI models, and my local Qwen can't even see a tool called tool search, it only sees the default internal toolset exposed (web_search and the like)
I see in requests that "tool_choice": "auto", is added in LM Studio in my case, but i doubt that is actually related.
As per the OpenCodex docs, there should just be proper support for this, but maybe i am just missing something really obvious, or my models are too dumb.

What should the documentation explain instead?

How to allow tool_search when a lot of MCP tools are available to codex.

Suggested wording or example

I wish i knew.

Additional context or attachments

No response

Checks

  • I searched existing documentation issues.
  • No secrets or personal information are included.

Activity

  1. Ingwannu commented on Aug 16, 2026

    @Ingwannu
    Owner

    Confirmed as a documentation gap.

    OpenCodex does not create or enable deferred tool search from tool_choice: "auto". It only relays a type: "tool_search" tool that Codex already included in the incoming Responses request, exposing it to a routed chat/local model as a normal function named tool_search, then converting the call back into a tool_search_call.

    That gives two distinct failure boundaries:

    1. If the redacted incoming /v1/responses request has no type: "tool_search" entry, the Codex client/session did not advertise deferred tool discovery; OpenCodex cannot invent it.
    2. If the entry is present and the routed request contains a tool_search function but the local model never calls it, that is model instruction/tool-use behavior rather than an OpenCodex transport toggle.

    I will add a focused troubleshooting section showing what to inspect in a redacted request and clarifying that LM Studio's tool_choice: "auto" is not the enable switch.

  2. Ingwannu commented on Aug 17, 2026

    @Ingwannu
    Owner

    Documentation fix is now in PR #1878. It documents the incoming tool_search declaration, routed function mapping, continuation flow, privacy-safe diagnostics, and why tool_choice: "auto" is not the enable switch. The docs production build passes; the issue will close when the PR lands.

  3. lidge-jun commented on Aug 19, 2026

    @lidge-jun
    Owner

    리뷰 · 우선순위 22 / 80

    로컬 모델(Qwen, LM Studio)에서 Codex deferred tool_search 를 쓰고 싶은데 문서가 없다. MCP 도구가 많으면 매 요청에 안 실리고 tool_search 다음 턴에 실린다. OpenAI는 자연스럽고 로컬 모델은 tool_search 자체를 못 본다. 문서 요청이라 22다.

    코드는 있다. src/responses/parser.ts 가 type tool_search 를 name tool_search 함수로 바꾼다. 채팅 라인이 그 경로다. src/adapters/tool-catalog-nudge.ts 는 code mode에서 중첩 헬퍼를 설명하지만 tool_search 사용법을 사용자 문서로 쓰지 않는다.

    라우티드 행은 normalizeRoutedCatalogEntry 가 supports_search_tool true 로 deferred 발견을 광고한다. 클라이언트가 type tool_search 를 내고, 로컬 OpenAI-호환 서버가 그 타입을 모르면 모델 카탈로그에 함수가 안 보인다. LM Studio의 tool_choice auto 는 별개다.

    Responses 패스스루를 타면 #1950 이다. 번역이 없어 모델이 tool_search 를 못 본다. 채팅 라인인데도 안 보이면 로컬 서버가 비표준 도구 타입을 드롭하는지 확인해야 한다.

    해결방안

    문서에 세 줄을 적는다. Codex는 MCP를 미뤄 두고 tool_search 로 다음 턴에 싣는다. OpenCodex 채팅 라인은 그 타입을 함수로 바꾼다. Responses 패스스루와 로컬 서버가 비표준 타입을 버리면 모델은 기본 도구만 본다. 코드 패치는 이 이슈의 본문이 아니다. #1950 을 링크한다. 새 설정 키는 추측하지 않는다.

    이 댓글은 grok-bot이 작성했습니다

  4. lidge-jun commented on Aug 19, 2026

    @lidge-jun
    Owner

    지원 경로.

    tool_search는 OpenCodex 설정 키가 아님. Codex가 MCP를 미뤄두고 다음 턴에 싣는 클라이언트 기능임. OpenCodex는 들어온 Responses 요청에 type: "tool_search"가 있을 때만 채팅 라인에서 함수 tool_search로 바꿔 릴레이함. LM Studio의 tool_choice: "auto"는 스위치 아님.

    문서: docs-site/src/content/docs/guides/codex-integration.md → Explicit tool_search troubleshooting. #1878로 오늘 머지됨.

    로컬 Qwen이 기본 툴만 보면: (1) Codex가 tool_search를 안 보냄 (2) Responses 패스스루라 변환 없음 → #1950 (3) 함수는 갔는데 모델이 안 부름. 코드모드면 exec의 tools/ALL_TOOLS로도 MCP를 찾을 수 있음.

    이 이슈는 문서 요청이라 여기까지. 닫음. 남은 코드 이슈는 #1950.

    이 댓글은 grok-bot이 작성했습니다

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions