README file from
GithubNexus AI Chat Importer
Import your AI chat exports into your Obsidian vault as plain Markdown — organised by provider and date, with attachments, frontmatter metadata, and a reviewable import report. Everything runs locally in your vault.
🌍 Translated docs — the user guide is also published on nexus-prod.dev in Deutsch · Español · Français · Italiano · 日本語 · 한국어 · Português · Русский · 中文
Note: the optional command-line importer has moved to its own repository, nexus-ai-chat-importer-cli. The Obsidian plugin is unaffected.
Supported providers
ChatGPT · Claude · Mistral Vibe · Perplexity · Grok
Features
- Import all, or select conversations with an interactive preview and filters.
- Incremental updates — re-import a newer export and only new messages are appended; your edits are kept. Or explicitly rebuild notes to pick up new features.
- Smart deduplication across multiple export archives.
- Best-effort attachments — images, documents, and generated content are extracted when the export contains them; anything missing is shown explicitly.
- Structured Markdown — role callouts, ISO 8601 UTC frontmatter, per-provider folders, and a detailed import report.
- Localised UI in 10 languages, with translated documentation and a separate command-line importer.
What's new in 1.8
1.8.1
- Large ChatGPT exports split into parts import completely — select the
OpenAI-export.zipdownload as-is, or all itspart-*.zipfiles; a notice warns if a part is missing. - DALL-E prompts are paired with their image again.
1.8.0
- Grok is supported — import the ZIP from your Grok data export as-is. Conversations keep every regenerated answer, citations become links to their source, and Imagine posts become notes with their images.
- Perplexity's official export is supported — import the ZIP from Export my data. Every conversation becomes a note, titled with the start of its first question.
- Perplexity: the official export and the Thread Exporter extension work together — import either over notes created from the other: it adds what a note lacks, and an extension archive fills in sources, models and citation markers, without duplicating anything.
- Custom ID property — Settings → Properties adds a property of your choice (for example
uid) holding the conversation ID to every note, and updates your existing notes. - A rebuild keeps the properties you added, such as
tags. Edits to the note body are still lost. - Settings appear in Obsidian's settings search (Obsidian 1.13+), with a consistent layout.
- Reports say what was left out, and why.
- Plus fixes: Perplexity updates no longer lose new messages, orphan citation markers are gone, the completion dialog no longer counts Perplexity turns as artifacts, and a long block moved to a file is no longer folded.
Install
From Obsidian: Settings → Community plugins → Browse → search Nexus AI Chat Importer → Install → Enable. Requires Obsidian 1.6.6+; works on desktop and mobile.
Manually: download main.js, manifest.json, and styles.css from the
latest release
into <vault>/.obsidian/plugins/nexus-ai-chat-importer/, then enable the plugin.
Then run Import AI conversations from the command palette or the ribbon icon. See Getting started.
Documentation
Full documentation lives in docs/:
| Location | For | Contents |
|---|---|---|
docs/user/ |
Everyone | Canonical user guide: getting started, importing, settings, what gets created, attachments, reports, CLI, privacy, troubleshooting, and a page per provider. |
docs/development/ |
Contributors | Adding a provider, issue workflow, release workflow. |
docs/architecture/ |
Contributors | Import pipeline, archive pipeline, attachment handling, link updates, ChatGPT export format. |
RELEASE_NOTES.md |
Everyone | The changelog. |
Support
I maintain Nexus AI Chat Importer in my own time, and testing new providers means paying for their subscriptions. If it is useful to you, please consider a one-time or monthly donation — thank you to everyone already supporting the project.
The plugin invites you to donate after your first import and every few imports after that; you can always dismiss the dialog.
License
GNU General Public License v3.0 or later (GPL-3.0-or-later), since version 1.3.0. Versions ≤ 1.2.0 remain under their original MIT license. You may use, modify, and redistribute the plugin; derivative works must also be GPL-3.0 and provide their source. See LICENSE for the full text.
Credits
- Developer: Superkikim
- Contributors:
- @caseyg — CLI for bulk importing (PR #33), Claude formatting feedback (PR #34)
- @chuckfs — iOS support (PR #15)
- @baron — Large archive handling research (PR #27)
- @lstsavr — Unicode filename preservation (PR #70)
- @nelsonlove — Line-ending handling fix, so pasted content with bare CR line endings stays inside its callout and code fence (PR #80); also identified, diagnosed, and proposed a fix for notes named with wikilink-structural characters (PR #80, fixed differently in #83)
- Special Thanks: To all users who report issues and suggest improvements