What is built in
Searching your past chats exists as a capability behind an explicit consent, but that consent is not exposed anywhere in the product yet, so no chat can use it today.
Tools and reasoning are not metered. There is no tool quota and no tool meter on any plan, so a turn that needs six searches and two Python runs costs you nothing extra in allowances.
When a tool is not offered
A tool is only offered when it can actually run. Web search appears only where a search stack is configured. Python appears only where an executor exists. Business metrics appear only once a metrics source is connected. Where one of those is missing, the tool is not registered at all. You do not get a broken tool or an error row, you simply never see it offered. If you expected a capability and the model says it cannot do it, the honest answer is usually that the tool is not available on your deployment rather than that the model refused.What happens to a tool result
Every result is handled the same way, whichever tool produced it, and in this order.1
Anything that looks like a secret is removed
Before the model reads it.
2
A long result is shortened
It is truncated from the middle, keeping the beginning and the end, at around 24,000 characters.
3
A very long result is stored instead
Past roughly 64,000 characters the result never enters the conversation. It is stored as an artifact, the model is handed a short stub and an id, and it gets two tools for working with it: it can read the artifact and search it. That is how a huge page or a huge query result stays usable without flooding the thread.
4
Everything from outside is wrapped as untrusted content
Text inside a web page or a document cannot act as an instruction to the model.
The Python sandbox
Chat’s Python tool is a snippet sandbox, not a build machine. It has 256 MiB of memory, no network, and a few minutes of wall clock. It is the right tool for arithmetic, a data frame, a plot or checking a piece of code, and the wrong one for installing packages or building a project. Two practical rules:- Print what you want to see. The last value is discarded, so a bare expression on the final line gets you nothing.
- Files the run writes to its
outputs/folder are collected into your Library when the run finishes. Direct files only, at most 10 files and 10 MiB in total. A run that failed collects nothing.
Skills are loaded, not always on
Skills are recipes the model can pull in. It does not carry them all at once: it sees a one-line index of the skills available to it, and fetches the full body of one only when it decides to use it. That is why a skill can change how an answer is written without you naming it in the prompt. Typing/ in the composer lists the skills turned on for Chat.
Tools you add yourself
Everything above is built in. Three more sources of tools are yours to set up, and each has its own page.Connectors
Connect an app and choose whether its tools reach Chat, Bot, or both.
MCP servers
Attach a remote server and its tools join the turn alongside the built-in ones.
Page tools
Tools a web page declares, each one granted or denied by you.
Skills in Chat
The bundled recipes, turning one on, and writing your own.
Related
- How Chat works - how a turn is assembled and how tools enter it.
- Library - where stored results and sandbox outputs end up.
- Deep Research - a research run, which replaces the ordinary tool loop.
- Scheduled tasks - runs that get no tools at all.
- Models and thinking - the chip where thinking and Deep Research are switched.