Core concepts at a glance
Once you've created a note or two, here's the rest of the map. Each concept below is a short paragraph here and a full page in Concepts.
Notes and vaults
A note is a markdown file. A vault is a folder of them — any folder,
opened directly, with no import step. Frontmatter (the ----fenced YAML
block at the top of a note) is what turns a plain file into structured data
that bases, search, and agents can all act on.
Local-first and CRDT sync
Every vault works fully offline by default — local-only, the state of
every vault until you explicitly turn sync on. Enable sync and each note
starts replicating as its own CRDT document to your other devices and anyone
you share it with, merging conflict-free with no "resolve conflict" dialog.
One folder, _private/, is a hard exception: anything under it never syncs
and is invisible to agents, no matter what. See
[[Local-first and CRDT sync]].
Agents and skills
An agent is a markdown file in Agents/ — a system prompt plus
frontmatter for its backend, tools, and scope. Agents read and write your
vault through the same MCP tools a human-driven CLI uses, but their writes
land as proposals in a review queue by default — you accept or reject
each change, so nothing changes silently. A skill is a reusable
instruction packet (Skills/<id>/SKILL.md) you attach to any agent; its body
gets folded into that agent's system prompt on every run. See
[[Agents and skills]].
Bases and widgets
A base is a live, spreadsheet-like view over your notes — filter, sort,
and group by frontmatter fields, rendered as a table or kanban board, without
moving a single file. Bases compile to a small text DSL you can edit directly
and round-trip with Obsidian's .base format. A widget is a small,
sandboxed HTML mini-app (Widgets/<id>.html) you embed in a note via a code
fence — a counter, a chart, a live table — walled off in an iframe so its
code can never touch the rest of your vault. See [[Bases and widgets]].
Publishing
Publish turns part or all of a synced vault into a shared web page —
<origin>/p/<slug> — while the source markdown stays exactly where it is in
your vault. Scope it to a file, a folder, or the whole vault, and choose who
can see it: public, specific people, agents, or both.
CLI and MCP
The solomon CLI and the desktop app's built-in MCP server are two doors
into the same vault. Both go through the same propose-by-default write path
as any agent — so a script, a CLI command, and an agent all leave the same
kind of reviewable trail. Point Claude Code or Claude Desktop at the local
MCP server to let them read and write your vault directly.
Where to go deeper
- [[Local-first and CRDT sync]]
- [[Agents and skills]]
- [[Bases and widgets]]
- See the app's own Help menu for CLI, MCP, Search, Publish, and Templates topics.