Innovation Engine — productivity

Handwritten Notes → Project Memory Bridge

March 21, 2026

When you scribble meeting notes or ideas on your TCL tablet about a client project, they get OCR'd but then sit in a flat folder disconnected from your workflow. This script watches for new OCR'd notes, scans them for project keywords (client names, repo names, domain names), and files relevant excerpts into the matching project's .claude/projects/ memory — so the next time you open a Claude Code session on that project, your handwritten context is already loaded.

tablet-syncnote-ocrclaude-code-memoryproject-workflows

Create ~/bin/note-to-memory as a bash script (~60 lines). It watches ~/Tablet/notes/ (or wherever note-ocr deposits results) via inotifywait for new .txt files. For each new file, it greps against a keyword map defined in ~/.claude/note-keywords.json mapping terms to project paths (e.g., {"Dennis|Chad|legacy-map": "/home/ethan/code/legacy-map-builder", "ora.ratliff|jturner": "/home/ethan/code/jturner-app", "joyos|joyOS": "/home/ethan/joyOS"}). On match, it appends a timestamped memory file to that project's .claude/projects//memory/ directory with type: project and the OCR'd content as context. Register as a systemd user service. Total: inotifywait loop + keyword matching + memory file writer.

Built & Ready
Here's what was created:

**Files:**
- `~/bin/note-to-memory` (94 lines, executable) — watches `~/Tablet/` for new `.txt` files via inotifywait, matches content against keyword patterns, writes timestamped memory files into the matching project's `.claude/projects/<encoded>/memory/`
- `~/.claude/note-keywords.json` — keyword-to-project-path map (regex patterns, 10 projects pre-configured)
- `~/.config/systemd/user/note-to-memory.service` — systemd user service, ordered after `note-ocr.service`

**How it works:**
1. OCR service creates `.txt` sidecar next to tablet images
2. inotifywait picks up the new `.txt`
3. Script greps content against each regex pattern in `note-keywords.json`
4. On match, writes a memory file with `type: project` frontmatter to the project's Claude memory directory
5. Next Claude Code session in that project automatically loads the note context

**Service:** enabled and running. Tested end-to-end — "Dennis" + "Chad" in a note correctly routed to `legacy-map-builder`'s memory.

**To add projects:** edit `~/.claude/note-keywords.json` — keys are regex patterns (case-insensitive), values are project root paths.
Active Projects
innovation-engine, data, bys-website, .claude, note-ocr
Category
productivity