D DATAFOODING / Sessionlog

SESSIONLOG v0.1 · OPEN SOURCE

Your work should
outlive your
agent.

Keep requests, actions, and results in one durable record. Make the failures you already found useful to the next model, too.

macOS first · Runs locally · No model calls

01 / NATIVE RECORDSJSON · JSONL
01Claude Code↘
02Codex↘
03OpenClaw↘
04Hermes↘
↓
ONE SHARED CONTRACTsessionlog/v1source + events + evidence
↳

Restore the original bytesSHA-256 VERIFIED

↗
Same input → same bytesUnknown fields preservedBefore and after, connected

01 / THE COMMON RECORD

Different logs. One way to read them.

Keep the source intact. Read messages and tool calls through shared fields. These are selected fields from CLI-generated synthetic fixtures.

Claude CodeNATIVE INPUT
{
  "type": "user",
  "uuid": "synthetic-1",
  "sessionId": "synthetic",
  "message": {
    "role": "user",
    "content": "Read the fixture."
  }
}
SessionlogSHARED PROJECTION
{
  "schema": "datafooding.sessionlog/v1",
  "events": [
    {
      "kind": "message",
      "role": "user",
      "authorship": "unverified",
      "blocks": [
        {
          "kind": "text",
          "text": "Read the fixture."
        }
      ]
    }
  ]
}

Source restoration is byte-verified. Cross-harness exports include a loss report and do not guarantee execution can resume.

02 / BEFORE & AFTER

Where it started. What actually changed.

Pair the starting state with final artifacts and verification. Build the evidence you need to turn a session into a repeatable evaluation.

Get the capture skill ↗
01

Capture the start

Dirty Git state, selected files and databases, dependency locks, runtime versions.

sessionlog capture start
02

Bind the outcome to evidence

Changed files, verification commands, exit codes, and output hashes linked to the initial record.

sessionlog capture end --before …

Hashes detect changes; they cannot restore contents. Include selected contents explicitly. Missing state stays visible.

03 / CHECK THE EVIDENCE

Preservation, tested first.

4Harness adapters
16Conversation export pairs
11Local logs round-tripped

Repeated conversion and exact restoration were checked on a bounded local Claude Code and Codex sample. This does not establish compatibility with every version or an RL performance gain. Read the experiment ledger ↗

START WITH ONE SESSION

Let the next run learn from this one.

uv tool install git+https://github.com/Koomook/datafooding-sessionlog.git@v0.1.0

Python 3.11+ · uv · MIT License

Run your first conversion ↗