Skip to content

Changelog ​

All notable changes to Gemini Scribe are documented here.

πŸ”§ Gemini Scribe 4.9.1 - Vault Context Fix v4.9.1

  • πŸ—‚οΈ Fixed the "Initialize Vault Context" button β€” it sent a malformed model request and failed to generate AGENTS.md

This patch fixes the "Initialize Vault Context" / "Update Vault Context" button in the agent view. The request sent to the model was shaped so that the analysis prompt was discarded, causing the model to return a conversational reply that failed to parse and never produced an AGENTS.md file. The request is now built correctly and the feature works again.


πŸͺ Gemini Scribe 4.9 - Lifecycle Hooks, Stable Prefix Caching, Custom Endpoint v4.9.0

  • πŸͺ Lifecycle hooks engine β€” define hooks that fire on Obsidian events and run summarize/rewrite/command/agent actions, with full management UI and a settings toggle
  • ⚑ Prompt-prefix caching stabilized β€” the agent's system instruction is now byte-stable across turns and tool follow-ups, restoring Gemini's implicit prefix cache so long sessions stop reprocessing history each turn (closes #763)
  • 🌐 Custom API endpoint β€” new setting to point Gemini Scribe at a proxy or alternate Gemini-compatible endpoint, covering all SDK call sites
  • πŸ“ Collapsible settings sections β€” settings page reorganized into foldable sections (foundation for closing #430)
  • 🎯 Agent sidebar actions as commands β€” new sidebar actions registered as Obsidian commands, keyboard-bindable (closes #785)
  • πŸ” MCP hardening β€” stdio server env vars now live in Obsidian's encrypted SecretStorage; offline or unreachable MCP servers no longer block plugin load
  • πŸ›‘οΈ Unified tool-policy β€” Sessions, Projects, Scheduled Tasks, and Hooks now share one policy model so per-feature permissions behave consistently
  • πŸ“‚ Two-phase context compaction β€” long conversations now truncate older turns first, summarize second, for cleaner handling near the token limit
  • 🧱 Per-provider package layout β€” src/api/providers/{gemini,ollama}/; GeminiClientFactory β†’ ModelClientFactory (breaking change for plugins building on the SDK; OllamaClient and OllamaClientConfig are now in the public barrel)
  • πŸ§ͺ Eval-harness maturity β€” baseline-compare with auto-bless, richer rubric matchers plus LLM-as-judge fallback, per-task timeouts, clean interrupt handling, and an eval-harness skill

This release introduces a lifecycle-hooks engine β€” define hooks that fire on Obsidian events (note modify, command palette, etc.) and run summarize/rewrite/command/agent actions with a dedicated management UI. Agent prompt-prefix caching has been stabilized (closes #763): the system instruction is now byte-stable across turns and tool follow-ups, restoring Gemini's implicit prefix cache so long chat or coding sessions no longer reprocess history each turn. A custom API endpoint setting lets you point Gemini Scribe at a proxy or alternate Gemini-compatible host. MCP servers are now resilient on offline machines and store stdio env vars in Obsidian's encrypted SecretStorage. Tool-policy is unified across Sessions, Projects, Scheduled Tasks, and Hooks. The settings UI gains collapsible sections, and new agent sidebar actions are registered as Obsidian commands. Under the hood: per-provider packages under src/api/providers/ (GeminiClientFactory β†’ ModelClientFactory; breaking for SDK consumers, OllamaClient now in the public barrel), two-phase context compaction, tool-result payload truncation in older history, retry/backoff applied to non-chat direct SDK calls, and substantial eval-harness maturity work (baseline-compare, LLM-judge fallback, per-task timeouts, clean interrupt) plus broader test coverage.


✨ Gemini Scribe 4.8 - Scheduled & Background Tasks, Ollama, Activity Modal v4.8.0

  • ⏰ Scheduled tasks β€” run agent tasks on a cron, time-of-day, or day-of-week schedule with full management UI
  • πŸŒ™ Missed-run catch-up β€” tasks that should have run while Obsidian was closed surface on startup for review
  • πŸ›°οΈ Background tasks β€” deep research and image generation now run in the background with output consolidated under [state-folder]/Background-Tasks/
  • πŸ“Š Unified activity modal β€” Background Tasks and RAG status share a single tabbed view
  • πŸ¦™ Ollama provider β€” point the plugin at a local Ollama server for offline, local-model chat
  • πŸ›‘ Runaway-loop abort β€” repeated tool-loop detections within a turn now abort the turn with a clear notice instead of churning
  • πŸ§ͺ Eval harness β€” new harness for agent-loop changes with multi-hop retrieval, loop-trap tasks, pass^k reliability, and per-run model overrides
  • πŸ“± Mobile fixes β€” agent view layout on iOS and CatchUpModal now opens directly on mobile
  • πŸ› οΈ Headless agent loop β€” AgentLoop extracted from the agent view so scheduled and background runners share the same execution engine

This release introduces scheduled tasks: define agent tasks with cron, time-of-day, or day-of-week schedules and manage them with a dedicated UI. If Obsidian was closed when a run was due, a catch-up modal surfaces missed runs on startup. Long-running operations like deep research and image generation now run as background tasks, with all their output consolidated under [state-folder]/Background-Tasks/, and a unified activity modal gives you a single place to monitor background work alongside RAG indexing status. Ollama joins as a provider option for fully local chat. The runaway-loop detector now escalates to a per-turn abort with a user-visible notice. Under the hood, AgentLoop has been extracted so scheduled and background runners share the same engine as the UI, and a new eval harness with multi-hop, loop-trap, and pass^k reliability checks helps verify agent-loop changes. Includes mobile fixes for iOS layout and the catch-up modal, plus a migration of the test runner from ts-jest to Vitest.


✨ Gemini Scribe 4.7 - Projects, Session Memory & File Shelf v4.7.0

  • πŸ“‚ Projects β€” scope agent sessions to a folder with custom instructions and tool/skill overrides
  • 🧠 Session recall β€” the agent can search past conversations for relevant context
  • πŸ“Ž File context shelf β€” unified drag-and-drop bar replaces the old context panel
  • πŸ“ Diff review view β€” write and edit operations show a side-by-side diff before applying
  • πŸ“¦ Bundled skills β€” built-in help and Obsidian knowledge skills, auto-generated from docs
  • πŸ“„ Binary file awareness β€” agent tools can read images, audio, video, and PDFs directly
  • πŸ—οΈ Layered prompt architecture β€” system prompts refactored into composable Handlebars sections
  • ⚑ Strict TypeScript checks β€” property initialization and unused variable enforcement

This release introduces Projects, letting you scope agent sessions to a folder with custom instructions, permission overrides, and skill filters. Session recall gives the agent memory across conversations β€” it can search past sessions for relevant context. The new file context shelf replaces the old context panel with a compact drag-and-drop bar that auto-expands folder contents. Write and edit tool calls now show a diff review view so you can inspect changes before they're applied. Bundled skills ship built-in help and Obsidian knowledge that are auto-generated from the docs site at build time. Agent tools can now read binary files (images, audio, PDFs) encountered during tool execution. The prompt system has been refactored into layered Handlebars templates for better maintainability. Under the hood, a new event bus architecture decouples lifecycle hooks, and strict TypeScript checks improve code reliability.


✨ Gemini Scribe 4.6 - Context Management & Tool Permissions v4.6.0

  • 🧠 Automatic context compaction β€” long conversations are summarized to stay within model limits
  • πŸ“Š Live token usage display with cached/uncached breakdown (opt-in in settings)
  • πŸ›‘οΈ Per-tool permission policies β€” configure allow, deny, or ask-every-time per tool
  • πŸ”§ Collapsible tool activity bar β€” tool calls grouped into expandable sections
  • πŸ’­ Expandable thinking section replaces tooltip for model reasoning
  • πŸ“ Fixed plugin init failure when folders already exist (Obsidian Sync)

This release adds automatic context management that monitors token usage and summarizes older conversation turns when approaching model limits. A new token counter (enable in settings) shows live usage with a breakdown of cached vs new tokens. Tool permissions can now be configured per-tool with allow/deny/ask policies. Tool calls are grouped into collapsible activity bars for cleaner chat. The thinking model output now uses an expandable section instead of a tooltip. Also fixes a plugin initialization failure when using Obsidian Sync.


πŸ”§ Gemini Scribe 4.5.1 - iOS Compatibility Fix v4.5.1

  • 🍎 Fixed plugin failing to load on iOS due to Node.js module imports

This patch fixes the plugin failing to load on iOS devices. The issue was caused by Node.js module imports that are not available in the mobile environment.


✨ Gemini Scribe 4.5 - MCP Servers, Skills & Secure Storage v4.5.0

  • πŸ”Œ [Experimental] MCP server support with HTTP transport and OAuth authentication
  • 🧠 Agent skills system following the agentskills.io specification
  • πŸ“Ž Unified drag-and-drop pipeline with file type classification
  • πŸ” API key migrated to Obsidian SecretStorage for secure handling
  • πŸ” Search box in Add Context Files modal for quick filtering
  • ⚑ Default chat model changed to Flash for free API key compatibility
  • πŸ”„ RAG indexing now starts when toggled without requiring plugin reload
  • πŸ“š New documentation site with expanded FAQ and contributing guides

This release adds experimental MCP (Model Context Protocol) server integration with HTTP transport and OAuth support, letting you connect external tools to your agent. The new agent skills system allows extensible AI capabilities following the agentskills.io spec. Your API key is now stored securely via Obsidian's SecretStorage (OS keychain). File attachments have been unified with smart classification for text, media, and binary files. The default chat model is now Flash for better compatibility with free API keys.


✨ Gemini Scribe 4.4 - Deep Research & Quality of Life v4.4.0

  • πŸ”¬ Deep research migrated to gemini-utils ResearchManager
  • πŸ›‘οΈ Trusted Mode with extended vault tools
  • πŸ”€ Fixed HTML entities appearing in chat responses
  • πŸ“ HTML markup now preserved in saved chat history
  • πŸ”§ Better empty response messages list executed tools
  • ✨ Subtle fade-in animation for confirmation results

This update brings an improved deep research engine, trusted mode for streamlined tool execution, and several quality-of-life fixes. HTML entities returned by Gemini models are now properly decoded, and markup is preserved in saved history files. Empty response messages now list which tools were executed for better transparency.


πŸ”§ Gemini Scribe 4.3.1 - Setup Experience Fix v4.3.1

  • πŸ”‘ Fixed plugin setup for new users without API key
  • βš™οΈ Settings are now always accessible, even before configuration
  • πŸ›‘οΈ Graceful error handling when API key is missing
  • πŸ”„ Plugin automatically activates when API key is added

This update fixes a critical issue where new users could not access settings to configure their API key. The plugin now loads partially when unconfigured, allowing access to settings. Once configured, the plugin automatically activates without needing to restart Obsidian.


✨ Gemini Scribe 4.3 - Images & Selection Actions v4.3.0

  • πŸ–ΌοΈ Multimodal image support - attach images to your chats
  • ✨ Explain Selection - get AI explanations of selected text
  • ❓ Ask about Selection - ask questions about selected text
  • πŸ” Folder and tags filtering for semantic search
  • πŸ”— Fixed @ mentions to use proper wikilink paths
  • ⌨️ Fixed IME composition issues for international keyboards
  • πŸ›‘ Fixed Stop button to properly halt pending tool executions
  • πŸ“¦ Removed obsidian-dataview dependency

This update adds multimodal capabilities - you can now attach images to your agent conversations. New selection-based actions let you quickly explain or ask questions about any selected text via the right-click menu. Semantic search now supports folder and tag filtering. Several bug fixes improve reliability for international users and tool execution.


πŸ”§ Gemini Scribe 4.2.1 - RAG Stability & New Features v4.2.1

  • πŸ› Fixed RAG re-indexing on every Obsidian restart
  • πŸ“„ PDF and attachment indexing support
  • ⏸️ Pause/resume commands for RAG sync
  • πŸ“Š Detailed status modal with file lists and search
  • πŸ”„ Resume interrupted indexing after crash/restart
  • ⚑ Rate limit handling with automatic retry
  • πŸ’Ύ Incremental cache saves for durability

This update brings major stability improvements to RAG indexing. The vault no longer re-indexes on every restart, and you can now index PDFs and attachments. New pause/resume commands give you control over syncing, and interrupted indexing can be resumed. The status modal now shows detailed file lists with search functionality.


✨ Gemini Scribe 4.2 - Semantic Search & Improved Errors v4.2.0

  • πŸ”¬ [Experimental] Semantic vault search using Google File Search API
  • πŸ—‚οΈ Background indexing keeps your vault searchable
  • πŸ’¬ Clearer API error messages (quota, auth, rate limits)
  • πŸ–ΌοΈ Fixed image model dropdown in settings
  • ✏️ Fixed writing tool to respect YAML frontmatter

This update introduces experimental semantic search powered by Google's File Search API. When enabled in Advanced Settings, your vault is indexed in the background, allowing the AI to search by meaning rather than just keywords. Also includes improved error messages that clearly explain API issues like quota limits or authentication problems.


πŸ› Gemini Scribe 4.1.2 - Writing Tool Fix v4.1.2

  • ✏️ Fixed writing tool to properly respect YAML frontmatter
  • πŸ“ Content is now correctly placed after frontmatter blocks
  • πŸ” Added edge case handling for malformed frontmatter
  • πŸ“š Improved documentation for YAML handling

This update fixes an important issue where the writing tool would incorrectly place content at the very beginning of files, overwriting or disrupting YAML frontmatter. The tool now properly detects and preserves frontmatter blocks (defined by --- delimiters), placing new content after them as intended.


πŸ› Gemini Scribe 4.1.1 - Stability & UX Improvements v4.1.1

  • πŸ’¬ In-chat confirmations - no more hidden modal dialogs
  • 🧠 Fixed Gemini 3 thinking mode display
  • πŸ”§ Fixed Gemini 3 function calling with thought signatures
  • ⏱️ Agent timeout protection prevents infinite hangs
  • 🎨 Better visual feedback during tool execution

This update focuses on stability and user experience. Confirmation dialogs are now inline in the chat, Gemini 3 models work properly with thinking mode and function calling, and the agent includes timeout protection to prevent getting stuck.


✨ Gemini Scribe 4.1 - Enhanced AI & Better UX v4.1.0

  • 🌍 Multilingual support - prompts in your language
  • 🧠 Gemini 2.5 Pro & Gemini 3 with thinking progress
  • πŸ›‘ Stop button to cancel long-running operations
  • πŸ’‘ Dynamic example prompts based on your vault
  • 🎨 Improved UI with icon buttons and progress indicators
  • πŸ” Enhanced search with new file content tool

This update brings powerful new AI models, multilingual support, and major UX improvements. Includes important security fixes and better vault operations.


πŸŽ‰ Welcome to Gemini Scribe 4.0! v4.0.0

  • πŸ€– Unified agent-first interface - one powerful chat mode
  • πŸ”§ Tool calling built-in to every conversation
  • πŸ’Ύ Persistent agent sessions with full history
  • πŸ“¦ Old history safely archived as readable markdown

This is a major update focused entirely on the powerful Agent Mode. The old note-based chat has been removed in favor of a unified agent experience with tool calling, persistent sessions, and better context management.


πŸ”§ Gemini Scribe 3.3.2 - SDK & Context Fixes v3.3.2

  • ⏱️ Added timer to thinking indicator in agent mode
  • πŸ“¦ Updated @google/genai SDK to resolve urlContext type errors
  • πŸ”§ Fixed Gemini API content format and restored file context

This maintenance release updates the Google GenAI SDK to fix type errors with urlContext, fixes API content formatting, and adds a timer to the thinking indicator in agent mode.


πŸ› Gemini Scribe 3.3.1 - Popout Window & Model Fixes v3.3.1

  • πŸ“‹ Fixed paste functionality in popout/detached windows
  • πŸ”— Fixed @ mention file chip insertion in popout windows
  • πŸ€– Fixed models not being used correctly for summary and rewrite tasks
  • 🏷️ Fixed agent session auto-title generation
  • 🧩 New reusable DOM context utility module

This release fixes several issues with popout/detached windows including paste and @ mentions, corrects model selection for summary and rewrite tasks, and adds a new DOM context utility for better window handling.


✨ Gemini Scribe 3.3 - Agent Mode v3.3.0

  • πŸ€– AI Agent with tool calling - read, write, search, and manage vault files
  • πŸ” Google Search integration for web information
  • 🌐 Web page fetching and analysis
  • πŸ’¬ Session management with persistent conversation history
  • πŸ“Ž Context file management with @ mentions
  • πŸ›‘οΈ Safety features: permissions, loop detection, system folder protection
  • πŸ“‹ Copy button for user messages
  • 🎨 Professional UI with collapsible tool messages and animations

A major feature release introducing Agent Mode - an AI-powered assistant that can actively work with your vault through tool calling. Includes comprehensive file operations, Google Search, web fetching, session management, and safety features like loop detection and system folder protection.


βš™οΈ Gemini Scribe 3.1 - Dynamic Parameters & Advanced Settings v3.1.0

  • 🌑️ Smart temperature ranges that auto-adjust based on model capabilities
  • πŸŽ›οΈ Model-aware Top P controls with proper validation
  • πŸ”§ New Advanced Settings panel for developer-focused options
  • πŸ” Automatic model discovery with parameter limit detection
  • πŸ’Ύ Smart 24-hour model cache with manual refresh
  • πŸ§ͺ Comprehensive new test coverage

This release adds dynamic model parameter controls that automatically adjust ranges based on your Gemini model's actual capabilities. The new Advanced Settings panel organizes developer options cleanly, and the model discovery system automatically fetches available models with their parameter limits.


πŸŽ‰ Gemini Scribe 3.0 - Major Release v3.0.0

  • πŸ“ Plugin state folder restructured for better organization
  • πŸ“ Enhanced custom prompt system with command palette commands
  • πŸ” Dynamic model discovery from Google's API
  • ⚑ Real-time streaming responses in chat
  • πŸ”§ Replaced low-level file operations with native Obsidian APIs
  • πŸš€ Automatic migration from flat folder structure

A major release with significant architectural improvements. Plugin data is now organized into subdirectories (History, Prompts, Agent-Sessions), custom prompts get command palette integration, and model discovery pulls available models directly from Google's API. Includes automatic migration for existing users.


⚑ Gemini Scribe 2.2 - Streaming Responses v2.2.0

  • ⚑ Real-time streaming AI responses in chat
  • πŸ”„ Intelligent streaming retry with automatic fallback
  • πŸ§ͺ Comprehensive test coverage for streaming
  • πŸ“š Added implementation planning guidelines
  • πŸ› Fixed UI stuttering and duplicate content during display

This release adds real-time streaming support for AI responses. See responses appear progressively as they're generated, with smart fallback to standard responses if streaming isn't available. Includes new CI/CD workflows and improved developer experience.


πŸ”§ Gemini Scribe 2.1 - Retry Logic & Stability v2.1.0

  • πŸ”„ Retry logic for model API requests with exponential backoff
  • πŸ§ͺ Improved test coverage for models and debug modules
  • πŸ”€ Fixed HTML entity decoding in model responses
  • πŸ”— Fixed README links to new repository

This release adds robust retry logic for API requests with exponential backoff, fixes HTML entity handling in model responses, and improves test coverage across the codebase.


πŸ› Gemini Scribe 2.0.3 - Context Handling Fix v2.0.3

  • πŸ”§ Fixed linked notes being processed when Send Context is disabled
  • πŸ“„ Context Depth 0 now correctly includes only the active file
  • ⚑ Prevented unnecessary file context processing when disabled

This release corrects context handling behavior. The Send Context toggle now strictly controls whether file content is gathered, and Context Depth of 0 properly includes only the active file without linked notes.


πŸ› Gemini Scribe 2.0.2 - Stability Patch v2.0.2

  • πŸ› Bug fixes and stability improvements

A stability patch with minor bug fixes following the 2.0.0 major release.


πŸŽ‰ Gemini Scribe 2.0 - API Abstraction & History V2 v2.0.0

  • πŸ—οΈ Major internal refactor: API abstraction layer
  • πŸ“ History V2 with improved storage and management
  • πŸ”§ New model management system
  • ⚠️ Breaking: significant internal changes

A major internal refactor introducing an API abstraction layer, new model management system, and History V2. This release modernizes the plugin's architecture for better extensibility and reliability.


πŸ› Gemini Scribe 1.8.1 - Patch v1.8.1

  • πŸ› Bug fixes and minor improvements

A minor patch release with bug fixes following the 1.8.0 release.


πŸ“± Gemini Scribe 1.8 - Mobile Support v1.8.0

  • πŸ“± Plugin now works on mobile with history enabled
  • πŸ“ Flattened history filenames for cross-platform compatibility
  • πŸ”„ Automatic migration of legacy history files

This release enables mobile support by flattening history filenames for cross-platform compatibility. Existing history files are automatically migrated to the new naming format.