qvib.pro
RU

Second brain on Claude Code

A knowledge base architecture on Obsidian and Claude Code: sync, auto-collected sources, priorities.md, and a daily /briefing and /debrief cycle.

MCP бесплатно профи

Claude Code (Anthropic) официально поддерживает CLAUDE.md, кастомные slash-команды и MCP-коннекторы к внешним источникам checked 2026-07-16

Updated: 16.07.2026

$ second-brain/ ├── raw/ # source material before processing │ ├…

Open source ↗

Second brain on Claude Code

The "second brain" is not a new idea, but it usually runs into manual busywork: filing notes into folders, trying to remember what mattered this week, pulling sources together from different places by hand. Below is a vault architecture built on Obsidian and Claude Code, where Claude takes over part of that busywork itself: from auto-collecting sources to a daily question cycle. You can build it with no sysadmin experience — every step below is given as-is, with no truncated prompts.

What the system is made of

Four components: a note vault in Obsidian, a CLAUDE.md file that tells Claude Code how to work with that vault, sync with a private GitHub repository, and a set of slash commands for repeating actions — collecting sources and running the daily cycle. None of the components works as "magic out of the box" — each one is set up once with specific prompts inside Claude Code Desktop.

Step 1 — prepare the vault

Install Claude Code Desktop and open the folder holding your future "second brain" in Obsidian as the vault. A CLAUDE.md file should appear inside — it plays the same role as README.md does for a human, only it is addressed to the model: what lives in the vault, how it is structured, which slash commands are already set up.

Recommended folder structure inside the vault:

second-brain/
├── raw/              # source material before processing
│   ├── claude-exports/   # exported Claude conversations
│   ├── granola-notes/    # meeting notes
│   └── notion-exports/   # pages and databases from Notion
├── wiki/             # processed domain knowledge
│   ├── index.md      # master catalog
│   ├── log.md         # daily entry journal
│   ├── concepts/      # concepts and terms
│   ├── projects/       # specific projects
│   └── people/         # notes on people
├── journal/          # daily entries
├── content/          # content pipeline
└── priorities.md      # what your priorities are

Step 2 — sync and your first connector

Create a private GitHub repository and set up Obsidian Git for auto-sync — the vault stops depending on a single device and does not get lost if something fails. Next, connect your first MCP connector: it gives Claude direct access to an external source (a task tracker or meeting notes, for example) instead of copying files by hand.

Step 3 — auto-integrating sources

The /pull-sources command is a slash command you create once in .claude/commands/: it pulls material from your connected sources straight into the raw/ folder, from where a separate step (/ingest) turns it into structured notes in wiki/. The output from a task tracker, for example, is a note with clear fields: source, date received, task number, status, team, link — not raw text you then have to format by hand.

Step 4 — the priorities document

The priorities.md file is what Claude checks against before deciding what is important and what is noise. Recommended sections: "Projects" (what is in flight right now), "Areas" (ongoing zones of responsibility), "Resources" (reference material), "Archive" (closed projects), "Key people" (context on important contacts). Without this file the model either gets lost in the details or weighs everything equally.

Step 5 — the daily cycle: /briefing and /debrief

Two slash commands cover the daily routine. /briefing is a short summary at the start of the day: what is current based on priorities.md and wiki/log.md. /debrief is an end-of-day conversation: Claude asks a few short questions, writes a structured entry into wiki/log.md and proposes page updates before saving.

The prompt for creating the /debrief command inside Claude Code Desktop:

Create .claude/commands/debrief.md that:
1) Reads priorities.md to get today's focus.
2) Asks me 3-4 short questions one at a time: what did I
   accomplish, what got stuck, what did I learn, what matters
   tomorrow.
3) Writes a structured entry to wiki/log.md with a timestamp
   and my answers.
4) If answers mention existing wiki pages, suggest updates.
   If something new appeared, suggest creating a new page.
5) If priorities shifted, suggest updates to priorities.md,
   but ask for confirmation before writing.
6) End with a one-line summary of the day.

$ARGUMENTS is optional. If provided, skip the questions and
use $ARGUMENTS as the day's summary directly.

The /briefing command is built on the same principle, except it reads priorities.md and the latest entries in log.md rather than asking questions.

Step 6 — cloud routines

Once running /briefing by hand every morning gets old, you can move it into a cloud routine — a Claude Code feature for recurring scheduled tasks. The same /briefing runs without you — on a schedule or on an event — and the result lands in the vault just the same. After this step, the "morning summary → work → evening review" cycle only asks you to answer the /debrief questions instead of launching commands manually.

How we do it

We use a similar principle — a structured vault plus slash commands on top of it — in our internal automation around the qvib engine as well: don't rely on the model's memory between sessions, keep the context in files that Claude reads by explicit rules.

  • The "Claude Code" section: qvib.pro/arsenal/claude-code/
  • Slash commands and automation: qvib.pro/arsenal/claude-code-projects/
  • Vibe coding: a personal knowledge base: qvib.pro/

Читать по-русски →