v4.3.0
What's Changed
Prompt templates grow up: Jinja2 logic, richer variables, and in-app reminders
that point you to what's new.
Added
- Jinja2 prompt templates. Prompts now support Jinja2 syntax —
{% if %}/
{% for %}, field access ({{ user.name }}), filters ({{ x | upper }}), and
an@include("path/to/file")macro to inline another file's contents. - New variable types. Alongside plain Text, add JSON variables
(parsed at render into an object you can branch and iterate over; a bare
{{ data }}prints pretty JSON) and File content variables (pick a file
via the native OS picker or type a path; its contents are inlined at run time).
Changed
- The model selector shows its parameter buttons by default and selects the model
name on focus for quicker editing.
Fixed
- External links are restricted to safe URL schemes.
- Root directory creation is confined to the expected location.
- Thread files are written atomically to avoid corruption on interrupted writes.
Performance
- The trace sidebar is lazy-loaded.
- The RPC stream queue is now amortized O(1).
Install
Two editions. Install either, or both — they share the same ~/.llm-space data, so switching keeps your threads and settings.
- LLM Space — uses the system WebView. Small download (~27 MB), light on memory and battery.
- LLM Space Performance — embeds its own rendering engine (~130 MB). Rendering stays consistent across macOS versions, and usually performs better.
Download a DMG below. Existing installs update in place.
Full changelog: https://github.com/deer-flow/llm-space/blob/v4.3.0/CHANGELOG.md