Pack Light, CarryOn: Building Object-Oriented Context for Long-Horizon Agents
Organizations: University of California San Diego
Abstract
Long-horizon agents accumulate progress in persistent task state, yet repeatedly process interaction histories describing how that progress was achieved. This raises a natural question: can long-horizon context instead be organized around reusable progress rather than the history that produced it? In this paper, we introduce CarryOn, an object-oriented context runtime that organizes continuation around reusable task objects. Rather than treating compressed histories or reconstructed accounts of progress as the primary basis for continuation, CarryOn builds a context view from continuation carriers, complementary execution context, and a live tail of recent interactions. A core challenge is keeping this reusable basis valid after its surrounding history is retired: how can CarryOn update the basis without reconstructing the full representation at every fold? CarryOn maintains carrier records across folds, revising affected records against bound evidence and applicable environment checks while carrying forward unaffected records and jointly updating execution context. Experiments on OSWorld 2.0 and BrowseComp-Plus show improved gains of 5.8% and 7.0% while reducing total token usage by 51.9% and 22.9%, respectively. Project page: https://ethannju.github.io/carryon
Figures & tables
| Model / thinking effort | Binary (%) | Partial (%) | Cost/task ($) |
| GPT-5.5 (xhigh) ( Yuan et al., 2026 ) | 13.0 | 49.5 | 25.5 |
| Claude Opus 4.8 (max) ( Yuan et al., 2026 ) | 18.5 | 49.3 | 76.1 |
| Claude Sonnet 4.6 (max) ( Yuan et al., 2026 ) | 8.3 | 41.5 | 22.3 |
| Claude Sonnet 4.6 (medium) ( Yuan et al., 2026 ) | 9.3 | 33.9 | 14.4 |
| MiniMax M3 (enabled) ( Yuan et al., 2026 ) | 4.6 | 22.3 | 2.4 |
| Kimi 2.6 (enabled) ( Yuan et al., 2026 ) | 4.6 | 22.1 | 6.6 |
| OSWorld 2.0 | BrowseComp-Plus | |||
|---|---|---|---|---|
| Metric | Baseline | CarryOn | Baseline | CarryOn |
| Agent tokens (M) | 40.10 | 18.61 53.6% | 1.56 | 1.17 24.6% |
| Runtime tokens (M) | – | 0.69 | – | 0.03 |
| Total tokens (M) | 40.10 | 19.30 51.9% | 1.56 | 1.20 22.9% |
| Agent cost ($) | 36.83 | 20.51 44.3% | 1.89 | 1.62 14.4% |
| Runtime cost ($) | – | 3.11 | – | 0.14 |
| Model | Retriever | Accuracy (%) |
| OpenAI GPT-5 ( Chen et al., 2025 ) | BM25 | 52.00 |
| OpenAI o3 ( Chen et al., 2025 ) | BM25 | 50.00 |
| OpenAI GPT-OSS-120B ( OpenAI et al., 2025 ) | BM25 | 41.00 |
| Claude Opus 4.7 | BM25 | 49.00 |
| Claude Opus 4.7 + CarryOn | BM25 | 56.00 |
| Method | Text Length (k chars) | Binary (%) | Partial (%) |
|---|---|---|---|
| Baseline | – | 22.50 | 50.32 |
| Sliding Window | 12.08 | 15.00 | 37.41 |
| Generic Summary (GS) | 17.60 | 15.00 | 44.94 |
| CarryOn-Guided Summary (CGS) | 23.94 | 20.00 | 50.93 |
| CarryOn (ours) | 21.54 | 22.50 | 55.93 |
| Method | Agent Calls | Cost (\downarrow$ | Binary (%) | Partial (%) |
|---|---|---|---|---|
| w/o Execution Context | 274.33 | 18.33 | 17.50 | 44.00 |
| w/o Continuation Carriers | 349.45 | 25.14 | 25.00 | 44.62 |
| CarryOn (ours) | 282.25 | 20.55 | 22.50 | 55.93 |
Appendix figures & tables9 assets
Supplementary material from the paper’s appendix.
Appendix
| Check | Observation |
|---|---|
| File existence | Whether the file is present at its bound path. |
| Change from initial state | Whether the file-content hash differs from its registered initial snapshot. |
| File size | Whether the file is empty or nonempty. |
| Document structure | Whether a docx , pptx , or xlsx file has a valid document container. |
| Document differences | Changes in document text units, added or removed parts, and placeholder-like content. |
| Instruction text matching | Presence or absence of a text span copied from the public task instruction. |
| Setting | OSWorld 2.0 | BrowseComp-Plus |
|---|---|---|
| Agent execution budget | 500 steps | 60 turns |
| Agent output limit | 16,000 | 32,000 |
| Tracker output limit | 2,048 | 8,192 |
| Compiler output limit | 8,192 | 8,192 |
| Compilation requests per scan | 4 | 4 |
| Token category | Price ($/M tokens) |
|---|---|
| Uncached input | 5.00 |
| Cache read | 0.50 |
| Cache write (5 minutes) | 6.25 |
| Cache write (1 hour) | 10.00 |
| Output | 25.00 |
| Step | Recorded state or agent statement | Action |
|---|---|---|
| 203 | The agent reports that all four external authors have been entered. | Continues through the form. |
| 205 | Publication metadata is entered alongside the author list. | Types the NeurIPS conference dates. |
| F4 after 240 | Carrier: entered authors and publication metadata. EC: classify authors by affiliation at publication time. | Installs the updated context view. |
| 247 | Reviews the existing author classifications against the guidelines. | Presses Escape after the review. |
| 249 | The publishing status, peer-review status, and attached PDF remain in the form. | Returns to the form without re-entering the authors. |
| 250 | The existing form is ready for submission. | Clicks Save & Submit; the page confirms successful submission. |
| Step | Recorded state or agent statement | Action |
| CarryOn | ||
| 30 | Identifies all 15 catalogue items and their prices, then develops a prize-distribution plan. | Closes the catalogue viewer. |
| F2 after 57 | Carrier: item-price mapping and chosen tier assignments. EC: enter the third-prize total, then complete the participation tier. | Both records remain visible to the agent. |
| 58 | Continues entering the planned third-prize total. | Types 125 in the total field. |
| 60 | Moves on to the planned participation-prize items. | Selects Chocolate Box. |
| w/o Carrier | ||
| System prompt |
| You are the Carrier Tracker and Readiness Judge of a Context Runtime for a |
| computer-use agent. You observe the agent’s interaction stream step by step and |
| hold TWO equally weighted duties: |
| DUTY A — LEDGER: maintain a sparse identity ledger of the continuation carriers |
| the agent is producing (the candidates). |
| Environment objects |
| You are the TYPED ENVIRONMENT CARRIER AND RESIDUAL-EC COMPILER of a Context |
| Runtime. A machine Grounder has authorized one ordered vector of external_object |
| and/or situated_state Candidates. Author exactly those typed carriers plus a |
| compact residual execution context that, together, can replace the public Live |
| Tail being folded. |
| System prompt |
| Read the whole conversation so far carefully — every earlier message in order, |
| and the previous summary if one is present — and summarize it so that the |
| assistant can continue working on the task from this summary together with the |
| most recent messages. Be thorough and go into detail: work through the history |
| from beginning to end and cover what actually happened, rather than writing a |
| short or high-level gist. Output only the summary text, with no tool calls. Aim |
| System prompt |
| You maintain a detailed, self-contained continuation summary for an assistant |
| working on a long-running task. The assistant will receive your updated summary |
| together with a retained tail of recent native messages and available |
| observations. Much of the earlier conversation may no longer be directly |
| available after this update. |
LLM Context Management
Large language model context management studies how to select, compress, retrieve, and organize information within bounded model inputs.
See all 246 papers