Docs/Getting Started/Core concepts at a glance

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.