brain-ingest-gate
Pre-write quality gate for content entering the brain. No raw copies: a bare cp/mv into the brain repo is a bug. Before any new page lands, resolve named…
Universal migration from Obsidian, Notion, Logseq, markdown, CSV, JSON, Roam
$ npx -y skills add garrytan/gbrain --skill migrate --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/migrateContext preview
The summary Claude sees to decide when to auto-load this skill.
Universal migration from Obsidian, Notion, Logseq, markdown, CSV, JSON, Roam
name: migrate description: Universal migration from Obsidian, Notion, Logseq, markdown, CSV, JSON, Roam triggers: - "migrate from" - "import from obsidian" - "import from notion" tools: - put_page - search - add_link - add_tag - sync_brain mutating: true
Universal migration from any wiki, note tool, or brain system into GBrain.
| Source | Format | Strategy | |--------|--------|----------| | Obsidian | Markdown + `[[wikilinks]]` | Direct import, convert wikilinks to gbrain links | | Notion | Exported markdown or CSV | Parse Notion's export structure | | Logseq | Markdown with `((block refs))` | Convert block refs to page links | | Plain markdown | Any .md directory | Import directory into gbrain directly | | CSV | Tabular data | Map columns to frontmatter fields | | JSON | Structured data | Map keys to page fields | | Roam | JSON export | Convert block structure to pages |
1. **Assess the source.** What format? How many files? What structure? 2. **Plan the mapping.** How do source fields map to gbrain fields (type, title, tags, compiled_truth, timeline)? 3. **Test with a sample.** Import 5-10 files, verify by reading them back from gbrain and exporting. 4. **Bulk import.** Import the full directory into gbrain. 5. **Verify.** Check gbrain health and statistics, spot-check pages. 6. **Build links.** Extract cross-references from content and create typed links in gbrain.
1. Import the vault directory into gbrain (Obsidian vaults are markdown directories) 2. Wire the graph with native wikilink support (v0.12.1+):
gbrain extract links --source db --dry-run | head -20 # preview gbrain extract links --source db # commit
`extract links` natively parses `[[relative/path]]` and `[[relative/path|Display Text]]` alongside standard `[text](page.md)` markdown syntax. Ancestor-search resolution handles wiki KBs where authors omit one or more leading `../` prefixes. The `.md` suffix is inferred automatically for wikilinks.
Obsidian-specific:
1. Export from Notion: Settings > Export > Markdown & CSV 2. Notion exports nested directories with UUIDs in filenames 3. Strip UUIDs from filenames for clean slugs 4. Map Notion's database properties to frontmatter 5. Import the cleaned directory into gbrain
For tabular data (e.g., CRM exports, contact lists): 1. For each row in the CSV, create a page with column values as frontmatter 2. Use a designated column as the slug (e.g., name) 3. Use another column as compiled_truth (e.g., notes) 4. Store each page in gbrain
After any migration: 1. Check gbrain statistics to verify page count matches source 2. Check gbrain health for orphans and missing embeddings 3. Export pages from gbrain for round-trip verification 4. Spot-check 5-10 pages by reading them from gbrain 5. Test search: search gbrain for "someone you know is in the data"
MIGRATION REPORT -- [source] -> GBrain ======================================= Source: [format] ([file count] files, [size]) Mapping: [field mapping summary] Sample Test (N files): - Imported: N/N - Round-trip verified: N/N - Cross-refs converted: N Bulk Import: - Total imported: N - Skipped (duplicates/errors): N - Links created: N - Tags migrated: N Verification: - Page count match: [yes/no] - Health check: [pass/fail] - Search test: [query] -> [result count] hits
Give the agent you already use a memory you control. GBrain stores explicit facts with their sources, supports corrections and withdrawal, and makes the same memory available across your agents.
Repo: garrytan/gbrain
Pre-write quality gate for content entering the brain. No raw copies: a bare cp/mv into the brain repo is a bug. Before any new page lands, resolve named…
When you report a brain page to the user — created, edited, committed, or relayed from a subagent — a working link is part of the deliverable, in the SAME…
Brain knowledge base operations. The core read/write cycle: brain-first lookup, read-enrich-write loop, source attribution, ambient enrichment, back-linking.…
Deduplicate and synthesize raw concept stubs into a tiered intellectual map (T1 Canon to T4 Riff), tracing idea evolution across sources over time. Transforms…
Token-hygiene audit of the always-loaded context stack — CLAUDE.md, AGENTS.md, auto-memory MEMORY.md, and the bootstrap-rendered identity files (SOUL.md,…
When the user corrects a factual error, root-cause it immediately. Don't just note the correction — trace the error to its source, fix the source, and prevent…