← All posts

April 18, 2026

Claude + Obsidian: Build a Personal Knowledge Base That Thinks With You (MacOS/iCloud/IOS Setup)

Claude + Obsidian: Intelligent Knowledge Management System

Most knowledge management systems have the same problem: you save things, but you never find them again. Your browser bookmarks are a graveyard. Your notes app is a pile. The information exists — you just can't access it when you need it.

This tutorial shows you how to build a personal knowledge base where an AI is the librarian. You clip content from anywhere (a tweet, an article, a PDF), drop it in an inbox folder, and Claude Code processes it into a structured, searchable wiki — with summaries, key takeaways, and cross-linked concepts. When you want to retrieve something, you ask Claude and it navigates the wiki to find the answer.

Note:


The Problem

Here's the typical workflow:

  1. You see something interesting on X or read a great article.
  2. You save it somewhere — bookmarks, a notes app, a "read later" list.
  3. You never look at it again.
  4. When you actually need that information, you can't find it and end up Googling from scratch.

The deeper issue is that saving and organizing are two separate, manual steps. Most people are good at saving but never get to organizing. And even when notes are organized, retrieving the right note at the right moment is its own challenge.


The solution


The Tools

Obsidian

Obsidian is a note-taking app that stores everything as plain Markdown files on your local device. Unlike Notion or Evernote, there's no proprietary database — your notes are just .md files in a folder. This matters because:

Obsidian calls a folder of notes a vault. You'll create one vault that serves as your knowledge base.

Claude Code

Claude Code is Anthropic's AI coding assistant that runs in your terminal. Unlike a chat interface, Claude Code can read files, write files, search your filesystem, and execute commands — all inside a project directory you point it at.

For this setup, Claude Code acts as your librarian. You give it a set of rules (in a file called CLAUDE.md) that tell it how to process new content and how to answer questions. It reads your raw notes, writes structured wiki articles, and navigates the knowledge base on demand.

Requirement: Pro (Paid)

Obsidian Web Clipper

Obsidian Web Clipper is an official browser extension and iOS share sheet integration. It lets you save any webpage — or a selected portion of it — directly into your Obsidian vault as a Markdown file. You'll configure it to save everything into a specific raw/ inbox folder, where Claude Code picks it up.

Requirement: Free

iCloud

iCloud is Apple's built-in cloud storage and synchronization service that automatically securely stores photos, files, notes, and passwords, keeping them updated across all your Apple devices.

Requirement: Free (5Gb)


Folder Structure

Your vault will have three top-level folders:

vault/
├── raw/          ← inbox: everything you clip lands here
├── wiki/         ← Claude's domain: organized, structured articles
│   ├── _master-index.md
│   └── ai-agents/
│       ├── _index.md
│       └── transformer-architecture.md
└── output/       ← query results and generated reports

Step 1: Create Your Obsidian Vault

  1. Download and install Obsidian.
  2. Open Obsidian and click Create new vault.
  3. Name it (e.g., my-wiki) and choose a location on your iCloud filesystem. Note the full path — you'll need it.
  4. Inside the vault folder, create three folders: raw, wiki, output.
  5. Inside wiki/, create a file called _master-index.md with this starter content:
# Master Index

This is the entry point for the knowledge base. Each topic has its own subfolder.

## Topics

(Claude will populate this as you add content.)

Step 2: Add the CLAUDE.md Configuration

CLAUDE.md is the instruction file that tells Claude Code how to behave inside this project. Create a file called CLAUDE.md at the root of your vault with the following content:

## Knowledge Base Rules

- This is an LLM-maintained knowledge base. You are the librarian.
- The wiki/ folder is YOUR domain - you write and maintain everything in it. I rarely edit wiki files directly.
- raw/ is the inbox. When I dump files here, you process them into the wiki during a "compile" step.
- Files in raw/ can be markdown, pdf, note with a link to a post on X.
- If a file in raw/ only contains a post to X, open the link and read the content of the post.
- wiki/_master-index.md is the entry point. It lists every topic folder with a one-line description. Always keep this up to date.
- Each topic gets its own subfolder in wiki/ (e.g., wiki/ai-agents/) with its own _index.md that lists all articles in that topic with brief descriptions.
- Always use [[wiki links]] to connect related concepts across topics.
- When compiling raw material:
  1. Read the raw file
  2. Decide which topic it belongs to (or create a new one)
  3. Write a wiki article with key takeaways and relevant links
  4. Update that topic's _index.md
  5. Update wiki/_master-index.md
  6. If a raw file spans multiple topics, create articles in both and cross-link
- Keep articles concise - bullet points over paragraphs.
- Include a ## Key Takeaways section in every wiki article.
- output/ is for query results and generated reports.
- When answering questions, read _master-index.md first to navigate, then drill into the relevant topic _index.md, then read specific articles.
- When I ask you to "compile", process everything in raw/ that hasn't been compiled yet into the wiki.
- When I ask you to "Audit" or "lint", review the wiki for inconsistencies, broken links, gaps, and suggest improvements.

This file is the core of the system. Claude reads it at the start of every session and uses it as the rulebook for how to manage your knowledge base.


Step 3: Install Obsidian Web Clipper (Chrome)

Installation

  1. Go to the Chrome Web Store and search for Obsidian Web Clipper, or find it at obsidian.md/clipper.
  2. Click Add to Chrome and confirm.
  3. Pin the extension to your toolbar for easy access (click the puzzle-piece icon → pin Obsidian Web Clipper).

Configuration

  1. Click the Web Clipper icon in your toolbar.
  2. Click the Settings (gear) icon.
  3. Under Vault, select your vault from the dropdown. If it doesn't appear, make sure Obsidian is open and the vault is loaded.
  4. Under Default save location, change it from the root folder to raw. This is the key step — every clip goes straight into your inbox without any manual routing.
  5. Leave the Template as default (or customize it — the default Markdown output works well).

Clipping a page


Step 4: Install Obsidian Web Clipper on iOS

Installation

  1. Open the App Store and install Obsidian if you haven't already.
  2. Open Obsidian on iOS, create or open your vault (you can sync it via iCloud — see the Obsidian sync settings).
  3. For Web Clipper on iOS, Obsidian uses the native Share Sheet. Install the Obsidian Web Clipper — it adds itself to your iOS share sheet automatically when Obsidian is installed.

Configure the default save folder

  1. Open Obsidian on iOS → Settings (gear icon) → Web Clipper.
  2. Set Default folder to raw.
  3. Tap Save.

Now any content you share to Obsidian from Safari, Twitter/X, or any other iOS app will land directly in raw/.


Step 5: Saving a Post from X (Twitter)

On Chrome (Desktop)

  1. Navigate to the X post you want to save.
  2. Click the Obsidian Web Clipper icon in your toolbar.
  3. The extension captures the post text and URL as Markdown.
  4. Click Add to Obsidian — saved to raw/.

Alternatively, you can save just the URL. Create a new .md file in raw/ with a single line:

https://x.com/karpathy/status/1234567890

Claude will detect that the file only contains a URL to X, fetch the post content, and process it into the wiki.

Note on Claude plugins: If you have the Firecrawl MCP plugin installed in Claude Code, disable it before running compile on X URLs. Firecrawl actively blocks requests to X/Twitter, which will cause Claude to fail silently when trying to fetch post content. Claude should use the default system browser (Chrome or Firefox) to retrieve X URLs — not Firecrawl.

On iOS

  1. Open the X app and navigate to the post.
  2. Tap the Share icon on the post.
  3. In the share sheet, scroll to find Obsidian (you may need to tap "More" the first time to enable it).
  4. Tap Obsidian — a save dialog appears.
  5. Confirm the save location is raw/ (it should default there after your configuration).
  6. Tap Save. Done.

Step 6: Running the Compile Step

Once you've accumulated a few files in raw/, open your terminal and navigate to your vault:

cd /path/to/your/vault
claude

This opens Claude Code in your vault directory. Claude reads CLAUDE.md and knows the rules. Now type:

compile

Claude will:

  1. Scan raw/ for unprocessed files.
  2. Read each one (and if it's just an X URL, fetch the post content).
  3. Decide which wiki topic it belongs to, creating a new topic folder if needed.
  4. Write a structured wiki article with bullet-point summaries and a Key Takeaways section.
  5. Update the topic's _index.md with a link and description.
  6. Update wiki/_master-index.md to reflect any new topics.
  7. Cross-link related articles using [[wiki links]].

You can compile as often or as rarely as you like — daily, weekly, or whenever raw/ fills up.


Step 7: Retrieving Information

The other half of the system is retrieval. Instead of searching through files manually, you ask Claude.

Open your vault in Claude Code:

cd /path/to/your/vault
claude

Then ask questions naturally:

What do I know about transformer architectures?

Claude will:

  1. Read wiki/_master-index.md to find the relevant topic folder.
  2. Open that topic's _index.md to find the right article.
  3. Read the article and answer your question in context.

You can also ask for synthesized reports:

Write a summary of everything I've saved about AI agents and put it in output/ai-agents-report.md

Claude will pull from multiple articles across the wiki, synthesize them, and write the report to output/.

Example queries

What are the key takeaways from the Andrej Karpathy lecture I saved?

Compare the approaches to RAG I've saved — what are the tradeoffs?

What do I know about attention mechanisms? Link to related concepts.

Audit the wiki — are there any broken links or topics with only one article?

Step 8: Automate Compile With a Cloud Scheduled Task

Running compile manually is fine, but you can have Claude do it automatically every day without touching your terminal. Claude Code supports cloud scheduled triggers — remote agents that run on a cron schedule in Anthropic's infrastructure.

Prerequisite: Your Obsidian vault must be in an iCloud directory for the remote agent to access it.

Create the "Obsidian Compile" trigger

  1. Open your terminal and navigate to your vault:
cd /path/to/your/vault
claude
  1. Tell Claude to create a scheduled trigger:
Create a scheduled task called "Obsidian Compile" that runs daily. 
The prompt is: Run the command "compile" in the Guillaume-Lai-Obsidian Obsidian Vault folder.
  1. Claude will ask what time you want it to run. Pick a time (e.g., 7am your local timezone). Claude automatically converts it to UTC for the cron expression and confirms with you before creating.

  2. Claude will show you the full configuration to review:

    • Name: Obsidian Compile
    • Schedule: Daily at your chosen time
    • Prompt: Run the command "compile" in the my-wiki Obsidian Vault folder. Process all uncompiled files in raw/ into the wiki following the rules in CLAUDE.md.
    • Folder: your vault's iCloud folder
  3. Confirm, and Claude creates the trigger. You'll get a link to manage it at https://claude.ai/code/scheduled.

What happens each day

At your scheduled time, a remote Claude agent spins up, clones your vault repo, reads CLAUDE.md, processes everything in raw/ that hasn't been compiled yet, and commits the updated wiki articles back to the repo. Your wiki grows automatically.

Managing the trigger

Note on Firecrawl

⚠️ If you have the Firecrawl Claude Code plugin installed, disable it before running compile — whether manually or via the scheduled task.

Firecrawl actively blocks queries to X (Twitter). When Claude tries to fetch an X post URL from raw/, Firecrawl intercepts the request and blocks it — the post content won't be retrieved and the file will fail to compile.

Claude should use the default system web browser (Chrome or Firefox) to fetch X URLs. To disable Firecrawl: open Claude Code settings → Plugins and toggle it off before compiling.

The cloud scheduled agent does not have the Firecrawl plugin installed, so it will correctly use Chrome to fetch X links without any extra configuration.


The Full Workflow in Practice

See something interesting on X (mobile)
    → Share to Obsidian → lands in raw/

Read an article on Chrome (desktop)
    → Web Clipper → lands in raw/

Drop a PDF in raw/ manually

Daily (automatic): Cloud scheduled task → "compile"
    → wiki gets updated, organized, cross-linked — no manual step needed

When you need to remember something: claude → ask in plain English
    → Claude navigates wiki and answers

Why This Works


Tips