[{"data":1,"prerenderedAt":2299},["ShallowReactive",2],{"/open_source/contribution/writing_docs":3,"surround-/open_source/contribution/writing_docs":2284},{"id":4,"title":5,"avatar":6,"banner":6,"body":7,"category":6,"desc":2277,"description":106,"extension":2278,"links":6,"meta":2279,"navigation":6,"path":2280,"seo":2281,"stem":2282,"__hash__":2283},"docs/en/open_source/contribution/writing_docs.md","Documentation Writing Guidelines",null,{"type":8,"value":9,"toc":2253},"minimark",[10,15,316,320,323,327,330,335,346,392,396,399,423,426,435,1140,1144,1153,1332,1336,1339,1379,1383,1386,1410,1464,1674,1677,1682,1696,1772,1776,1785,2064,2068,2077,2132,2139,2143,2146,2163,2175,2181,2185,2189,2192,2201,2205,2239,2249],[11,12,14],"h2",{"id":13},"creating-new-documents","Creating New Documents",[16,17,18,23,36,40,43,95,100,283,287,290,294,305,309],"steps",{},[19,20,22],"h3",{"id":21},"create-markdown-file","Create Markdown File",[24,25,26,27,31,32,35],"p",{},"Create a new ",[28,29,30],"code",{},".md"," file in the ",[28,33,34],{},"content/"," directory or its subdirectories. Choose an appropriate location based on your content type.",[19,37,39],{"id":38},"add-frontmatter","Add Frontmatter",[24,41,42],{},"Add YAML frontmatter at the top of your file to provide metadata. The frontmatter supports the following fields:",[44,45,47,53,63,68,88],"card",{"title":46},"Frontmatter Fields",[24,48,49],{},[50,51,52],"strong",{},"Required Fields:",[54,55,56],"ul",{},[57,58,59,62],"li",{},[28,60,61],{},"title"," (string) - The document title that appears in navigation and page headers",[24,64,65],{},[50,66,67],{},"Optional Fields:",[54,69,70,76,82],{},[57,71,72,75],{},[28,73,74],{},"desc"," (string) - Brief description of the document content",[57,77,78,81],{},[28,79,80],{},"banner"," (string) - URL to a banner image displayed at the top of the page",[57,83,84,87],{},[28,85,86],{},"links"," (array) - Array of related links with labels, URLs, and icons",[24,89,90],{},[91,92],"img",{"alt":93,"src":94},"Frontmatter Example","https://cdn.memt.ai/static/memos/frontmatter.png",[24,96,97],{},[50,98,99],{},"Complete Frontmatter Example:",[101,102,107],"pre",{"className":103,"code":104,"language":105,"meta":106,"style":106},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","---\ntitle: MemOS Documentation\ndesc: Welcome to the official documentation for MemOS – a Python package designed to empower large language models (LLMs) with advanced, modular memory capabilities.\nbanner: https://statics.memtensor.com.cn/memos/memos-banner.gif\nlinks:\n  - label: 'PyPI'\n    to: https://pypi.org/project/MemoryOS/\n    target: _blank\n    avatar:\n      src: https://statics.memtensor.com.cn/icon/pypi.svg\n      alt: PyPI logo\n  - label: 'Open Source'\n    to: https://github.com/MemTensor/MemOS\n    target: _blank\n    icon: i-simple-icons-github\n---\n","yaml","",[28,108,109,118,132,142,152,160,180,191,202,210,221,232,248,258,267,278],{"__ignoreMap":106},[110,111,114],"span",{"class":112,"line":113},"line",1,[110,115,117],{"class":116},"sBMFI","---\n",[110,119,121,124,128],{"class":112,"line":120},2,[110,122,61],{"class":123},"swJcz",[110,125,127],{"class":126},"sMK4o",":",[110,129,131],{"class":130},"sfazB"," MemOS Documentation\n",[110,133,135,137,139],{"class":112,"line":134},3,[110,136,74],{"class":123},[110,138,127],{"class":126},[110,140,141],{"class":130}," Welcome to the official documentation for MemOS – a Python package designed to empower large language models (LLMs) with advanced, modular memory capabilities.\n",[110,143,145,147,149],{"class":112,"line":144},4,[110,146,80],{"class":123},[110,148,127],{"class":126},[110,150,151],{"class":130}," https://statics.memtensor.com.cn/memos/memos-banner.gif\n",[110,153,155,157],{"class":112,"line":154},5,[110,156,86],{"class":123},[110,158,159],{"class":126},":\n",[110,161,163,166,169,171,174,177],{"class":112,"line":162},6,[110,164,165],{"class":126},"  -",[110,167,168],{"class":123}," label",[110,170,127],{"class":126},[110,172,173],{"class":126}," '",[110,175,176],{"class":130},"PyPI",[110,178,179],{"class":126},"'\n",[110,181,183,186,188],{"class":112,"line":182},7,[110,184,185],{"class":123},"    to",[110,187,127],{"class":126},[110,189,190],{"class":130}," https://pypi.org/project/MemoryOS/\n",[110,192,194,197,199],{"class":112,"line":193},8,[110,195,196],{"class":123},"    target",[110,198,127],{"class":126},[110,200,201],{"class":130}," _blank\n",[110,203,205,208],{"class":112,"line":204},9,[110,206,207],{"class":123},"    avatar",[110,209,159],{"class":126},[110,211,213,216,218],{"class":112,"line":212},10,[110,214,215],{"class":123},"      src",[110,217,127],{"class":126},[110,219,220],{"class":130}," https://statics.memtensor.com.cn/icon/pypi.svg\n",[110,222,224,227,229],{"class":112,"line":223},11,[110,225,226],{"class":123},"      alt",[110,228,127],{"class":126},[110,230,231],{"class":130}," PyPI logo\n",[110,233,235,237,239,241,243,246],{"class":112,"line":234},12,[110,236,165],{"class":126},[110,238,168],{"class":123},[110,240,127],{"class":126},[110,242,173],{"class":126},[110,244,245],{"class":130},"Open Source",[110,247,179],{"class":126},[110,249,251,253,255],{"class":112,"line":250},13,[110,252,185],{"class":123},[110,254,127],{"class":126},[110,256,257],{"class":130}," https://github.com/MemTensor/MemOS\n",[110,259,261,263,265],{"class":112,"line":260},14,[110,262,196],{"class":123},[110,264,127],{"class":126},[110,266,201],{"class":130},[110,268,270,273,275],{"class":112,"line":269},15,[110,271,272],{"class":123},"    icon",[110,274,127],{"class":126},[110,276,277],{"class":130}," i-simple-icons-github\n",[110,279,281],{"class":112,"line":280},16,[110,282,117],{"class":116},[19,284,286],{"id":285},"write-content","Write Content",[24,288,289],{},"Use Markdown syntax and MDC components to write your documentation content. Take advantage of the available components to create engaging and well-structured content.",[19,291,293],{"id":292},"update-navigation","Update Navigation",[24,295,296,297,300,301,304],{},"Add the new document to the ",[28,298,299],{},"nav"," section in ",[28,302,303],{},"content/settings.yml"," to make it accessible through the site navigation.",[19,306,308],{"id":307},"merge-to-main-branch","Merge to Main Branch",[24,310,311,312,315],{},"Once changes are merged into the ",[28,313,314],{},"main"," branch, the documentation will be automatically updated and deployed.",[11,317,319],{"id":318},"component-examples","Component Examples",[24,321,322],{},"This project uses Nuxt Content's MDC (Markdown Components) syntax, which supports using Vue components within Markdown. These components help create engaging, well-structured documentation with consistent styling and improved user experience.",[19,324,326],{"id":325},"image-references","Image References",[24,328,329],{},"When adding images to your documentation, you can use several methods to reference them:",[331,332,334],"h4",{"id":333},"local-assets-with-base64image-component","Local Assets with Base64Image Component",[24,336,337,338,341,342,345],{},"For images stored in the ",[28,339,340],{},"public/assets"," directory, use the ",[28,343,344],{},"Base64Image"," component. This component provides better performance by embedding the image directly in the page:",[101,347,351],{"className":348,"code":349,"language":350,"meta":106,"style":106},"language-mdc shiki shiki-themes material-theme-lighter material-theme material-theme-palenight",":Base64Image{src=\"/assets/memos-architecture.png\" alt=\"MemOS Architecture\"}\n","mdc",[28,352,353],{"__ignoreMap":106},[110,354,355,357,359,362,366,369,372,375,377,380,382,384,387,389],{"class":112,"line":113},[110,356,127],{"class":126},[110,358,344],{"class":123},[110,360,361],{"class":126},"{",[110,363,365],{"class":364},"spNyl","src",[110,367,368],{"class":126},"=",[110,370,371],{"class":126},"\"",[110,373,374],{"class":130},"/assets/memos-architecture.png",[110,376,371],{"class":126},[110,378,379],{"class":364}," alt",[110,381,368],{"class":126},[110,383,371],{"class":126},[110,385,386],{"class":130},"MemOS Architecture",[110,388,371],{"class":126},[110,390,391],{"class":126},"}\n",[331,393,395],{"id":394},"remote-images-with-markdown-syntax","Remote Images with Markdown Syntax",[24,397,398],{},"For remote images (hosted on external servers), use standard Markdown image syntax:",[101,400,404],{"className":401,"code":402,"language":403,"meta":106,"style":106},"language-markdown shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","![MemOS Architecture](https://statics.memtensor.com.cn/memos/memos-architecture.png)\n","markdown",[28,405,406],{"__ignoreMap":106},[110,407,408,411,413,416,420],{"class":112,"line":113},[110,409,410],{"class":126},"![",[110,412,386],{"class":130},[110,414,415],{"class":126},"](",[110,417,419],{"class":418},"sQLHv","https://statics.memtensor.com.cn/memos/memos-architecture.png",[110,421,422],{"class":126},")\n",[19,424,425],{"id":16},"Steps",[24,427,428,429,431,432,434],{},"Use ",[28,430,16],{}," to create step-by-step guides from document headings. The ",[28,433,16],{}," component automatically numbers headings, creating a numbered guide for processes and tutorials.",[436,437,440,643,715,719,836,839],"code-preview",{"className":438},[439],"[&>div]:*:w-full",[16,441,443,447,450,509,513,516,527,530,543,547,550,575,578,590,597,608,612,615,628,631],{"level":442},"4",[331,444,446],{"id":445},"fork-clone-the-repository","Fork & Clone the Repository",[24,448,449],{},"Set up the repository on your local machine:",[54,451,452,455,485],{},[57,453,454],{},"Fork the repository on GitHub",[57,456,457,458],{},"Clone your fork to your local machine:",[101,459,463],{"className":460,"code":461,"language":462,"meta":106,"style":106},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","git clone https://github.com/YOUR-USERNAME/MemOS.git\ncd MemOS\n","bash",[28,464,465,476],{"__ignoreMap":106},[110,466,467,470,473],{"class":112,"line":113},[110,468,469],{"class":116},"git",[110,471,472],{"class":130}," clone",[110,474,475],{"class":130}," https://github.com/YOUR-USERNAME/MemOS.git\n",[110,477,478,482],{"class":112,"line":120},[110,479,481],{"class":480},"s2Zo4","cd",[110,483,484],{"class":130}," MemOS\n",[57,486,487,488],{},"Add the upstream repository as a remote:",[101,489,491],{"className":460,"code":490,"language":462,"meta":106,"style":106},"git remote add upstream https://github.com/MemTensor/MemOS.git\n",[28,492,493],{"__ignoreMap":106},[110,494,495,497,500,503,506],{"class":112,"line":113},[110,496,469],{"class":116},[110,498,499],{"class":130}," remote",[110,501,502],{"class":130}," add",[110,504,505],{"class":130}," upstream",[110,507,508],{"class":130}," https://github.com/MemTensor/MemOS.git\n",[331,510,512],{"id":511},"prepare-development-dependencies","Prepare Development Dependencies",[24,514,515],{},"Ensure the following are installed locally:",[54,517,518,521,524],{},[57,519,520],{},"Git",[57,522,523],{},"Python 3.9+",[57,525,526],{},"Make",[24,528,529],{},"Verify Python:",[101,531,533],{"className":460,"code":532,"language":462,"meta":106,"style":106},"python3 --version\n",[28,534,535],{"__ignoreMap":106},[110,536,537,540],{"class":112,"line":113},[110,538,539],{"class":116},"python3",[110,541,542],{"class":130}," --version\n",[331,544,546],{"id":545},"install-poetry","Install Poetry",[24,548,549],{},"MemOS uses Poetry for dependency management. We recommend using the official installer:",[101,551,553],{"className":460,"code":552,"language":462,"meta":106,"style":106},"curl -sSL https://install.python-poetry.org | python3 -\n",[28,554,555],{"__ignoreMap":106},[110,556,557,560,563,566,569,572],{"class":112,"line":113},[110,558,559],{"class":116},"curl",[110,561,562],{"class":130}," -sSL",[110,564,565],{"class":130}," https://install.python-poetry.org",[110,567,568],{"class":126}," |",[110,570,571],{"class":116}," python3",[110,573,574],{"class":130}," -\n",[24,576,577],{},"Verify the installation:",[101,579,581],{"className":460,"code":580,"language":462,"meta":106,"style":106},"poetry --version\n",[28,582,583],{"__ignoreMap":106},[110,584,585,588],{"class":112,"line":113},[110,586,587],{"class":116},"poetry",[110,589,542],{"class":130},[24,591,592,593,596],{},"If you see ",[28,594,595],{},"poetry: command not found",", please add the Poetry executable directory to your PATH as prompted by the installer, then restart your terminal and verify again.",[24,598,599,600,607],{},"For more installation options, see the ",[601,602,606],"a",{"href":603,"rel":604},"https://python-poetry.org/docs/#installing-with-the-official-installer",[605],"nofollow","official installation guide",".",[331,609,611],{"id":610},"install-dependencies-and-set-up-pre-commit-hooks","Install Dependencies and Set Up Pre-commit Hooks",[24,613,614],{},"Install all project dependencies and development tools in the repository root:",[101,616,618],{"className":460,"code":617,"language":462,"meta":106,"style":106},"make install\n",[28,619,620],{"__ignoreMap":106},[110,621,622,625],{"class":112,"line":113},[110,623,624],{"class":116},"make",[110,626,627],{"class":130}," install\n",[24,629,630],{},"Tip:",[54,632,633],{},[57,634,635,636,642],{},"If you switch branches or dependencies change, you may need to ",[50,637,638,639],{},"re-run ",[28,640,641],{},"make install"," to keep the environment consistent.",[101,644,648],{"className":645,"code":646,"language":647,"meta":106,"style":106},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","from memos.configs.mem_os import MOSConfig\n\n# init MOSConfig\nmos_config = MOSConfig.from_json_file(\"examples/data/config/simple_memos_config.json\")\n","python",[28,649,650,676,682,688],{"__ignoreMap":106},[110,651,652,656,660,662,665,667,670,673],{"class":112,"line":113},[110,653,655],{"class":654},"s7zQu","from",[110,657,659],{"class":658},"sTEyZ"," memos",[110,661,607],{"class":126},[110,663,664],{"class":658},"configs",[110,666,607],{"class":126},[110,668,669],{"class":658},"mem_os ",[110,671,672],{"class":654},"import",[110,674,675],{"class":658}," MOSConfig\n",[110,677,678],{"class":112,"line":120},[110,679,681],{"emptyLinePlaceholder":680},true,"\n",[110,683,684],{"class":112,"line":134},[110,685,687],{"class":686},"sHwdD","# init MOSConfig\n",[110,689,690,693,695,698,700,703,706,708,711,713],{"class":112,"line":144},[110,691,692],{"class":658},"mos_config ",[110,694,368],{"class":126},[110,696,697],{"class":658}," MOSConfig",[110,699,607],{"class":126},[110,701,702],{"class":480},"from_json_file",[110,704,705],{"class":126},"(",[110,707,371],{"class":126},[110,709,710],{"class":130},"examples/data/config/simple_memos_config.json",[110,712,371],{"class":126},[110,714,422],{"class":126},[331,716,718],{"id":717},"create-a-user-register-a-memcube","Create a User & Register a MemCube",[101,720,722],{"className":645,"code":721,"language":647,"meta":106,"style":106},"import uuid\nfrom memos.mem_os.main import MOS\n\nmos = MOS(mos_config)\n\n# Generate a unique user ID\nuser_id = str(uuid.uuid4())\n\n# Create the user\nmos.create_user(user_id=user_id)\n",[28,723,724,731,752,756,773,777,782,805,809,814],{"__ignoreMap":106},[110,725,726,728],{"class":112,"line":113},[110,727,672],{"class":654},[110,729,730],{"class":658}," uuid\n",[110,732,733,735,737,739,742,744,747,749],{"class":112,"line":120},[110,734,655],{"class":654},[110,736,659],{"class":658},[110,738,607],{"class":126},[110,740,741],{"class":658},"mem_os",[110,743,607],{"class":126},[110,745,746],{"class":658},"main ",[110,748,672],{"class":654},[110,750,751],{"class":658}," MOS\n",[110,753,754],{"class":112,"line":134},[110,755,681],{"emptyLinePlaceholder":680},[110,757,758,761,763,766,768,771],{"class":112,"line":144},[110,759,760],{"class":658},"mos ",[110,762,368],{"class":126},[110,764,765],{"class":480}," MOS",[110,767,705],{"class":126},[110,769,770],{"class":480},"mos_config",[110,772,422],{"class":126},[110,774,775],{"class":112,"line":154},[110,776,681],{"emptyLinePlaceholder":680},[110,778,779],{"class":112,"line":162},[110,780,781],{"class":686},"# Generate a unique user ID\n",[110,783,784,787,789,792,794,797,799,802],{"class":112,"line":182},[110,785,786],{"class":658},"user_id ",[110,788,368],{"class":126},[110,790,791],{"class":116}," str",[110,793,705],{"class":126},[110,795,796],{"class":480},"uuid",[110,798,607],{"class":126},[110,800,801],{"class":480},"uuid4",[110,803,804],{"class":126},"())\n",[110,806,807],{"class":112,"line":193},[110,808,681],{"emptyLinePlaceholder":680},[110,810,811],{"class":112,"line":204},[110,812,813],{"class":686},"# Create the user\n",[110,815,816,819,821,824,826,830,832,834],{"class":112,"line":212},[110,817,818],{"class":658},"mos",[110,820,607],{"class":126},[110,822,823],{"class":480},"create_user",[110,825,705],{"class":126},[110,827,829],{"class":828},"sHdIc","user_id",[110,831,368],{"class":126},[110,833,829],{"class":480},[110,835,422],{"class":126},[24,837,838],{},":::",[840,841,842],"template",{"v-slot:code":106},[101,843,845],{"className":348,"code":844,"language":350,"meta":106,"style":106},"::steps{level=\"4\"}\n\n#### Install MemOS\n\n```bash\npip install MemoryOS\n```\n\n#### Create a Minimal Config\n\nFor this Quick Start, we'll use the built-in GeneralTextMemory.\n\n```python\nfrom memos.configs.mem_os import MOSConfig\n\n# init MOSConfig\nmos_config = MOSConfig.from_json_file(\"examples/data/config/simple_memos_config.json\")\n```\n\n#### Create a User & Register a MemCube\n\n```python\nimport uuid\nfrom memos.mem_os.main import MOS\n\nmos = MOS(mos_config)\n\n# Generate a unique user ID\nuser_id = str(uuid.uuid4())\n\n# Create the user\nmos.create_user(user_id=user_id)\n```\n\n::\n",[28,846,847,869,873,881,885,894,905,910,914,921,925,930,934,941,959,963,967,990,995,1000,1008,1013,1020,1027,1046,1051,1066,1071,1076,1095,1100,1105,1124,1129,1134],{"__ignoreMap":106},[110,848,849,852,854,856,859,861,863,865,867],{"class":112,"line":113},[110,850,851],{"class":126},"::",[110,853,16],{"class":123},[110,855,361],{"class":126},[110,857,858],{"class":364},"level",[110,860,368],{"class":126},[110,862,371],{"class":126},[110,864,442],{"class":130},[110,866,371],{"class":126},[110,868,391],{"class":126},[110,870,871],{"class":112,"line":120},[110,872,681],{"emptyLinePlaceholder":680},[110,874,875,878],{"class":112,"line":134},[110,876,877],{"class":126},"#### ",[110,879,880],{"class":116},"Install MemOS\n",[110,882,883],{"class":112,"line":144},[110,884,681],{"emptyLinePlaceholder":680},[110,886,887,890],{"class":112,"line":154},[110,888,889],{"class":130},"```",[110,891,893],{"class":892},"sJsPd","bash\n",[110,895,896,899,902],{"class":112,"line":162},[110,897,898],{"class":116},"pip",[110,900,901],{"class":130}," install",[110,903,904],{"class":130}," MemoryOS\n",[110,906,907],{"class":112,"line":182},[110,908,909],{"class":130},"```\n",[110,911,912],{"class":112,"line":193},[110,913,681],{"emptyLinePlaceholder":680},[110,915,916,918],{"class":112,"line":204},[110,917,877],{"class":126},[110,919,920],{"class":116},"Create a Minimal Config\n",[110,922,923],{"class":112,"line":212},[110,924,681],{"emptyLinePlaceholder":680},[110,926,927],{"class":112,"line":223},[110,928,929],{"class":658},"For this Quick Start, we'll use the built-in GeneralTextMemory.\n",[110,931,932],{"class":112,"line":234},[110,933,681],{"emptyLinePlaceholder":680},[110,935,936,938],{"class":112,"line":250},[110,937,889],{"class":130},[110,939,940],{"class":892},"python\n",[110,942,943,945,947,949,951,953,955,957],{"class":112,"line":260},[110,944,655],{"class":654},[110,946,659],{"class":658},[110,948,607],{"class":126},[110,950,664],{"class":658},[110,952,607],{"class":126},[110,954,669],{"class":658},[110,956,672],{"class":654},[110,958,675],{"class":658},[110,960,961],{"class":112,"line":269},[110,962,681],{"emptyLinePlaceholder":680},[110,964,965],{"class":112,"line":280},[110,966,687],{"class":686},[110,968,970,972,974,976,978,980,982,984,986,988],{"class":112,"line":969},17,[110,971,692],{"class":658},[110,973,368],{"class":126},[110,975,697],{"class":658},[110,977,607],{"class":126},[110,979,702],{"class":658},[110,981,705],{"class":126},[110,983,371],{"class":126},[110,985,710],{"class":130},[110,987,371],{"class":126},[110,989,422],{"class":126},[110,991,993],{"class":112,"line":992},18,[110,994,909],{"class":130},[110,996,998],{"class":112,"line":997},19,[110,999,681],{"emptyLinePlaceholder":680},[110,1001,1003,1005],{"class":112,"line":1002},20,[110,1004,877],{"class":126},[110,1006,1007],{"class":116},"Create a User & Register a MemCube\n",[110,1009,1011],{"class":112,"line":1010},21,[110,1012,681],{"emptyLinePlaceholder":680},[110,1014,1016,1018],{"class":112,"line":1015},22,[110,1017,889],{"class":130},[110,1019,940],{"class":892},[110,1021,1023,1025],{"class":112,"line":1022},23,[110,1024,672],{"class":654},[110,1026,730],{"class":658},[110,1028,1030,1032,1034,1036,1038,1040,1042,1044],{"class":112,"line":1029},24,[110,1031,655],{"class":654},[110,1033,659],{"class":658},[110,1035,607],{"class":126},[110,1037,741],{"class":658},[110,1039,607],{"class":126},[110,1041,746],{"class":658},[110,1043,672],{"class":654},[110,1045,751],{"class":658},[110,1047,1049],{"class":112,"line":1048},25,[110,1050,681],{"emptyLinePlaceholder":680},[110,1052,1054,1056,1058,1060,1062,1064],{"class":112,"line":1053},26,[110,1055,760],{"class":658},[110,1057,368],{"class":126},[110,1059,765],{"class":658},[110,1061,705],{"class":126},[110,1063,770],{"class":480},[110,1065,422],{"class":126},[110,1067,1069],{"class":112,"line":1068},27,[110,1070,681],{"emptyLinePlaceholder":680},[110,1072,1074],{"class":112,"line":1073},28,[110,1075,781],{"class":686},[110,1077,1079,1081,1083,1085,1087,1089,1091,1093],{"class":112,"line":1078},29,[110,1080,786],{"class":658},[110,1082,368],{"class":126},[110,1084,791],{"class":116},[110,1086,705],{"class":126},[110,1088,796],{"class":480},[110,1090,607],{"class":126},[110,1092,801],{"class":480},[110,1094,804],{"class":126},[110,1096,1098],{"class":112,"line":1097},30,[110,1099,681],{"emptyLinePlaceholder":680},[110,1101,1103],{"class":112,"line":1102},31,[110,1104,813],{"class":686},[110,1106,1108,1110,1112,1114,1116,1118,1120,1122],{"class":112,"line":1107},32,[110,1109,818],{"class":658},[110,1111,607],{"class":126},[110,1113,823],{"class":658},[110,1115,705],{"class":126},[110,1117,829],{"class":828},[110,1119,368],{"class":126},[110,1121,829],{"class":480},[110,1123,422],{"class":126},[110,1125,1127],{"class":112,"line":1126},33,[110,1128,909],{"class":130},[110,1130,1132],{"class":112,"line":1131},34,[110,1133,681],{"emptyLinePlaceholder":680},[110,1135,1137],{"class":112,"line":1136},35,[110,1138,1139],{"class":126},"::\n",[19,1141,1143],{"id":1142},"accordion","Accordion",[24,1145,428,1146,1148,1149,1152],{},[28,1147,1142],{}," and ",[28,1150,1151],{},"accordion-item"," to create collapsible content sections. Accordions are useful for organizing FAQs, expandable details, or grouped information in an interactive way.",[436,1154,1157,1178],{"className":1155},[1156],"[&>div]:*:my-0",[1142,1158,1159,1166,1172],{},[1151,1160,1163],{"icon":1161,"label":1162},"i-lucide-circle-help","Is MemOS compatible with LLMs accessed via API?",[24,1164,1165],{},"Yes. MemOS is designed to be as compatible as possible with various types of models. However, it's important to note that if you're using API-based models, activation and parametric memories cannot be utilized.",[1151,1167,1169],{"icon":1161,"label":1168},"How does MemOS improve the effectiveness of large language model applications?",[24,1170,1171],{},"MemOS enhances large language model applications by providing structured, persistent memory with intelligent scheduling, long-term knowledge retention, and KV cache for fast inference. It supports fine-grained access control and user isolation, ensuring memory security in multi-user environments. Its modular architecture allows seamless integration of new memory types, LLMs, and storage backends, making it adaptable to a wide range of intelligent applications.",[1151,1173,1175],{"icon":1161,"label":1174},"What is the pricing?",[24,1176,1177],{},"MemOS open-source is free.",[840,1179,1180],{"v-slot:code":106},[101,1181,1183],{"className":348,"code":1182,"language":350,"meta":106,"style":106},"::accordion\n\n:::accordion-item{label=\"Is MemOS compatible with LLMs accessed via API?\" icon=\"i-lucide-circle-help\"}\nYes. MemOS is designed to be as compatible as possible with various types of models. However, it's important to note that if you're using API-based models, activation and parametric memories cannot be utilized.\n:::\n\n:::accordion-item{label=\"How does MemOS improve the effectiveness of large language model applications?\" icon=\"i-lucide-circle-help\"}\nMemOS enhances large language model applications by providing structured, persistent memory with intelligent scheduling, long-term knowledge retention, and KV cache for fast inference. It supports fine-grained access control and user isolation, ensuring memory security in multi-user environments. Its modular architecture allows seamless integration of new memory types, LLMs, and storage backends, making it adaptable to a wide range of intelligent applications.\n:::\n\n:::accordion-item{label=\"What is the pricing?\" icon=\"i-lucide-circle-help\"}\nMemOS open-source is free.\n:::\n\n::\n",[28,1184,1185,1192,1196,1228,1233,1238,1242,1272,1277,1281,1285,1315,1320,1324,1328],{"__ignoreMap":106},[110,1186,1187,1189],{"class":112,"line":113},[110,1188,851],{"class":126},[110,1190,1191],{"class":123},"accordion\n",[110,1193,1194],{"class":112,"line":120},[110,1195,681],{"emptyLinePlaceholder":680},[110,1197,1198,1200,1202,1204,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226],{"class":112,"line":134},[110,1199,838],{"class":126},[110,1201,1151],{"class":123},[110,1203,361],{"class":126},[110,1205,1206],{"class":364},"label",[110,1208,368],{"class":126},[110,1210,371],{"class":126},[110,1212,1162],{"class":130},[110,1214,371],{"class":126},[110,1216,1217],{"class":364}," icon",[110,1219,368],{"class":126},[110,1221,371],{"class":126},[110,1223,1161],{"class":130},[110,1225,371],{"class":126},[110,1227,391],{"class":126},[110,1229,1230],{"class":112,"line":144},[110,1231,1232],{"class":658},"Yes. MemOS is designed to be as compatible as possible with various types of models. However, it's important to note that if you're using API-based models, activation and parametric memories cannot be utilized.\n",[110,1234,1235],{"class":112,"line":154},[110,1236,1237],{"class":126},":::\n",[110,1239,1240],{"class":112,"line":162},[110,1241,681],{"emptyLinePlaceholder":680},[110,1243,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270],{"class":112,"line":182},[110,1245,838],{"class":126},[110,1247,1151],{"class":123},[110,1249,361],{"class":126},[110,1251,1206],{"class":364},[110,1253,368],{"class":126},[110,1255,371],{"class":126},[110,1257,1168],{"class":130},[110,1259,371],{"class":126},[110,1261,1217],{"class":364},[110,1263,368],{"class":126},[110,1265,371],{"class":126},[110,1267,1161],{"class":130},[110,1269,371],{"class":126},[110,1271,391],{"class":126},[110,1273,1274],{"class":112,"line":193},[110,1275,1276],{"class":658},"MemOS enhances large language model applications by providing structured, persistent memory with intelligent scheduling, long-term knowledge retention, and KV cache for fast inference. It supports fine-grained access control and user isolation, ensuring memory security in multi-user environments. Its modular architecture allows seamless integration of new memory types, LLMs, and storage backends, making it adaptable to a wide range of intelligent applications.\n",[110,1278,1279],{"class":112,"line":204},[110,1280,1237],{"class":126},[110,1282,1283],{"class":112,"line":212},[110,1284,681],{"emptyLinePlaceholder":680},[110,1286,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313],{"class":112,"line":223},[110,1288,838],{"class":126},[110,1290,1151],{"class":123},[110,1292,361],{"class":126},[110,1294,1206],{"class":364},[110,1296,368],{"class":126},[110,1298,371],{"class":126},[110,1300,1174],{"class":130},[110,1302,371],{"class":126},[110,1304,1217],{"class":364},[110,1306,368],{"class":126},[110,1308,371],{"class":126},[110,1310,1161],{"class":130},[110,1312,371],{"class":126},[110,1314,391],{"class":126},[110,1316,1317],{"class":112,"line":234},[110,1318,1319],{"class":658},"MemOS open-source is free.\n",[110,1321,1322],{"class":112,"line":250},[110,1323,1237],{"class":126},[110,1325,1326],{"class":112,"line":260},[110,1327,681],{"emptyLinePlaceholder":680},[110,1329,1330],{"class":112,"line":269},[110,1331,1139],{"class":126},[19,1333,1335],{"id":1334},"badge","Badge",[24,1337,1338],{},"Use badge to display status indicators or labels. Badges are great for highlighting version numbers, statuses, or categories within your content.",[436,1340,1342,1349],{"label":1341},"Preview",[1334,1343,1344],{},[24,1345,1346],{},[50,1347,1348],{},"v1.0.0",[840,1350,1351],{"v-slot:code":106},[101,1352,1354],{"className":348,"code":1353,"language":350,"meta":106,"style":106},"::badge\n**v1.0.0**\n::\n",[28,1355,1356,1363,1375],{"__ignoreMap":106},[110,1357,1358,1360],{"class":112,"line":113},[110,1359,851],{"class":126},[110,1361,1362],{"class":123},"badge\n",[110,1364,1365,1369,1372],{"class":112,"line":120},[110,1366,1368],{"class":1367},"sHepR","**",[110,1370,1348],{"class":1371},"so75L",[110,1373,1374],{"class":1367},"**\n",[110,1376,1377],{"class":112,"line":134},[110,1378,1139],{"class":126},[19,1380,1382],{"id":1381},"callout","Callout",[24,1384,1385],{},"Use callout to emphasize important contextual information. Callouts draw attention to notes, tips, warnings, or cautions, making key information stand out.",[24,1387,1388,1389,1148,1392,1395,1396,1399,1400,1399,1403,1399,1406,1409],{},"Customize with ",[28,1390,1391],{},"icon",[28,1393,1394],{},"color"," props or use ",[28,1397,1398],{},"note",", ",[28,1401,1402],{},"tip",[28,1404,1405],{},"warning",[28,1407,1408],{},"caution"," shortcuts for pre-defined semantic styles.",[436,1411,1413,1424],{"className":1412},[1156,439],[1381,1414,1415],{},[24,1416,1417,1418,1420,1421,1423],{},"This is a ",[28,1419,1381],{}," with full ",[50,1422,403],{}," support.",[840,1425,1426],{"v-slot:code":106},[101,1427,1429],{"className":348,"code":1428,"language":350,"meta":106,"style":106},"::callout\nThis is a `callout` with full **markdown** support.\n::\n",[28,1430,1431,1438,1460],{"__ignoreMap":106},[110,1432,1433,1435],{"class":112,"line":113},[110,1434,851],{"class":126},[110,1436,1437],{"class":123},"callout\n",[110,1439,1440,1442,1445,1447,1449,1451,1453,1455,1457],{"class":112,"line":120},[110,1441,1417],{"class":658},[110,1443,1444],{"class":126},"`",[110,1446,1381],{"class":130},[110,1448,1444],{"class":126},[110,1450,1420],{"class":658},[110,1452,1368],{"class":1367},[110,1454,403],{"class":1371},[110,1456,1368],{"class":1367},[110,1458,1459],{"class":658}," support.\n",[110,1461,1462],{"class":112,"line":134},[110,1463,1139],{"class":126},[436,1465,1466,1514],{},[1467,1468,1474,1481,1488,1496,1502,1508],"div",{"className":1469},[1470,1471,1472,1473],"flex","flex-col","gap-4","w-full",[1398,1475,1478],{"className":1476},[1473,1477],"my-0",[24,1479,1480],{},"Basic note content",[1398,1482,1485],{"className":1483,"to":1484},[1473,1477],"/open_source/getting_started/quick_start",[24,1486,1487],{},"Note with link - click to navigate to quick start guide",[1398,1489,1493],{"className":1490,"to":1491,"icon":1492},[1473,1477],"/open_source/modules/mem_cube","ri:database-line",[24,1494,1495],{},"Note with custom icon - learn more about MemCube",[1402,1497,1499],{"className":1498},[1473,1477],[24,1500,1501],{},"Here's a helpful suggestion.",[1405,1503,1505],{"className":1504},[1473,1477],[24,1506,1507],{},"Be careful with this action as it might have unexpected results.",[1408,1509,1511],{"className":1510},[1473,1477],[24,1512,1513],{},"This action cannot be undone.",[840,1515,1516],{"v-slot:code":106},[101,1517,1519],{"className":348,"code":1518,"language":350,"meta":106,"style":106},"::note\nBasic note content\n::\n\n::note{to=\"/open_source/getting_started/quick_start\"}\nNote with link - click to navigate to quick start guide\n::\n\n::note{to=\"/open_source/modules/mem_cube\" icon=\"ri:database-line\"}\nNote with custom icon - learn more about MemCube\n::\n\n::tip\nHere's a helpful suggestion.\n::\n\n::warning\nBe careful with this action as it might have unexpected results.\n::\n\n::caution\nThis action cannot be undone.\n::\n",[28,1520,1521,1528,1533,1537,1541,1562,1567,1571,1575,1605,1610,1614,1618,1625,1630,1634,1638,1645,1650,1654,1658,1665,1670],{"__ignoreMap":106},[110,1522,1523,1525],{"class":112,"line":113},[110,1524,851],{"class":126},[110,1526,1527],{"class":123},"note\n",[110,1529,1530],{"class":112,"line":120},[110,1531,1532],{"class":658},"Basic note content\n",[110,1534,1535],{"class":112,"line":134},[110,1536,1139],{"class":126},[110,1538,1539],{"class":112,"line":144},[110,1540,681],{"emptyLinePlaceholder":680},[110,1542,1543,1545,1547,1549,1552,1554,1556,1558,1560],{"class":112,"line":154},[110,1544,851],{"class":126},[110,1546,1398],{"class":123},[110,1548,361],{"class":126},[110,1550,1551],{"class":364},"to",[110,1553,368],{"class":126},[110,1555,371],{"class":126},[110,1557,1484],{"class":130},[110,1559,371],{"class":126},[110,1561,391],{"class":126},[110,1563,1564],{"class":112,"line":162},[110,1565,1566],{"class":658},"Note with link - click to navigate to quick start guide\n",[110,1568,1569],{"class":112,"line":182},[110,1570,1139],{"class":126},[110,1572,1573],{"class":112,"line":193},[110,1574,681],{"emptyLinePlaceholder":680},[110,1576,1577,1579,1581,1583,1585,1587,1589,1591,1593,1595,1597,1599,1601,1603],{"class":112,"line":204},[110,1578,851],{"class":126},[110,1580,1398],{"class":123},[110,1582,361],{"class":126},[110,1584,1551],{"class":364},[110,1586,368],{"class":126},[110,1588,371],{"class":126},[110,1590,1491],{"class":130},[110,1592,371],{"class":126},[110,1594,1217],{"class":364},[110,1596,368],{"class":126},[110,1598,371],{"class":126},[110,1600,1492],{"class":130},[110,1602,371],{"class":126},[110,1604,391],{"class":126},[110,1606,1607],{"class":112,"line":212},[110,1608,1609],{"class":658},"Note with custom icon - learn more about MemCube\n",[110,1611,1612],{"class":112,"line":223},[110,1613,1139],{"class":126},[110,1615,1616],{"class":112,"line":234},[110,1617,681],{"emptyLinePlaceholder":680},[110,1619,1620,1622],{"class":112,"line":250},[110,1621,851],{"class":126},[110,1623,1624],{"class":123},"tip\n",[110,1626,1627],{"class":112,"line":260},[110,1628,1629],{"class":658},"Here's a helpful suggestion.\n",[110,1631,1632],{"class":112,"line":269},[110,1633,1139],{"class":126},[110,1635,1636],{"class":112,"line":280},[110,1637,681],{"emptyLinePlaceholder":680},[110,1639,1640,1642],{"class":112,"line":969},[110,1641,851],{"class":126},[110,1643,1644],{"class":123},"warning\n",[110,1646,1647],{"class":112,"line":992},[110,1648,1649],{"class":658},"Be careful with this action as it might have unexpected results.\n",[110,1651,1652],{"class":112,"line":997},[110,1653,1139],{"class":126},[110,1655,1656],{"class":112,"line":1002},[110,1657,681],{"emptyLinePlaceholder":680},[110,1659,1660,1662],{"class":112,"line":1010},[110,1661,851],{"class":126},[110,1663,1664],{"class":123},"caution\n",[110,1666,1667],{"class":112,"line":1015},[110,1668,1669],{"class":658},"This action cannot be undone.\n",[110,1671,1672],{"class":112,"line":1022},[110,1673,1139],{"class":126},[19,1675,1676],{"id":44},"Card",[24,1678,428,1679,1681],{},[28,1680,44],{}," to highlight content blocks. Cards are useful for showcasing features, resources, or related information in visually distinct and interactive containers.",[24,1683,1388,1684,1399,1686,1688,1689,1691,1692,1695],{},[28,1685,61],{},[28,1687,1391],{},", and ",[28,1690,1394],{}," props. Cards can also act as links using ",[28,1693,1694],{},"\u003CNuxtLink>"," properties for navigation.",[436,1697,1699,1707],{"className":1698},[1156,439],[44,1700,1704],{"title":245,"icon":1701,"to":1702,"target":1703},"i-simple-icons-github","https://github.com/MemTensor/MemOS","_blank",[24,1705,1706],{},"Use our open-source version",[840,1708,1709],{"v-slot:code":106},[101,1710,1712],{"className":348,"code":1711,"language":350,"meta":106,"style":106},"::card\n---\ntitle: Open Source\nicon: i-simple-icons-github\nto: https://github.com/MemTensor/MemOS\ntarget: _blank\n---\nUse our open-source version\n::\n",[28,1713,1714,1721,1725,1734,1742,1750,1759,1763,1768],{"__ignoreMap":106},[110,1715,1716,1718],{"class":112,"line":113},[110,1717,851],{"class":126},[110,1719,1720],{"class":123},"card\n",[110,1722,1723],{"class":112,"line":120},[110,1724,117],{"class":658},[110,1726,1727,1729,1731],{"class":112,"line":134},[110,1728,61],{"class":123},[110,1730,127],{"class":126},[110,1732,1733],{"class":130}," Open Source\n",[110,1735,1736,1738,1740],{"class":112,"line":144},[110,1737,1391],{"class":123},[110,1739,127],{"class":126},[110,1741,277],{"class":130},[110,1743,1744,1746,1748],{"class":112,"line":154},[110,1745,1551],{"class":123},[110,1747,127],{"class":126},[110,1749,257],{"class":130},[110,1751,1752,1755,1757],{"class":112,"line":162},[110,1753,1754],{"class":123},"target",[110,1756,127],{"class":126},[110,1758,201],{"class":130},[110,1760,1761],{"class":112,"line":182},[110,1762,117],{"class":658},[110,1764,1765],{"class":112,"line":193},[110,1766,1767],{"class":658},"Use our open-source version\n",[110,1769,1770],{"class":112,"line":204},[110,1771,1139],{"class":126},[19,1773,1775],{"id":1774},"cardgroup","CardGroup",[24,1777,428,1778,1781,1782,1784],{},[28,1779,1780],{},"card-group"," to arrange cards in a grid layout. ",[28,1783,1780],{}," is ideal for displaying collections of cards in a structured, visually appealing, and responsive grid.",[436,1786,1787,1822],{},[1780,1788,1790,1798,1806,1814],{"className":1789},[1473],[44,1791,1795],{"title":1792,"icon":1793,"to":1794},"Minimal Pipeline","ri:play-line","/open_source/getting_started/examples#example-1-minimal-pipeline",[24,1796,1797],{},"The smallest working pipeline — add, search, update and dump plaintext memories.",[44,1799,1803],{"title":1800,"icon":1801,"to":1802},"TreeTextMemory Only","ri:tree-line","/open_source/getting_started/examples#example-2-treetextmemory-only",[24,1804,1805],{},"Use Neo4j-backed hierarchical memory to build structured, multi-hop knowledge graphs.",[44,1807,1811],{"title":1808,"icon":1809,"to":1810},"KVCacheMemory Only","ri:database-2-line","/open_source/getting_started/examples#example-3-kvcachememory-only",[24,1812,1813],{},"Speed up sessions with short-term KV cache for fast context injection.",[44,1815,1819],{"title":1816,"icon":1817,"to":1818},"Hybrid TreeText + KVCache","hugeicons:share-07","/open_source/getting_started/examples#example-4-hybrid",[24,1820,1821],{},"Combine explainable graph memory with fast KV caching in a single MemCube.",[840,1823,1824],{"v-slot:code":106},[101,1825,1827],{"className":348,"code":1826,"language":350,"meta":106,"style":106},"::card-group\n\n:::card\n---\nicon: ri:play-line\ntitle: Minimal Pipeline\nto: /open_source/getting_started/examples#example-1-minimal-pipeline\n---\nThe smallest working pipeline — add, search, update and dump plaintext memories.\n:::\n\n:::card\n---\nicon: ri:tree-line\ntitle: TreeTextMemory Only\nto: /open_source/getting_started/examples#example-2-treetextmemory-only\n---\nUse Neo4j-backed hierarchical memory to build structured, multi-hop knowledge graphs.\n:::\n\n:::card\n---\nicon: ri:database-2-line\ntitle: KVCacheMemory Only\nto: /open_source/getting_started/examples#example-3-kvcachememory-only\n---\nSpeed up sessions with short-term KV cache for fast context injection.\n:::\n\n:::card\n---\nicon: hugeicons:share-07\ntitle: Hybrid TreeText + KVCache\nto: /open_source/getting_started/examples#example-4-hybrid\n---\nCombine explainable graph memory with fast KV caching in a single MemCube.\n:::\n\n::\n",[28,1828,1829,1836,1840,1846,1850,1859,1868,1877,1881,1886,1890,1894,1900,1904,1913,1922,1931,1935,1940,1944,1948,1954,1958,1967,1976,1985,1989,1994,1998,2002,2008,2012,2021,2030,2039,2043,2049,2054,2059],{"__ignoreMap":106},[110,1830,1831,1833],{"class":112,"line":113},[110,1832,851],{"class":126},[110,1834,1835],{"class":123},"card-group\n",[110,1837,1838],{"class":112,"line":120},[110,1839,681],{"emptyLinePlaceholder":680},[110,1841,1842,1844],{"class":112,"line":134},[110,1843,838],{"class":126},[110,1845,1720],{"class":123},[110,1847,1848],{"class":112,"line":144},[110,1849,117],{"class":658},[110,1851,1852,1854,1856],{"class":112,"line":154},[110,1853,1391],{"class":123},[110,1855,127],{"class":126},[110,1857,1858],{"class":130}," ri:play-line\n",[110,1860,1861,1863,1865],{"class":112,"line":162},[110,1862,61],{"class":123},[110,1864,127],{"class":126},[110,1866,1867],{"class":130}," Minimal Pipeline\n",[110,1869,1870,1872,1874],{"class":112,"line":182},[110,1871,1551],{"class":123},[110,1873,127],{"class":126},[110,1875,1876],{"class":130}," /open_source/getting_started/examples#example-1-minimal-pipeline\n",[110,1878,1879],{"class":112,"line":193},[110,1880,117],{"class":658},[110,1882,1883],{"class":112,"line":204},[110,1884,1885],{"class":658},"The smallest working pipeline — add, search, update and dump plaintext memories.\n",[110,1887,1888],{"class":112,"line":212},[110,1889,1237],{"class":126},[110,1891,1892],{"class":112,"line":223},[110,1893,681],{"emptyLinePlaceholder":680},[110,1895,1896,1898],{"class":112,"line":234},[110,1897,838],{"class":126},[110,1899,1720],{"class":123},[110,1901,1902],{"class":112,"line":250},[110,1903,117],{"class":658},[110,1905,1906,1908,1910],{"class":112,"line":260},[110,1907,1391],{"class":123},[110,1909,127],{"class":126},[110,1911,1912],{"class":130}," ri:tree-line\n",[110,1914,1915,1917,1919],{"class":112,"line":269},[110,1916,61],{"class":123},[110,1918,127],{"class":126},[110,1920,1921],{"class":130}," TreeTextMemory Only\n",[110,1923,1924,1926,1928],{"class":112,"line":280},[110,1925,1551],{"class":123},[110,1927,127],{"class":126},[110,1929,1930],{"class":130}," /open_source/getting_started/examples#example-2-treetextmemory-only\n",[110,1932,1933],{"class":112,"line":969},[110,1934,117],{"class":658},[110,1936,1937],{"class":112,"line":992},[110,1938,1939],{"class":658},"Use Neo4j-backed hierarchical memory to build structured, multi-hop knowledge graphs.\n",[110,1941,1942],{"class":112,"line":997},[110,1943,1237],{"class":126},[110,1945,1946],{"class":112,"line":1002},[110,1947,681],{"emptyLinePlaceholder":680},[110,1949,1950,1952],{"class":112,"line":1010},[110,1951,838],{"class":126},[110,1953,1720],{"class":123},[110,1955,1956],{"class":112,"line":1015},[110,1957,117],{"class":658},[110,1959,1960,1962,1964],{"class":112,"line":1022},[110,1961,1391],{"class":123},[110,1963,127],{"class":126},[110,1965,1966],{"class":130}," ri:database-2-line\n",[110,1968,1969,1971,1973],{"class":112,"line":1029},[110,1970,61],{"class":123},[110,1972,127],{"class":126},[110,1974,1975],{"class":130}," KVCacheMemory Only\n",[110,1977,1978,1980,1982],{"class":112,"line":1048},[110,1979,1551],{"class":123},[110,1981,127],{"class":126},[110,1983,1984],{"class":130}," /open_source/getting_started/examples#example-3-kvcachememory-only\n",[110,1986,1987],{"class":112,"line":1053},[110,1988,117],{"class":658},[110,1990,1991],{"class":112,"line":1068},[110,1992,1993],{"class":658},"Speed up sessions with short-term KV cache for fast context injection.\n",[110,1995,1996],{"class":112,"line":1073},[110,1997,1237],{"class":126},[110,1999,2000],{"class":112,"line":1078},[110,2001,681],{"emptyLinePlaceholder":680},[110,2003,2004,2006],{"class":112,"line":1097},[110,2005,838],{"class":126},[110,2007,1720],{"class":123},[110,2009,2010],{"class":112,"line":1102},[110,2011,117],{"class":658},[110,2013,2014,2016,2018],{"class":112,"line":1107},[110,2015,1391],{"class":123},[110,2017,127],{"class":126},[110,2019,2020],{"class":130}," hugeicons:share-07\n",[110,2022,2023,2025,2027],{"class":112,"line":1126},[110,2024,61],{"class":123},[110,2026,127],{"class":126},[110,2028,2029],{"class":130}," Hybrid TreeText + KVCache\n",[110,2031,2032,2034,2036],{"class":112,"line":1131},[110,2033,1551],{"class":123},[110,2035,127],{"class":126},[110,2037,2038],{"class":130}," /open_source/getting_started/examples#example-4-hybrid\n",[110,2040,2041],{"class":112,"line":1136},[110,2042,117],{"class":658},[110,2044,2046],{"class":112,"line":2045},36,[110,2047,2048],{"class":658},"Combine explainable graph memory with fast KV caching in a single MemCube.\n",[110,2050,2052],{"class":112,"line":2051},37,[110,2053,1237],{"class":126},[110,2055,2057],{"class":112,"line":2056},38,[110,2058,681],{"emptyLinePlaceholder":680},[110,2060,2062],{"class":112,"line":2061},39,[110,2063,1139],{"class":126},[11,2065,2067],{"id":2066},"navigation-icons","Navigation Icons",[24,2069,2070,2071,2073,2074,127],{},"When adding navigation entries in ",[28,2072,303],{},", you can include icons using the syntax ",[28,2075,2076],{},"(ri:icon-name)",[101,2078,2080],{"className":103,"code":2079,"language":105,"meta":106,"style":106},"- \"(ri:home-line) Home\": overview.md\n- \"(ri:team-line) User Management\": modules/mos/users.md\n- \"(ri:flask-line) Writing Tests\": contribution/writing_tests.md\n",[28,2081,2082,2100,2116],{"__ignoreMap":106},[110,2083,2084,2087,2090,2093,2095,2097],{"class":112,"line":113},[110,2085,2086],{"class":126},"-",[110,2088,2089],{"class":126}," \"",[110,2091,2092],{"class":130},"(ri:home-line) Home",[110,2094,371],{"class":126},[110,2096,127],{"class":126},[110,2098,2099],{"class":130}," overview.md\n",[110,2101,2102,2104,2106,2109,2111,2113],{"class":112,"line":120},[110,2103,2086],{"class":126},[110,2105,2089],{"class":126},[110,2107,2108],{"class":130},"(ri:team-line) User Management",[110,2110,371],{"class":126},[110,2112,127],{"class":126},[110,2114,2115],{"class":130}," modules/mos/users.md\n",[110,2117,2118,2120,2122,2125,2127,2129],{"class":112,"line":134},[110,2119,2086],{"class":126},[110,2121,2089],{"class":126},[110,2123,2124],{"class":130},"(ri:flask-line) Writing Tests",[110,2126,371],{"class":126},[110,2128,127],{"class":126},[110,2130,2131],{"class":130}," contribution/writing_tests.md\n",[24,2133,2134,2135],{},"Available icons can be found at: ",[601,2136,2137],{"href":2137,"rel":2138},"https://icones.js.org/",[605],[11,2140,2142],{"id":2141},"local-preview","Local Preview",[24,2144,2145],{},"To preview the documentation locally, run the following command from the project root:",[101,2147,2149],{"className":460,"code":2148,"language":462,"meta":106,"style":106},"## Make sure to install the dependencies:\npnpm install\n",[28,2150,2151,2156],{"__ignoreMap":106},[110,2152,2153],{"class":112,"line":113},[110,2154,2155],{"class":686},"## Make sure to install the dependencies:\n",[110,2157,2158,2161],{"class":112,"line":120},[110,2159,2160],{"class":116},"pnpm",[110,2162,627],{"class":130},[101,2164,2166],{"className":460,"code":2165,"language":462,"meta":106,"style":106},"pnpm dev\n",[28,2167,2168],{"__ignoreMap":106},[110,2169,2170,2172],{"class":112,"line":113},[110,2171,2160],{"class":116},[110,2173,2174],{"class":130}," dev\n",[24,2176,2177,2178,607],{},"This command will start a local web server, usually accessible at ",[28,2179,2180],{},"http://127.0.0.1:3000",[11,2182,2184],{"id":2183},"learn-more","Learn More",[19,2186,2188],{"id":2187},"nuxt-content-and-typography","Nuxt Content and Typography",[24,2190,2191],{},"This project uses Nuxt Content and supports rich Typography components and styles. To learn more about available components and customization options, please refer to:",[54,2193,2194],{},[57,2195,2196],{},[601,2197,2200],{"href":2198,"rel":2199},"https://ui.nuxt.com/getting-started/typography",[605],"Nuxt UI Typography Documentation",[11,2202,2204],{"id":2203},"best-practices","Best Practices",[1398,2206,2207,2212],{},[24,2208,2209],{},[50,2210,2211],{},"Documentation Writing Tips",[2213,2214,2215,2221,2227,2233],"ol",{},[57,2216,2217,2220],{},[50,2218,2219],{},"Keep document structure clear",": Use appropriate heading levels to organize content logically",[57,2222,2223,2226],{},[50,2224,2225],{},"Use components wisely",": Use note, card, and other components to improve readability and engagement",[57,2228,2229,2232],{},[50,2230,2231],{},"Code examples",": Provide clear code examples for technical documentation with proper syntax highlighting",[57,2234,2235,2238],{},[50,2236,2237],{},"Icon usage",": Use appropriate icons in navigation to enhance user experience and visual hierarchy",[44,2240,2242],{"title":2241},"Quick Reference",[24,2243,2244,2245,2248],{},"Remember to test your documentation locally before submitting. Use ",[28,2246,2247],{},"npm run dev"," to preview your changes and ensure all components render correctly.",[2250,2251,2252],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sQLHv, html code.shiki .sQLHv{--shiki-light:#90A4AE;--shiki-light-text-decoration:underline;--shiki-default:#EEFFFF;--shiki-default-text-decoration:underline;--shiki-dark:#BABED8;--shiki-dark-text-decoration:underline}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sJsPd, html code.shiki .sJsPd{--shiki-light:#90A4AE90;--shiki-default:#EEFFFF90;--shiki-dark:#BABED890}html pre.shiki code .sHepR, html code.shiki .sHepR{--shiki-light:#39ADB5;--shiki-light-font-weight:bold;--shiki-default:#89DDFF;--shiki-default-font-weight:bold;--shiki-dark:#89DDFF;--shiki-dark-font-weight:bold}html pre.shiki code .so75L, html code.shiki .so75L{--shiki-light:#E53935;--shiki-light-font-weight:bold;--shiki-default:#F07178;--shiki-default-font-weight:bold;--shiki-dark:#F07178;--shiki-dark-font-weight:bold}",{"title":106,"searchDepth":120,"depth":120,"links":2254},[2255,2262,2271,2272,2273,2276],{"id":13,"depth":120,"text":14,"children":2256},[2257,2258,2259,2260,2261],{"id":21,"depth":134,"text":22},{"id":38,"depth":134,"text":39},{"id":285,"depth":134,"text":286},{"id":292,"depth":134,"text":293},{"id":307,"depth":134,"text":308},{"id":318,"depth":120,"text":319,"children":2263},[2264,2265,2266,2267,2268,2269,2270],{"id":325,"depth":134,"text":326},{"id":16,"depth":134,"text":425},{"id":1142,"depth":134,"text":1143},{"id":1334,"depth":134,"text":1335},{"id":1381,"depth":134,"text":1382},{"id":44,"depth":134,"text":1676},{"id":1774,"depth":134,"text":1775},{"id":2066,"depth":120,"text":2067},{"id":2141,"depth":120,"text":2142},{"id":2183,"depth":120,"text":2184,"children":2274},[2275],{"id":2187,"depth":134,"text":2188},{"id":2203,"depth":120,"text":2204},"This project uses Nuxt Content to build a documentation system that supports Markdown and rich Vue components.","md",{},"/en/open_source/contribution/writing_docs",{"title":5,"description":106},"en/open_source/contribution/writing_docs","SjZ0e42g7_Tds-C1MUwdK5VqzWaRGjQ-ws1S3q8dQFc",[2285,2292],{"title":2286,"path":2287,"stem":2288,"icon":2289,"framework":6,"module":6,"class":2290,"target":-1,"active":2291,"defaultOpen":2291,"children":-1,"description":-1},"Commit Guidelines","/open_source/contribution/commit_guidelines","open_source/contribution/commit_guidelines","i-ri-git-commit-line",[],false,{"title":2293,"path":2294,"stem":2295,"icon":2296,"framework":6,"module":6,"class":2297,"target":-1,"active":2291,"defaultOpen":2291,"children":-1,"description":2298},"How to Write Unit Tests","/open_source/contribution/writing_tests","open_source/contribution/writing_tests","i-ri-flask-line",[],"This project uses pytest for unit testing.",1770372091112]