Pi Setup: Tablet-First AI + Obsidian System

Architecture

Tablet (HyperOS)
├── Obsidian (notes + inbox)
├── SSH client (to VPS)
└── Obsidian Sync (up/down)

VPS (DigitalOcean $6/mo — 1GB RAM)
├── Pi (coding agent — Node)
├── obsidian-headless --continuous (vault sync)
└── Vault files (synced via Obsidian Sync)

Order of Implementation

1. VPS Provisioning

  • [ ] Create DigitalOcean droplet: $6/mo (1GB RAM, 1 vCPU, Ubuntu)
  • [x] SSH in, apt update && apt upgrade
  • [x] Install Node.js 22+ (via nvm or nodesource)
  • [ ] Harden SSH (key-only auth, disable root login)
  • [ ] Set up a non-root user

2. Vault Sync Setup

  • [x] npm install -g obsidian-headless
  • [ ] ob login (interactive or --email --password)
  • [ ] ob sync-list-remote (confirm vault exists)
  • [ ] Clone vault: mkdir ~/vault && cd ~/vault && ob sync-setup --vault "Vault Name"
  • [ ] Test: ob sync (one-shot pull)
  • [ ] Enable continuous: ob sync --continuous (runs as service/tmux)

3. Pi Installation

  • [x] npm install -g pi (or whatever the install command is per pi.dev docs)
  • [x] Configure providers in ~/.pi/models.json (OpenRouter, DeepSeek, etc.)
  • [x] Set unified ~/AGENTS.md (symlinked from ~/vault/AGENTS.md) with:

    You have full access to my Obsidian vault at ~/vault. Inbox is at inbox/. Write new synthesized notes into concepts/ or tutorials/. Never edit existing notes. Use wikilinks like this for cross-references.

  • [x] Test: pi -p "read the inbox and summarize what's there" from ~/vault

4. Service Management

  • [ ] Set ob sync --continuous as a systemd service or run in tmux
  • [ ] Optional: cron for Pi session backups
  • [ ] Optional: uptime monitoring

5. Tablet Setup

  • [x] Install SSH client on HyperOS (Termux or similar)
  • [x] Generate SSH key, add to VPS ~/.ssh/authorized_keys
  • [x] Test SSH + Tmux workflow (persist sessions)
  • [ ] Pin Obsidian to homescreen as primary launcher

Workflow

  1. Dump raw material into Obsidian inbox/ on tablet
  2. Obsidian Sync pushes it to VPS
  3. SSH into VPS, run Pi in ~/vault
  4. Prompt Pi to read inbox, synthesize notes into concepts/tutorials
  5. obsidian-headless pushes changes back up
  6. Obsidian Sync pulls down to tablet
  7. Organize/move from inbox as needed

Notes

  • $4 droplet (512MB) is too tight for Pi + continuous obsidian-headless. $6 is the floor.
  • Pi and obsidian-headless are both Node. Watch memory with htop.
  • No conflict risk: tablet writes only to inbox/, Pi writes only to concepts/tutorials/.
  • obsidian-headless uses Obsidian Sync protocol directly — no vault duplication.