Unused slots.
Preparation work.One noteUnused rooms
Rooms left empty after cancellations. Late booking requests.
QUALITATIVE · NOT A STUDYA FICTIONAL COMPANY. A FAMILIAR PROBLEM.
FIRST, THE PLACE
Morrow Works runs creative workspaces in France and Germany.
People book rooms, borrow recording gear, change their plans, and ask staff what the rules are.
A handbook, meeting notes, a copy pasted into the helpdesk. Each file holds part of the answer.
Your job is to make it usable, for the staff and for the AI assistant they work with.
We’ll follow one member’s question from start to finish. No background needed.
“How much notice makes cancelling my room booking free?”
The room is in France. They booked it on 4 May 2027. Today is 8 May, and we want the general rule as the member would see it.
Those details matter. Rules differ by country, by product and by booking date.
None of the five file names contains “cancellation”. The decision we need is saved as notes-04-18.md.
The answer exists. We were looking in the wrong place.
Searching file names works fine when you already know which file you want.
Now the decision shows up, and it says 7 days. So do the original terms, the handbook and the helpdesk copy. They all say 14.
Finding passages like this is called retrieval. It found the statements. It can’t tell you which one applies.
This search really runs, in your browser, over the fictional files.
The handbook copied the original terms, and the helpdesk copied the handbook. All three 14s come from one place.
The 7 comes from an approved board decision. A newer-looking file name doesn’t overrule it, and neither does a majority.
What matters is where each statement came from, not how often it appears.
The board approved it on 18 April. It covers France room bookings made from 1 May. The team’s files received it on 3 May.
Our booking was made on 4 May and we’re asking on 8 May, so it’s covered. The answer is 7 days.
An April booking in France, or any booking in Germany, would get a different answer.
An AI assistant only sees what you hand it for this answer. That bundle is called its context.
Here we hand it the rule for which documents win, plus the decision that applies. A document left out of the bundle can’t help, however well it was stored.
We had to find it, work out how it related to the others, check when it applied, and hand over the right part.
When a rule changes tomorrow, all of that has to be redone. That work, more than storage, is what we mean by memory.
We started with a known question. Teams also need to explore files before they know what to ask. That’s next.
CHAPTER TWO / FINDING YOUR WAY
Keeping documents wasn’t enough. Now let’s use the files when we don’t yet know what to search for.
The member has an answer. Now the team wants to understand what happens when bookings change.
An operations note is a start: rooms sit empty after cancellations, while other requests come in too late. Could those freed rooms go to someone else?
Still 8 May, still the member’s view. The note records what staff noticed. Nobody measured anything.
File the note under “operations” and it’s stored. But someone studying booking changes won’t think to look there.
Tag it three ways instead: room capacity, booking lifecycle, preparation work. It’s still one note, reachable from three directions.
Start with rough categories you can change later. You don’t need a perfect filing system first.
“Atlas” shows up twice in the files. One is a room in France. The other is a recording kit in Germany.
The shared name can put them in the same search results. It must not merge them, or apply the room’s rules to the kit.
Grouping asks “what is this related to?” Identity asks “which thing is this?” Keep the two apart.
Back to the empty-rooms note. A separate draft proposes a two-day cancellation window for a trial in French rooms. It also asks someone to compare rebooking and preparation costs.
Read together, the two give the team something to investigate. They don’t show the trial would fill rooms, and the draft is still only a draft.
Keep the link and the doubt together. Nothing in these files measures what a shorter window would do.
The team writes a short overview: empty rooms were noticed, a trial was proposed, rebooking was never measured.
Squash that into “shorter notice fills rooms” and the doubt disappears. Keep what was seen, what was proposed and what’s missing on separate lines, each linked to its source.
A summary is one more thing to check and correct. It doesn’t replace the files.
“Do freed rooms actually get booked again?” Nobody asked that at first. It came from reading the notes side by side.
Answering it needs booking data and a way to test the trial. These files can’t give a rate or prove a cause. Say so, and don’t make up a number.
You went from finding a known answer to finding what you still need to learn. A clear gap is a useful result.
CHAPTER THREE / WHEN KNOWLEDGE CHANGES
The team can find its way around. Keeping that knowledge right means following each change past the document that announced it.
Let’s rewind to when the 7-day decision first arrived.
Rewind to 3 May 2027. The board minutes with the 7-day rule have just reached the team’s files. The board approved the rule on 18 April, and it took effect on 1 May.
Approved, in effect, received: three different dates. Arriving late doesn’t move the date the rule took effect.
We’re still looking back from 8 May as a member. No new decision is invented here.
The decision sets 7 days for France room bookings made on or after 1 May. France room bookings made from 1 January 2027 up to 30 April keep 14 days.
Rooms in Germany and equipment rentals don’t change. The update has to land on the right rule, not overwrite every cancellation rule in the files.
Examples here are about ATLAS-ROOM-FR, seen by a member on 8 May. They cover the general terms, not individual waivers.
Say the team saved a one-line summary on 2 May: “France room bookings need 14 days’ notice.” It matched the old terms and missed a change already in effect.
Then the minutes arrive. The summary doesn’t fix itself because a new file showed up. Staff, or the assistant, could still be handed the old line.
The decision itself is still S03.
The new summary splits the cases: 14 days for France room bookings made from 1 January 2027 up to 30 April, 7 days from 1 May. It links to the original terms, the change and the rules for when each applies.
The old summary can stay in the history, marked incomplete. It must not be served as today’s answer.
Keeping an old version shows what the system believed. It doesn’t show that the belief was right.
“What applies to a France room booked on 29 April?” That’s about the booking’s terms. Seen from 8 May, it’s still 14 days, because the booking came before the change.
“What did the files contain on 2 May?” That’s about the files. They didn’t have S03 yet. That doesn’t mean the change wasn’t in effect.
Both are about ATLAS-ROOM-FR and the member’s view. The first uses what’s known on 8 May. The second rebuilds what the files held on 2 May.
Back on 8 May, the team finds another problem, this time for ATLAS-KIT-DE, the recording kit in Germany. For returns from 6 May, one logistics lead says “before 17:00 UTC”. Another says “before 18:00 UTC”.
Both were written on 4 May, both leads have the same authority, and neither cancels the other. Which paragraph comes first doesn’t settle it.
Keep both, mark the deadline unresolved, and ask logistics for a ruling. A tidy merged answer would hide the conflict.
This is a return-time question, not a cancellation rule. The files never settle it.
CHAPTER FOUR / TRUST AND CONTROL
The team can track changes and keep doubt visible. Now its files serve people with different access, and an assistant that only sees what it’s handed.
Back to the member desk, with one booking number.
8 May 2027. Someone asks about DEMO-R17, a France room booked on 29 April. We can explain the general cancellation terms. Can we also say what this booking will cost?
Not from the member’s side. Waiver records are for finance only. Knowing the booking number gives no access, and the answer mustn’t hint at whether a waiver exists.
So the answer stays general: here is the policy, and here is who can check your booking. A file being stored somewhere doesn’t mean everyone may use it.
Member · ATLAS-ROOM-FR · DEMO-R17 · booked 29 April 2027 · as of 8 May.
A different booking now: the Atlas room in France, booked on 4 May 2027. On 8 May the member asks for the general free-cancellation notice, not the fee for one cancellation.
Search finds both the original terms and the change. But the app passes only the original 14-day passage to the assistant. The change never reaches it.
Context is what the assistant is given for this one answer. Finding evidence and putting it into context are two steps, and things can go wrong between them.
The 4 May booking falls under S03’s France-room rule, and the member may read both sources.
The team fixes the bundle. It now says which room, country, product, booking date, reader and knowledge date it’s about, alongside the rules for when each policy applies and the policy passages themselves.
For this France room booked on 4 May, the change gives 7 days. The original terms and the change both stay visible, so the number arrives with its reasons.
This doesn’t mean sending every file. Pick what the reader may see and what’s relevant, plus what’s needed to read it correctly. More text won’t make up for missing evidence.
Same case: member · ATLAS-ROOM-FR · booked 4 May 2027 · as of 8 May.
Even with the fixed bundle, an assistant could treat 7 days as a rule for everything, and wrongly apply it to rooms in Germany, equipment and older France bookings.
A good answer here is: “For this France room booked on 4 May 2027, free cancellation needs at least 7 days’ notice.” It doesn’t calculate a fee or reveal private exceptions.
The whole chain is now visible: stored, found, applicable, allowed, handed over, used correctly. Check each step. Passing one doesn’t mean the next will pass.
S03 leaves Germany rooms and equipment unchanged; S02 and S03 cover older France bookings. If a detail is missing, ask. Don’t guess.
11 May 2027. The same member is arriving at ATLAS-ROOM-FR. A notice received on 9 May says to use the courtyard entrance for arrivals from 10 to 12 May, during maintenance.
For an 11 May arrival, the notice is current. Its end date matters as much as what it says: it expires at 00:00 UTC on 13 May.
The notice has also been copied into an extracted fact, a summary and an answer cache. Which of those copies depend on it?
New date, new task: member · ATLAS-ROOM-FR · arriving 11 May 2027. The 8 May scenes couldn’t see this notice (S10).
At 00:00 UTC on 13 May the courtyard notice expires. For someone arriving that day, it can’t answer “which door?”. The files don’t say which entrance to use now, so don’t make one up.
The old notice can still explain what happened on 11 May. Useful as history and valid today are different questions.
Expired isn’t deleted. The records rule allows a short history window. Then the notice and every copy the team owns must be deleted at 00:00 UTC on 15 May.
Member · ATLAS-ROOM-FR · as of 13 May 2027. The two-day history window is this fictional company’s rule, not a general standard.
At 00:00 UTC on 15 May the deletion has to reach four places the team owns: the source store, the extracted facts, the summary and the answer cache. Deleting only the original leaves the content behind elsewhere.
What remains is a receipt with the source ID and deletion time, without the notice itself. From these stores, nobody can now say which door the 11 May guest used.
Policy decisions and waiver history are outside this deletion rule.
Member · ATLAS-ROOM-FR · as of 15 May 2027. The rule covers stores the team owns.
“How much notice makes cancelling my room booking free?”
Rooms left empty after cancellations. Late booking requests.
QUALITATIVE · NOT A STUDYFuture France-room pilot.
DRAFT · NOT APPROVEDATLAS-ROOM-FRFrance · RoomS08#roomATLAS-KIT-DEGermany · EquipmentS08#kitNot in these notes
France rooms
Bookings from 1 May
FRANCE · ROOM
Germany rooms and equipment unchanged
France room bookings
Missing the amendment
FRANCE ROOM · GENERAL POLICY
S01 + S02 + S03
Earlier France-room terms still apply.
Received 3 May ≠ effective 3 May.
The change was effective on 1 May.
Return before this time
S12#instruction-aReturn before this time
S12#instruction-bExplain the terms.
Do not confirm or deny a private waiver.
Knowing the identifier ≠ permission
Read with scoped amendment
FR rooms · booked from 1 May
ATLAS-ROOM-FR · room · France
Created 4 May · knowledge 8 May · member
This France room booking, created 4 May.
Each transition needs its own check.
ATLAS-ROOM-FR · arrivals 10–12 May
CURRENT ON 11 MAY13 May arrivalNo current entrance established
11 May arrivalHistorical instruction retained
No instruction payload retained.
END OF THE MORROW WORKS STORY
Who keeps the source? Who chooses the representation? Who enforces access? Who selects context? Who checks the answer? Who follows correction and forgetting through every derived copy?
The fictional story has turned those abstractions into concrete failure cases. Now compare how real systems divide the work.
Continue to current technologiesCHAPTER FIVE / REAL SYSTEMS
Morrow Works needed more than search. It needed sources that survive changes, sensible organisation, search that works, clear scope, summaries you can check, access rules, careful choice of context, and someone to run it all.
Each memory system takes on a different share of that work. So ask: what does it store, what do those records mean, and who fixes them when they are wrong?
28 / BEFORE THE BRANDS
Hindsight distinguishes extracted facts, consolidated observations, and curated mental models. Mem0 stores memories with entity links and temporal metadata, then may consolidate them through Dream. OpenViking presents resources, memories, and skills through a hierarchical virtual filesystem. Supermemory separates source documents from evolving extracted memories. Microsoft GraphRAG builds entities, relationships, communities, and generated reports from a corpus.
These are different kinds of thing. A graph link, a folder, an embedding or a generated summary is a view of the sources. It doesn’t prove the sources are complete, consistent, allowed or understood.
29 / HINDSIGHT
HindsightAn agent-memory system centered on extracted facts, multi-strategy retrieval, consolidation, and reasoning over a memory bank.
Hindsight documents four parallel recall strategies: semantic similarity, keyword search, graph traversal, and temporal search. Their ranked results are fused, reranked, and returned within a caller-controlled token budget. Raw facts can be consolidated into observations; mental models remain a separately curated layer. Observations can retain references and exact supporting quotes, so a derived belief can be inspected against the memories beneath it.
This directly addresses several moments in the story. Keyword retrieval can preserve exact names such as ATLAS-ROOM-FR. Semantic retrieval can bridge different wording. Graph traversal can reach structurally related facts. Temporal retrieval can distinguish “what applied then?” from “what do we know now?” Reflect can synthesize across those results rather than merely returning a list.
Document identity matters. Re-retaining the same document identifier is documented as replacing the previous document content and its extracted facts. If Morrow Works must preserve S02 and S03 as independently inspectable revisions, it must model those revisions explicitly instead of assuming the memory layer will invent the right history.
Entity resolution is also a judgment. Similar names may merge incorrectly; unrelated aliases may remain separate. Visibility tags and banks are retrieval-scoping primitives, but the application must use strict boundaries and enforce authorization. A delete API gives you a way to delete. It doesn’t prove every cache, backup, later answer or outside copy is gone.
30 / MEM0
Mem0 Platform + DreamA managed or self-hosted memory layer centered on distilled memories, entity-aware retrieval, temporal metadata, and explicit memory operations.
Current Platform documentation describes a write path that looks up related context, distills facts, deduplicates, embeds, links entities, and extracts temporal metadata. At retrieval time, semantic, keyword, entity, and temporal signals contribute to one ranking. The graph boosts memories connected through shared entities; it is not a user-maintained graph of typed business predicates such as “S03 amends S02.”
The ADD-only extraction model preserves old and new facts rather than overwriting history immediately. Dream performs later consolidation. Its documented relations distinguish superseding an outdated contradiction, merging a duplicate into a canonical memory, and synthesizing a higher-order pattern. That vocabulary is useful because “new evidence,” “same fact again,” and “derived pattern” are different events.
Applicability cannot be reduced to “newer wins.” Morrow Works’ 14-day and 7-day rules coexist because they apply to different booking dates. The application must encode scope well enough that consolidation does not mistake a bounded amendment for a universal contradiction. Default reads and current-only reads also differ; callers must request and test the view they actually intend to use.
Mem0 Platform, its self-hosted server, and the OSS in-process library are distinct operating surfaces. Managed benchmark results include proprietary Platform optimizations and should not be presented as guaranteed OSS performance. Accuracy, tokens retrieved, latency, extraction models, and retrieval depth must be compared under equal constraints.
Platform and OSS are different products; their results are not interchangeable.
31 / OPENVIKING
OpenVikingAn open-source context database that unifies resources, memories, and skills through filesystem-like paths and layered context.
OpenViking gives context stable viking:// locations and separates resources, memories, and skills. Its hierarchy offers progressively deeper representations: compact L0 abstracts for positioning, L1 overviews for navigation and reranking, and L2 source detail loaded on demand. An agent can use deterministic operations such as listing and reading paths as well as semantic search.
For complex tasks, retrieval first analyzes intent, locates promising directories, explores within them, and reranks candidates. The resulting trace records the directories traversed and files positioned. That makes retrieval behavior more inspectable than an opaque list of nearest chunks and gives unfamiliar readers a way to orient before opening every source.
A hierarchy is still an authored or generated model of the collection. An abstract can hide the France-only qualifier. A directory trace can explain where retrieval traveled without proving that a summary is true or that another branch was not missed. The owner must evaluate hierarchy quality, summary drift, update lag, and whether one item needs several facets rather than a single home.
The current documentation distinguishes user-private and shared resource paths, but deployment configuration, policy enforcement, deletion propagation, backup handling, and downstream context use still require end-to-end tests. Open source also means the operator owns infrastructure and model costs. The repository license must be reviewed for the intended deployment and distribution model.
No fixed SaaS price or production performance result was established. “Self-hosted” is not the same as free to operate.
32 / SUPERMEMORY
SupermemoryContext infrastructure combining document retrieval, evolving memory relations, profiles, connectors, and scoped containers.
Supermemory keeps raw documents (what you hand it for document search) apart from memories it extracts to track a person or thing over time. Document processing extracts text, chunks it, embeds it, and indexes it. A separate “dreaming” phase groups material and forms evolving memories. Retrieval can return document chunks, traverse memories, or assemble profile context from the same scoped pool.
Memory-to-memory relations carry different meanings. Updates marks a newer state, Extends adds compatible detail, and Derives records an inferred pattern. These are not classic hand-authored entity–predicate–entity triples. The distinction is useful for Morrow Works: “the source reports unused rooms” should remain visibly different from “shorter notice probably improves utilization.”
A derived memory is still an inference. It must not silently become source truth. Document content updates trigger reprocessing, while metadata-only changes do not. Document deletion endpoints exist, but the researched material does not establish complete removal from every extracted memory, profile, cache, backup, or previously generated answer. That must be tested, not inferred from the verb delete.
Container tags and scoped API keys provide isolation mechanisms. The application still chooses source authority, decides which relations count as conflict or enrichment, assembles the permitted final prompt, and verifies that revocation is respected at every read path.
33 / MICROSOFT GRAPHRAG
Microsoft GraphRAGA research-oriented indexing and query framework for extracting graph structure and hierarchical reports from unstructured corpora.
GraphRAG’s standard indexer uses language models to extract entities, relationships, and optionally claims from text units; it detects communities and generates reports at multiple levels. Local Search combines graph material with underlying text chunks for entity-focused questions. Global Search runs a map/reduce process over community reports to answer questions about themes across the collection. DRIFT begins from community information and expands into follow-up questions.
This is a strong match for the exploration part of the story: “What tensions run across our notes?” is different from “What does policy passage S03 say?” A graph and its community reports can expose a possible connection between unused rooms and cancellation policy that ordinary nearest-chunk retrieval may never place together.
Extraction and reports are generated representations, not authoritative records. Prompts, hierarchy level, context builder, model choice, and token budget all affect the result. A discovered theme must still lead back to source text before it is treated as evidence. Indexing can be expensive, and the project explicitly warns users to start small and tune prompts.
GraphRAG is not a ready-made conversational memory provider. Its researched documentation does not establish source version management, current-versus-historical policy semantics, per-user authorization, revocation, forgetting propagation, or a correction workflow. The GitHub project also currently describes itself as largely in maintenance mode and as a research project rather than an officially supported Microsoft offering.
Community summaries can omit source details.
34 / ONE CORPUS, FOUR HARD TESTS
Can the system preserve both 14 and 7 days, then select by country, product, booking date, and knowledge date?
Can it suggest the utilization-policy connection while preserving the labels reported, proposed, and not measured?
If two Atlas entities merge or a summary loses a qualifier, can an owner inspect the evidence, correct the object, and refresh downstream views?
If access is revoked or S10 must be forgotten, can the team deny retrieval and trace removal through sources, extracted facts, overviews, profiles, and answer caches?
Three systems answered all ten Morrow Works questions correctly. Plain keyword search got nine; its one miss was showing a member a finance-only file.
Each system ran self-hosted on an isolated machine, with the same local model (qwen3 14B) doing its extraction. The files arrived in date order; S10 was deleted on 15 May. Every system then gave its retrieved passages to the same answer model with the same prompt, and simple rules checked the answers.
| System | Score | Passages per question | What we saw |
|---|---|---|---|
| Hindsight | 10/10 | about 70 | Passed everything, but handed the answer model about ten times as many passages as the others. |
| Mem0 (open-source library) | 10/10 | 8 | Its date options are paid-platform only, so each file’s date went into the text. |
| OpenViking | 10/10 | 5 whole files | Search returns summaries; the test then read the matched files, as its docs describe. |
| Keyword search (baseline) | 9/10 | 6 | No access rules: a member was shown the finance-only waiver. |
| Microsoft GraphRAG | 7/10 | 7 | Missed the new 7-day rule and the clashing kit deadlines; no access rules, so the waiver reached the member. |
| Supermemory (free local server) | 6/10 | 2.5 | Found nothing for 6 of 10 questions. Three of those still passed because the right answer was “unknown”. |
Read these scores with care. Ten questions cannot separate the top systems: keyword search nearly matched them, and the deletion and expiry questions also pass when nothing is found. The amount of text handed over is not scored. Each system ran once, with a small local model rather than the hosted models they are tuned for. Questions, adapters and every raw answer: github.com/Zacaria/havesome-memory/lab.
No mechanism passes these tests merely by existing. A filter is not proof of authorization. A source link is not proof that the source is correct. A delete endpoint is not proof of complete erasure. A generated overview is not proof of corpus coverage.
35 / COST AND OPERATING BURDEN
Managed providers may meter writes, retrieved context, synthesis calls, file conversion, storage, or background processing. Self-hosted systems replace some subscription costs with model inference, databases, upgrades, observability, recovery, and engineering time. Graph extraction can make initial indexing and reprocessing materially more expensive than plain chunk-and-embed pipelines.
Compare one explicit workload: initial corpus size, monthly additions and corrections, reprocessing after policy changes, background consolidation, reads, returned context, latency targets, storage, backups, incident response, and human review. Open source, self-hosted, free tier, and two similarly priced plans do not describe the same total cost.
We left exact prices out because they change. Check each official pricing page against your expected workload before you commit.
36 / SELECTION EXERCISE
This note stays in your browser page. It is not saved or sent anywhere.
A fair outcome might be a shortlist with conditions, a simpler setup (versioned files plus hybrid search), or waiting for better evidence. No system wins everywhere.
END OF HAVESOME MEMORY
Memory isn’t a promise to remember everything. It’s the work of deciding what to keep, storing it without hiding its limits, finding and handing over the right evidence, and carrying every change, permission and deletion through to each copy.
Pick the system whose documented features fit your files, and whose gaps you are ready to own and test yourself.
Five systems, chosen by us. Descriptions come from their own documentation. We ran each one once on the ten Morrow Works questions; we did not rerun their published benchmarks or check their security.
Return to the beginning ↑Provider marks identify their products; name tiles and concept icons are not replacement logos. No affiliation or endorsement. Original story illustrations are retained; interface icons use Lucide.
Original provider asset · License source
Cropped the complete symbol from the official wordmark image at [0,2,185,137]; decoded and re-encoded PNG without source metadata. Drawing and colors unchanged.
MIT License Copyright (c) 2025 Vectorize AI, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Original provider asset · License source
Rendering only: removed fixed width/height; added accessibility attributes and CSS class; namespaced local IDs if present. Geometry and colors preserved.
MIT License Copyright (c) 2023-2026 Taranjeet Singh Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Original provider asset · License source
Rendering only: removed fixed width/height; added accessibility attributes and CSS class; namespaced local IDs if present. Geometry and colors preserved.
MIT License Copyright (c) 2025 supermemory Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Lucide · Pinned license notices
ISC License Copyright (c) 2026 Lucide Icons and Contributors Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. --- The following Lucide icons are derived from the Feather project: airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out The MIT License (MIT) (for the icons listed above) Copyright (c) 2013-present Cole Bemis Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
THE WHOLE STORY · 36 STEPS
Follow the chapters in order—or jump straight to a question.
Steps 1–8
Steps 9–14
Steps 15–20
Steps 21–27
Steps 28–36