Skip to main content

The situation

Agents pay for every byte they read, then pay again on every turn, because models are stateless and the context is resent each call. Scattered data makes it worse: the agent lists several silos, opens the wrong files, and drags them through the whole conversation.

What OneBucket changes

Ask first, fetch once. Metadata answers where an object is and how big it is; only the matching object enters context. Large files and heavy work stay outside the model and only the result comes back. Hot data is pre-positioned for the next turn. An agent asks one question; OneBucket lists and inspects metadata first, then fetches the one matching object from on-prem while AWS S3 and GCS are listed but not opened

The pattern

  1. One lookup for discovery. One namespace and one MCP server, so finding data is a single list with a prefix and paging, not a search across silos.
  2. Metadata before content. head returns size, type and timestamps without the body. locate returns where the object lives.
  3. Fetch only the match. One get for the object that answers the question. Inline reads are capped; above the cap, presign returns a URL so code can process the file outside the context window and hand back only the result.
  4. Pre-position for the next turn. prefetch moves hot data next to where the next step runs.
The saving compounds: every wrong file an agent avoids is a file it does not carry through every later turn. The right way to size it is to measure it on one of your own agent workflows.