2d44457b96e810eccdc5fff63b708df9caacff08
Summaries displayed s.created_at (set to now() at summarize time), so every imported gist read 2026-06-16. Derive the actual session date from the earliest exchange timestamp (MIN(created_at) per session — the preserved original date, same source the era rollups use) via a correlated subquery in the summary readers. New Summary.session_started_at field; chat shows it (falling back to created_at). No schema change / backfill needed — always correct from source. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Lyra
A persistent, autonomous AI assistant. From-scratch rewrite of an earlier attempt.
The design thinking that survives the rewrite lives in docs/ — start with docs/ARCH_v0-6-1.md. The previous implementation is preserved on the archive branch.
Status
Pre-MVP. Building toward the smallest useful version: chat with persistent memory across sessions.
Setup
uv sync
cp .env.example .env
# fill in ANTHROPIC_API_KEY and point LOCAL_BASE_URL at your Ollama
Architecture
The long-term target is the cognitive split in docs/ARCH_v0-6-1.md — Inner Self as the seat of consciousness, Executive for hard reasoning, Cortex Chat for drafting, Persona for voice. The MVP implements only the chat + memory baseline. Cognitive layers come back one at a time.
Description
Languages
HTML
46.7%
Python
32.1%
CSS
21.2%