Reference Analysis

Agent Continuity

Harnesses for Long-Running Sessions

December 2025 · Agent Architecture · Heidegger, Anthropic

╔══════════════════════════════════════════════════════════════════╗
║  AGENT CONTINUITY                                                ║
║                                                                  ║
║  Session 1        Session 2        Session 3        Session N    ║
║  ┌────────┐       ┌────────┐       ┌────────┐       ┌────────┐   ║
║  │ Agent  │  ──►  │ Agent  │  ──►  │ Agent  │  ──►  │ Agent  │   ║
║  └───┬────┘       └───┬────┘       └───┬────┘       └───┬────┘   ║
║      │                │                │                │        ║
║      ▼                ▼                ▼                ▼        ║
║  ╔═══════════════════════════════════════════════════════════╗   ║
║  ║  progress.txt  │  features.json  │  git log  │  init.sh   ║   ║
║  ╚═══════════════════════════════════════════════════════════╝   ║
║                                                                  ║
║  "Artifacts enable re-entry into the hermeneutic circle"         ║
╚══════════════════════════════════════════════════════════════════╝
			

Source

Anthropic Engineering: Effective Harnesses for Long-Running Agents

The Problem

Long-running agents lose context across sessions. Each new context window is "an engineer arriving with no memory of what happened."

When context exhausts, agents experience what Heidegger calls Unzuhandenheit— the tool becomes conspicuous, workflow breaks. The hammer that was invisible during hammering suddenly demands attention because it has broken.

Core Patterns

1. Progress File

Persistent text file documenting prior work. Updated at session end.

claude-progress.txt
├── What was completed
├── What failed and why
├── What to do next
└── Known issues

CREATE SOMETHING equivalent: CLAUDE.md + conversation summaries

2. Initialization Script

Executable setup that any new session can run to restore working state.

# init.sh
cd /project
npm install
npm run dev &
echo "Ready"

CREATE SOMETHING equivalent: CLAUDE.md development commands section

3. Structured Feature List

JSON with explicit status tracking. Model updates only status fields.

{
  "features": [
    {
      "id": "auth-login",
      "description": "User login",
      "passes": false
    }
  ]
}

CREATE SOMETHING equivalent: TodoWrite tool

4. Session Startup Protocol

Every session begins identically:

  1. Run pwd to confirm directory
  2. Read git log and progress files
  3. Select highest-priority incomplete feature
  4. Run E2E tests before implementing

CREATE SOMETHING equivalent: Claude hooks (potential)

5. One Feature Per Session

Constraint prevents scope creep. Each session:

  • Picks one feature
  • Implements it
  • Tests it
  • Commits with descriptive message
  • Updates progress file

CREATE SOMETHING equivalent: Atomic git commits

Failure Modes & Solutions

ProblemSolution
Premature completion claimsComprehensive feature list with explicit pass/fail
Lost setup knowledgeExecutable init.sh
Undocumented bugsGit commits + progress notes
Doing too much at onceOne feature per session constraint

Hermeneutic Frame

The harness doesn't solve continuity—it enables re-entry into the hermeneutic circle. Each session is a new interpreter. The artifacts (progress files, git history, feature lists) are the shared understanding that allows interpretation to continue.

Without Harness

Unzuhandenheit (Present-at-hand)

Agent arrives to broken state. Must reconstruct context from scratch. Tool becomes object of attention rather than transparent medium.

With Harness

Zuhandenheit (Ready-to-hand)

Agent re-enters prepared situation. Artifacts provide fore-structure. Can immediately engage with the work rather than the setup.

Integration with CREATE SOMETHING

Already Present

  • CLAUDE.md as initialization context
  • .claude/memory/ for domain knowledge
  • TodoWrite for task tracking
  • Atomic git commits

To Adopt

  • Explicit session startup sequence (could be a hook)
  • Structured feature JSON for complex multi-session work
  • Browser automation prompting for E2E testing

Through the Subtractive Triad

DRY (Implementation)

"Have I built this before?"

→ Yes. CLAUDE.md, .claude/memory/, TodoWrite already exist. Don't rebuild—extend.

Rams (Artifact)

"Does each harness element earn its existence?"

→ Progress file: Yes—captures what's lost at context boundary. Feature JSON: Maybe—TodoWrite may suffice. Init script: Yes—reproducible state setup.

Heidegger (System)

"Does this serve the whole?"

→ Agent continuity serves all CREATE SOMETHING properties. A harness that works for .io benefits .space, .agency, and .ltd equally.

Key Insight

The harness is not scaffolding to be removed. It is the dwelling that enables continuous work. Just as CLAUDE.md is not documentation but orientation, the progress file is not a log but a threshold— the place where one session hands off to the next.