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
+8 -2
View File
@@ -27,8 +27,14 @@ class ScriptedBackend:
def is_interactive(self) -> bool:
return self.interactive
def read_line(self, prompt: str, *, default: str | None = None) -> str:
del prompt
def read_line(
self,
prompt: str,
*,
default: str | None = None,
completions: object = None,
) -> str:
del prompt, completions
if self.lines:
return self.lines.pop(0)
if default is not None: