SETUP

Setup — first run

The vault structure, config, commands, templates, dashboards, and seed notes are built. Two things need you (Claude Code can't sideload Obsidian community plugins).

1. Open the vault

Obsidian → Open folder as vault → select llm-pkm. Core config (folders, daily-notes, bookmarks, Bases) loads automatically.

2. Install community plugins

Settings → Community plugins → Browse, install + enable these 5:

PluginWhy
Dataviewdashboards, MOC queries, Cockpit panels
Templatersmart note templates (90-Meta/Templates/)
Taskstask queries in daily note + dashboards
Excalidrawrenders the architecture diagram in System.md
Iconize (Icon Folder)folder glyphs

Bases is built-in (core) — already enabled, no install needed.

After enabling:

  • Dataview → turn ON "Enable JavaScript Queries" (Cockpit needs DataviewJS).
  • Templater → set template folder to 90-Meta/Templates; optionally enable folder triggers.
  • Cockpit CSS → Settings → Appearance → Snippets → toggle cockpit on (pre-listed).

3. Embed the Claude Code terminal (Command Center)

Install one terminal plugin so Claude runs inside Obsidian, split under the Cockpit:

PluginNotes
Terminal (polyipseity)Community store. Settings → Terminal → add an integrated profile, startup command claude, working dir = vault root. Open via command palette → "Terminal: Open integrated terminal".
alt: Claude SidebarCommunity store. Auto-launches Claude in a sidebar pane, multi-tab. Simpler, less configurable.

Then drag the terminal pane to a horizontal split below the Cockpit note → mirrors the screenshot layout.

Workflow: Cockpit command tiles copy the slash-command to clipboard (click → "✓ copied") → paste into this terminal → run. (No auto-send — deliberate, avoids fragile keystroke injection.)

4. Pin the Cockpit

Bookmarks are pre-seeded (🛰️ Cockpit, 🏠 Home, etc.). Open the Bookmarks pane → click 🛰️ Cockpit. (Want it to auto-open on launch? Install the optional Homepage plugin and point it at 90-Meta/Dashboards/Cockpit.md.)

The Cockpit is now a Command Center: header + LIVE badge, context-burn bar, knowledge-pulse cards (zettels/sources/projects/inbox with deltas), copy-command tiles, and today/projects panels. All DataviewJS + cockpit.cssno Datacore. Numbers refresh on /status-refresh.

5. The commands (programs)

Run from Claude Code in the vault dir. Each is one "program" operating on the vault.

CommandWhat it does
/capture <text>Zero-friction inbox. Appends a timestamped line to 00-Inbox/Inbox.md. No filing, no thinking — just dump the thought and move on.
/process-inboxThe triage loop. Reads each inbox item, classifies it (task / project / idea / reference / area), routes it to the right folder with proper frontmatter, suggests links, then clears what it processed. Empties the inbox.
/dailyToday's session log. Creates/opens 01-Daily/YYYY-MM-DD.md from the template; pulls open tasks, yesterday's carryover, and projects due today. Your standup view.
/new-project <name>Scaffold a project. Creates 10-Projects/<name>.md from template (outcome, tasks, due date); links it to a parent Area.
/zettel <idea>Atomic note. Creates a one-idea permanent note in 50-Zettel/, searches the vault for related notes, and weaves in up/related links so it's never an orphan.
/link [note]Graph weaver. Scans the vault for notes that should link to the target but don't yet (shared concepts/tags), then proposes + applies related links. Defaults to the most recently edited note.
/moc <topic>Map of Content. Builds/refreshes 60-MOCs/<topic>.md — a curated index of the notes on that topic, and fixes their up: backlinks.
/research <question>Cited research. Fans out web search (researcher subagent), writes a 70-Sources/ literature note with numbered citations, and spins out a synthesis zettel.
/weekly-reviewGTD review (read-only). Surfaces stale / on-hold / overdue projects and tasks, flags duplicates, and proposes archive moves — applies nothing without your OK.
/status-refreshCockpit telemetry. Parses the latest Claude Code session log → writes 90-Meta/status/claude.json (tokens, context %, model) for the Cockpit panel.

Typical day: /capture thoughts as they hit → /process-inbox once to file them → /daily for the standup. Knowledge work: /research or /zettel/link/moc to organize. Maintenance: /weekly-review weekly.

Quick smoke test

/capture "buy domain for personal site"
/process-inbox
/daily
/status-refresh

Then open the Cockpit — telemetry tile (tokens, context %), today's tasks, active projects, recent thinking, inbox pressure should all render.

Note: git autosave runs automatically (Stop hook) — every turn that changes files makes one commit. Commit-only; you push manually. See CLAUDE.md → Version control.

Known v1 limitations (iterate later)

  • Context % accuracy: the session transcript's model field omits the [1m] suffix, so a 1M-context session is measured against the 200k window (shows ~2.5× high). Fine for trend; fix when needed.
  • Telemetry is push, not live: numbers are as-fresh-as the last /status-refresh.
  • Daemons deferred: no auto inbox-sweep / auto daily-note yet (by design — see plan). Promote proven loops to /schedule cron + hooks later.

See 90-Meta/System.md for the architecture and CLAUDE.md for the kernel contract.