Skip to content
Development preview · v0.0.1Windows x64 · Source-grounded guide

Conversations, streaming and Stop

The composer becomes available after the selected local model is loaded and the host action has settled. New chat starts a separate conversation. The model identity in the header reflects the actual loaded artifact, not a hosted-provider alias.

The current chat supports text messages. File attachments, image input, document retrieval, tools and agent execution are not native 0.0.1 features. Some inspected models may contain additional capabilities, but the native UI and runtime path must qualify each modality before exposing it.

The host emits request-correlated chunks containing text, optional reasoning, terminal completion or an error. Reasoning is displayed separately when the engine supplies it. A reasoning panel is not proof that the answer is correct, and a stream that has begun is not yet a completed response.

The native engineering preview displays measurements beneath each assistant response: decode tok/s, output tokens, input tokens, elapsed time and the reported stop reason. A Live indicator distinguishes in-progress values. Cached input tokens, time to first token (TTFT) and prompt-processing time appear when the engine reports them. The actual installed Strata profile passed live/final DOM comparisons and identical saved/reopened stats. Other runtime/hardware combinations still require their own evidence.

Live speed uses the backend’s observed token interval; final speed uses its native decode measurement. Output counts can include generated reasoning, control tokens and EOS where counted by the runtime. TTFT can therefore precede the first visible answer text. Whole-request elapsed time may also include prompt processing and reasoning; it is not decode-only latency.

Unknown counters stay unknown: the UI does not count text fragments, characters or words as model tokens, invent speculative-acceptance rates or use elapsed wall time as a decode timer. Older conversations without recorded measurements say Token metrics unavailable. Final response stats are stored with that assistant message; starting a new response does not replace the preceding answer’s metrics. Prompt replay strips measurement fields before sending roles/text to the engine.

Do not compare one visible duration with another product’s decode-only tokens/second. See benchmarking for controlled measurements.

Stop generation aborts the active generation request. Wait for it to settle before starting another operation. The installed-build smoke test stopped a generation and then completed a fresh arithmetic response, which establishes recovery for that tested combination.

Stopping generation is different from canceling model load or terminating a service. The app owns only its private runtime and must not stop a separate LM Studio, Lemonade or other service. An error should retain its stage and cause; repeatedly starting overlapping requests is not a recovery strategy.

Completed conversations are saved as local JSON in the user profile and shown in recent chats. Settings and conversation files are not encrypted by the app. Protect the Windows account and profile backups accordingly. Current storage retains at most 100 conversations; it is not an unlimited archival system.

History persistence was checked across an actual process restart. That does not make the engine’s KV cache persistent across restarts: conversation messages can be replayed while runtime allocations are rebuilt. Native rename/delete/export, synchronization and durable agent-run histories require separate implementation.

For long sessions, start a new chat when appropriate. Automatic compaction and a configurable system-prompt editor are planned, not hidden background behavior in this release.