I Built an Obsidian Second Brain That Thinks Alongside My Mind. Here's the Setup.

I built a second brain in Obsidian that doesn’t just store what I know. It thinks alongside how I actually work.


The problem with most productivity systems

Most productivity frameworks hand you a rigid structure and expect your brain to conform to it.

Inbox zero. Time blocks. Second brain hierarchies. They’re all built on the assumption that you show up the same way every day.

You don’t. Nobody does.

Some days you’re firing on all cylinders and could tackle anything. Other days you’re running at 30% and just need to get through it. The system should know the difference and route you accordingly.

Here’s how I built mine in Obsidian, with Claude as the thinking partner woven into it.


What you need to install first

Claude can generate all the templates, scripts, and config files. But a few things need to be set up manually before any of it works.

Obsidian plugins to install (all free, available in the Community Plugins browser inside Obsidian):

  • Terminal — gives you a real terminal panel inside Obsidian. This is the gateway. Everything starts here.
  • Templater — powers the daily note template with dynamic dates and logic
  • Dataview — renders the live kanban and file tables. Enable “JavaScript queries” in its settings or the kanban won’t render
  • MetaBind — the interactive energy vote and task buttons. Enable “JS execution” in its settings
  • Tasks — tracks tasks across all daily notes and surfaces carried-forward items
  • Calendar (optional) — lets you navigate to any day’s note from a sidebar calendar

Manual steps Claude cannot do for you:

  1. Install Obsidian
  2. Install the plugins above through the Community Plugins browser
  3. Enable JS execution in both Dataview and MetaBind settings
  4. Point Templater to your 99 System/Templates/ folder in its settings
  5. Install Claude Code (the CLI tool) on your machine

Once those are done, open the Terminal plugin inside Obsidian, navigate to your vault root, and run claude. From that point, Claude can build everything else.


The structure

The vault has a simple numbered hierarchy. Numbers are just sort order.

0 Inbox/ - everything lands here first
1 Daily Notes/ - one note per day, YYYY-MM-DD.md
2 Thinking/ - evergreen notes, mental models, ideas
3 Projects/ - one subfolder per project
4 References/ - book notes, articles, clipped content
99 System/ - templates, scripts, Claude config

The magic is in 99 System/. That’s where Claude lives.

I built this entire structure from the Terminal plugin inside Obsidian. One prompt to scaffold the whole thing:

Prompt: “Set up a folder structure for an Obsidian second brain vault. Create these top-level folders: 0 Inbox, 1 Daily Notes, 2 Thinking, 3 Projects, 4 References, and 99 System. Inside 99 System, create subfolders for: Templates, Scripts, Agents, Config, and Skills. Add a brief _about.md file in each folder explaining its purpose.”


Teaching Claude how your vault works

Once the folders exist, create a CLAUDE.md at the root. This is the file Claude Code reads at the start of every session. It tells Claude what the vault is for, how the folders work, what conventions to follow, and which plugins are installed.

Prompt: “I use Obsidian as a personal knowledge base. Help me write a CLAUDE.md file at the root of my vault that explains the structure, conventions, and installed plugins. My vault has folders for: inbox, daily notes, thinking/evergreen notes, projects, references, and system files (templates, scripts, agents, config, skills). I use Templater for dynamic templates, Dataview for live queries (JavaScript queries enabled), MetaBind for interactive buttons (JS execution enabled), and the Tasks plugin for cross-vault task tracking. I use wikilinks for internal links, not markdown links. Write it so Claude Code can work inside the vault without breaking anything.”

Once Claude understands the vault, you can ask it to create notes, process your brain dump, link related ideas, or update living documents. It won’t step on your structure.


The daily note: energy-first design

Every day starts with one question: how is your brain actually showing up today?

Not what you hope to accomplish. Not what’s on your calendar. What’s actually true right now.

The daily note template is built with Templater and has a MetaBind energy vote at the top. It writes directly to the note’s frontmatter when you tap it:

energy_morning: launched | steady | foggy

Three states:

LevelWhat it meansWhat it unlocks
🚀 LaunchedEverything clicks. GO mode.High + steady tasks
☀️ SteadyPresent and functional.Steady + low tasks
🌫️ FoggyBrain is slow or heavy.Low tasks only

This one vote changes everything downstream.

The kanban board reads the frontmatter value and highlights the columns active for today’s energy. On a foggy day, the high-energy column is still visible. It just doesn’t have the “focus” badge. The system isn’t blocking you. It’s being honest about what today is for.

To generate the daily note template:

Prompt: “Create an Obsidian daily note template using Templater syntax. It should include: YAML frontmatter with date, day, and empty energy_morning and energy_evening fields. A MetaBind inline select at the top for energy voting (options: Launched, Steady, Foggy) that writes to the energy_morning frontmatter field. Sections for: morning brain dump, open threads, tasks with a backlog, notes and ideas, and an end-of-day energy vote. The end-of-day vote should write to energy_evening.”

Manual step: Save the generated template to 99 System/Templates/Daily Note.md. Then in Templater settings, set your templates folder to 99 System/Templates. New daily notes will use it automatically when created from the Calendar plugin.


The kanban that sorts itself

Tasks in this system have energy tags baked into them. 🚀 for high-focus work, 🐌 for low-energy tasks, and everything else defaults to ☀️ steady.

The daily note has a Dataview kanban that:

  • Pulls tasks from every daily note, not just today’s
  • Shows a ↩️ badge on tasks carried forward from previous days
  • Highlights the active columns based on today’s energy vote
  • Has an In Progress column so you can mark what you’re actively working on

You add tasks using MetaBind buttons (High, Steady, Low) that run small JavaScript files and inject directly into today’s backlog. No typing task syntax. Tap and name it.

To generate the kanban and task buttons:

Prompt: “Write a DataviewJS script for an Obsidian daily note that renders a kanban board with five columns: High (🚀), Steady (☀️), Low (🐌), In Progress, and Done. It should pull tasks from all notes in 1 Daily Notes/, detect the current note’s energy_morning frontmatter value, and highlight the columns appropriate for that energy level with a ‘focus’ badge. Tasks not from today’s note should show a ↩️ badge. Also write three MetaBind button configs (High, Steady, Low) that each call a separate JS script to append a new task under a #### Today heading in the current note.”

Manual step: Save the JS files to 99 System/Scripts/ and reference them in your MetaBind button configs using the file: path option.


The /morning ritual

Every morning I run /morning in Claude Code inside the vault.

Claude reads yesterday’s note, checks what’s open, notes the energy arc (morning vote vs evening vote), and creates today’s note if it doesn’t exist. It outputs a tight brief:

Morning brief -- 2026-02-27
Energy arc yesterday: Launched -> Steady landing
Open tasks:
🚀 Finish API integration
☀️ Reply to two emails
Recent files:
3 Projects/leafling -- publish-post.md
Today's note is ready -> 1 Daily Notes/2026-02-27.md
First: vote your energy at the top.

No padding. Just what you need to start.

To build your own version:

Prompt: “I want to create a /morning skill for Claude Code that reads my Obsidian daily note from yesterday, extracts open tasks and energy frontmatter fields (energy_morning and energy_evening), then creates today’s daily note from my Templater template at 99 System/Templates/Daily Note.md and outputs a morning brief showing the energy arc, open tasks by energy level, and recently modified files. Walk me through how to structure this as a .claude/commands/morning.md file.”

Manual step: Claude Code slash commands live in .claude/commands/ at the root of your vault. Claude can create this file directly when run from your vault directory.


These are starting points, not instructions

The prompts in this post will get you a working system. But the whole point is that you make it yours.

Maybe your energy levels are different. Maybe you want a weekly review instead of a morning brief. Maybe your folder structure reflects how you actually think, not how I think.

Claude is good at this part. Once the vault exists and CLAUDE.md is in place, just describe what you want:

  • “Add a weekly review section to my daily note template”
  • “Create a /weekly command that summarises what I worked on this week”
  • “I want a Projects folder that tracks status and links to a log file for each one”

The system grows with you. That’s the whole thing.


The honest bit

Setting this up takes an afternoon, not 20 minutes.

The Dataview kanban script alone is around 100 lines of JavaScript. MetaBind button config has a learning curve. And CLAUDE.md needs iteration — the first version I wrote was too vague and Claude kept making assumptions I didn’t want.

The plugin setup is the part that trips most people. Dataview and MetaBind both require JavaScript execution to be manually enabled in their settings. If your kanban renders as a blank block or your buttons don’t respond, that’s almost always why.

What surprised me: once the structure existed, it started feeling like a thinking partner rather than a storage system. Claude doesn’t just retrieve things. It connects them. Morning brain dumps get processed into living documents. Projects link back to the thinking that spawned them. The vault gets smarter as it grows.

What I’d do differently: start smaller. Just the folder structure and the daily note template. Get the energy vote working. Then layer in the kanban. Don’t try to build everything in one session.


Takeaway

The best productivity system isn’t the most optimised one. It’s the one that still works on your worst day.

Build yours to fit your brain. Not the other way around.


← Back to blog