Skip to content

Releases: allenhutchison/obsidian-gemini

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

04 May 21:39

Choose a tag to compare

Highlights

  • 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 loopAgentLoop extracted from the agent view so scheduled and background runners share the same execution engine

Details

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.

What's Changed

Read more

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

08 Apr 02:18

Choose a tag to compare

Highlights

  • 📂 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

Details

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.

What's Changed

Read more

✨ Gemini Scribe 4.6 - Context Management & Tool Permissions

14 Mar 17:17

Choose a tag to compare

Highlights

  • 🧠 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)

Details

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, updating after each tool call.

Tool permissions can now be configured per-tool with allow/deny/ask policies. Tool calls are grouped into collapsible activity bars for cleaner chat UI, with status badges properly aligned.

The thinking model output now uses an expandable section instead of a tooltip. Also fixes a plugin initialization failure when using Obsidian Sync where folders already exist but the metadata cache isn't ready.

What's Changed

Full Changelog: 4.5.1...4.6.0

Gemini Scribe 4.5.1 - iOS Compatibility Fix

08 Mar 18:23

Choose a tag to compare

🔧 iOS Compatibility Fix

  • 🍎 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.

What's Changed

  • chore(deps-dev): bump the dev-dependencies group with 3 updates by @dependabot[bot] in #397
  • Fix plugin failing to load on iOS due to Node.js module imports by @allenhutchison in #398

Full Changelog: 4.5.0...4.5.1

Gemini Scribe 4.5.0 - MCP Servers, Skills & Secure Storage

05 Mar 19:59

Choose a tag to compare

Highlights

  • 🔌 [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

Details

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.

Minimum Obsidian version: 1.11.4

What's Changed

New Contributors

Full Changelog: 4.4.0...4.5.0

Gemini Scribe 4.4.0 - Deep Research & Quality of Life

07 Feb 18:22

Choose a tag to compare

What's New

  • 🔬 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

Details

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.

All Changes

  • feat: Trusted Mode + Extended Vault Tools — follow-up fix (#326)
  • feat(deep-research): migrate to gemini-utils ResearchManager (#317)
  • feat: list executed tools in empty response message (#237, #333)
  • feat: add fade-in animation for confirmation results (#233, #335)
  • fix: decode HTML entities in Gemini API responses (#327, #331)
  • fix: preserve HTML markup in saved chat history (#112, #332)
  • fix: improve type safety for thoughtSignature extraction (#235, #334)
  • fix: ignore generated files in Prettier checks
  • chore(deps): bump @allenhutchison/gemini-utils (#322)
  • chore(deps-dev): bump dev-dependencies group (#323)

What's Changed

  • chore(deps-dev): bump the dev-dependencies group with 2 updates by @dependabot[bot] in #323
  • chore(deps): bump @allenhutchison/gemini-utils from 0.4.3 to 0.5.0 in the production-dependencies group by @dependabot[bot] in #322
  • feat(deep-research): migrate to gemini-utils ResearchManager by @allenhutchison in #317
  • feat: Trusted Mode + Extended Vault Tools — follow-up fix by @ArnBdev in #326
  • fix: decode HTML entities in Gemini API responses by @allenhutchison in #331
  • fix: preserve HTML markup in saved chat history by @allenhutchison in #332
  • feat: list executed tools in empty response message by @allenhutchison in #333
  • feat: add fade-in animation for confirmation results by @allenhutchison in #335
  • fix: improve type safety for thoughtSignature extraction by @allenhutchison in #334

New Contributors

Full Changelog: 4.3.1...4.4.0

v4.3.1 - Setup Experience Fix

27 Jan 04:00

Choose a tag to compare

🔧 Setup Experience Fix

This release fixes a critical issue where new users could not access settings to configure their API key.

Highlights

  • 🔑 Fixed plugin setup for new users - Settings are now always accessible, even before API key is configured
  • ⚙️ Graceful error handling - Plugin loads partially when unconfigured, showing helpful messages
  • 🔄 Auto-activation - Plugin automatically activates when API key is added, no restart needed

What was fixed

Issue #316 reported that new users couldn't access the plugin settings to enter their API key because the plugin would fail to initialize without one. This created a catch-22 situation. The fix ensures settings are always accessible, allowing users to configure the plugin even when initialization fails.

Full Changelog: 4.3.0...4.3.1

What's Changed

Full Changelog: 4.3.0...4.3.1

4.3.0 - Images & Selection Actions

25 Jan 02:05

Choose a tag to compare

✨ Gemini Scribe 4.3 - Images & Selection Actions

What's New

  • 🖼 Multimodal image support - attach images to your agent conversations
  • Explain Selection - get AI explanations of selected text via right-click menu
  • Ask about Selection - ask questions about selected text via right-click menu
  • 🔍 Folder and tags filtering for semantic search

Bug Fixes

  • 🔗 Fixed @ mentions to use proper wikilink paths
  • ⌨ Fixed IME composition issues for international keyboards
  • 🛑 Fixed Stop button to properly halt pending tool executions

Maintenance

  • 📦 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.

What's Changed

New Contributors

Full Changelog: 4.2.1...4.3.0

Gemini Scribe 4.2.1 - RAG Stability & New Features

04 Jan 19:20

Choose a tag to compare

🔧 RAG Stability & New Features

This release brings major improvements to the semantic vault search feature.

Bug Fixes

  • 🐛 Fixed RAG re-indexing on every restart - Your vault no longer re-indexes unnecessarily when Obsidian restarts
  • 🐛 Fixed "File already exists" error - Resolved race condition during cache saves on Linux

New Features

  • 📄 PDF and attachment indexing - Index PDFs and other supported file types alongside markdown
  • ⏸️ Pause/resume commands - Control syncing with Gemini Scribe: Pause RAG sync and Resume RAG sync
  • 📊 Detailed status modal - View indexed files, failures, and search your index with the new tabbed interface
  • 🔄 Resume interrupted indexing - Continue indexing after crash or restart instead of starting over
  • Rate limit handling - Automatic retry with exponential backoff when hitting API limits
  • 💾 Incremental cache saves - Cache saves during indexing for better durability

Technical Improvements

  • Changed hash algorithm from mtime:size to SHA-256 for reliable change detection
  • Deferred RAG initialization to onLayoutReady() to ensure metadata cache is ready
  • Added fallback to direct disk read when metadata cache isn't populated yet

Full Changelog: 4.2.0...4.2.1

4.2.0 - Semantic Search & Improved Errors

27 Dec 00:32

Choose a tag to compare

Semantic Search & Improved Errors

Highlights

  • 🔬 [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

Details

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.

What's Changed

Full Changelog: 4.1.1...4.2.0