The `start` frame and the reconnect baseline attempt carried a wall-clock `startedTime` that no Host or Client consumer read: the Host accumulator and the Client reconciler copied it into their attempt maps and nothing looked at it again. Presentation frames now carry only the coordinates consumers use (attempt, revision, turn, step, chunk index, and v1 seq provenance); the type-equivalence block, event graph, READMEs, and the live-stream Agent Note follow the type.
description, kind
| description | kind |
|---|---|
| The core group map: the session log, system-prompt assembly, tool registry, agent vocabulary, and default loop that form the product API spine. | package-group |
packages/core
English | 中文
Summary
The core group provides the product API spine of the DeepSeek Harness: an append-only session log, system-prompt assembly, a tool registry, the Agent handle, and the concrete loop that drives them. Every composition boots these packages, and plugins and consumers build against their stable contracts. A turn flows through all of them — the loop claims a prompt, opens a turn on the session log, assembles the request through system-prompt, streams the model response, dispatches tool calls through the registry, and appends every model-visible fact back to the log. Choose this group when you build an agent or extend one; the default product composition is dsh-base.
Table of Contents
Packages
| Package | Role | ctx key |
|---|---|---|
scope/ |
Scoped registration and event routing that isolate one agent's contributions | library — no ctx key |
session/ |
The append-only session event log every agent's history derives from | ctx.sessions |
system-prompt/ |
System-prompt assembly from ordered sections, tool schemas, and variables | ctx.systemPrompt |
tools/ |
The tool registry and guarded execution pipeline the loop dispatches through | ctx.tools |
agent-tool-presentation/ |
Per-agent tool-presentation selector for presets | no ctx key |
agent/ |
The Agent handle plugins program against, plus its live registry and events |
ctx.agents |
agent-default-model/ |
The deployment default model selection entry points apply to fresh agents | ctx.agentDefaultModel |
agent-loop/ |
The default agent driver: creates agents and runs the turn and step lifecycle | ctx.agentLoop |
scope supplies the shared scoping primitive; agent owns the public Agent contract, while agent-loop is its default implementation, so extension plugins depend on agent and the driver stays swappable. agent-default-model owns the deployment selection an entry point applies when a session has none of its own. Runnable compositions live under packages/bundle; this group owns only the swappable spine pieces.
Related documentation
- Core subsystem — the package-by-package loop map and the
Agenthandle contracts. - Session subsystem — the session event vocabulary and derived history.
- System-prompt subsystem — prompt section, dynamic context, and tool-schema types.
- Tools subsystem — the tool execution pipeline and presentation vocabulary.
- Scoped registration subsystem — the scoped-layer primitive these registries build on.
- Architecture — the turn flow and where new behavior goes.
- Base bundle — the default product composition.
- SDK minimal bundle — a complete standalone composition with a deliberately smaller feature set.
Dev Note
Working context for maintainers — click to expand
None.