Codex not properly working with GPT OSS 120B
What version of Codex is running?
codex-cli 0.23.0
Which model were you using?
gpt-oss-120b
What platform is your computer?
Darwin 24.6.0 arm64 arm
What steps can reproduce the bug?
Add VLLM hosting GPT OSS as a proivder
#config.toml
[model_providers.local]
name = "OpenAI using Chat Completions"
base_url = "https://vllm.example.com/v1"
env_key = "OPENAI_API_KEY"
[profiles.genai]
model_provider="local"
model = "openai/gpt-oss-120b"
name = "GenAI"
What is the expected behavior?
When I send the prompt Write me the fibonacci sequence in python and store it in fib.py I expect codex to do that
What do you see instead?
Instead it returns nothing
<img width="504" height="210" alt="Image" src="https://github.com/user-attachments/assets/63439909-1a4c-4dbe-96b4-9d62caf141b9" />
/status
📂 Workspace
• Path: ~/CodeWorkspace/GenAI/genai-core
• Approval Mode: on-request
• Sandbox: workspace-write
🧠 Model
• Name: openai/gpt-oss-120b
• Provider: Local
📊 Token Usage
• Session ID: 9f51cf0a-8eba-45fa-b3b4-e57752e0867f
• Input: 0
• Output: 0
• Total: 0
Additional information
The LOG traces show that it does successfully send the prompt and tokens are being sent back
``` log
^[[2m2025-08-21T17:10:52.856956Z^[[0m ^[[34mDEBUG^[[0m Configuring session: model=openai/gpt-oss-120b; provider=ModelProviderInfo { name: "OpenAI using Chat Completions", base_url: Some("https://vllm.example.com/v1"), env_key: Some("OPENAI_API_KEY"), env_key_instructions: None, wire_api: Chat, query_params: None, http_headers: None, env_http_headers: None, request_max_retries: None, stream_max_retries: None, stream_idle_timeout_ms: None, requires_openai_auth: false }
^[[2m2025-08-21T17:10:52.885172Z^[[0m ^[[34mDEBUG^[[0m Recording items for conversation: [Message { id: None, role: "user", content: [InputText { text: "<environment_context>\nCurrent working directory: /Users/jaytea/CodeWorkspace/GenAI/genai-core\nApproval policy: on-request\nSandbox mode: workspace-write\nNetwork access: restricted\n</environment_context>" }] }]
^[[2m2025-08-21T17:10:52.885210Z^[[0m ^[[35mTRACE^[[0m handle_codex_event: SessionConfigured(SessionConfiguredEvent { session_id: 9f51cf0a-8eba-45fa-b3b4-e57752e0867f, model: "openai/gpt-oss-120b", history_log_id: 22874317, history_entry_count: 60 })
^[[2m2025-08-21T17:13:32.098737Z^[[0m ^[[34mDEBUG^[[0m Submission ^[[3msub^[[0m^[[2m=^[[0mSubmission { id: "0", op: UserInput { items: [Text { text: "Write me the fibonacci sequence in python and store it in fib.py" }] } }
^[[2m2025-08-21T17:13:32.098792Z^[[0m ^[[34mDEBUG^[[0m Submission ^[[3msub^[[0m^[[2m=^[[0mSubmission { id: "1", op: AddToHistory { text: "Write me the fibonacci sequence in python and store it in fib.py" } }
^[[2m2025-08-21T17:13:32.098833Z^[[0m ^[[34mDEBUG^[[0m Recording items for conversation: [Message { id: None, role: "user", content: [InputText { text: "Write me the fibonacci sequence in python and store it in fib.py" }] }]
^[[2m2025-08-21T17:13:32.098860Z^[[0m ^[[34mDEBUG^[[0m Recording items for conversation: []
^[[2m2025-08-21T17:13:32.098881Z^[[0m ^[[35mTRACE^[[0m handle_codex_event: TaskStarted
^[[2m2025-08-21T17:13:32.099040Z^[[0m ^[[34mDEBUG^[[0m POST to https://vllm.example.com/v1/chat/completions: {
"model": "openai/gpt-oss-120b",
"messages": [
{
"role": "system",
"content": "You are a coding agent running in the Codex CLI, a terminal-based coding assistant. Codex CLI is an open source project led by OpenAI......
},
{
"role": "user",
"content": "<environment_context>\nCurrent working directory: /Users/jaytea/CodeWorkspace/GenAI/genai-core\nApproval policy: on-request\nSandbox mode: workspace-write\nNetwork access: restricted\n</environment_context>"
},
{
"role": "user",
"content": "Write me the fibonacci sequence in python and store it in fib.py"
}
],
"stream": true,
"tools": [
{
"type": "function",
"function": {
"parameters": {
"type": "object",
"properties": {
"command": {
"type": "array",
"items": {
"type": "string"
},
"description": "The command to execute"
},
"justification": {
"type": "string",
"description": "Only set if ask_for_escalated_permissions is true. 1-sentence explanation of why we want to run this command."
},
"timeout": {
"type": "number",
"description": "The timeout for the command in milliseconds"
},
"with_escalated_permissions": {
"type": "boolean",
"description": "Whether to request escalated permissions. Set to true if command needs to be run without sandbox restrictions"
},
"workdir": {
"type": "string",
"description": "The working directory to execute the command in"
}
},
"required": [
"command"
],
"additionalProperties": false
},
"name": "shell",
"description": "\nThe shell tool is used to execute shell commands.\n- When invoking the shell tool, your call will be running in a landlock sandbox, and some shell commands will require escalated privileges:\n - Types of actions that require escalated privileges:\n - Reading files outside the current directory\n - Writing files outside the current directory, and protected folders like .git or .env\n - Commands that require network access\n\n - Examples of commands that require escalated privileges:\n - git commit\n - npm install or pnpm install\n - cargo build\n - cargo test\n- When invoking a command that will require escalated privileges:\n - Provide the with_escalated_permissions parameter with the boolean value true\n - Include a short, 1 sentence explanation for why we need to run with_escalated_permissions in the justification parameter.",
"strict": false
}
},
{
"type": "function",
"function": {
"parameters": {
"type": "object",
"properties": {
"explanation": {
"type": "string"
},
"plan": {
"type": "array",
"items": {
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "One of: pending, in_progress, completed"
},
"step": {
"type": "string"
}
},
"required": [
"step",
"status"
],
"additionalProperties": false
},
"description": "The list of steps"
}
},
"required": [
"plan"
],
"additionalProperties": false
},
"name": "update_plan",
"description": "Updates the task plan.\nProvide an optional explanation and a list of plan items, each with a step and status.\nAt most one step can be in_progress at a time.\n",
"strict": false
}
}
]
}
^[[2m2025-08-21T17:13:32.246780Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"role": String("assistant"), "content": String("")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.246796Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.250680Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.255126Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.259316Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("We")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.264292Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" need")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.269112Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" to")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.273239Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" write")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.278178Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" a")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.283398Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" Python")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.287255Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" file")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.292164Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" fib")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.297087Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(".py")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.301338Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" with")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.306144Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" code")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.311280Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" that")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.315143Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" generates")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.320150Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" Fibonacci")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.325191Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" sequence")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.329318Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(".")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.334175Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" Lik")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.339101Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("ely")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.373993Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" a")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.376122Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" function")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.376132Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" to")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:32.376139Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" generate")}, "logprobs": Null, "finish_reason": Null}]}
^[#Truncated
^[[2m2025-08-21T17:13:33.514157Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" argument")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.519174Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(".\\")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.524438Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.528058Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.533168Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("\\\"")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.538111Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("\\\"")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.542239Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("\\\"\\")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.547166Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.552185Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+\\")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.556187Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.561093Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.566241Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("from")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.570079Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" __")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.575166Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("future")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.580104Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("__")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.584179Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" import")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.589234Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" annotations")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.597734Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("\\n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.598184Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+\\")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.603192Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.608279Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.612108Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("from")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.617119Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" typing")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.622100Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" import")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.627143Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" List")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.631109Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("\\n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.641528Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+\\")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.641561Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.646184Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+\\")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.650143Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.654196Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.658991Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("def")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.664125Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" fib")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.668120Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(".py")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.673544Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("\\n")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.678063Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("+")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.682108Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("***")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.687097Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" End")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.692120Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String(" Patch")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.696131Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("\"}")}, "logprobs": Null, "finish_reason": Null}]}
^[[2m2025-08-21T17:13:33.701079Z^[[0m ^[[35mTRACE^[[0m chat_completions received SSE chunk: Object {"id": String("chatcmpl-30322e3663044745a4cb1767c5ca5fb4"), "object": String("chat.completion.chunk"), "created": Number(1755796412), "model": String("openai/gpt-oss-120b"), "choices": Array [Object {"index": Number(0), "delta": Object {"reasoning_content": String("")}, "logprobs": Null, "finish_reason": String("stop"), "stop_reason": Number(200012)}]}
^[[2m2025-08-21T17:13:33.701110Z^[[0m ^[[34mDEBUG^[[0m Turn completed
^[[2m2025-08-21T17:13:33.701129Z^[[0m ^[[35mTRACE^[[0m handle_codex_event: TaskComplete(TaskCompleteEvent { last_agent_message: None })
11 Comments
I see similar problem and looks like it is connected to the tools usage. When you prompt codex to simply return information back(like say hi) it does so. But when you prompt to use tool like calculating fibonaci or reading a local file it just stops working. Curios how others were able to run codex with vllm serving the gpt-oss.
Codex:
<img width="563" height="337" alt="Image" src="https://github.com/user-attachments/assets/b10ab20a-1013-4b19-9d4b-b59e562b52be" />
Server log:
<img width="867" height="78" alt="Image" src="https://github.com/user-attachments/assets/4864108b-4c43-4f1c-9543-65cef0784e28" />
Possible dupe of #2293
@tunesmith I dont think it is related because VLLM already has 128K context window size set.
This issue seems to come from vLLM rather than CodexCLI. For reference, see this issue: https://github.com/vllm-project/vllm/issues/22519
I am observing a similar problem when connecting through (open-webui -> ollama).
However, when connecting directly to ollama, everything works without problems.
(I am using open-webui to override the default model options, the main purpose is to set the context size, secondary - the presence of key authentication.)
At the same time, I do not observe any problems with the operation in other applications with tools in this model when connecting through open-webui (for example, the
continueextension for vscode).UPD:
I also tried the combination of litellm -> ollama. The result is the same - it doesn't work.
litellm conf:
Duplicate of #2293
the problem is still relevant
Yeah this issue should be reopened
Is this the same issue I reported recently #5775 ?
Still happening, and it has nothing to do with context, I'm running it using cerebras as provider, and it do not answer after just a couple of
lscommands, also Codex do not show any errors to the user.The 1 Trillion dollar company can't even develop a proper extension that works with its own model. What a great world we live in. I am pretty sure that a company that can't develop an extension can't develop AGI.