Highlights
- Major investment in desktop UX, especially the Create Character flow.
- Significant expansion of the prompt system, including a new Prompt Structure Viewer and new runtime prompt-injection controls.
- Broad chat stability/performance hardening and large dynamic-memory improvements.
- Continued embedding/ONNX runtime reliability work across desktop, Android, and Windows.
- Expanded provider/model ecosystem (including NVIDIA NIM) and safer import behavior.
Desktop UI and Character Creation Redesign
- Added responsive desktop layouts across character creation steps.
- Reworked character creation step order to improve setup flow.
- Redesigned character “extras” inputs for clearer, faster editing.
- Improved character create/edit with fallback-model selector support.
- Fixed UX friction in character flows, including create-step ordering and navigation consistency.
- Added metadata handling improvements for imported cards and avatar URL behavior.
- Added lorebook import support in character creation workflows.
Prompt System Upgrades
- Added Prompt Structure Viewer in the system prompt editor to preview message composition.
- Added conditional prompt injection mode.
- Added interval prompt injection mode.
- Added runtime option to condense prompts into a single system message.
- Fixed prompt import behavior to correctly respect
prompt_order. - Fixed buggy drag-and-drop reorder behavior in prompt entry editor.
- Improved prompt-related import UX and editor predictability.
Chat, Group Chat, and UI
- Added shared
ChatLayoutfor persistent background behavior across chat sub-routes. - Added shared
GroupChatLayoutwith lifted data loading. - Added branch-to-group-chat action from message actions.
- Added lorebook-usage visibility per message.
- Added safe-area padding fixes for chat footer and bottom menu.
- Removed unwanted dark overlay above background images.
- Fixed chat search back-button sizing and related UI polish.
- Improved session back-stack handling across settings/history navigation.
- Fixed persona selection conflicts during scroll interactions.
- Removed duplicate dismiss controls in chat memories error state.
Chat Stability and Performance
- Fixed dynamic-memory listener leak during async chat setup.
- Bounded attachment cache growth in session hooks.
- Ignored stale attachment loads after chat state transitions.
- Fixed cleanup of jump-to-message RAF/timeout resources.
- Improved message memo checks with derived display props.
- Reduced attachment diff cost in chat memoization.
- Added fallback model retry logic with usage attribution.
- Disabled fallback attempts when no fallback model is configured.
- Added swap-places mode with role-aware generation.
- Reverted one streaming animation perf change after validation feedback.
Dynamic Memory System
- Added cursor-delta summarization of new messages.
- Added self-healing cursor behavior after deletes/rewinds.
- Added deduplication by cosine similarity at memory creation.
- Added adaptive decay rate based on access count.
- Added category tagging for memories.
- Added hybrid retrieval using similarity + recency + access frequency.
- Added configurable retrieval selection limit.
- Added smart and cosine retrieval strategies.
- Added memory panel category filter chips.
- Added memory activity log redesign with timeline/collapsible UX.
- Auto-refresh of memory views after dynamic-memory completion.
- Enforced gating behavior for dynamic-memory manual mode.
Embeddings, ONNX Runtime, and Android
- Fixed ONNX runtime bundling and dylib path handling.
- Fixed dev rebuild-loop behavior tied to ONNX runtime integration.
- Pinned/standardized dylib preloading and path behavior.
- Ensured Android ONNX resource directory and packaging consistency.
- Improved desktop guards around ONNX runtime initialization.
- Improved handling of ORT init result variants/booleans.
- Added pre-step for embedding download and runtime ORT fetch.
- Extracted Windows DLL dependencies for ONNX runtime packaging.
- Locked ORT version to
2.0.0-rc.10. - Added embedding model v3 support and multi-version management.
- Added experimental keep-loaded embedding runtime with cache reset on version switch.
- Fixed Android post-regenerate WebView freeze and tracing consistency.
- Made Android ONNX runtime init deterministic.
Providers, Models, Endpoints, and Security
- Added NVIDIA NIM provider.
- Added custom-provider tool-choice mode configurability.
- Added OpenRouter free-model toggle in model selector.
- Improved model selector search and suggestions.
- Added custom endpoint config persistence and auth/model-fetch mapping controls.
- Hid
llama.cppprovider on mobile onboarding/settings where unsupported. - Added security toggle to disable remote avatar downloads on card import.
- Disabled Chutes API key validation where it blocked onboarding flows.
Lorebooks, Import/Export, and Content Controls
- Added world-info import/export and creation import action.
- Added character card metadata support and lorebook import path improvements.
- Added new “pure mode” content filtering system.
Usage, Sync, and Reliability
- Added app-time tracking backend support and analytics view.
- Enforced host-authoritative manifest diff in sync logic.
- Improved DB reset error surfacing and reset-in-place behavior.
Tooling, CI, and Maintenance
- Migrated workflows to Blacksmith.
- Switched workflows to Bun and refreshed README/tooling docs.
- Added
libclangdependency for Windows CI builds. - Removed duplicate Cargo libraries and cleaned project config.
- Added
.gitignoreupdates and docs-folder ignore adjustments. - Fixed Tailwind warning noise in UI build paths.
What's Changed
- .github/workflows: Migrate workflows to Blacksmith runners by @blacksmith-sh[bot] in #8
- Lock ort dependency to exact version 2.0.0-rc.10 by @Copilot in #9
New Contributors
- @blacksmith-sh[bot] made their first contribution in #8
Full Changelog: 1.1.0...1.2.0