Why Inline AI Breaks in Obsidian & Notion
Obsidian and Notion are where a lot of people do their actual thinking — notes, docs, knowledge bases, drafts. So it’s especially frustrating when an inline AI editor that works fine in a simple text box does nothing in Obsidian, or in Notion replaces the wrong thing, drops your markdown, or leaves a half-edit. These two apps break inline tools in overlapping but slightly different ways. Here’s both, and how to get reliable edits.
The shared cause: they’re Electron editors
Both Obsidian and Notion are built on Electron — a Chromium browser wrapped as a desktop app. As covered in the silent-failure page, Electron apps expose little or nothing to the OS accessibility API (AXUIElement on macOS, UI Automation on Windows). So an inline tool that relies on the accessibility API to read your selection and write the replacement gets back nothing, and fails — usually silently.
But Obsidian and Notion add their own twists on top of the generic Electron problem.
Obsidian-specific issues
Obsidian’s editor is a custom code-editor surface (built on CodeMirror) rendering markdown. Two things follow:
- The selection is in a custom-drawn editor, not a standard text field. Even by Electron standards, the editable region is unusual, so accessibility-based tools struggle even more than they do in a normal Electron text box.
- Markdown is the formatting. In Obsidian, your bold is
**bold**, your link is[text](url), your bullets are-. A tool that “cleans up” or normalizes text on the way through can mangle this syntax — turning**bold**into bold-then-flattened, or escaping characters it shouldn’t. So even when a tool does manage to write back, it can corrupt your markdown. (See AI rewrite stripped my formatting.)
The fix that works in Obsidian is a clipboard-based inject (Obsidian honors normal copy/paste keystrokes) combined with leaving markdown syntax intact — treating **, [](), and - as content to preserve, not formatting to reinterpret.
Notion-specific issues
Notion is a block-based editor — every paragraph, heading, list item, and toggle is a separate “block” in a database-like document model. This causes distinct failures:
- Selection spanning blocks is fragile. Selecting across multiple blocks (a paragraph plus a bullet list, say) and replacing it can confuse a tool that assumes a single contiguous text field. You get partial replacements or text dropped into the wrong block.
- Rich formatting lives in the block model, not in the text. Notion’s bold/links/colors are properties of the block, so reading the selection as a plain string loses them, and writing plain text back strips them.
- The paste behavior is its own thing. Notion interprets pasted content (it may turn pasted markdown into blocks, or pasted rich text into formatted blocks), so a clipboard inject can produce unexpected structure if the tool isn’t aware of how Notion handles paste.
The reliable approach in Notion is to work within a single block’s selection where possible, use a clean clipboard inject (which Notion accepts), and preserve the content’s structure so the replacement matches what was there.
What you can do today
- Keep selections within one block (Notion) or one logical region (Obsidian) when you can — it dramatically improves reliability.
- Test on a throwaway note first. Confirm your tool preserves markdown (Obsidian) and doesn’t scramble blocks (Notion) before trusting it on real notes.
- Make sure undo/version history is on. Both apps have file recovery / version history — a backstop if an edit goes sideways. (See I lost my paragraph and Ctrl+Z won’t bring it back.)
- Choose a tool with a real Electron fallback that doesn’t depend on the accessibility write succeeding — that’s the difference between “nothing happens” and “it just works.”
How EditSnappy fixes this at the root
EditSnappy is built for exactly these Electron editors. It doesn’t bet on the accessibility API working in Obsidian or Notion — it tries the native write, and the instant it can’t confirm the replace, it falls back to a clean clipboard inject that both apps accept (snapshotting and restoring your clipboard so nothing’s lost). On top of that, it preserves your formatting and markdown rather than flattening or scrambling it, and it shows the change as a diff you approve first — so a block-spanning edge case in Notion or a markdown surprise in Obsidian is something you see and reject, not something that quietly mangles your note.
So inline rewrites, summaries, and tone fixes actually land — reliably — in the two apps where you keep your real work.
See how EditSnappy works and try it free in Obsidian and Notion. For app-specific detail, see AI editing in Obsidian and AI writing in Notion.
Related
- AI hotkey not working in Slack / VS Code: why
- AI rewrite stripped my formatting — how to keep it
- Clipboard hijack bugs in AI text tools
Part of the Why Inline AI Editors Fail troubleshooting hub · EditSnappy home.