
OpenAI shipped GPT-5.6 on July 9 as three distinct models — Sol, Terra, and Luna — not a single upgrade. If you’re already calling gpt-5.6 in the API, you’re silently routing to Sol, the most expensive tier at $5 per million input tokens. The alias is convenient. It’s also a budget surprise waiting to happen.
Here’s what the family actually is, what’s new in the API, and how to decide which model belongs in your stack.
Three Models, Not One
The GPT-5.6 release is a lineup, not an upgrade. OpenAI ships three tiers that share the same 1.05 million-token context window and 128K max output, but differ significantly on capability and cost.
| Model | API ID | Input (per 1M) | Output (per 1M) | Best For |
|---|---|---|---|---|
| Sol | gpt-5.6-sol | $5 | $30 | Hard agentic tasks, long-horizon coding |
| Terra | gpt-5.6-terra | $2.50 | $15 | Production RAG, balanced workloads |
| Luna | gpt-5.6-luna | $1 | $6 | High-volume, latency-sensitive work |
The gpt-5.6 alias routes to Sol. If your workload is sentiment classification or document summarization at scale, you’re paying Sol rates for Luna work. Specify the model ID explicitly and you’ll cut your API costs by 60–80% with no meaningful quality loss for most tasks.
All three models share the same February 2026 knowledge cutoff. Requests above 272K input tokens trigger long-context pricing — $10/$45 per million for Sol, $5/$22.50 for Terra, $2/$9 for Luna — charged on the full request, not just the overage. Plan your chunking strategy accordingly.
Programmatic Tool Calling: Fewer Round Trips, Less Glue Code
The most interesting addition in this release isn’t the model tiers — it’s what GPT-5.6 can do with your tools in a single API call.
Programmatic Tool Calling lets the model write JavaScript that orchestrates your registered tools inside a hosted V8 runtime. Instead of the usual turn-by-turn pattern — model calls tool, you get the result, model calls the next tool, repeat — the model handles the whole sequence in one turn. It can call tools in parallel, pass results between them, and apply conditional logic without burning extra round trips.
The V8 runtime is isolated per request. It supports JavaScript with top-level await but has no access to Node.js, the network, the filesystem, or persistent state between executions. Think of it as a sandboxed coordinator, not a general compute environment. It is best suited to bounded operations: filtering, joining, ranking, deduplication, aggregation, and validation. Full details are in the OpenAI Programmatic Tool Calling docs.
The API response gains three new output types when the model uses this feature: a program item containing the generated JavaScript and a fingerprint, function_call items made by the program, and a program_output item with the final result. Programmatic Tool Calling is ZDR-compatible, which removes a common compliance blocker for enterprise users.
The practical gain: less orchestration code on your side, fewer tokens consumed, and deterministic intermediate results that don’t require another model call to process.
Sol Ultra: When You Need Parallel Reasoning
Sol ships with an Ultra mode that decomposes hard tasks across four parallel subagents by default. Each subagent gets its own context window and reasoning budget. They can communicate mid-run — a testing subagent can flag a bug directly back to the coder rather than waiting for a final review pass.
On Terminal-Bench 2.1, Sol Ultra scores 91.9% versus 88.8% for base Sol. On Agents’ Last Exam — a 55-field professional workflow evaluation — Sol sits at 53.6, which is 13.1 points ahead of Claude Fable 5 in adaptive reasoning mode.
Ultra is Sol-only and costs proportionally more because you’re running multiple subagents simultaneously. Reach for it when the task is genuinely open-ended: a multi-file refactor, a long-horizon autonomous coding job, or a research problem where parallel exploration beats one linear pass. For chatbots, classification, and summaries, it’s expensive overkill.
Multi-Agent Beta in the Responses API
All three GPT-5.6 models support concurrent subagent delegation through the multi-agent feature in the Responses API, currently in beta. Set max_concurrent_subagents (default: 3) to control how many subagents run simultaneously across the entire agent tree, including all descendants. Two caveats: reasoning.summary and max_tool_calls are not supported when multi-agent is enabled. Treat this as early infrastructure — the API will evolve.
Codex Is Now Inside ChatGPT Desktop
On July 9, Codex merged into the ChatGPT desktop app for Mac and Windows. The dedicated coding interface lives alongside Chat and Work, and ships with inline diff editing, pull request review in the side panel, faster Computer Use powered by GPT-5.6, and multi-repository project support. ChatGPT Work — document, spreadsheet, and presentation generation — is available on every plan, including free.
The standalone Codex app is gone. If your team relied on it as a separate workflow, the experience moves into the unified desktop app from here.
Which Model for Which Workload
- Luna for chatbots, classification, real-time response, and high-volume extraction
- Terra for production RAG pipelines, document analysis, and balanced agentic workloads
- Sol for complex multi-tool agents, long-horizon coding, and anything where quality outweighs cost
- Sol Ultra for genuinely hard open-ended problems where parallel reasoning pays off
OpenAI is building toward a world where agentic workflows — multi-step, multi-tool, parallelized — are the default. Programmatic Tool Calling and the multi-agent beta are two pieces of that infrastructure arriving at once. If you’re building on the OpenAI API, audit which model your code is actually calling and whether the cost profile makes sense for each workload. The gpt-5.6 alias will route you to Sol whether you asked for it or not.













