Trajectory

Every Run, Fully Traceable

DeepSeek Harness (harness.vin) Trajectory records a complete append-only event stream for every session: system prompts, chains of thought, tool calls and results, subagent scheduling, and every context injection. Resume, fork, search, and replay all share the same event stream — keeping agent execution transparent and traceable.

How Trajectory Records a Run

01

User Input

The agent receives the user request and starts the task. The event stream records the request content and context injections.

02

LLM Reasoning

The large language model analyzes the request and produces an execution plan. The event stream records assembled model requests and chains of thought.

03

Tool Calls

The agent invokes tools such as code execution or file operations. The event stream records tool names, inputs, and results.

04

Subagent Scheduling

The agent may delegate work to subagents. The event stream records every subagent scheduling and context injection.

05

Final Output

The agent completes the task and returns results. The whole session can be resumed, forked, searched, and replayed.

Core Capabilities

Complete Run Recording

Every session records a complete append-only event stream: system prompts, chains of thought, tool calls and results, subagent scheduling, and every context injection.

Run Replay

Replay agent runs. Resume, fork, search, and replay all operate on the same event stream, making issue localization direct.

Inspect by Source

Every record in the event stream can be inspected by source: model requests, tool calls, subagent scheduling, and context injections — each categorized for quick lookup.

Fork & Resume

Resume or fork any run into a new session: continue with the existing context, or explore a different execution path.

JSONL on Disk

Session logs persist as uncompressed JSONL in the session directory, including assembled model requests and tool calls — ready for offline analysis and archiving.

Single Event Stream

Recording, resuming, forking, searching, and replaying all build on the same event stream, so every view stays consistent.

Trajectory Records

Session logs persist as uncompressed JSONL in the session directory — one line per record in the event stream:

# Session logs are saved in the session directory (uncompressed JSONL)
# Each line holds an assembled model request or tool call
$ cat sessions/example-001/*.jsonl

{"type":"system_prompt","content":"You are a helpful software engineer assistant."}
{"type":"llm_request","model":"deepseek-v4-flash","messages":[...]}
{"type":"tool_call","tool":"bash","input":"pytest -q"}
{"type":"tool_result","tool":"bash","output":"3 passed in 1.2s"}
{"type":"context_injection","source":"plugin","content":"..."}

Related Docs

FAQ

What is DeepSeek Harness Trajectory?

Trajectory records a complete append-only event stream for every session: system prompts, chains of thought, tool calls and results, subagent scheduling, and every context injection.

How do I view an agent's run trajectory?

Inspect the event stream in the Web UI's trajectory view, or read the JSONL logs in the session directory directly — they include assembled model requests and tool calls.

Can trajectories be replayed?

Yes. Resume, fork, search, and replay all operate on the same event stream.

Where is trajectory data stored?

Session logs persist as uncompressed JSONL in the session directory (session_root), ready for offline analysis and archiving.

Join the DSH plugin ecosystem

DeepSeek Harness remains in developer preview and is still being tested by developers building agent harnesses. Its core plugins and APIs will continue to evolve. We look forward to exploring the limits of intelligence with developers worldwide using open-source infrastructure that is reusable and composable.