Skip to main content

mem_session_end

Signature

mem.mem_session_end(user_id: str, *, summary: str) -> Session

Closes the active session for user_id with a human-written summary. The closed session is marked is_auto_generated=False (distinguishing it from sessions auto-closed on timeout — see Braess #2).

Parameters

ParámetroTipoRequeridoDescripción
user_idstrOwner of the session to close.
summarystrHuman-written session summary. Must be non-empty (whitespace-only is rejected). Recommended structure: Goal · Discoveries · Accomplished · Next Steps · Relevant Files.

Returns

Session (Pydantic model):

  • id (str) — session identifier.
    • user_id (str)
    • started_at (str, ISO-8601 UTC)
    • ended_at (str, ISO-8601 UTC) — set on close.
    • last_activity_at (str, ISO-8601 UTC)
    • summary (str) — the summary you provided.
    • status (Literal["completed"])
    • is_auto_generated (bool) — always False here.

Raises

  • ValueErrorsummary is empty or whitespace-only.
  • LookupError — no active session exists for user_id (404 in the HTTP layer).

Examples

closed = mem.mem_session_end(
user_id="alice",
summary="Captured Alice's preferred greeting and confirmed the agent will use 'Ali'.",
)

print(closed.id, closed.ended_at)
print(closed.is_auto_generated) # False
tip

If you need to save a checkpoint summary without closing the session, use mem_session_summary instead.

See also