session/

August 12, 2026 · View on GitHub

English | 中文

The durable family around core/session's live in-memory service: the persistence seam with its storage backends and checkpoint policy, the projection seam that serves whole log-derived values, log-backed titles, and outbound session telemetry. All product packages. session-query/ remains a sibling group: the read/tool surface is consumed independently of persistence internals.

Persistence

Durable session persistence, semantic checkpoint policy, and the shipped storage backends.

PackageRolectx key
session-persistence/Defines the persistence service and shared write coordinationctx.sessionPersistence
session-checkpoint-policy/Applies semantic durability checkpointswraps ctx.llm and ctx.tools
session-persistence-jsonl/Persists sessions in JSONL filesregisters on ctx.sessionPersistence
session-persistence-sqlite/Persists sessions in SQLiteregisters on ctx.sessionPersistence

The session-persistence decision records the persistence design.

Projection

Serves current, log-derived per-session state to client carriers.

PackageRolectx key
session-projection/Defines and drives session projection unitsctx.sessionProjections
session-projection-cache/Persists and restores projection checkpointsctx.sessionProjectionCache
session-stats/Serves whole-log conversation counts and wall times (sessionStats unit)registers on ctx.sessionProjections

Titles

Derives durable session titles from the session log, with an optional model-backed provider.

PackageRolectx key
session-title/Owns title state, fallback behavior, provider registration, and refreshctx.sessionTitle
session-title-llm/Provides shared model-backed title generation
session-title-first-prompt-llm/Titles a session from its first eligible human messageregisters on ctx.sessionTitle
session-title-all-prompts-llm/Titles a session from all eligible human messagesregisters on ctx.sessionTitle

Deployments may register one model-backed provider; the service retains a deterministic fallback when none is present.

SessionTelemetryBackend

Projects session activity into outbound telemetry and delegates delivery to a configured reporting backend. The telemetry decision records the reporting boundary; the mode decision records immediate, feedback-gated, and disabled delivery.

PackageRole
session-telemetry/Defines capture, redaction, projection, and live or on-demand backend delivery.
session-telemetry-otel/Delivers telemetry through OpenTelemetry logs in FULL, FEEDBACK_ONLY, or DISABLED mode.

The subsystem references: persistence.md, session-projection.md, session-title.md, and session-telemetry.md. Only one title provider may register at a time; the demo spine mounts the fallback service and leaves both model providers out of default composition.