REPO_STRUCTURE now lists the cli/ directory and refreshes the API
version map to reflect that V2 is current and serves the CLI's read
path (with the full checkpoint schema). docs/API.md replaces the
"do not build against V2" guidance with a clear description of which
prefix is used for what.
Introduce a thin Python CLI that wraps the backend REST API. Seven
commands: space list, space create, state, checkpoint create,
checkpoint show, checkpoint list, checkpoint review. Reads piped
JSON on stdin for checkpoint create, prints a continuation-oriented
markdown brief for state. Supports --json on every command for
structured output.
Fixes a V2 schema drift where the commit response omitted
assumptions and artifacts, so the CLI can read full checkpoints
via the cleaner V2 single-resource endpoints. Updates README,
ARCHITECTURE, and DECISIONS to frame Smriti as a reasoning-state
backend with the chat UI and CLI as two clients of the same core.
Replace the auto-session landing behavior with a resume-focused
overview at /. When returning after a break, the root page now
shows the most recent checkpointed session as a Resume card with
its current objective and last checkpoint summary visible, plus
cards for other recent spaces. New sessions explicitly go through
/sessions/new instead of being created on bare /.
Surface a soft drift hint in the chat header when many turns have
passed since the last checkpoint (turn-count based, not semantic).
Add a Restore action to the checkpoint detail panel as a peer to
Review, so users can act on a checkpoint without leaving the
inspection flow. When review surfaces issues, show an inline
Continue from this checkpoint button so recovery is one click away.
Update README with restore UX, checkpoint review, assumptions,
and artifacts. Add when-to-use guidance. Sharpen problem statement
around drift and recovery. Update ARCHITECTURE with new checkpoint
fields and restore terminology. Add three new decisions to
DECISIONS.md. Document review endpoint and new fields in API docs.
Checkpoints can now hold attached artifacts — text content captured
from chat messages or added manually. Artifacts are included in
prompt context when a checkpoint is active, grounding reasoning in
actual content rather than just summaries. Add capture button on
messages, artifact management in checkpoint modal, and collapsible
artifact display in checkpoint detail.
Separate assumptions from decisions as a first-class checkpoint
field. Add review endpoint that surfaces reasoning consistency
issues: contradictions, hidden assumptions, resolved questions,
and unused entities. Extend draft extraction, prompt context,
and compare diff to include assumptions.
Rename mount/unmount flow to restore/exit restore. Add visual
restore boundary divider in chat timeline. Dim pre-restore turns
to make isolation visually obvious. Show contextual empty state
and one-time hint for restored context.