Most of us have hit the same wall: a fresh chat has no memory of the project. You either re-explain everything or paste large context dumps.
One approach I’m experimenting with puts continuity in the artifacts themselves. It’s just a directory of plain HTML pages connected by relative links, starting at index.html. Open the folder in a browser and it works. Point a small Python crawler at it and you get a searchable index.
Three layers stay separate:
1. The local web (HTML + link graph)
2. Crawler + FTS5 index (stdlib only)
3. The model (queries the index, never has to “click”)
It deliberately keeps retired pages under _log/superseded/ so the corpus can still answer “what did this document used to say?” Orphans are reported rather than silently ignored. A validator runs eight structural checks (broken links, reachability, unique IDs, supersession consistency, etc.) and exits non-zero on failure.
Everything is pure standard library; no pip install, no server, no database, no internet required.
Curious whether others have tried similar “structure-as-memory” approaches for long-running projects.
This is a great idea!
What I do for my projects, is to have a set of documents or a document in markdown called Second_Memory_Context.md or SMC.md which dresses exactly that. This is exclusive to memory management and not to mistake with AGENTS.md or a skill. Easy to access and persist important memory aspects.
I also have a consolidation of memory after a set time interval, this because memories can get disorganized or introduce contradictions. This to consolidate, revise and clean memories.
Thank you @DysTopia i have been fascinated with search engines a long time and now LLM search indexing for last three years.
I love your method. You mentioned it with your art index idea 
