Ever had the experience of almost getting somewhere with Claude or ChatGPT in a session, and then it starts freaking out? You start a new session, but it has no clue on what you were just working on before the collapse? It's like hiring a brilliant assistant who gets amnesia every evening.

I think I've fixed that – it's simpler than you might think.

The basic idea

I gave Claude a folder full of plain text files. Some describe who I am. Some describe who it is. Some are daily notes about what we worked on. And some are my personal notes – hundreds of ideas, projects, and references I've collected over the years (digital hoarder!).

Claude just reads the relevant files at the start of every conversation. That's it. That's the memory.

No database. No special software. Just files in a folder, synced between my machines (and my phone) with Dropbox. And I use the free Obsidian app to view/review/edit/create these notes.

What's in the box – Brad Pitt as detective David Mills in the 1995 film "Seven"
What's in the box – Brad Pitt as detective David Mills in the 1995 film "Seven"

What's in the box?

Think of it as a shared brain, organised into a few simple parts:

Identity files – a handful of documents that tell Claude who it's working with and how to behave. There's one about me (my name, my family, my projects, how I like to work). And there's one about how it should behave (what to do at the start and end of a session, when to search for things, when to ask before acting).

These get loaded into every conversation. They're small, they rarely change.

Daily logs – every day gets its own file. When Claude and I have a conversation, a short summary gets added to today's file automatically. If we do something significant – make a decision, build something, hit a blocker – that goes in too. Over time, these build up into a searchable history of everything we've discussed. This is automated, I don't do anything – and I don't read or review them either.

Project files – each project I'm working on has its own document. Current status, active to-do list, key decisions. These are living documents that get updated as work progresses. When I tell Claude "let's work on project X", it can load that project's file and immediately has context.

How I start and end sessions

I built two simple skills:

/resume – I type this at the start of a new session. Claude reads a one-page handoff note from the last session, checks what's been happening, and gives me a 30-second briefing. If I say "let's go", it picks up exactly where we left off.

/finish – I type this when I'm done for the day – or if Claude is getting tired (yes, I said that) so that I can save game. Claude reviews what we did, writes it to the daily log, updates the relevant project file, and produces that one-page handoff note for next time.

It's like a shift change at a hospital. The outgoing doctor writes up the notes. The incoming doctor reads them. Nothing falls through the cracks – and since the incoming doctor is actually the same doctor, it's maybe more like Severance.

Making my notes searchable by meaning

I have about 300 notes in my personal vault – ideas, references, research, project plans, media lists. Some are from years ago.

I wanted Claude to be able to search these – not just by keyword, but by meaning. So if I ask "what were my ideas about sampling childhood songs?", it finds the right notes even if they don't contain those exact words.

Here's how that works, in plain English:

  1. Classify – A script reads each note and asks Claude to tag it with some basic metadata. What type of note is it? (An idea? A reference? A project?) What domain? (Music? Work? Personal?) Does it need action? This gets written into the top of each file as structured labels.
  1. Index – Another script reads all the notes, breaks long ones into smaller chunks, and converts each chunk into a mathematical fingerprint that captures its meaning. These fingerprints get stored in a small local search engine.
  1. Search – When Claude needs to find something, it converts the question into the same kind of fingerprint and finds the closest matches. It can also filter by those labels – "show me music ideas that need action", for example.

This all runs on my Mac Mini. The classification step uses Claude (a fast, cheap version). The fingerprinting uses a small open-source model that runs locally – no data leaves my machine.

Accessing the brain everywhere

The interesting part is that this shared brain isn't locked to one tool. I access it from:
  • All the flavours of Claude (Chat, Co-work, Code – both Desktop app or CLI) – using the /resume and /finish commands or skills
  • Telegram (on my phone) – through a bot I built that reads the same files and has the same tools
  • Obsidian (a note-taking app) – where I can browse and edit everything directly, like any other folder of documents

All three read and write to the same folder. Dropbox keeps it synced. So a conversation I have with Claude on my phone shows up in the daily log that Claude Code reads on my laptop.

What I've learned

You don't need anything fancy. The gap between "has no real memory" and "remembers everything" is surprisingly small. It's just files. The hard part isn't the tech – it's deciding what to write down, how to structure it, or remembering to write down anything at all!

The handoff note does heavy lifting. A one-page summary that says "here's where you are, here's what to do next" saves more time than any amount of raw history.

Plain text is a feature, not a limitation. I can read these files. I can edit them in any text editor. I can search them with basic tools. Nothing is hidden in a database I can't inspect. When something goes wrong, I open the file and fix it.

The identity files matter more than you'd think. Telling Claude how to behave, and what to care about makes a noticeable difference in the quality of responses. It's not just fun flavour – it's functional context.

Keep code and memory separate. The bot's source code lives on my machine. The memory and identity files live in Dropbox. They reference each other but never share a home – so I can throw away the code without touching the memory, and the "brain" is just portable files, not locked into any particular tool. I don't have to use Claude, I just choose to.

The whole system took a few hours to build – I iterated over weeks, and will keep iterating as the landscape, tooling and model capabilities keep changing. But the core concept is still the same – these are my thoughts, my work, my files.

I was inspired by lots of different people out there. But even the very first iteration yielded results. It's transformed how I work – from a tool I re-explain myself to every session, into something that genuinely feels like picking up where we left off.