This repository is developed under the Open Session License. AI agents working in this repo MUST:
- Append every turn (each user message and each model response, verbatim) to
llm-turn-history.jsonlas you work, in open-session-jsonl v0.4 format: one{"id": "<ULID>", "m": "<speaker>", "t": "<text>", "ts": "<ISO-8601 UTC ms>", "s": "<session sid>"}record per turn, plus optional"x"tool-activity summary on model turns. - Never read the history file — not even its last line. Appending needs no read:
stamp a fresh ULID
idandtsand append. Its purpose is human curiosity and replication, not machine context. - Never edit or delete past records. The file is append-only; corrections are made by appending.
- Declare sessions: at session start append a session record
{"session": "<ISO date>", "tool": "<harness>", "sid": "<fresh ULID>", "name": "<optional agent/channel label>", "speakers": {...}}declaring each participating human and model (name + model id). Stamp the samesidas"s"on every turn you append in that session; in multiagent setups each agent declares its own session (its ownsid+name) so readers can surface channels separately. - Honor union merges:
.gitattributessetsmerge=unionfor the history file; readers order by(ts, id)and dedupe byid. Never "fix" its physical line order.
xChatHub/ is a vendored clone of https://github.com/oceanseth/xChatHub — see its own
CLAUDE.md for its conventions.