From ai-brain-starter
Walks through configuring which document types (journals, books, meetings, etc.) your vault uses, enabling matching extractors and scaffolding custom ones.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ai-brain-starter:setup-vault-types [--add <typename> | --list | --remove <typename>][--add <typename> | --list | --remove <typename>]The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Figure out which doc types belong in this vault, then wire the right extractors.
Figure out which doc types belong in this vault, then wire the right extractors.
/second-brain-mapping ships with 18 extractors. You probably don't need all of them. This wizard:
No "start small" suggestion. You get all the capability for the types you have.
Scan the vault for files already declaring type: in frontmatter:
cd "$(vault-root)"
grep -rh "^type:" --include="*.md" -I . 2>/dev/null \
| sed 's/^type:\s*//' | sort | uniq -c | sort -rn | head -30
Tell the user: "Your vault already has these types declared: …"
Present this list, ask user to pick any/all that apply:
Core journaling & reflection:
[ ] journal — daily reflection / gratitude / mood
[ ] daily_log — task-log style (Roam/Capacities daily)
[ ] goal — OKRs, quarterly plans, vision docs
Reading & learning:
[ ] book — book notes, highlights, reviews
[ ] article — saved essays, blog posts, long reads
[ ] concept — evergreen concept notes (PKM backbone)
People & relationships:
[ ] person — CRM / contact notes
[ ] meeting — 1:1s, team syncs, call notes
Creative & publishing:
[ ] writing_draft — blog drafts, book chapters, newsletters
[ ] talk — speaking engagements, workshops given
Work & business:
[ ] business — pitches, memos, client docs, investor updates
[ ] strategy — strategic plans, frameworks, bets
[ ] negotiation_prep — deal prep, BATNA docs
[ ] company — entity notes (past/current ventures)
[ ] ai_chat — saved AI conversations (Claude, GPT, etc.)
[ ] playbook — SOPs, step-by-step guides
Lifestyle:
[ ] travel — trip notes, restaurants, places visited
Assets & reference:
[ ] asset — brand files, logos, templates
[ ] reference — cheat sheets, quick-lookup docs
Custom:
[+] Add your own type
For each checked type, symlink its extractor into the vault's scripts/extractors/ dir. Leave unchecked types uninstalled — no wasted files.
VAULT="$(vault-root)"
STARTER="$HOME/.claude/skills/ai-brain-starter" # or wherever it's installed
for type in ${SELECTED_TYPES[@]}; do
ln -sf "$STARTER/scripts/extractors/$type.py" "$VAULT/scripts/extractors/$type.py"
done
# Always install base + dispatcher
ln -sf "$STARTER/scripts/extractors/_base.py" "$VAULT/scripts/extractors/_base.py"
ln -sf "$STARTER/scripts/extractors/_dispatcher.py" "$VAULT/scripts/extractors/_dispatcher.py"
ln -sf "$STARTER/scripts/extractors/schemas.yaml" "$VAULT/scripts/extractors/schemas.yaml"
Prompt for:
podcast_episode, client_project)podcast_episode: guest_name, episode_number, record_date_iso, topics, pull_quotes_verbatim)Generate the extractor scaffold:
# scripts/extractors/<typename>.py
from _base import count_words, iso_date_from, extract_section, wikilinks_in, ExtractionResult
AUTO_FIELDS = ("<field1>", "<field2>", ...)
def extract(filepath, body, fm, context):
fields = {
"<field1>": ..., # TODO: user fills in extraction logic
"word_count": count_words(body),
}
return ExtractionResult(fields, AUTO_FIELDS, auto_fields=AUTO_FIELDS)
Also append the new type to schemas.yaml:
<typename>:
folder_hint: "<user-provided>"
fields:
- <field1>
- <field2>
...
Tell the user: "I scaffolded the extractor. Open scripts/extractors/<typename>.py and fill in the regex/section-parsing logic for each field. Then run /second-brain-mapping --type <typename> to test."
Offer to run /second-brain-mapping --metadata-only --dry-run to preview what would get extracted. If they agree, run it and report the counts per type.
After first real run, show them 3-5 Dataview queries they can now run on their data. Use the example_query field from schemas.yaml for each type they enabled. Example:
Now that you've extracted book metadata, try this query on any note:
```dataview
TABLE book_author, book_rating_1_5, book_themes
FROM "<your-books-folder>"
WHERE book_rating_1_5 >= 4
SORT book_rating_1_5 DESC
## Non-negotiables
- No "start small" recommendation. The user gets all capability for their doc types.
- No fabricated types. Only types they've confirmed they actually have, or scaffolds for custom types they explicitly name.
- Every custom extractor starts as a scaffold, not a guess. The user fills in the extraction logic.
- Idempotent: re-running `/setup-vault-types` doesn't break existing configuration — just updates the symlinks.
## Related skills
- `/second-brain-mapping` — runs the full extraction + insight pipeline. Use this AFTER setup.
- `/graphify` — optional Phase 2 of second-brain-mapping. Expensive, opt-in.
npx claudepluginhub mycelium-hq/ai-brain-starter --plugin ai-brain-starterExtracts structured metadata from typed vault files (books, meetings, people, articles, goals) and surfaces cross-type insights. Use to refresh a queryable vault index or discover cross-document patterns.
Initializes any folder as a Bedrock-powered Obsidian vault by creating entity directories, copying templates, configuring language/domain taxonomy, scaffolding example entities, and checking dependencies. Use for 'bedrock setup' or new vault bootstrapping.
Bootstraps BenAI Obsidian Plugin vault structure by creating directories like .claude, Context, Projects; system files including Obsidian config and memory system; then runs personalized onboarding interview in solopreneur/professional or business/team modes. Auto-activates on 'set up', 'bootstrap', 'initialize', 'onboarding', or /setup.