What the harness does
For one bounded run, the harness:- loads the session
- reads pending session events
- loads the environment and attached resources
- loads session runtime memory
- assembles context
- calls the provider backend
- interprets the loop directive
- appends new session events
- updates session state and runtime memory
- orchestration
- provider runner
- sandbox and tool execution
- session storage
What the harness does not do
The harness does not own:- public scheduling APIs
- shared company truth
- chat routing
- work publication
- reusable environment definitions
Relationship to orchestration
The public orchestration seam is:- should this session be run now
- should a bounded revisit be queued
- what this run means
- which events to append
- whether the session should sleep, reschedule, or pause for action
Relationship to providers
Provider backends such as Codex or Claude are swappable brains behind the harness seam. That means:- provider-specific runners are implementation details
- the harness is the stable runtime contract
- the session model should survive brain swaps
Loop directive
The current harness expects the provider response to resolve into:- plain-text response
- durable summary
- sleep or continue
- optional queued wakes
- optional learnings
- optional custom tool pause
Custom tool pause
The harness can pause a session for a custom tool result. That path works like this:- the agent requests a custom tool
- the harness emits
agent.custom_tool_use - the session moves to
requires_action - the runtime waits for
user.custom_tool_result - the next wake resumes the same session
Runtime memory
The harness writes session-local continuity into:checkpoint.jsonsession-state.mdworking-buffer.md
- scratch state stays local to the session
- reusable lessons survive across sessions
Design rule
If a change is about:- context assembly
- interpreting pending events
- turning one provider result into durable session progress
- public session APIs
- wake scheduling policy
- upper-layer Chat or Work semantics