second-brain-ingest
Process raw source documents into wiki pages. Use when the user adds files to raw/ and wants them ingested, says "process this source", "ingest this article",…
Set up a new Obsidian knowledge base with the LLM Wiki pattern. Use when the user wants to create a second brain, initialize a vault, set up a personal knowledge base, or says "onboard". Guides through an interactive wizard to configure vault name, location, domain, agent
$ npx -y skills add NicholasSpisak/second-brain --skill second-brain --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/second-brainContext preview
The summary Claude sees to decide when to auto-load this skill.
Set up a new Obsidian knowledge base with the LLM Wiki pattern. Use when the user wants to create a second brain, initialize a vault, set up a personal knowledge base, or says "onboard". Guides through an interactive wizard to configure vault name, location, domain, agent
name: second-brain description: > Set up a new Obsidian knowledge base with the LLM Wiki pattern. Use when the user wants to create a second brain, initialize a vault, set up a personal knowledge base, or says "onboard". Guides through an interactive wizard to configure vault name, location, domain, agent support, and tooling. allowed-tools: Bash Read Write Glob Grep
Set up a new Obsidian knowledge base using the LLM Wiki pattern. The LLM acts as librarian — reading raw sources, compiling them into a structured interlinked wiki, and maintaining it over time.
Guide the user through these 5 steps. Ask ONE question at a time. Each step has a sensible default — the user can accept it or provide their own value.
Ask: > "What would you like to name your knowledge base? This will be the folder name." > Default: `second-brain`
Accept any user-provided name. This becomes the folder name and the title in the agent config.
Ask: > "Where should I create it? Give me a path, or I'll use the default." > Default: `~/Documents/`
Accept any absolute or relative path. Resolve `~` to the user's home directory. The final vault path is `{location}/{vault-name}/`.
Ask: > "What's this knowledge base about? This helps me set up relevant tags and describe the vault's purpose." > > Examples: "AI research", "competitive intelligence on fintech startups", "personal health and fitness"
Accept free text. Use this to:
Auto-detect which agent is running this skill. State it clearly: > "I'm running in **[Agent Name]**, so I'll generate a **[config file]** for this vault."
Then ask: > "Do you use any other AI agents you'd like config files for? Options: Claude Code, Codex, Cursor, Gemini CLI — or skip."
Skip the agent that was auto-detected. Generate configs for all selected agents.
**Agent detection logic:**
Ask: > "These tools extend what the LLM can do with your vault. All optional but recommended:" > > 1. **summarize** — summarize links, files, and media from the CLI > 2. **qmd** — local search engine for your wiki (helpful as it grows) > 3. **agent-browser** — browser automation for web research > > "Install all, pick specific ones (e.g. '1 and 3'), or skip?"
After collecting all answers, execute these steps in order:
Run the onboarding script, passing the full vault path:
bash <skill-directory>/scripts/onboarding.sh <vault-path>
This creates all directories and the initial `wiki/index.md` and `wiki/log.md` files.
For each selected agent, read the corresponding template from `<skill-directory>/references/agent-configs/`:
| Agent | Template | Output File | Output Location | |---|---|---|---| | Claude Code | `claude-code.md` | `CLAUDE.md` | Vault root | | Codex | `codex.md` | `AGENTS.md` | Vault root | | Cursor | `cursor.md` | `second-brain.mdc` | `<vault>/.cursor/rules/` | | Gemini CLI | `gemini.md` | `GEMINI.md` | Vault root |
For each template, replace the placeholders:
Write the generated config to the vault.
Append the setup entry:
## [YYYY-MM-DD] setup | Vault initialized
Created vault "{{VAULT_NAME}}" for {{DOMAIN_DESCRIPTION}}.
Agent configs: {{list of generated config files}}.For each tool the user selected in Step 5, run the install command:
After each install, verify with `<tool> --version`. Report success or failure for each.
Show the user:
1. **What was created** — directory tree and config files 2. **Required next step** — install the Obsidian Web Clipper browser extension: > Install the Obsidian Web Clipper to easily save web articles into your vault: > https://chromewebstore.google.com/detail/obsidian-web-clipper/cnjifjpddelmedmihgijeibhnjfabmlf 3. **How to start** — open the vault folder in Obsidian, clip an article to `raw/`, then run `/second-brain-ingest`
These files are bundled with this skill and available at `<skill-directory>/references/`:
After setup is complete, the user's workflow is:
1. **Clip articles** to `raw/` using the Obsidian Web Clipper 2. **Ingest sources** with `/second-brain-ingest` — processes raw files into wiki pages 3. **Ask questions** with `/second-brain-query` — searches and synthesizes from the wiki 4. **Health-check** with `/second-brain-lint` — run after every 10 ingests or monthly
An LLM-maintained personal knowledge base built on the LLM Wiki pattern. Drop raw sources into a folder, let the LLM compile them into a structured wiki, and browse it all in Obsidian.
Repo: NicholasSpisak/second-brain
Process raw source documents into wiki pages. Use when the user adds files to raw/ and wants them ingested, says "process this source", "ingest this article",…
Health-check the wiki for contradictions, orphan pages, stale claims, and missing cross-references. Use when the user says "audit", "health check", "lint",…
Answer questions against the knowledge base wiki. Use when the user asks a question about their collected knowledge, wants to explore connections between…