Files
deepseek-harness/packages/context
ZiyaandZiyaZhang 114da79e42 fix(agent-instructions): budget the user-global and project chains separately (#6400)
* fix(agent-instructions): budget the user-global and project chains separately

The user-global and project instruction files shared one maxBytes and the user-global files were the broadest, so a large project chain omitted them first. Each chain now renders under maxBytes on its own and the results share one system-reminder frame: unchanged output when everything fits or one chain is empty, at most twice maxBytes otherwise. The project chain keeps its omit-broadest-first, truncate-last rule; reconciliation batches follow the same split; the maxBytes key and the baseline identity are unchanged.

Tests cover the fast paths, both chains fitting only separately, each chain over its own budget, the 2 × maxBytes boundary at exact and tiny limits, multibyte content, reconciliation batches, and a resumed single-budget baseline receiving the user-global file as one transition. The agent-instructions-budget snapshot is refreshed and agent-instructions-budget-chains is added. README, Config.maxBytes JSDoc, the configuration catalog, a new Agent Note, and an upgrade guide state the per-chain bound.

* fix(agent-instructions): keep loaded order in merged frames and note the unshared chain budget

A merged frame now lists sections, omissions and truncations in the loaded order, so a reconciliation batch renders its items in one order whether or not it fits a single budget. The guard comment states only the invariant and points to the Agent Note; the intro selection states its rule. The README names the unshared budget between chains.

---------

Co-authored-by: ZiyaZhang <[email protected]>
2026-10-18 00:45:39 -07:00
..
2026-10-17 15:10:31 +08:00
2026-10-17 15:10:31 +08:00

description, kind
description kind
The context group map: request-context plugins that add durable, model-visible context without defining tools, for users and maintainers navigating the group. package-group

context/ — Request-context plugins

English | 中文

Summary

The context group provides plugins that add model-visible context to each request without defining any tool: workspace instruction files become guidance, @file mentions offer path completion, other sessions can be referenced as bounded snapshots, and the model can see the current time and the agent's tmux location. Only agent-instructions (dsh-base) ships mounted by default; the rest are opt-in. Context is durable: injected instructions and references enter session history as user-role messages, so they persist, replay, and compact like other conversation content. This page maps the group; each package README owns the per-package contract.

Table of Contents


Packages

Package Role ctx key
agent-instructions/ Loads AGENTS.md/CLAUDE.md workspace instructions into context and refreshes them after file edits —
session-reference/ References other sessions: mention one and its bounded read-only snapshot becomes context ctx.sessionReferenceResolver
file-reference/ @file mention discovery and the shared mention grammar for host-backed UIs ctx.fileReferences
file-reference-local/ Local-workspace completion provider for @file mentions —
time-context/ Current time, browser zone, and elapsed time per step —
tmux-context/ The agent's tmux session, window, and pane location —
harness-dev-context/ The harness checkout and Web GUI URL as runtime context, keeping the system prompt stable across processes —


Dev Note

Working context for maintainers — click to expand

None.