# Project Context: The Brain
## Overview
A personal Obsidian Knowledge Base.
- **Root**: Private vault (notes, journals, PARA).
- **`output/`**: Public blog staging ([blog.iany.me](https://blog.iany.me)). See `output/AGENTS.md`.
## Structure
- **`dock/`**: Evergreen notes in progress.
- **`journal/`**: Daily logs.
- **`para/`**: Projects, Areas, Resources, Archives. See skill para-organizer.
- **`periodic/`**: Date-based organization.
- **`robot/`**: Automated imports.
- **`shore/`**: Vault support files.
## Key Files
- **`mise.toml`**: Environment config.
- **`shore/bin/*.md`**: Executable Python scripts. The shebang must be the first line; YAML frontmatter breaks Python execution.
## Conventions
- **Format**: Linux (LF), YAML Frontmatter, Obsidian Wikilinks/Embeds.
- Format standalone `.base` files with Obsidian's native Bases serializer so opening them does not create formatting-only diffs. Generic `stringifyYaml(parseYaml(text))` matches YAML style but not Bases view-key ordering.
- **New File**: Move to a topic in para/ or dock/ if no suitable topic found.
- Store note-level metadata in YAML frontmatter for Obsidian Bases. Use lower kebab-case property names.
- Workflow uses `#i` (todo), `#x` (done), `#now`, and `#later`.
- Zettel classifications use `#zettel/...`, such as `#zettel/fleeting` or `#zettel/index`.