🔬 Preview Release (v0.11.0-preview.1)
⚠️ This is a preview release — Features are experimental and may change. Please report any issues!
This preview adds a Session Manager view for tracking multiple chats at a glance, moves API keys into Obsidian's Keychain, and teaches agents to write Obsidian-flavored Markdown from the first message.
🌟 New:
- 🪟 Session Manager: A new sidebar view that lists every open chat (sidebar and floating) with live status icons — ready, generating, awaiting permission, or error. Click a session to focus it, or rename and close it from the context menu. Open it from the chat header menu or the command palette. (#270)
- 🏷 Session Title in Tab Header: Sidebar chat tabs now show the session title (derived from your first message, or the name you set via Rename) instead of a static "Agent client", so multiple tabs are individually identifiable. (#293)
- 🔑 Secure API Key Storage: API keys are now stored in Obsidian's Keychain (secret storage) instead of plain text in the plugin's data file. Existing keys are migrated automatically on first load with a notification, and debug logs no longer contain sensitive values. (#219)
- 📝 Obsidian Markdown Prompt Injection: Short formatting instructions are added to the first message of each session so agents produce output that renders correctly in Obsidian. Enabled by default — each instruction can be toggled individually under Settings → Prompt injection:
- Math formulas: use
$...$/$$...$$instead of\(...\)(#218) - Note references: use
[[Note Name]]wikilink syntax - Tables: leave a blank line before Markdown tables
- Math formulas: use
🔧 Improvements:
- 🔐 Permission Request Redesign: Permission options now appear as a vertical full-width list with color-coded icons instead of a row of colored buttons. The layout stays stable regardless of option name length, long names truncate with a tooltip showing the full text, and "always reject" options are now visually distinct from one-time rejects. (#314)
- 🎨 Themed Toolbar Dropdowns: The mode, model, and config selectors in the input toolbar were rebuilt as theme-aware menus instead of native dropdowns, so they match Obsidian's look in any theme. (#252)
- 📌 Context Note Badge: The active note badge is now always visible and stays in sync with the Auto-mention setting, so you can always see what context will be attached to your message. (#253)
🐛 Fixes:
- ⌨ Slash Commands vs Auto-Mention: Fixed auto-mention context corrupting slash command detection — commands like
/compactnow work reliably even with a note open. (#255, #256) - 🔄 Saved Mode Restore Race: Fixed the mode/model selectors briefly showing the agent's defaults after starting a new session — a message sent in that window could run in the wrong mode. Saved selections are now restored before the session becomes ready. (#281)
- 🕑 Session History Ordering: Fixed sessions not moving to the top of the history list after new activity. (#257)
- ⚙ Settings Propagation: Fixed changes made in the settings tab not applying to already-open chat views. (#254)
- 🔐 Auto-Allow Toggle: Fixed the "Auto-allow permissions" setting not taking effect on already-running agents until restart. (#248)
- 🛠 Debug Mode Toggle: Fixed the Debug mode setting requiring a plugin reload to take effect. (#247)
- 📎 Attachment Remove Button: Fixed the attachment remove button losing its icon when the attachment list changed. (#246)
- 🔌 Plugin Reload Race: Fixed an "Attempting to register an existing view type" error when the plugin is reloaded or updated rapidly. (#244)
⚠️ Breaking Changes:
- Obsidian 1.11.4 or later is now required (for the Keychain-based secret storage).
- API key storage location changed: keys move from the plugin's
data.jsonto Obsidian's Keychain. Migration is automatic — no action needed, but plain-text keys will no longer appear indata.json.
🚀 Upgrade:
Update from v0.10.6 — requires Obsidian 1.11.4 or later. API keys are migrated to Obsidian's Keychain automatically on first load. Markdown prompt injection is enabled by default; you can disable it under Settings → Prompt injection.
👋 New Contributors
- @hajimiHenry made their first contribution in #218
- @betamod made their first contribution in #219
- @Zbrooklyn made their first contribution in #252
Thank you for your continued support! Your feedback helps make this plugin better for everyone. 🙏