Loam is free and open source for macOS. Your notes stay plain Markdown files on your disk. Download for macOS.[Download for macOS.]

# The second brain for builders and AI.

##

Your notes stay local Markdown. Every feature is a plugin, and your agent builds the missing ones.

[Download for macOS]

✓ Free & open source · ✓ Native Swift · ✓ AI native

Claude Code using the Loam skill

Make your own app. Your agent builds it.

Your agent reads the skill, writes the plugin in Swift, runs its tests and reloads the app. Replace the apps you pay for with ones that fit you.

Make your own app. Your agent builds it.

Your agent reads the skill, writes the plugin in Swift, runs its tests and reloads the app. Replace the apps you pay for with ones that fit you.

YOUR AGENTClaude CodeCodexCursorGemini CLI

Make me a plugin that lists my open pull requests.

Skill · loam guide and the plugin API
Feature · .loam/plugins/open-prs/Sources/OpenPrs/OpenPrsPlugin.swift
Test · loam plugin test, 6 passed
Done · plugin loaded in the app
All notesTasksCalendarOpen PRsNEW
Open PRs3 open · 1 review requested

Half the tokens of an MCP.

Your notes stay plain Markdown, so your agent greps the lines it needs, as fast as in any folder of files. Notion’s MCP sends whole pages: twice the tokens for the same answers, and a longer wait.

$ task 1: How much does my course cost right now?
Tokens your agent spends
Loam CLI + skill1 TASK119K TOKENS
Obsidian (plain files)1 TASK139K TOKENS
Notion MCP1 TASK238K TOKENS
Claude Haiku 5.5, 6 everyday questions, 3 runs each, median. Same 83 notes in each. How we measured ↗

Half the tokens of an MCP.

Your notes stay plain Markdown, so your agent greps the lines it needs, as fast as in any folder of files. Notion’s MCP sends whole pages: twice the tokens for the same answers, and a longer wait.

Native, not Electron.

Loam is a Swift app: a third of Obsidian’s memory, a sixth of Notion’s, with the same 10,000 notes open. And it stays compatible with Obsidian: .md, .base and .canvas files open in both.

Native, not Electron.

Loam is a Swift app: a third of Obsidian’s memory, a sixth of Notion’s, with the same 10,000 notes open. And it stays compatible with Obsidian: .md, .base and .canvas files open in both.

Memory at rest
Loam0 MB
Obsidian0 MB
Notion0 MB
M1 Pro, 16 GB, same 10,000-note vault, all processes of each app 20 s after launch, median of 10 runs. How we measured ↗

Your agent works while your Mac sleeps

Push your vault to a private Git repo. Claude Code on the web, Codex or a cron on your VPS clones it, edits plain Markdown and pushes. Loam pulls, and the open window updates on its own.

YOUR CLOUD AGENTClaude CodeCodexCursorGemini CLI

Move the launch to November 3 and update the plan.

git pull · encrypted remote
Editing Projects/Course/about.md
git push · a41f9c2
ProjectsCourseDailyabout.mdNEW
about.mdUpdated by your agent · just nowLaunch: November 3Next: write the email sequenceWebinar moved to November 2

Your agent works while your Mac sleeps

Push your vault to a private Git repo. Claude Code on the web, Codex or a cron on your VPS clones it, edits plain Markdown and pushes. Loam pulls, and the open window updates on its own.

Boris Cherny
“It outperformed everything else by a lot. By a lot. This was surprising.”
Boris ChernyCreator of Claude CodeWatch the interview ↗

On why Claude Code dropped its vector database for plain file search.

$ loam search.content q="course price"
Projects/Course/about.md:14 · Price: €497

Files beat databases.

You and any agent can read a file. No server, no subscription, nothing to migrate when you switch AI.

  • Plain files your agent already reads

    CommonMark with YAML frontmatter, Obsidian-compatible .base collections and JSON Canvas boards. Claude Code, Codex or Hermes need no plugin.

  • One set of commands, two front ends

    Every button in the app is a loam command: JSON on stdout, real exit codes. The window and your agent drive the same vault.

Trust

Private by design

Your vault never touches our servers: there are none. Read how the pieces fit in the [architecture docs].

  • Local-first
  • Encrypted Git remote
  • No account needed
  • Open source
Trust

Private by design

Your vault never touches our servers: there are none. Read how the pieces fit in the architecture docs.

Local-first
Encrypted Git remote
No account needed
Open source

Start in one prompt

Paste the prompt into your coding agent. It installs Loam, opens a folder as your vault and installs the loam skill, so it knows the rules before it touches a note.

Agent onboarding prompt:

Help me install Loam, the free Markdown notebook for macOS, and open a folder as my first vault.

Start in one prompt

Paste the prompt into your coding agent. It installs Loam, opens a folder as your vault and installs the loam skill, so it knows the rules before it touches a note.

Agent onboarding prompt

Help me install Loam, the free Markdown notebook for macOS, and open a folder as my first vault.

ClaudeCodexHermes Agentopencode

Works with every agent that reads files

  • Claude Code
  • Hermes Agent
  • OpenClaw
  • Dots
  • Muse
  • Grok bot
  • Cursor
  • Codex

Works with every agent that reads files

Claude Code
Hermes Agent
OpenClaw
Dots
Muse
Grok bot
Cursor
Codex

Questions builders ask

RAG only means “search first, then answer”. loam search.content finds the lines, the agent reads them: no index to rebuild, no embeddings drifting from your notes, nothing to host.

Hand your agent the keys. Keep the files.

Free and open source. Your agent builds the rest.

Hand your agent the keys. Keep the files.

Free and open source. Your agent builds the rest.