Chatting with AI

approved

by o1xhack

This plugin has not been manually reviewed by Obsidian staff. Agentic AI chat assistant that reads, edits, and creates notes through natural conversation. Supports Anthropic, OpenAI, and ChatGPT account sign-in.

โ˜… 1 starsโ†“ 125 downloadsUpdated 9d agoMIT

Chatting with AI

Latest release Total downloads License Obsidian
GitHub Sponsors

An agentic AI assistant that lives in your Obsidian vault โ€” same experience on phone, tablet, and desktop.

๐ŸŒ English ยท ็ฎ€ไฝ“ไธญๆ–‡ ยท ็น้ซ”ไธญๆ–‡ ยท ๆ—ฅๆœฌ่ชž

Provider settings on iPhone Web search powered answer in Chinese Clean answer in English with bullet list


โœจ Why?

  • Three providers, your choice โ€” Anthropic API, OpenAI API, or sign in with your ChatGPT account. No marketplace of half-broken providers.
  • 14 vault-native tools โ€” read, edit, search, create, rename, frontmatter, backlinks. The agent goes from idea to changed files without leaving the chat.
  • Mobile-parity, by design โ€” no streaming, no Node-only modules, no localhost callbacks. iOS and Android behave the same as desktop.
  • Selection scope โ€” highlight text in any note, send it to chat, the assistant edits only inside the selection.
  • Secrets in the OS keychain โ€” never in data.json, never synced across devices.

๐ŸŽฌ One conversation, many tools

Ask once, the agent figures out which tools to call:

You: Find every note in /Books that's missing a `rating` property and add `rating: ?`.

Assistant
  โ†’ search_vault("/Books")               โ†’ 12 files
  โ†’ get_properties("Books/Sapiens.md")   โ†’ has rating
  โ†’ get_properties("Books/Hail Mary.md") โ†’ no rating
  โ†’ set_properties("Books/Hail Mary.md", { rating: "?" })
  โ†’ ... (5 more)

  Done โ€” added `rating: ?` to 6 notes:
  - Books/Hail Mary.md
  - Books/Klara and the Sun.md
  - ...

The agent reads before it edits, prefers small surgical changes over rewrites, and doesn't re-ask once you confirm.

๐ŸŽฏ Selection scope

Highlight text in any note, right-click, choose Send selection to Chat. The selection becomes a pill above the input and the assistant edits only inside the selected range โ€” leaving the rest of the document byte-identical.

[ pill: "...the introduction was a bit dry, and..."  โœ• ]

You: tighten this โ€” keep my voice

The agent uses find-and-replace scoped to the selection text. Everything outside the highlight stays untouched.

๐Ÿ› ๏ธ 14 vault-native tools

GroupToolsWhat they do
Readread_document, read_file, search_vault, list_files, get_backlinks, get_properties, get_current_datetimeOpen notes/files, search by name and content, browse the tree, find backlinks, read frontmatter, fetch the current time in your locale.
Writeedit_document, create_file, set_propertiesSurgical find-and-replace / insert / full replace; create new notes (parent folders auto-created); safe YAML frontmatter merge or remove.
Managerename_file, delete_file, open_document, ask_userRename or move (links auto-update); move to trash (respects your trash setting); open a file in the editor; pause and ask you when something is ambiguous.

โš™๏ธ Providers

ProviderAuthDefault modelNotes
AnthropicAPI keyClaude Sonnet 4.6Adaptive thinking, web search, prompt caching.
OpenAIAPI keyCodex 5.3Responses API, reasoning, web search.
ChatGPT accountSign in with ChatGPTGPT-5.5Uses your ChatGPT plan instead of an OpenAI API key.

About ChatGPT account login. This provider signs you in with your ChatGPT account and routes requests through the ChatGPT/Codex backend (not api.openai.com). It requires an active ChatGPT plan with Codex access. The available models mirror the Codex CLI catalog.

๐Ÿš€ Quick start

  1. Open Settings โ†’ Community plugins โ†’ Browse.
  2. Search for Chatting with AI.
  3. Click Install, then Enable.
  4. Settings โ†’ Chatting with AI โ†’ pick a provider, paste an API key (or click Connect ChatGPT).
  5. Open the chat from the ribbon icon or the command palette.

๐Ÿ“ฆ Install

Community Plugins (recommended)

This is the default install path now that Chatting with AI is in the official Obsidian Community Plugins directory.

  1. In Obsidian, open Settings โ†’ Community plugins.
  2. If prompted, turn off Restricted Mode / turn on community plugins.
  3. Click Browse and search for Chatting with AI.
  4. Click Install, then Enable.

Migrating from BRAT

If you previously installed the beta through BRAT, move to the community version once it appears in the plugin browser:

  1. In Settings โ†’ Community plugins โ†’ Installed plugins, disable Chatting with AI.
  2. Open BRAT settings and remove o1xhack/obsidian-chatting from the beta plugin list.
  3. Return to Settings โ†’ Community plugins โ†’ Browse and search for Chatting with AI.
  4. If Obsidian shows it as Installed, open its entry and click Enable. If it shows Install, click Install, then Enable.
  5. Open Settings โ†’ Chatting with AI and confirm your provider settings are still present.

The plugin migrates data from the old obsidian-chatting folder to chatting-with-ai on first load. If you used a very old beta and the community browser does not recognize it as installed, installing the community version is still safe; the migration runs when the new plugin starts.

Manual release install
  1. Download main.js, manifest.json, styles.css from the latest release
  2. Place them in <vault>/.obsidian/plugins/chatting-with-ai/
  3. Reload Obsidian and enable Chatting with AI in Community Plugins
Build from source
git clone https://github.com/o1xhack/obsidian-chatting.git
cd obsidian-chatting
npm install
npm run build

Symlink into a test vault:

ln -s "$(pwd)" /path/to/vault/.obsidian/plugins/chatting-with-ai

๐Ÿงญ Design principles

PrincipleWhat it means
Mobile is not an afterthoughtEvery change is validated on iOS and Android. No streaming, no Node-only modules, no localhost callbacks.
Three sane providersAnthropic + OpenAI for stability, ChatGPT account for users who'd rather not manage an API key.
Secrets in the keychainAPI keys and OAuth credentials go through Obsidian SecretStorage. They never land in data.json, so they never sync to other devices.
No vault indexingLinear search, capped. Predictable, no background work, no memory pressure on phones.
Conversation persistsChat history survives Obsidian restarts. Stored locally in chat-state.json, never synced.
Right sidebar on mobileSlides in from the edge โ€” your document stays visible underneath.

๐Ÿ—บ๏ธ Roadmap

  • Three providers (Anthropic, OpenAI, ChatGPT account)
  • 14 vault-native tools
  • iOS / Android parity
  • Selection scope
  • Official Obsidian Community Plugins listing
  • Multi-conversation history with archive / search
  • Image attachments where the provider supports them
  • More upstream provider models picked up automatically as they ship

Have a request? Open an issue.

โ“ FAQ

Will my notes be uploaded somewhere?

Only what the agent needs for the current turn. When you ask a question, the agent decides which tools to call โ€” read_document, search_vault, etc. โ€” and the contents fetched by those calls (plus the active note context) are sent to your chosen provider. Nothing is uploaded in the background. There is no vault index.

Does it really work on mobile?

Yes โ€” that's the design constraint everything else is built around. Requests go through Obsidian's requestUrl() (mobile WebViews enforce CORS), there's no streaming, no Node-only modules, no localhost callback for OAuth. iOS and Android run the same code path as desktop.

Is the ChatGPT account login free?

It uses your existing ChatGPT plan (Plus, Pro, Team, Enterprise) โ€” there's no separate billing. You need an active plan with Codex access. The plugin doesn't talk to api.openai.com; it talks to the same backend the Codex CLI uses.

Can you add provider X?

Probably not โ€” keeping the provider list small is a deliberate choice. Two API providers cover the major ecosystems, and ChatGPT account login covers the "I just have a ChatGPT plan" case. Adding more would mean more permutations to validate on mobile.

Where is chat history stored? Will it sync?

Locally in <vault>/.obsidian/plugins/chatting-with-ai/chat-state.json. It is not synced by Obsidian Sync (plugin data files are excluded by default). API keys live in the OS keychain via SecretStorage and are also not synced.

๐Ÿค Contributing

Issues and PRs welcome. Before opening a PR:

  • Run npx tsc --noEmit and npm run svelte-check
  • Test on at least one mobile platform (iOS or Android) โ€” the mobile-parity rule is real
  • For larger changes, open an issue first to align on direction

๐Ÿ™ Acknowledgements

Originally derived from omarshahine/obsidian-chat (MIT). The original copyright is preserved in LICENSE. Chatting with AI is now an independent project with its own roadmap โ€” major rewrites include the agent loop, mobile-parity work, the ChatGPT account provider, and the selection-scope feature.

๐Ÿ“„ License

MIT.


Author: Yuxiao (o1xhack) ยท app.o1xhack.com

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.