2.6 KiB
description, kind
| description | kind |
|---|---|
| Package map for the tool-output spill capability family: what the storage service, the local backend, and the result policy each provide. | package-group |
spill/ — tool-output spill capability family
English | 中文
Summary
The spill/ group keeps oversized tool output out of the model's context without losing it: when a tool result exceeds a deployment's byte cap, the full text is saved to a spill artifact and the model sees a bounded preview plus a locator it can read or search later. The family splits into three packages — the storage service in spill/, the local filesystem backend in spill-local/, and the result policy in spill-policy/ that decides when a final tool result is too large. Spilling is opt-in and best-effort: the policy acts only when maxInlineBytes is configured, and a storage failure leaves the original result visible. The group owns storage and result replacement only; preview mechanics live in dsh-output-retention, and provider resource caps remain separate.
Table of Contents
Packages
Three packages play the spill roles; the subsystem reference owns the exhaustive vocabulary and contracts.
| Package | Role | ctx key |
|---|---|---|
spill/ |
Storage service: saves oversized tool text and returns a locator plus retrieval guidance | ctx.spillStore |
spill-local/ |
Saves spilled text to private session-scoped files on this machine | registers on ctx.spillStore |
spill-policy/ |
Replaces oversized plain-text tool results with a preview and locator | listens on ctx.tools |
Related documentation
Start with the subsystem reference for the shared vocabulary, then the design decision and its durable-log extension.
- Spill subsystem — the
SaveTextSpill/SpillRefvocabulary, ownership, and backend relationships. - Tool output spill decision — the capability boundary between storage, retention, and tool-owned output handling.
- Code dispatch-log spill decision — why the durable copy of
run_codesub-call results is bounded too.
Dev Note
Working context for maintainers — click to expand
None.