Skip to main content

Changelog

Every improvement, automatically tracked from our commit history.

Subscribe via Atom feed
← Prev Page 7 of 22 Next →
February 21, 2026
minor CoreDesktop Shell

Add cloud-aware chat with conversation history and persistent memory

Desktop 1.50.8 → 1.51.0 | 0049f885
Details

Cloud providers (OpenAI, Anthropic, Gemini) now build full message arrays from

ConversationHistory when present, enabling multi-turn conversations. Anthropic

uses automatic prompt caching (cache_control ephemeral) for multi-turn chats,

reducing repeat input cost to 10% on cache hits. AiPersona gains a richer

cloud system prompt with memory context injection and higher token budgets.

AiMemoryService persists learned user facts to JSON at DataPaths.BaseDir,

capped at 50 entries. AiMemoryExtractor runs a fire-and-forget secondary AI

call after cloud responses to extract memorable facts. The chat VM branches:

local models get the existing minimal prompt path; cloud models get history,

memory, and no aggressive sanitization. Desktop version bumped to 1.51.0.

minor SDK

Add AiChatMessage record and ConversationHistory to AiRequest

SDK 1.50.0 → 1.51.0 | ca666b10
Details

Introduces AiChatMessage (Role + Content) and an optional ConversationHistory

property on AiRequest for multi-turn chat support. Cloud providers can iterate

over the history to build full message arrays while local providers ignore it.

Backward-compatible — defaults to null. SDK version bumped to 1.51.0.

minor Desktop ShellSDK

Convert AI tray from flat card list to conversation chat interface

SDK 1.49.2 → 1.50.0 | Desktop 1.49.6 → 1.50.0 | e1dd9542
Details

Redesign the AI suggestion tray as a chat-style conversation UI with user/assistant

message bubbles. User actions (Summarize, Rewrite) appear as right-aligned user bubbles

with clickable source entity links, followed by left-aligned assistant response bubbles

with loading states, content, and action buttons.

Key changes:

  • Add UserPromptLabel to ContentSuggestionCard SDK model for user bubble text
  • New AiChatMessageViewModel with User/Assistant roles, state management, and actions
  • Refactor AiSuggestionTrayViewModel to use Messages collection instead of Cards
  • Add free-form chat input with AiSuggestionTrayViewModel.Chat.cs partial class
  • Rewrite AiSuggestionTray.axaml with chat bubble layout, auto-scroll, Enter-to-send
  • Wire NavigateToLinkedItemFunc for clickable source links in bubbles
  • Fix text overflow: all content uses TextWrapping="Wrap" instead of TextTrimming
  • Rename tray header from "AI Suggestions" to "PrivStack AI"
  • Mark old IAiTrayCardViewModel and ContentSuggestionCardViewModel as [Obsolete]
  • Bump SDK to 1.50.0, Desktop to 1.50.0
minor Desktop Shell

Unified global AI suggestion tray replacing IntentSuggestionTray (v1.49.0)

Desktop 1.48.3 → 1.49.0 | 489d3a95
Details

Merges the shell's intent suggestion tray and plugin-local AI panels into a

single global "AI Suggestions" tray owned by the desktop shell.

New files:

  • AiSuggestionServiceImpl: wraps WeakReferenceMessenger for Push/Update/Remove
  • AiSuggestionTrayViewModel: subscribes to IntentEngine events + content

suggestion messages, aggregates both card types into one ObservableCollection

  • ContentSuggestionCardViewModel: wraps ContentSuggestionCard, sends

ActionRequested/Dismissed messages back to owning plugin

  • IAiTrayCardViewModel: common interface for Intent and Content card VMs
  • AiSuggestionTray.axaml: DataTemplate-based rendering for both card types

Removed:

  • IntentSuggestionTrayViewModel (replaced by AiSuggestionTrayViewModel)
  • IntentSuggestionTray.axaml (replaced by AiSuggestionTray.axaml)

Renamed in MainWindowViewModel:

  • IntentTrayVM → AiTrayVM, IsIntentTrayOpen → IsAiTrayOpen
  • ToggleIntentTray → ToggleAiTray

Updated MainWindow.axaml bindings, Keyboard.cs escape handler, PluginHost/

PluginHostFactory wiring, and ServiceRegistration DI container.

Desktop version 1.48.3 → 1.49.0.

minor SDK

Add IAiSuggestionService SDK types for unified AI tray (v1.49.0)

SDK 1.48.0 → 1.49.0 | a5193ce3
Details

Introduces the SDK contract for the global AI suggestion tray:

  • ContentSuggestionCard, SuggestionAction, ContentSuggestionState models
  • Messenger messages: Push/Update/Remove/ActionRequested/Dismissed
  • IAiSuggestionService interface (Push, Update, Remove)
  • IPluginHost.Suggestions property for plugin access
  • SDK version bump 1.48.0 → 1.49.0

Plugins can now push content suggestion cards (summaries, rewrites, etc.)

into a shell-owned unified tray via Host.Suggestions. Action clicks route

back to the owning plugin via ContentSuggestionActionRequestedMessage on

the messenger bus, keeping block-level operations inside the plugin while

the shell renders cards uniformly alongside intent suggestion cards.

← Prev Page 7 of 22 Next →

Get notified about new releases