/obsidian-ai-setup
USE WHEN the user runs `/obsidian-ai-setup` or asks to set up their vault, bootstrap the assistant, initialize the system, or configure the AI Pro Obsidian Plugin.
Claude Code
$ npx -y skills add anliberant/obsidian-ai-setup --skill obsidian-ai-setup --agent claude-code
Codex
$ npx skills add anliberant/obsidian-ai-setup --skill obsidian-ai-setup -a codex -y
Cursor
$ npx skills add anliberant/obsidian-ai-setup --skill obsidian-ai-setup -a cursor -y
Gemini CLI
$ npx skills add anliberant/obsidian-ai-setup --skill obsidian-ai-setup -a gemini-cli -y
GitHub Copilot
$ npx skills add anliberant/obsidian-ai-setup --skill obsidian-ai-setup -a github-copilot -y
OpenCode
$ npx skills add anliberant/obsidian-ai-setup --skill obsidian-ai-setup -a opencode -y
Windsurf
$ npx skills add anliberant/obsidian-ai-setup --skill obsidian-ai-setup -a windsurf -y
SKILL.md
obsidian-ai-setup.SKILL.mdname: obsidian-ai-setup
description:
Bootstrap an Obsidian vault with the AI Pro Obsidian Plugin. Creates the complete vault structure,
system files, Obsidian configuration, memory system, hooks, and output styles, then runs
personalized onboarding to tailor the workspace to the user. Uses a single universal structure
with no mode selection. Trigger when the user says "set up", "bootstrap", "initialize",
"onboarding", or runs `/obsidian-ai-setup`.
AI Pro Obsidian Plugin — Setup + Onboarding
USE WHEN the user runs `/obsidian-ai-setup` or asks to set up their vault, bootstrap the assistant, initialize the system, or configure the AI Pro Obsidian Plugin.
> [!important] User-facing language This skill is fully in English. Everything the user sees must be > in English: orientation messages, form headings, bullet prompts in Phase B, the final Phase B+ > question, confirmations, and summaries. > > Internal instructions in this `SKILL.md` and technical values such as file names, frontmatter > keys, `os-mode`, and slugs must remain as written.
> [!note] One universal mode This skill builds **one universal structure** — there is no "individual > / company" mode selection. The base is a lightweight professional structure (`Context`, > `Projects`, `Daily`, `Resources`, `Skills`, `Intelligence`) that works equally well for a solo > operator or a small team. Do not create `Departments/`, `Team/{org}/Profiles/`, or separate > business templates. `os-mode` is always `professional`.
This is a two-phase process:
- **Phase A**: Bootstrap — Create the universal directory structure and system files
- **Phase B**: Onboarding — Interview the user and personalize everything
Pre-flight Check
Check if `claude.md` or `CLAUDE.md` exists **only** in the current working directory. Do NOT search subdirectories or parent directories. Check only the exact current working directory path.
- **If it exists**: The vault is already set up. Ask the user:
- Question: `This vault is already configured. What would you like to do?`
- **`Restart onboarding`** — `Keep the structure and update files using new answers`
- **`Full reset`** — `Delete everything and start from scratch (confirm twice before deleting)`
- **`Cancel`** — `Do nothing`
- **If it does NOT exist**: Proceed with full setup (Phase A + Phase B)
> [!note] No mode selection There used to be a Phase 0 for choosing "individual / company" mode. It > has been removed. The structure is always universal (`os-mode: professional`). Go directly to > Phase A. Do not ask about a mode.
---
Phase A: Bootstrap
Create the universal directory structure and write all system files. There is one structure — always `os-mode: professional`.
Resolving reference file paths
Every `references/<file>.md` mentioned below lives in the `references/` subdirectory next to **this SKILL.md** — not in the user's working directory. Two conventions matter:
- **Read paths** (`references/foo.md`) → resolve relative to this SKILL.md's directory.
- **Write paths** (`./Foo/CLAUDE.md`) → resolve relative to the user's current working directory
(the vault root).
If the Read tool cannot open a `references/...` path directly because some harnesses mount the skill at a path that differs between Read and Bash, run a quick discovery step **once** before Step A.2:
# Find the references directory; cache the result for the rest of Phase A.
find / -type d -path '*obsidian-ai-setup/references' 2>/dev/null | head -1
Use that absolute path as the prefix for every reference read in Phase A and Phase B. Do not retry path resolution per file. Resolve once and reuse.
Step A.1: Create Directory Structure
One universal structure for everyone:
mkdir -p .claude
mkdir -p Context
mkdir -p Projects
mkdir -p Daily
mkdir -p Resources
mkdir -p Skills
mkdir -p Intelligence/meetings/team-standups
mkdir -p Intelligence/meetings/client-calls
mkdir -p Intelligence/meetings/one-on-ones
mkdir -p Intelligence/meetings/general
mkdir -p Intelligence/competitors
mkdir -p Intelligence/market
mkdir -p Intelligence/decisions
mkdir -p Intelligence/archive
No `Departments/`, no `Team/`, no `Onboarding/` — those were business-mode folders and are no longer used.
Step A.2: Write System Files from References
Read each reference file and write it to the corresponding local path. The reference files contain the complete content for each system file.
**Shared system files:**
| Reference File | Creates at Local Path | | -------------------------------------- | ------------------------- | | `references/settings-json-template.md` | `./.claude/settings.json` | | `references/claudeignore-template.md` | `./.claudeignore` | | `references/gitignore-template.md` | `./.gitignore` |
**Root CLAUDE.md template:**
| Reference File | Creates at Local Path | | ---------------------------------- | --------------------- | | `references/claude-md-template.md` | `./CLAUDE.md` |
**Per-folder routing indexes** (every major folder gets its own `CLAUDE.md` — this matches the production vault convention):
| Reference File | Creates at Local Path | | -------------------------------------- | -------------------------- | | `references/claude-md-context.md` | `./Context/CLAUDE.md` | | `references/claude-md-projects.md` | `./Projects/CLAUDE.md` | | `references/claude-md-daily.md` | `./Daily/CLAUDE.md` | | `references/claude-md-intelligence.md` | `./Intelligence/CLAUDE.md` | | `references/claude-md-resources.md` | `./Resources/CLAUDE.md` | | `references/claude-md-skills.md` | `./Skills/CLAUDE.md` |
For each row: read the reference file, then write its content to the local path.
Step A.3: Initialize Starter Context Files
**Do NOT create placeholder skills.** The `Skills/` folder is created empty, with only its `CLAUDE.md` r
Read more
name: obsidian-ai-setup description: Bootstrap an Obsidian vault with the AI Pro Obsidian Plugin. Creates the complete vault structure, system files, Obsidian configuration, memory system, hooks, and output styles, then runs personalized onboarding to tailor the workspace to the user. Uses a single universal structure with no mode selection. Trigger when the user says "set up", "bootstrap", "initialize", "onboarding", or runs `/obsidian-ai-setup`.
AI Pro Obsidian Plugin — Setup + Onboarding
USE WHEN the user runs `/obsidian-ai-setup` or asks to set up their vault, bootstrap the assistant, initialize the system, or configure the AI Pro Obsidian Plugin.
> [!important] User-facing language This skill is fully in English. Everything the user sees must be > in English: orientation messages, form headings, bullet prompts in Phase B, the final Phase B+ > question, confirmations, and summaries. > > Internal instructions in this `SKILL.md` and technical values such as file names, frontmatter > keys, `os-mode`, and slugs must remain as written.
> [!note] One universal mode This skill builds **one universal structure** — there is no "individual > / company" mode selection. The base is a lightweight professional structure (`Context`, > `Projects`, `Daily`, `Resources`, `Skills`, `Intelligence`) that works equally well for a solo > operator or a small team. Do not create `Departments/`, `Team/{org}/Profiles/`, or separate > business templates. `os-mode` is always `professional`.
This is a two-phase process:
- **Phase A**: Bootstrap — Create the universal directory structure and system files
- **Phase B**: Onboarding — Interview the user and personalize everything
Pre-flight Check
Check if `claude.md` or `CLAUDE.md` exists **only** in the current working directory. Do NOT search subdirectories or parent directories. Check only the exact current working directory path.
- **If it exists**: The vault is already set up. Ask the user:
- Question: `This vault is already configured. What would you like to do?`
- **`Restart onboarding`** — `Keep the structure and update files using new answers`
- **`Full reset`** — `Delete everything and start from scratch (confirm twice before deleting)`
- **`Cancel`** — `Do nothing`
- **If it does NOT exist**: Proceed with full setup (Phase A + Phase B)
> [!note] No mode selection There used to be a Phase 0 for choosing "individual / company" mode. It > has been removed. The structure is always universal (`os-mode: professional`). Go directly to > Phase A. Do not ask about a mode.
---
Phase A: Bootstrap
Create the universal directory structure and write all system files. There is one structure — always `os-mode: professional`.
Resolving reference file paths
Every `references/<file>.md` mentioned below lives in the `references/` subdirectory next to **this SKILL.md** — not in the user's working directory. Two conventions matter:
- **Read paths** (`references/foo.md`) → resolve relative to this SKILL.md's directory.
- **Write paths** (`./Foo/CLAUDE.md`) → resolve relative to the user's current working directory
(the vault root).
If the Read tool cannot open a `references/...` path directly because some harnesses mount the skill at a path that differs between Read and Bash, run a quick discovery step **once** before Step A.2:
# Find the references directory; cache the result for the rest of Phase A. find / -type d -path '*obsidian-ai-setup/references' 2>/dev/null | head -1
Use that absolute path as the prefix for every reference read in Phase A and Phase B. Do not retry path resolution per file. Resolve once and reuse.
Step A.1: Create Directory Structure
One universal structure for everyone:
mkdir -p .claude mkdir -p Context mkdir -p Projects mkdir -p Daily mkdir -p Resources mkdir -p Skills mkdir -p Intelligence/meetings/team-standups mkdir -p Intelligence/meetings/client-calls mkdir -p Intelligence/meetings/one-on-ones mkdir -p Intelligence/meetings/general mkdir -p Intelligence/competitors mkdir -p Intelligence/market mkdir -p Intelligence/decisions mkdir -p Intelligence/archive
No `Departments/`, no `Team/`, no `Onboarding/` — those were business-mode folders and are no longer used.
Step A.2: Write System Files from References
Read each reference file and write it to the corresponding local path. The reference files contain the complete content for each system file.
**Shared system files:**
| Reference File | Creates at Local Path | | -------------------------------------- | ------------------------- | | `references/settings-json-template.md` | `./.claude/settings.json` | | `references/claudeignore-template.md` | `./.claudeignore` | | `references/gitignore-template.md` | `./.gitignore` |
**Root CLAUDE.md template:**
| Reference File | Creates at Local Path | | ---------------------------------- | --------------------- | | `references/claude-md-template.md` | `./CLAUDE.md` |
**Per-folder routing indexes** (every major folder gets its own `CLAUDE.md` — this matches the production vault convention):
| Reference File | Creates at Local Path | | -------------------------------------- | -------------------------- | | `references/claude-md-context.md` | `./Context/CLAUDE.md` | | `references/claude-md-projects.md` | `./Projects/CLAUDE.md` | | `references/claude-md-daily.md` | `./Daily/CLAUDE.md` | | `references/claude-md-intelligence.md` | `./Intelligence/CLAUDE.md` | | `references/claude-md-resources.md` | `./Resources/CLAUDE.md` | | `references/claude-md-skills.md` | `./Skills/CLAUDE.md` |
For each row: read the reference file, then write its content to the local path.
Step A.3: Initialize Starter Context Files
**Do NOT create placeholder skills.** The `Skills/` folder is created empty, with only its `CLAUDE.md` r
Bootstrap a fully personalized Obsidian vault with a single command. Obsidian AI Setup is an open-source onboarding system that transforms an empty Obsidian vault into a structured AI-ready knowledge base.
More skills from other plugins.
browser-use
Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…
agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…
Questions about obsidian-ai-setup.
- Which coding agents can use obsidian-ai-setup?
- obsidian-ai-setup installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

