start-second-brain
Initialize a new Second Brain vault from a template repo — validate privacy, create folders, push, and onboard the user.
pinned to #8f8a6eeupdated 2 weeks ago
Ask your AI client: “install skills/start-second-brain”.
Requires the metahub MCP server installed in your client. Set up MCP.
mh install skills/start-second-brainmetahub onboarded this repo on the author's behalf.
If you own github.com/bradautomates/second-brain on GitHub, claim the listing to take over publishing. Your claim preserves the existing eval history and badges; only the curator label is replaced with verified-publisher on your next publish.
Stars
173
Last commit
2 weeks ago
Latest release
published
About this skill
Pulled from SKILL.md at publish time.
Set up a Second Brain vault after the user has created their repo from the GitHub template.
Evaluation report
WarningsAutomated checks the publisher passed at publish time — structure, docs, safety, and whether the artifact behaves as claimed.8f8a6ee· 2 weeks ago
Documentation
41Description quality
20 words · 120 chars — "Initialize a new Second Brain vault from a template repo — validate privacy, cre…"
README is present and substantial
10,031 chars · 11 sections · 9 code blocks
Tags / topics declaredwarn
No manifest tags and no GitHub repo topics
Add tags to the manifest (or GitHub topics on the repo) so the registry's search and category filters surface this artifact.
README has usage / example sections
found: Installation
Homepage / docs URL declared
no homepage declared (registry will use the repo URL) — info-only, not blocking
Release history
1- releasecurrent8f8a6eewarn2 weeks ago
Contents
Set up a Second Brain vault after the user has created their repo from the GitHub template.
Usage
Run from the vault's root directory:
python3 .claude/skills/start-second-brain/scripts/init_vault.py
Phase 1: Init Script
The script handles mechanical setup:
- Privacy check — uses
gh repo viewto verify the repo is private. Exits with an error if public. Warns if it can't determine visibility. - Creates vault folders — tasks, projects, people, ideas, context, daily, weekly, outputs (git doesn't track empty dirs, so these won't exist from the template)
- Creates template files —
.gitignore,context/_index.md,context/watchlists.md(skips if they already exist) - Initializes git — only if
.gitdoesn't exist (backwards compatibility for non-template setups) - Commits and pushes — commits the new folders/files, then pushes to origin to verify the full pipeline works
Phase 2: Obsidian-Git Setup
After the script finishes, present the obsidian-git plugin setup instructions:
Install the obsidian-git community plugin, then configure:
Setting Value Auto pull on startup Enabled Pull on interval (minutes) 30 Auto commit-and-sync (minutes) 10 Merge strategy Rebase Push on commit-and-sync Enabled This keeps Obsidian in sync with cloud farmers and Claude Code sessions. Farmed content appears automatically when you open Obsidian each morning.
If the user asks what these settings do, explain each one. If they want to skip Obsidian setup, that's fine — move on.
Phase 3: Context Onboarding (optional, one question)
Ask one question:
"Want to seed your context files? Dump whatever you've got — role, company, tools, Slack channels you care about, key people, active projects — and I'll sort it into the right files. Or skip this and fill them in later."
If they provide context:
- Parse their dump and distribute across
context/business-profile.md,context/watchlists.md, andcontext/writing-style.md(only update writing style if they mention preferences, otherwise leave defaults) - Fill in the watchlists keyword signals with the defaults from the template (deadline, blocker, decision signals) — don't leave them commented out
- Write all files in one pass, then confirm what was filled in
If they skip, move on.
Phase 4: How It All Works
Walk the user through how the system fits together. This is important. Present it conversationally, not as a wall of text. Cover:
The sync loop
Explain how three things keep the vault in sync:
- Claude Code sessions — when you use
/new,/today, or any command, changes are auto-committed and pushed to the private GitHub repo - Obsidian-git plugin — pulls those changes when you open Obsidian (and every 30 min), so farmed content and Claude edits appear automatically. Your manual Obsidian edits get committed and pushed too
- Cloud farmers — scheduled agents that clone the repo, read external sources (Slack, Fireflies, etc.), write findings into the vault, commit, and push. Next time Obsidian or Claude Code pulls, the farmed content is there
All three converge through git. No special sync service — just commits and pushes to the same private repo.
Available commands
Give a quick rundown of what they can do:
| Command | What it does |
|---|---|
/new <text> | Quick capture — describe anything and it gets classified and filed as a task, project, person, or idea |
/today | Generates a daily plan from due tasks and active projects |
/daily-review | End of day — compare what you planned vs what happened |
/history | See recent vault activity |
/farm <name> | Manually run a farmer (e.g., /farm slack) |
/create-farmer | Set up a new farmer for any connected service |
/schedule | Schedule a farmer to run automatically on a cron |
/delegate <task> | Fork a task to a background terminal session |
Context farmers
Explain what farmers are and how to set one up:
- Farmers are scheduled agents that read external services and write relevant findings into your vault
- Built-in farmers exist for Slack and Fireflies — or you can create custom ones for Gmail, Google Calendar, Firecrawl, etc.
- To set one up: run
/create-farmer, pick a service, configure what to watch, then/scheduleto run it automatically - Farmers use your
context/watchlists.mdto know what channels, people, and keywords to monitor - Farmed content gets tagged with
source: farmer/<name>so you can tell what was auto-captured vs manual
Phase 5: Farmer Setup
After the walkthrough, ask if they want to set up their first farmer now:
"Want to set up a context farmer now? If you added Slack channels or meetings to your watchlists, we can get those running. Just say which service — Slack, Fireflies, or something else — and I'll walk you through it with
/create-farmer."
- If they have Slack channels in their watchlists, suggest the Slack farmer first
- If they mentioned meetings or Fireflies, suggest the Fireflies farmer
- To set up a farmer, invoke
/create-farmerwhich walks through the interactive wizard - After creation, offer to schedule it with
/schedule - If they skip, that's fine — remind them they can run
/create-farmeranytime
Edge Cases
- Repo is public: Script exits with error and instructions to make it private
ghnot installed: Script exits. Help the user install and authenticate:- Install:
brew install gh(macOS) or see cli.github.com for other platforms - Authenticate: tell them to run
! gh auth loginso it runs interactively in the terminal - Once authenticated, re-run the init script
ghis required — privacy verification is not optional
- Install:
- Not a git repo: Runs
git init(backwards compat for non-template setups) - No remote configured: Commits locally, warns that push failed with manual instructions
- Context files already filled out: Skip onboarding for those files, or ask if user wants to update
Reviews
No reviews yet. Be the first.
Related
Verification Before Completion
Evidence before assertions, always
Writing Plans
Turn specs into phased implementation plans
Test-Driven Development
Red → green → refactor discipline for any feature or bugfix
mh install skills/start-second-brain