# Second Brain Ingest

Turn raw source material in a second-brain vault into linked wiki pages: read the...

- Repository: https://github.com/undefined-ui/second-brain-os (1169 stars)
- Category: Documents
- License: MIT
- Last updated: 2026-10-14
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add undefined-ui/second-brain-os --skill second-brain-ingest -g -a claude-code -y`
Codex: `npx skills add undefined-ui/second-brain-os --skill second-brain-ingest -g -a codex -y`
Cursor: `npx skills add undefined-ui/second-brain-os --skill second-brain-ingest -g -a cursor -y`
Gemini CLI: `npx skills add undefined-ui/second-brain-os --skill second-brain-ingest -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add undefined-ui/second-brain-os`

## Description

Turn raw source material in a second-brain vault into linked wiki pages: read the source, split it into concepts and entities, write or update pages, connect them to existing pages, and record the run in the log. Use this skill whenever the user drops a file into raw/, pastes an article, transcript or PDF and asks to add it to the vault, says "ingest this", "add this to my second brain", "process raw", or asks to catch up on unprocessed sources, even if they do not name the ingest command. Do NOT use for answering questions from an existing vault, for linting or repairing pages, or for editing notes the user wrote by hand.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Ingest a source

An ingest that only writes a summary page produces a vault that grows without
getting smarter. The whole value is in the second half of the job: connecting
the new material to what is already there. A page that lands unlinked is
invisible within a week.

## Core rule

Nothing is ingested until it is linked. Every run ends with the new pages
connected to existing pages in both directions.

## Workflow

1. **Read the source completely** before writing anything. Partial reads
   produce pages built from the introduction, which is where sources are least
   specific.
2. **Check what already exists.** Search the wiki for the main entities and
   concepts. Ingesting into an empty vault and ingesting into a vault of 300
   pages are different jobs: in the second, most of your work is updating
   pages, not creating them.
3. **Write the source page** in `wiki/sources/`. Record claims as claims, with
   the source attached.
4. **Extract concepts and entities.** One page per idea. If a concept page
   exists, add what this source contributes and update `updated:`. If it
   contradicts what is there, record both positions rather than replacing.
5. **Link in both directions.** The source page links to every concept and
   entity it touches; each of those links back. Add any missing target pages,
   or list them under Gaps in `index.md`.
6. **Update `index.md` and append to `log.md`** in the same run, because an
   index that lags is how a vault starts drifting.
7. **Report** what changed.

## Output format

End every run with this exact shape:

```
Ingested: <source name>
New pages: <n> (list)
Updated pages: <n> (list)
Links added: <n>
Contradictions found: <none | description>
Gaps created: <list of linked pages that do not exist yet>
```

## Calibration

The rest: https://github.com/undefined-ui/second-brain-os/blob/HEAD/skills/second-brain-ingest/SKILL.md
