Life OS Operations

This file is the human-readable operations manual for the Life OS vault. It is the source of truth for how this system works — independent of any AI tool, app, or platform. If Claude is ever replaced, this file is what you hand to whatever comes next.

Keep in sync with CLAUDE.md. Any time CLAUDE.md is updated, update this file too.


What This Is

Life OS is a personal PKM (Personal Knowledge Management) vault built on plain Markdown files with YAML frontmatter. It is managed primarily through Obsidian, but all content is tool-agnostic — any Markdown editor can read and edit it.

There are no build commands, tests, or code pipelines. Everything is notes.


Devices & Sync

DeviceTypeRole
MacMiniMac Mini (desktop)Primary machine — main vault work happens here
LMBPMacBook ProSecondary machine — also has Obsidian installed
Fold7Samsung Galaxy Fold 7 (Android)Mobile — quick captures, vocab, Tagebuch
  • Obsidian Sync is active across all devices. Changes propagate automatically.
  • The vault path on MacMini: /Volumes/LBMM SSD/Users/l_chalwell_external/Life OS

AI Assistant Setup

The vault uses an AI assistant (currently Claude) with a named persona system. Each persona has a defined specialty. Address them by name to invoke the right mode.

PersonaRoleInvoke with
AllanLead / Orchestrator / ProductivityDefault — any general vault or productivity task
HansPolyglot tutor (German-first, A2 context)“Hey Hans, …”
RemyFull-stack web & app developer”Remy, …”
ZoeInternet researcher / Obsidian & PKM expert”Zoe, …”
NovaPop culture / internet trends”Nova, …”
CalFinance & markets”Cal, …”
MilesMovies, TV & music”Miles, …”

Persona files live at claude/personas/. If switching AI tools, use these files to brief the new assistant on each persona’s voice and expertise.


Vault Structure (PARA-inspired)

FolderPurpose
0 INBOX/Default landing zone for new, unsorted notes
00 Projects/Active endeavors with a defined goal and end state
01 Areas/Ongoing areas of interest and responsibility
02 Resources/External media saved for reference (videos, articles, books, etc.)
04 People/Notes on public figures, creators, and thinkers
05 Archives/Inactive or completed notes
06 Journal/Daily journal entries
wiki/AI-maintained knowledge base — synthesis layer over raw resources
_Templates/Note templates (Obsidian Templater format)
zATTACHMENTS/Images and binary attachments
claude/AI session files — handoff notes, persona definitions
_Tools/Custom tools built for the vault (Life OS UI, SendIT)

Note Types & Templates

All templates live in _Templates/. When creating notes manually, follow the frontmatter structure of the relevant template.

TemplateUsed for
Area.mdArea hub note
Topic.mdA topic within an area
Person.mdPublic figure (type: person)
Band.mdMusic act (type: band)
Project.mdActive project (status: active)
Resource.mdSaved media (type: video/book/podcast/article/pdf/link)
Movie.mdFilm note (MediaDB body)
TV Series.mdSeries note (MediaDB body)
Album.mdAlbum note (MediaDB body)
Game.mdGame note (MediaDB body)
Book.mdBook note (Book Search plugin)
Daily Journal.mdDaily journal entry
New Idea.mdIdea capture note
Word - <Lang>.mdVocabulary entry (German/Spanish/Korean/Japanese)
Grammar Topic - <Lang>.mdGrammar note for a language
Sentence Theme - <Lang>.mdThemed sentence collection
Tagebuch - German.mdGerman free-writing journal entry

Frontmatter Conventions

Every note should have:

---
title: Note Title
type: [person|movie|series|book|video|article|podcast|area|topic|project|idea|daily|band|album|game]
area: "[[Area Name]]"
created: YYYY-MM-DD
modified: YYYY-MM-DD
status: unread   # for resources: unread | read
tags:
---

Rules:

  • created and modified use YYYY-MM-DD format — auto-managed by Obsidian Linter
  • area always uses wikilink format: "[[Area Name]]"
  • Resources start with status: unread and are updated to read when consumed
  • Projects use status: active | completed | on-hold
  • Multiple areas use YAML list format:
    area:
      - "[[Music]]"
      - "[[Film & TV]]"

Active Areas

AreaFolder
Artificial Intelligence01 Areas/Artificial Intelligence/
Film & TV01 Areas/Film & TV/
Finance01 Areas/Finance/
Gaming01 Areas/Gaming/
Health01 Areas/Health/
Languages01 Areas/Languages/
Martial Arts01 Areas/Martial Arts/
Music01 Areas/Music/
Productivity01 Areas/Productivity/
Religion01 Areas/Religion/
Science01 Areas/Science/
Self Development01 Areas/Self Development/

Language Learning Structure

Each language lives under 01 Areas/Languages/<Language>/ with these sub-folders:

FolderContents
Wortschatz/One note per vocabulary word
Grammatik/One note per grammar topic
Satzsammlung/Themed sentence collections with wikilinked vocabulary
Tagebuch/Free-writing practice entries

Active languages: German (A2), Spanish, Korean, Japanese.

German — Word Note Conventions

  • article: der / die / das
  • area: "[[German]]" — links back to hub
  • related-grammar: list of grammar topic wikilinks

German — Grammar Note Conventions

  • area: "[[German]]" — links back to hub
  • ## Related Vocabulary section with wikilinks to relevant words

German — Sentence Theme Conventions

  • area: "[[German]]"
  • grammar: grammar topic(s) being practised
  • Vocabulary words wikilinked inline within sentences

Existing German Grammar Notes (A2 foundations)

Located in 01 Areas/Languages/German/Grammatik/:


Primary Use Cases

  1. YouTube as a resource — Videos saved to 02 Resources/ for note-taking. Notes should expand on ideas and link outward — not passive summaries.
  2. German language learning — A2 level. 01 Areas/Languages/German/ sees frequent use. Vocabulary and grammar are the main active areas.
  3. Movies & TV — Heavy interest. Added via MediaDB plugin. Each note includes: synopsis, key takeaways, notable moments, quotes, links to related areas/topics/resources.

Knowledge Base (Wiki) System

The vault uses a compounding wiki pattern:

  • Raw sources live in 02 Resources/
  • A curated synthesis layer lives in wiki/
  • The AI maintains the wiki layer — creating, updating, and cross-referencing pages as new sources arrive

Wiki Structure

wiki/
  index.md          — catalog of all wiki pages (link + one-line summary)
  log.md            — append-only history of all ingest/query/lint operations
  topics/           — synthesis pages per topic or concept
  syntheses/        — analyses, comparisons, and answers worth preserving
  Wiki Map.canvas   — visual graph of topic relationships
  Wiki Map — Summary.md  — portable Markdown version of the graph

Wiki Topic Page Structure

---
title:
type: internal
area:
sources: (count of source notes)
created: YYYY-MM-DD
modified: YYYY-MM-DD
---
 
## Overview
 
## Key Concepts
 
## Synthesis
 
## Contradictions / Open Questions
 
## Related
- Topics: [[]]
- People: [[]]
- Resources: [[]]

Ingest Workflow

Division of labour:

  • You (the user): set area and topic in Obsidian before handing off; tell the AI what stood out or what you want to capture; update status: read when you’ve consumed the source
  • The AI: handles everything else — resource note, people/song/band notes, wiki topic pages, index, log

When processing a new source (video, article, book, etc.):

  1. Read the source — read the resource note in 02 Resources/ (or the URL directly)
  2. Ask what to capture — ask the user what stood out or what they want to preserve. The user’s angle determines what gets written, not just what the source covers.
  3. Update the resource note — add ## Summary and ## Notes sections; update status to read if consumed; set modified date
  4. Create people and connected notes — for any people, songs, bands, or specific works mentioned that deserve their own note, create them. Use the appropriate template and folder.
  5. Update or create wiki topic pages — this is the most important step. Every ingest should leave at least one wiki topic page touched or created. The wiki topic is where knowledge compounds — not the resource note.
    • Existing page → add insights, update synthesis, flag contradictions
    • No page → create one using the structure above
    • Capture any open questions or threads the user wants to dig into later in ## Contradictions / Open Questions
  6. Cross-area scan — check all active areas for meaningful connections, not just the obvious one
  7. Language layer — extract vocabulary or grammar worth capturing into the relevant language folder
  8. Update wiki/index.md — add or update the entry for any touched pages
  9. Append to wiki/log.md — one entry per ingest operation

Query Workflow

When answering a question from the wiki:

  1. Read wiki/index.md to identify relevant pages
  2. Read those pages and synthesise an answer with citations
  3. If the answer is a valuable analysis or comparison, offer to save it in wiki/syntheses/
  4. Append to wiki/log.md

Vault Health Check (Lint)

Periodically:

  1. Scan wiki pages for orphans, missing cross-references, stale claims
  2. Check 02 Resources/ for status: unread notes that could be processed
  3. Report findings as a prioritised list

Installed Plugins (Obsidian)

PluginPurpose
TemplaterTemplate engine — powers all _Templates/ files
Obsidian LinterFrontmatter and formatting consistency; auto-updates modified date
Media DBPopulates metadata for movies/TV/music/games from external APIs
Book SearchPopulates metadata for books from Google Books API
BasesDatabase views — filters/sorts notes by frontmatter (.base files)
Featured ImageAuto-assigns cover images to notes
Image ToolkitEnhanced image viewing
TerminalIn-app terminal access
ytranscriptFetch YouTube transcripts directly inside Obsidian

Obsidian Key Settings

  • New notes default to 0 INBOX/
  • Attachments go to zATTACHMENTS/
  • Links auto-update on rename (alwaysUpdateLinks: true)
  • Linter: YAML Timestamp enabled — auto-fills created/modified on save
  • Templater: “Trigger on new file creation” enabled

Obsidian-Specific Files (Portability Notes)

These file types are Obsidian-specific. If migrating away, use the summary/documentation equivalents.

File typeWhat it doesPortable equivalent
.baseDatabase view (filter/sort by frontmatter)Documented in wiki/topics/Bases & Views.md
.canvasVisual layout / mind mapSummary notes: Start Page — Summary.md, wiki/Wiki Map — Summary.md

Wikilinks ([[Note Name]]) are semi-proprietary but widely supported in Logseq, Foam, Dendron, and many editors. They are the connection standard for this vault and are worth keeping.


Custom Tools

ToolLocationPurpose
Life OS UI_Tools/life-os-ui/Browser-based vault reader/navigator (Node/Express + React/Vite, ports 3737/5173)
SendIT_Tools/sendit/Custom Mac↔Phone file transfer app

Starting Life OS UI

cd "_Tools/life-os-ui"
nohup node server/index.js > /tmp/life-os-api.log 2>&1 &
nohup npm run dev --prefix client > /tmp/life-os-client.log 2>&1 &
open http://localhost:5173

Stopping Life OS UI

lsof -nP -i :3737 -i :5173 | awk '/LISTEN/{print $2}' | sort -u | xargs kill

Session Continuity

The AI maintains a handoff file at claude/session-handoff.md.

If you are a new AI assistant reading this: Read claude/session-handoff.md first — before responding to any request. It contains the current state of all active work, recent decisions, and what to tackle next. Acknowledge what was last worked on before starting anything new.

At the start of every session: Read claude/session-handoff.md and briefly acknowledge what was last worked on.

At the end of every session (when the user says “wrap up”): Update claude/session-handoff.md with:

  • What was worked on
  • Current status of any tasks
  • Key decisions made
  • What to tackle next
  • Important file paths or context

This file syncs via Obsidian Sync across all devices — it is the live continuity thread across machines and sessions.