Chat Modernization Implementation Notes
Overview
The interactive chat now runs through a LangChain graph-backed pipeline with a refreshed CLI experience. Key changes:
storycraftr/cmd/chat.pydrives the session using a renderer, session manager, and colon commands (:help,:status,:session ...).storycraftr/chat/contains reusable UI/service modules (render,session,commands).- Retrieval transparency is provided by listing the sources of the chunks referenced in each turn.
- Conversations autosave and can be restored via named sessions.
- Non-interactive runs (
--prompt) reuse the same rendering primitives for consistent formatting.
Next Steps
- Extend the renderer with streaming output states once streaming is enabled at the LLM layer.
- Add automated snapshot tests for the renderer under multiple terminal widths.
- Layer additional colon commands (
:rerank on/off, dataset selection) as the retrieval controls maturate.