diff --git a/readme.md b/readme.md index 9a8d44d..750563c 100644 --- a/readme.md +++ b/readme.md @@ -8,7 +8,7 @@ This is injected into every conversation turn automatically. It covers things li ## Tier 2 — Vault Living Files (stable reference, on-demand) -When hot memory hits about 67% capacity, I scan for entries that are stable enough to promote. Things like environment configs, operational context, and known failure patterns get written to markdown files in the Obsidian vault. The assistant reads these on-demand when deeper context is needed. This keeps the per-turn context window lean while still having access to months of accumulated knowledge. +When hot memory hits about 67% capacity, I scan for entries that are stable enough to promote. Things like environment configs, operational context, and known failure patterns get written to markdown files in the SilverBullet vault. The assistant reads these on-demand when deeper context is needed. This keeps the per-turn context window lean while still having access to months of accumulated knowledge. ## Tier 3 — Daily Notes (searchable timeline) @@ -26,7 +26,7 @@ A cron job fires and does three things: - Fetches tasks from Todoist via API, categorizing them by project (work, personal, side business) - Fetches calendar events from Google Calendar, filtering out noise like sleep tracking entries -- Creates or updates the daily note at `Daily/YYYY-MM-DD.md` in the Obsidian vault +- Creates or updates the daily note at `Daily/YYYY-MM-DD.md` in the SilverBullet vault The daily note follows a strict format: @@ -62,20 +62,21 @@ Here's the data flow in simple terms: External APIs (Calendar, Todoist, Stocks, Email, Weather) feed into the AI assistant. The assistant processes this data through scheduled cron jobs and interactive skills. The results land in two places: - Hot memory for immediate context (preferences, corrections, active state) -- Obsidian vault for persistent storage (daily notes, operational docs, stable reference files) +- SilverBullet vault for persistent storage (daily notes, operational docs, stable reference files) The vault also feeds back — the assistant reads vault files on-demand when it needs deeper context that isn't in hot memory. It's a two-way street. --- -## Why Obsidian Specifically +## Why SilverBullet -A few reasons this works well with Obsidian specifically: +A few reasons this works well with SilverBullet as the self-hosted platform: -- **Plain text markdown** — The AI can read and write Obsidian notes without any special plugins or APIs. It's just files on disk. -- **Backlinks and graph view** — When the assistant links to a person, decision, or file in a daily note, Obsidian's native linking creates a visual graph of connections over time. You can actually see how topics relate. +- **Plain text markdown** — The AI can read and write notes without any special plugins or APIs. It's just files on disk. +- **Backlinks and graph view** — SilverBullet supports native backlinks and graph visualization, allowing the assistant to create meaningful connections over time. - **Searchable history** — Every daily note is a timestamped record. Need to know what happened last Tuesday? Search the vault. The AI can do the same thing. -- **Works without the AI** — The vault is still a fully functional PKM system even if the assistant goes offline. No vendor lock-in. +- **Works without the AI** — The vault remains a fully functional note-taking system even if the assistant goes offline. No vendor lock-in. +- **Self-hosted and standalone** — Runs entirely on the VPS with no dependency on external services or TrueNAS. --- @@ -114,166 +115,16 @@ The key discipline is the filing rules: operational events go to the daily log, --- -## Getting Started (High Level) +## Implementation Status -Here is the template you can copy paste to your Hermes. +This system is currently being implemented using **SilverBullet** as the self-hosted note-taking platform on the VPS. -### Obsidian + AI Assistant — Starter Template +- SilverBullet binary installation in progress +- Atomic Markdown Memory structure will be layered on top +- Hermes integration via file access and structured prompts -Copy and paste the instructions below into your AI assistant (Hermes, Claude, Cursor, etc.) to set up an Obsidian vault that works as persistent long-term memory. - -#### Part 1 — Tell Your AI Assistant This - -Paste the following block into your AI assistant as system instructions or a persistent prompt. Adjust the vault path to match where you actually create the vault. - -``` -OBSIDIAN VAULT INTEGRATION - -You have access to an Obsidian vault that serves as persistent long-term memory. - -The vault root is: /PATH/TO/YOUR/VAULT/ - -VAULT STRUCTURE: - -Vault/ -├── Daily/ # YYYY-MM-DD.md daily notes — append-only -├── System/ -│ └── Assistant/ -│ ├── context.md # Operations, health, family overview -│ ├── preferences.md # Communication style, delivery rules -│ └── environment.md # Hardware, services, known issues -├── Work/ -│ └── Business/ # Work documents, reports, logs -├── Personal/ -│ └── Projects/ # Side projects, personal tracking -├── People/ # Contacts, relationships, MOC -└── Inbox/ # Unclassified incoming — file these later - -RULES FOR VAULT ACCESS: - -1. DAILY NOTES - - Create Daily/YYYY-MM-DD.md each day if it does not exist - - Use frontmatter: - --- - date: YYYY-MM-DD - type: daily - tags: [daily] - --- - - Sections in order: ## Tasks, ## Schedule, ## Log, ## Wins, ## Context - - Tasks use checkboxes: - [ ] Task Description (p2), (p3), (p4) - - Log entries: - HH:MM AM/PM — what happened - - Wins: completed items with checkmark: ✅ Task Description - - Context section: backlinks to People, Decisions, Files - - APPEND ONLY — never delete content from daily notes - -2. MEMORY PIPELINE (Three Tiers) - - Tier 1 — Hot Memory: Your per-session memory (MEMORY.md or equivalent). - Injected every turn. Keep it under 6000 characters. Covers active projects, - recent corrections, communication preferences, procedural quirks. - - Tier 2 — Vault Living Files: When hot memory hits ~67% capacity, promote - stable entries to System/Assistant/ files (context.md, preferences.md, - environment.md). Read these on-demand when deeper context is needed. - - Tier 3 — Daily Notes: Searchable timeline. Every event logged during the day - creates a permanent timestamped record. Search past daily notes to recall - what happened on a specific date. - -3. CONTENT ROUTING - When the user says "log it" or "save it", route by type: - - Operational events (meetings, calls, decisions) → Daily/YYYY-MM-DD.md ## Log - - System issues, technical fixes → System/Assistant/logs/issues-fixes-log.md - - Learned corrections, preferences → Hot memory (or vault if stable) - - Recurring workflows → Save as a reusable skill/procedure file - - Unknown incoming → Inbox/ until classified - -4. VAULT HYGIENE - - Always use Obsidian wiki-links: [[People/Name]], [[Daily/2026-04-23]] - - Build the link graph — every person, decision, and file mentioned in daily - notes should be linked so the vault graph view shows real connections - - Notice orphaned notes unprompted — if a note has no incoming links, flag it - - Never delete vault content without explicit user confirmation - - Use absolute paths when referencing vault files - -5. PERSONA FILE SETUP - Tell the user to create the following three files in System/Assistant/: - - System/Assistant/context.md — Current life situation, active things to track. - Include: operations overview, health goals, family, work dependencies, - location/timezone, admin tendencies. - - System/Assistant/preferences.md — How the user likes things done. - Include: communication style, agenda ordering, delivery preferences, - session style, task management conventions. - - System/Assistant/environment.md — Hardware, tools, known issues. - Include: hardware specs, services/ports, key file paths, - known failure patterns, troubleshooting steps. - -6. HOT MEMORY FILES - The AI assistant uses two memory files that are injected into every session: - - MEMORY.md — Your personal notes (procedural knowledge, environment facts, - tool quirks, lessons learned). Format each entry with a § separator. - Keep entries compact and factual. Delete entries that are no longer relevant. - - USER.md — Who the user is (name, role, preferences, timezone, family, - vault lookup map). This helps the assistant personalize responses. - - Both files live in the AI's memory directory (e.g., ~/.hermes/memories/) - and are automatically loaded at the start of each session. -``` - -#### Part 2 — Create the Vault Folder Structure - -Run this in your terminal to scaffold the vault: - -```bash -VAULT_PATH="/PATH/TO/YOUR/VAULT" - -mkdir -p "$VAULT_PATH"/{Daily,System/Assistant/logs,Work/Business,Personal/Projects,People,Inbox} - -# Create the three core assistant files -cat > "$VAULT_PATH/System/Assistant/context.md" << 'EOF' -# Assistant — Context - -Current life situation, health protocols, and active things to track. -Read when context matters for decisions or advice. +Detailed implementation notes are tracked in the `docs/` folder. --- -## Operations - -- Describe your main work or business here -- Note any secondary projects or side operations - -## Health - -- Goals and baselines -- Any recurring protocols or reminders - -## Family - -- Key people and relationships -- Link to People/ folder for details - -## Work Dependencies - -- Who you wait on for approvals or sign-offs -- Blockers and their schedules - -## Location & Timezone - -- Home address (optional) -- Timezone -- Weather location - ---- - -*Last updated: YYYY-MM-DD* -EOF -``` - -(The rest of the template follows the same pattern for `preferences.md`, `environment.md`, logs, and People MOC. The full cleaned version is committed below.) - ---- - -**Note**: This is a cleaned and reformatted version of the original Reddit post. The structure, headings, and code blocks have been restored for readability. The core content remains unchanged. \ No newline at end of file +*Last updated: 2026-05-23* \ No newline at end of file