Skip to content

norrietaylor/second-brain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Second Brain Installer

An installer for provisioning Obsidian vaults as personal knowledge management systems, powered by Claude Code automation.

What It Does

This repo is not the vault itself — it's the installer. Running install.sh creates a fully configured Second Brain vault at a location of your choosing, with:

  • Type-dispatched notes — every note has a type frontmatter field (person, project, task, meeting, etc.) with enforced schemas
  • Live database views — Obsidian Bases files that query notes by frontmatter properties
  • AI-powered daily workflows — Claude Code slash commands for morning briefings (/today), end-of-day processing (/eod), meeting capture (/meeting), and more
  • Configurable integrations — GitHub, GitLab, Slack, Notion, Google Workspace, and Granola meeting sync

Prerequisites

Tool Required Install
Homebrew Yes /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Obsidian Yes brew install --cask obsidian
Obsidian CLI Yes (v1.12+) See Obsidian docs
Claude Code Yes npm install -g @anthropic-ai/claude-code
jq Yes brew install jq
Python 3 Yes Ships with macOS
gum Auto-installed brew install gum

The installer will check for these and offer to install missing tools via Homebrew.

Optional (based on integrations)

Tool For Install
GitHub CLI (gh) GitHub sync brew install gh
GitLab CLI (glab) GitLab sync brew install glab

Install

git clone https://github.com/norrietaylor/second-brain.git
cd second-brain
./install.sh

The interactive installer will prompt for:

  1. Vault name — used in Obsidian and CLI commands (default: second-brain)
  2. Vault location — where to create the vault (default: ~/Documents/obsidian/<name>)
  3. Integrations — which features to enable:
    • GitHub sync (issue/PR tracking, notifications)
    • GitLab sync (MR/issue tracking, todos)
    • Slack activity tracking (time estimates for Harvest)
    • Notion task tracking (tasks, mentions, follow-ups — via Notion MCP)
    • Google Workspace (Gmail triage, Calendar agenda, Gemini meeting minutes — via Google MCP)
    • Granola meeting sync (transcription)
    • Git-backed vault (version control with update support)
  4. Your profile — name, role, email (used in meeting notes and config)

Update

If you installed with "Git-backed vault" enabled:

cd /path/to/this/installer-repo
git pull
./install.sh --update

The updater:

  1. Finds your vault (or prompts for the path)
  2. Updates the sb/upstream tracking branch with new template files
  3. Merges into your main branch
  4. You resolve any conflicts in files you've customized

For non-git vaults, --update overwrites installer-managed files directly.

What Gets Installed

Installer-managed files (updated on --update)

  • .claude/commands/ — slash commands (/today, /eod, /meeting, etc.)
  • .claude/skills/ — Claude Code skills (classify, obsidian-cli, gh-onmyplate, etc.)
  • .claude/agents/ — automation agents
  • .claude/settings.json — permissions and hooks
  • 05 Meta/claude/ — type schemas (*.claude.md)
  • .claude/scripts/ — shell scripts (gh-fetch, sb-ingest, granola-ingest, etc.)
  • 05 Meta/templates/ — Templater templates
  • 05 Meta/bases/ — system base views
  • 02 Areas/*.base — browsing views
  • 01 Projects/*.base — project tracking
  • CLAUDE.md — vault documentation for Claude Code

User-owned files (created once, never overwritten)

  • 05 Meta/config.yaml — classification, Slack, Notion, and Granola settings
  • 05 Meta/context/ — work profile, priorities
  • 05 Meta/logs/ — classification audit trail
  • 04 Data/ — all your notes
  • .claude/settings.local.json — your local Claude Code settings

Vault Architecture

See the installed vault's CLAUDE.md for full documentation on:

  • Type dispatch system and note schemas
  • File naming conventions
  • Obsidian CLI usage
  • Classification pipeline
  • GitHub/GitLab sync architecture
  • Granola meeting sync
  • Slack activity tracking
  • Notion task tracking

Development

This repo uses the following structure:

├── install.sh          ← main installer + updater
├── lib/                ← installer helper scripts
├── template/           ← vault source files (copied to target)
├── scaffold/           ← user-owned files (created once)
└── docs/               ← development specs and proofs

To work on the installer:

cd /path/to/second-brain   # this repo
claude                      # uses root CLAUDE.md for context

About

Setup a second brain using claude

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors