[{"data":1,"prerenderedAt":722},["ShallowReactive",2],{"docs-navigation":3,"\u002Fmemory":80,"\u002Fmemory-surround":717},[4,14,50,56,62,68,74],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","\u002Fgetting-started","1.getting-started\u002Findex",[9,10],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Usage","\u002Fgetting-started\u002Fusage","1.getting-started\u002Fusage",{"title":15,"path":16,"stem":17,"children":18},"Packs","\u002Fpacks","2.packs",[19,22,28,34,40,44],{"title":20,"path":16,"stem":21},"Pack System","2.packs\u002Findex",{"title":23,"path":24,"stem":25,"children":26},"Pack Commands","\u002Fpacks\u002Fcommands","2.packs\u002Fcommands\u002Findex",[27],{"title":23,"path":24,"stem":25},{"title":29,"path":30,"stem":31,"children":32},"Curation","\u002Fpacks\u002Fcuration","2.packs\u002Fcuration\u002Findex",[33],{"title":29,"path":30,"stem":31},{"title":35,"path":36,"stem":37,"children":38},"Personas","\u002Fpacks\u002Fpersonas","2.packs\u002Fpersonas\u002Findex",[39],{"title":35,"path":36,"stem":37},{"title":41,"path":42,"stem":43},"Pack Prompt","\u002Fpacks\u002Fprompt","2.packs\u002Fprompt",{"title":45,"path":46,"stem":47,"children":48},"Skills","\u002Fpacks\u002Fskills","2.packs\u002Fskills\u002Findex",[49],{"title":45,"path":46,"stem":47},{"title":51,"path":52,"stem":53,"children":54},"Knowledge Graph & Memory","\u002Fmemory","3.memory\u002Findex",[55],{"title":51,"path":52,"stem":53},{"title":57,"path":58,"stem":59,"children":60},"Configuration","\u002Fconfiguration","4.configuration\u002Findex",[61],{"title":57,"path":58,"stem":59},{"title":63,"path":64,"stem":65,"children":66},"Architecture","\u002Farchitecture","5.architecture\u002Findex",[67],{"title":63,"path":64,"stem":65},{"title":69,"path":70,"stem":71,"children":72},"Commands","\u002Fcommands","6.commands\u002Findex",[73],{"title":69,"path":70,"stem":71},{"title":75,"path":76,"stem":77,"children":78},"Security","\u002Fsecurity","7.security\u002Findex",[79],{"title":75,"path":76,"stem":77},{"id":81,"title":51,"body":82,"description":709,"extension":710,"links":711,"meta":712,"navigation":714,"path":52,"seo":715,"stem":53,"__hash__":716},"docs\u002F3.memory\u002Findex.md",{"type":83,"value":84,"toc":686},"minimark",[85,90,99,102,106,109,119,124,127,214,217,221,224,230,236,240,244,250,254,260,263,267,270,274,277,280,283,329,333,344,357,361,364,367,371,374,378,381,515,519,573,577,583,656,660],[86,87,89],"h2",{"id":88},"how-memory-works","How Memory Works",[91,92,93,94,98],"p",{},"Working Mind uses a native SQLite knowledge graph stored at ",[95,96,97],"code",{},"~\u002F.wmind\u002Fmemory.sqlite",". Entities, relations, and observations are stored as structured rows with foreign keys, indexes, and FTS5 full-text search. No external MCP server is needed -- memory is built into the agent.",[91,100,101],{},"The knowledge graph is shared across all sessions. Every session can read and write to the graph. When you start a new session, the agent already knows everything from previous sessions.",[86,103,105],{"id":104},"entities","Entities",[91,107,108],{},"An entity is a node in the knowledge graph. It has a name, a type, and one or more observations.",[110,111,116],"pre",{"className":112,"code":114,"language":115},[113],"language-text","Entity: \"Project Alpha\"\nType: project\nObservations:\n  - \"Uses React 19 with Server Components\"\n  - \"Deployed on Vercel\"\n  - \"Team lead is Sarah Chen\"\n","text",[95,117,114],{"__ignoreMap":118},"",[120,121,123],"h3",{"id":122},"entity-types","Entity Types",[91,125,126],{},"Common types the agent uses:",[128,129,130,143],"table",{},[131,132,133],"thead",{},[134,135,136,140],"tr",{},[137,138,139],"th",{},"Type",[137,141,142],{},"Example",[144,145,146,155,163,171,179,187,195,203],"tbody",{},[134,147,148,152],{},[149,150,151],"td",{},"person",[149,153,154],{},"Sarah Chen",[134,156,157,160],{},[149,158,159],{},"organization",[149,161,162],{},"Acme Corp",[134,164,165,168],{},[149,166,167],{},"concept",[149,169,170],{},"Quantum Error Correction",[134,172,173,176],{},[149,174,175],{},"technology",[149,177,178],{},"React 19",[134,180,181,184],{},[149,182,183],{},"project",[149,185,186],{},"Project Alpha",[134,188,189,192],{},[149,190,191],{},"event",[149,193,194],{},"Q4 Planning Meeting",[134,196,197,200],{},[149,198,199],{},"auto",[149,201,202],{},"Auto-created when referenced by a relation or observation",[134,204,205,208],{},[149,206,207],{},"system",[149,209,210,211],{},"Internal entities like ",[95,212,213],{},"__source__",[91,215,216],{},"Types are not fixed. The agent can create any type it determines is appropriate.",[86,218,220],{"id":219},"relations","Relations",[91,222,223],{},"Relations connect entities to each other.",[110,225,228],{"className":226,"code":227,"language":115},[113],"\"Project Alpha\" --uses--> \"React 19\"\n\"Sarah Chen\" --leads--> \"Project Alpha\"\n\"Project Alpha\" --deployed_on--> \"Vercel\"\n",[95,229,227],{"__ignoreMap":118},[91,231,232,233,235],{},"Relations are directional. The agent creates them automatically when you mention connections. If a relation references an entity that does not yet exist, the entity is auto-created with type ",[95,234,199],{},".",[86,237,239],{"id":238},"how-knowledge-gets-saved","How Knowledge Gets Saved",[120,241,243],{"id":242},"explicit-instructions","Explicit Instructions",[110,245,248],{"className":246,"code":247,"language":115},[113],"You: \"Remember that Project Alpha uses React 19 with Server Components\"\nAgent: Created entity \"Project Alpha\" (project)\n       Added observation: \"Uses React 19 with Server Components\"\n",[95,249,247],{"__ignoreMap":118},[120,251,253],{"id":252},"document-ingestion","Document Ingestion",[110,255,258],{"className":256,"code":257,"language":115},[113],"\u002Fingest research-notes.md\n",[95,259,257],{"__ignoreMap":118},[91,261,262],{},"The agent reads the file, extracts entities, searches the graph for duplicates, and creates or updates entities and relations.",[120,264,266],{"id":265},"agent-initiated","Agent-Initiated",[91,268,269],{},"The agent may save important findings autonomously, especially when the starter pack's \"wiki behavior\" is active. It saves syntheses, comparisons, and analyses as entities.",[86,271,273],{"id":272},"contradiction-detection","Contradiction Detection",[91,275,276],{},"When you add an observation that contradicts an existing one, Working Mind detects the conflict automatically. It invalidates the old observation and preserves the timeline.",[91,278,279],{},"For example, if the graph stores \"prefers Python\" and you later say \"prefers Rust\", the old observation is marked as invalidated with a timestamp, and the new one is added. Both are preserved -- you can query the graph as it was last month, or as it is now.",[91,281,282],{},"Current detection patterns:",[128,284,285,295],{},[131,286,287],{},[134,288,289,292],{},[137,290,291],{},"Pattern Group",[137,293,294],{},"Examples",[144,296,297,305,313,321],{},[134,298,299,302],{},[149,300,301],{},"preference",[149,303,304],{},"\"prefers X\", \"favorite X\"",[134,306,307,310],{},[149,308,309],{},"state",[149,311,312],{},"\"status: X\", \"role: X\", \"title: X\"",[134,314,315,318],{},[149,316,317],{},"scalar",[149,319,320],{},"\"population: X\", \"temperature: X\", \"age: X\"",[134,322,323,326],{},[149,324,325],{},"location",[149,327,328],{},"\"lives in X\", \"based in X\", \"works at X\"",[86,330,332],{"id":331},"temporal-validity","Temporal Validity",[91,334,335,336,339,340,343],{},"Every observation and relation has ",[95,337,338],{},"valid_at"," and ",[95,341,342],{},"invalidated_at"," timestamps. This means:",[345,346,347,351,354],"ul",{},[348,349,350],"li",{},"You can query the graph as it existed at any point in time",[348,352,353],{},"Contradictions are resolved by invalidation, not deletion",[348,355,356],{},"The full history is preserved for auditing and review",[86,358,360],{"id":359},"knowledge-index","Knowledge Index",[91,362,363],{},"The system prompt includes a truncated index of all entities in the knowledge graph. This lets the agent know what exists before deciding whether to create new entities or update existing ones.",[91,365,366],{},"The index is refreshed automatically after writes to the graph.",[86,368,370],{"id":369},"cross-linking","Cross-Linking",[91,372,373],{},"When you add observations that mention existing entity names, the agent automatically creates relations between them. This is how the graph becomes interconnected over time.",[86,375,377],{"id":376},"memory-tools","Memory Tools",[91,379,380],{},"The agent uses native tools to interact with the graph:",[128,382,383,393],{},[131,384,385],{},[134,386,387,390],{},[137,388,389],{},"Tool",[137,391,392],{},"Description",[144,394,395,405,415,425,435,445,455,465,475,485,495,505],{},[134,396,397,402],{},[149,398,399],{},[95,400,401],{},"memory_create_entities",[149,403,404],{},"Create new entities",[134,406,407,412],{},[149,408,409],{},[95,410,411],{},"memory_add_observations",[149,413,414],{},"Add observations to entities (auto-creates entity if missing)",[134,416,417,422],{},[149,418,419],{},[95,420,421],{},"memory_create_relations",[149,423,424],{},"Create relations between entities (auto-creates entities if missing)",[134,426,427,432],{},[149,428,429],{},[95,430,431],{},"memory_delete_entities",[149,433,434],{},"Delete entities and their observations",[134,436,437,442],{},[149,438,439],{},[95,440,441],{},"memory_delete_observations",[149,443,444],{},"Delete specific observations",[134,446,447,452],{},[149,448,449],{},[95,450,451],{},"memory_delete_relations",[149,453,454],{},"Delete specific relations",[134,456,457,462],{},[149,458,459],{},[95,460,461],{},"memory_read_graph",[149,463,464],{},"Read the entire graph",[134,466,467,472],{},[149,468,469],{},[95,470,471],{},"memory_search_nodes",[149,473,474],{},"Search the graph by query (FTS5)",[134,476,477,482],{},[149,478,479],{},[95,480,481],{},"memory_open_nodes",[149,483,484],{},"Open specific nodes by name",[134,486,487,492],{},[149,488,489],{},[95,490,491],{},"memory_search_facts",[149,493,494],{},"Search facts with graph traversal",[134,496,497,502],{},[149,498,499],{},[95,500,501],{},"memory_invalidate_obs",[149,503,504],{},"Invalidate an observation with timestamp",[134,506,507,512],{},[149,508,509],{},[95,510,511],{},"memory_search_history",[149,513,514],{},"Time-travel search -- query the graph as it was at a past date",[86,516,518],{"id":517},"storage-details","Storage Details",[345,520,521,528,536,549,563],{},[348,522,523,527],{},[524,525,526],"strong",{},"Format",": SQLite database with WAL mode and foreign keys",[348,529,530,533,534],{},[524,531,532],{},"Location",": ",[95,535,97],{},[348,537,538,541,542,545,546,235],{},[524,539,540],{},"Legacy",": If ",[95,543,544],{},"~\u002F.wmind\u002Fmemory.jsonl"," exists from a previous version, it is automatically migrated to SQLite on first run. The original file is renamed to ",[95,547,548],{},".migrated.\u003Ctimestamp>",[348,550,551,554,555,558,559,562],{},[524,552,553],{},"Corruption recovery",": On every open, ",[95,556,557],{},"PRAGMA integrity_check"," runs. If the database is corrupt, it is renamed to ",[95,560,561],{},".corrupt.\u003Ctimestamp>"," and a fresh database is created.",[348,564,565,568,569,572],{},[524,566,567],{},"FTS5",": Full-text search on observations for fast ",[95,570,571],{},"search_nodes"," queries. Falls back to LIKE queries if FTS5 is not available.",[86,574,576],{"id":575},"memory-command","\u002Fmemory Command",[91,578,579,580,582],{},"The TUI provides a ",[95,581,52],{}," command for direct graph management:",[128,584,585,594],{},[131,586,587],{},[134,588,589,592],{},[137,590,591],{},"Subcommand",[137,593,392],{},[144,595,596,606,616,626,636,646],{},[134,597,598,603],{},[149,599,600],{},[95,601,602],{},"\u002Fmemory status",[149,604,605],{},"Show entity and observation counts",[134,607,608,613],{},[149,609,610],{},[95,611,612],{},"\u002Fmemory save",[149,614,615],{},"Save the current conversation context to the graph",[134,617,618,623],{},[149,619,620],{},[95,621,622],{},"\u002Fmemory use \u003Cname>",[149,624,625],{},"Switch to a named memory store",[134,627,628,633],{},[149,629,630],{},[95,631,632],{},"\u002Fmemory list",[149,634,635],{},"List all memory stores",[134,637,638,643],{},[149,639,640],{},[95,641,642],{},"\u002Fmemory rename \u003Cold> \u003Cnew>",[149,644,645],{},"Rename a store",[134,647,648,653],{},[149,649,650],{},[95,651,652],{},"\u002Fmemory delete \u003Cname>",[149,654,655],{},"Delete a store",[86,657,659],{"id":658},"current-limitations","Current Limitations",[345,661,662,668,674,680],{},[348,663,664,667],{},[524,665,666],{},"Exact name matching"," -- cross-linking requires exact entity name matches; \"React\" and \"React 19\" are different entities",[348,669,670,673],{},[524,671,672],{},"Pattern-based contradiction detection"," -- only detects contradictions for known patterns (preference, state, scalar, location); does not use LLM reasoning for conflict detection",[348,675,676,679],{},[524,677,678],{},"Truncated index"," -- knowledge index in system prompt is capped, large graphs get truncated",[348,681,682,685],{},[524,683,684],{},"Single user"," -- no multi-tenancy, no concurrent writes",{"title":118,"searchDepth":687,"depth":688,"links":689},1,2,[690,691,695,696,701,702,703,704,705,706,707,708],{"id":88,"depth":688,"text":89},{"id":104,"depth":688,"text":105,"children":692},[693],{"id":122,"depth":694,"text":123},3,{"id":219,"depth":688,"text":220},{"id":238,"depth":688,"text":239,"children":697},[698,699,700],{"id":242,"depth":694,"text":243},{"id":252,"depth":694,"text":253},{"id":265,"depth":694,"text":266},{"id":272,"depth":688,"text":273},{"id":331,"depth":688,"text":332},{"id":359,"depth":688,"text":360},{"id":369,"depth":688,"text":370},{"id":376,"depth":688,"text":377},{"id":517,"depth":688,"text":518},{"id":575,"depth":688,"text":576},{"id":658,"depth":688,"text":659},"How Working Mind remembers, compounds, and queries knowledge.","md",null,{"icon":713},"i-lucide-brain",true,{"title":51,"description":709},"b4WvvFd2USi71pExNxjWo5s7iu0IOc5esERIo2UTkL4",[718,720],{"title":45,"path":46,"stem":47,"description":719,"children":-1},"Reusable multi-step subroutines for complex workflows.",{"title":57,"path":58,"stem":59,"description":721,"children":-1},"Model providers, MCP servers, and settings.",1778256993663]