Importing existing knowledge
You don’t have to start a brain from nothing. Notes you’ve already written and what your AI assistants already remember can go in on the first day. The brain compiles them into connected pages, the same way it handles new captures, and every page links back to the note it came from.
Before you import
- Fill in the brain profile first. It shapes how captures are compiled, but only the ones that arrive after it.
- Try a small sample. Import part of your material into a test brain, check the pages, then run the rest. Each capture is compiled by a model, which counts toward your usage.
- Give each capture an
originRef. The brain skips a capture whoseoriginRefit has already compiled, so you can run an import again without creating duplicates. - Mind the limits. One capture holds up to 50,000 characters. A batch request holds up to 100 captures on most plans.
Obsidian vault
An Obsidian vault is a folder of Markdown files, so each note can go in as one capture. Frontmatter,
tags and [[links]] stay in the text, and the brain uses them along with the rest of the note when it
connects pages.
The script below sends every note in a vault:
- It skips
.obsidian,.trashand other hidden folders, and empty notes. - It splits a note longer than 50,000 characters at paragraph breaks.
- It uses the note’s path as the label, so each page’s sources show which note they came from.
- It sets
originRefto the note’s path plus a hash of its text. When you run the script again, the brain skips notes you haven’t changed and captures the ones you’ve edited, then updates their pages. - It skips files that aren’t UTF-8 text, and tells you which ones.
Save it as a file. It needs Python 3.9 or later, or Node 20.12 or later, and no packages.
Then run it:
Find the brain ID
List your brains and copy the id of the one to import into. To keep the vault separate, create a
new brain for it first.
Preview the import
Set your API key, then list what would be sent without sending it:
In Windows PowerShell, set the key with $env:LIVING_BRAIN_API_KEY = "YOUR_API_KEY" instead. If
your API key isn’t tied to one subject, also set LIVING_BRAIN_SUBJECT_ID. See
Authentication.
Run the import
Run the same command without --dry-run. Captures compile in the background, so pages appear over
the next few minutes. Track the sources to find any that failed.
If the script stops partway, run it again. Notes that were already sent are skipped.
To keep the brain up to date, run the script again whenever you like, for example on a schedule. The brain only compiles notes it hasn’t seen in their current form. Deleting or renaming a note in the vault doesn’t remove what the brain already compiled from it.
The script only reads Markdown files, so images, PDFs and other attachments stay behind. To add a PDF,
capture it with kind: "file" and a fetchUrl, a link the brain can download, such as a temporary
signed link from your file storage. See Capturing knowledge.
Claude and ChatGPT memory
Claude and ChatGPT keep a memory of you: your work, projects, preferences and instructions. The simplest way to move it is to ask the assistant to write out what it remembers.
Ask the assistant to write out its memory
Start a new chat and send:
To see what the assistant has stored, open its memory settings. At the time of writing, that’s Settings > Your Claude, then Manage next to Your memory, in Claude, and Settings > Personalization > Memory in ChatGPT.
Read the list
Compare the list with the memory settings, since an assistant can leave items out. Remove anything you don’t want in the brain before you save it.
Save it to the brain
If the assistant is connected to Living Brain, ask it to save the list itself:
It saves the list with living_brain_capture. Otherwise, paste the list into a file such as
ai-memory/chatgpt-memory.md and run the vault script on the ai-memory folder.
When you import an updated list later, the script captures the new version.
Claude projects
A Claude project has three parts worth keeping:
Put each project’s Markdown files in a folder and run the vault script on it. To tell projects apart, give each its own brain, or start each file name with the project’s name, which then appears in the source labels.
Check the result
Open the brain on livingbrain.com to see the new pages and how they connect, or ask a connected assistant about something from your notes. Each page lists the sources it came from, so you can trace an answer back to the note or memory behind it.