Lean message mode
Resolved 💬 5 comments Opened Feb 4, 2026 by alippai Closed Feb 4, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor)
responded on this thread — see the highlighted reply below.
What variant of Codex are you using?
VSCode
What feature would you like to see?
I see in the logs that the messages are quite a bit cluttered. Even without MCP, SKILLS or AGENT.md they are all referenced by default. Same with personality and other unrelated things to coding or the actual task. An empty message is roughly 15000 tokens.
Given it's in an IDE extension, it should be able to craft the message needed successfully finishing the task.
Additional information
_No response_
5 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
AGENT.md is under your direct control, so if you want it to be lean, you can make it lean.
Skills are designed to take up minimal space in the context window. Only their names and descriptions are injected, allowing the model to later read the full skill if needed.
MCPs can take up significant space in the context window. They vary a lot, so you should make sure to install only the MCPs that you want / need.
You can also save context space by using a lower reasoning effort (say, "medium" instead of "high" or "xhigh").
Is that helpful? Do you have something else in mind when you say "lean message mode"?
@etraut-openai thanks for the quick answer. Even if I don't use any of these (MCP, SKILL, AGENTS) the context is 15000 tokens (roughly 5% of the useful input) by default.
The scenario is as simple as it can be for testing: with a fresh (VSCode) setup sending a simple
hi!is surprisingly long (checked using proxy). I might be wrong if this is optimal for agents, but I'd assume the initial instructions add a bit of a delay to every message.Much of the initial context comes from the system prompt, which is important for an agent. Since the system prompt is common to all Codex users and is always the same for every subsequent message sent to the server, it's generally cached. So it's not really that expensive.
If you're interested in more details about how this works, I recommend reading this blog post that we published last week. It contains a bunch of technical details about token caching and context window management.
@etraut-openai that's a great post, thanks. The
usermessage (AGENTS and SKILLS) and unusable functions (why listing MCP functions if it's empty) are comparable in length with the system prompt.I understand this is not planned and I guess the above will improve with new models which will be trained more instead of having examples of wrong plans in the prompt.
Thanks for your detailed answers and for the great product!