core/memory+cli: remember session LLM; readline prompts

Store provider_name/model on sessions (SQLite migrate); restore on
resume and persist on create//model//provider. Startup prefers session
selection over re-asking. ask/choose and provider/model pick use
readline with Tab completion when available.
This commit is contained in:
2026-07-15 14:12:10 +08:00
parent cc298c6cd2
commit 64d288a9b1
15 changed files with 349 additions and 53 deletions
+4
View File
@@ -38,7 +38,11 @@ def test_session_export_json_roundtrip() -> None:
created_at=now,
updated_at=now,
messages=messages,
provider_name="local",
model="tiny",
)
assert payload.get("provider") == "local"
assert payload.get("model") == "tiny"
assert isinstance(payload, dict)
raw = encode_session_export_json(payload)
assert "7" in raw