Try Studio
In Browserno installDesktop Mac AppDesktop Windows App
GitHub & Skills
Download Skill for ClaudeDownload Skill for OpenAI Codex
For
Myself — personal twinMy company — team memory

Your Company Brain

Your Company Brain shouldn't start empty.

Second Brain Link bootstraps institutional memory from the exports you already have — LinkedIn Company, Google Workspace, Slack, CRM — into a structured, deduplicated, privacy-clean Company Brain your agents can use on day one. Emit to GBrain, or keep it in Obsidian for the team. Runs locally; employee PII is stripped in code.

building for yourself? Your personal brain →

Local-first·MIT·You're the data controller·Emits to GBrain
resolved employee

LinkedIn Company · Workspace · Slack · CRM → one Company Brain

Reads your exportsLinkedIn CompanyGoogle WorkspaceSlackCRM exports
Emits toGBrainObsidianClaude Code & Codex
1
Command from exports to brain
0
Employee PII written to disk
100%
Local — you stay data controller
MIT
Your security team reads every line

Second Brain Studio

Browse and talk to your Company Brain — right in the browser.

No setup, no plugins. Open your Company Brain in a live workspace: explore how teams, people, and accounts connect, read notes, and ask an AI that reasons over the whole graph. Runs locally — your keys and data stay on your machines.

secondbrainlink.com/studio
Second Brain Studio — interactive knowledge graph of your network
Second Brain Studio
Second Brain Studio desktop app — interactive knowledge graph

Interactive graph

A live, force-directed graph of every employee, team, customer and deal. Filter by type or source, search, and click any node to open its note.

Talk to your brain

A built-in assistant — Claude, OpenAI, Gemini and more — that cites the notes it used. Bring your own key; calls go straight to the provider. Nothing leaves your infrastructure.

Read, edit & track

A full Markdown editor with live preview, wikilinks and backlinks, plus a computed dashboard of your network and clusters.

The problem

The brain is the easy part now. Filling it isn't.

A new Company Brain is empty on day one, and your institutional knowledge is trapped in exports, shared drives, and old accounts. New hires re-learn what the company already knew. When someone leaves, the context leaves with them.

what your tools give you
exports/
├── workspace-export.zip       contacts, drive, 4.2 GB
├── slack-export.zip           channels.json, users.json
├── crm-accounts.csv           1,860 rows, stale owners
└── linkedin-company.zip       followers, employees

✕ four silos · same employee 4× · zero links
what your agents get
brain/
├── 00-org/company.md          org-rooted graph
├── 10-people/
   └── Dana-Reyes.md          1 person · 4 sources
├── 20-accounts/
   └── Northwind-Co.md        owner, history, stage
├── 40-projects/
└── _correlations/             people ↔ deals ↔ teams

✓ populated, deduplicated, privacy-clean — day one

Institutional memory that survives turnover — the context stays when people move on.

How it works

Point it at your exports. Get a connected Company Brain.

  1. 01

    Detect

    Point it at a folder of team exports — Workspace, Slack, CRM, LinkedIn Company. It catalogs every file, locally.

  2. 02

    Resolve

    Every employee, customer, and partner becomes one identity across sources — no more four copies of Dana.

  3. 03

    Build

    An org-rooted graph: the company at the center; people, accounts, deals, and projects linked around it. No AI calls.

  4. 04

    Emit

    Emit to GBrain for the team, or keep it as an Obsidian vault. Multiple entities get a cross-entity _correlations/ brain.

build_vault.py · company
$ build_vault.py exports --subject company -o brain/ Detecting… workspace slack crm linkedin-co Resolving people across sources… 412 employees · 1,860 customers Building org-rooted graph… → _correlations/ + per-team brains ✅ brain/ · --emit gbrain to populate GBrain

Agent-ready

Institutional memory, as structured data.

20-accounts/Northwind-Co.md
--- type: account sources: [crm, workspace, slack] owner: "[[Dana Reyes]]" backup_owner: "[[Sam Patel]]" stage: expansion last_touch: 2026-05-28 projects: ["[[Rollout Q3]]"] --- # 18 months of history, from your own tools…

Org-rooted graph

The company sits at the center — 00-org — with employees, accounts, deals, and projects as typed, linked notes around it.

Ownership is explicit

Every account knows its owner and backup. "Who has the relationship?" is a graph query, not tribal knowledge.

Cross-entity correlations

Multiple teams or entities each get a brain, plus a _correlations/ layer linking people ↔ deals ↔ teams across them.

Day-one agent context

Ships with in-brain instructions — point Claude Code or GBrain at it and it knows the schema immediately.

Works with GBrain

Bootstrap your GBrain Company Brain from data you already have.

GBrain is the brain layer — search, synthesis, team serving. We're the importer that fills it on day one, from your fragmented exports, identity-resolved and privacy-clean.

company → gbrain
build_vault.py company-data --subject company --emit gbrain -o brain/ gbrain import brain/ # your Company Brain, populated

Not affiliated with the GBrain project. We emit the open-source GBrain format — we're the importer; GBrain is the brain.

Privacy-first

Your team's data never has to leave your machines.

The whole import runs locally before anything reaches a server or a shared brain — you stay the data controller throughout.

Employee PII never written

Emails and phone numbers are stripped in code at parse time — they never reach disk.

Bodies never read

Slack and mail content is never parsed. Only a frequency and recency signal survives.

HR · payroll · security quarantined

Sensitive exports are skipped by a hard-coded quarantine list — no adapter can bypass it.

You stay the data controller

Everything runs on your infrastructure before anything reaches a server. MIT-licensed — your security team can read every line.

sources/common.py · Collector
# Privacy enforced in code — no adapter bypasses it. class Collector: def add_person(self, name, **f): if EMAIL_RE.match(name) or f.get("phone"): return # employee PII never written self._merge(nk(name), f) QUARANTINE = {"HR", "Payroll", "Security", "messages"}

Local-first by construction. → Read the privacy model

What your brain can do

Give your company's brain a goal.

acme-brain — ObsidianClaudian
Company Brain · reads your vault
Pick a goal above to ask your company brain…

Get started

Bootstrap your Company Brain.

company → gbrain
# GBrain Company Brain build_vault.py company-data --subject company --emit gbrain -o brain/ gbrain import brain/

Full docs →

Prefer we do it?

Hand us your exports. Get back a populated brain.

We can onboard your company's brain for you — import, resolve, privacy-clean, and hand it back in GBrain or Obsidian. (Early access.)

Local-first · MIT · you're the data controller · emits to GBrain.