[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-70509":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":9,"totalLinesOfCode":9,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":9,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":9,"pushedAt":9,"updatedAt":44,"readmeContent":45,"aiSummary":46,"trendingCount":16,"starSnapshotCount":16,"syncStatus":47,"lastSyncTime":48,"discoverSource":49},70509,"Memori","MemoriLabs\u002FMemori","MemoriLabs","Memori is agent-native memory infrastructure. A LLM-agnostic layer that turns agent execution and conversation into structured, persistent state for production systems.",null,"https:\u002F\u002Fgithub.com\u002FMemoriLabs\u002FMemori","Python",15238,2580,64,8,0,40,102,924,120,45,false,"main",[25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"agent","ai","long-short-term-memory","memory","python","rag","aiagent","chatgpt","state-management","memori-ai","memory-management","llm","awesome","agent-memory","ai-memory","memory-mcp","openclaw-memory","stateful","typescript","2026-06-12 02:02:34","[![Memori Labs](https:\u002F\u002Fimages.memorilabs.ai\u002Fbanner-dark-large.jpg)](https:\u002F\u002Fmemorilabs.ai\u002F)\n\n\u003Cp align=\"center\">\n  \u003Cstrong>Memory from what agents do, not just what they say.\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ci>Memori plugs into the software and infrastructure you already use. It is LLM, datastore and framework agnostic and seamlessly integrates into the architecture you've already designed.\u003C\u002Fi>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>→ \u003Ca href=\"https:\u002F\u002Fmemorilabs.ai\u002Fdocs\u002Fmemori-cloud\u002F\">Memori Cloud\u003C\u002Fa>\u003C\u002Fstrong> — Zero config. Get an API key and start building in minutes.\n\u003C\u002Fp>\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F15435\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Ftrendshift.io\u002Fapi\u002Fbadge\u002Frepositories\u002F15435\" alt=\"MemoriLabs%2FMemori | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fmemori\">\n    \u003Cimg src=\"https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fmemori.svg\" alt=\"PyPI version\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@memorilabs\u002Fmemori\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F@memorilabs\u002Fmemori.svg\" alt=\"NPM version\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fpepy.tech\u002Fprojects\u002Fmemori\">\n    \u003Cimg src=\"https:\u002F\u002Fstatic.pepy.tech\u002Fbadge\u002Fmemori\" alt=\"Downloads\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fopensource.org\u002Flicense\u002Fapache-2-0\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-Apache%202.0-blue\" alt=\"License\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FabD4eGym6v\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F1042405378304004156?logo=discord\" alt=\"Discord\">\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMemoriLabs\u002FMemori\u002Fstargazers\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F⭐%20Give%20a%20Star-Support%20the%20project-orange?style=for-the-badge\" alt=\"Give a Star\">\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>Choose memory that performs\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\n\n[![Memori Labs](https:\u002F\u002Fimages.memorilabs.ai\u002Fstats.jpg)](https:\u002F\u002Fmemorilabs.ai\u002Fbenchmark)\n\n---\n\n## Getting Started\n\n### Installation\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>TypeScript SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```bash\nnpm install @memorilabs\u002Fmemori\n```\n\u003C\u002Fdetails>\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>Python SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```bash\npip install memori\n```\n\u003C\u002Fdetails>\n\n### Quickstart\n\nSign up at [app.memorilabs.ai](https:\u002F\u002Fapp.memorilabs.ai), get a Memori API key, and start building. Full docs: [memorilabs.ai\u002Fdocs\u002Fmemori-cloud\u002F](https:\u002F\u002Fmemorilabs.ai\u002Fdocs\u002Fmemori-cloud\u002F).\n\nSet `MEMORI_API_KEY` and your LLM API key (e.g. `OPENAI_API_KEY`), then:\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>TypeScript SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```typescript\nimport { OpenAI } from 'openai';\nimport { Memori } from '@memorilabs\u002Fmemori';\n\n\u002F\u002F Requires MEMORI_API_KEY and OPENAI_API_KEY in your environment\nconst client = new OpenAI();\nconst mem = new Memori().llm\n  .register(client)\n  .attribution('user_123', 'support_agent');\n\nasync function main() {\n  await client.chat.completions.create({\n    model: 'gpt-4o-mini',\n    messages: [{ role: 'user', content: 'My favorite color is blue.' }],\n  });\n  \u002F\u002F Conversations are persisted and recalled automatically in the background.\n\n  const response = await client.chat.completions.create({\n    model: 'gpt-4o-mini',\n    messages: [{ role: 'user', content: \"What's my favorite color?\" }],\n  });\n  \u002F\u002F Memori recalls that your favorite color is blue.\n}\n```\n\u003C\u002Fdetails>\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>Python SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```python\nfrom memori import Memori\nfrom openai import OpenAI\n\n# Requires MEMORI_API_KEY and OPENAI_API_KEY in your environment\nclient = OpenAI()\nmem = Memori().llm.register(client)\n\nmem.attribution(entity_id=\"user_123\", process_id=\"support_agent\")\n\nresponse = client.chat.completions.create(\n    model=\"gpt-4o-mini\",\n    messages=[{\"role\": \"user\", \"content\": \"My favorite color is blue.\"}]\n)\n# Conversations are persisted and recalled automatically.\n\nresponse = client.chat.completions.create(\n    model=\"gpt-4o-mini\",\n    messages=[{\"role\": \"user\", \"content\": \"What's my favorite color?\"}]\n)\n# Memori recalls that your favorite color is blue.\n```\n\u003C\u002Fdetails>\n\n## Explore the Memories\n\nUse the [Dashboard](https:\u002F\u002Fapp.memorilabs.ai) — Memories, Analytics, Playground, and API Keys.\n\n> [!TIP]\n> Want to use your own database? Check out docs for Memori BYODB here:\n> [https:\u002F\u002Fmemorilabs.ai\u002Fdocs\u002Fmemori-byodb\u002F](https:\u002F\u002Fmemorilabs.ai\u002Fdocs\u002Fmemori-byodb\u002F).\n\n## LoCoMo Benchmark\n\nMemori was evaluated on the LoCoMo benchmark for long-conversation memory and achieved **81.95% overall accuracy** while using an average of **1,294 tokens per query**. That is just **4.97% of the full-context footprint**, showing that structured memory can preserve reasoning quality without forcing large prompts into every request.\n\nCompared with other retrieval-based memory systems, Memori outperformed Zep, LangMem, and Mem0 while reducing prompt size by roughly **67% vs. Zep** and lowering context cost by more than **20x vs. full-context prompting**.\n\nRead the [benchmark overview](docs\u002Fmemori-cloud\u002Fbenchmark\u002Foverview.mdx), see the [results](docs\u002Fmemori-cloud\u002Fbenchmark\u002Fresults.mdx), or download the [paper](https:\u002F\u002Farxiv.org\u002Fabs\u002F2603.19935).\n\n![\"Memori's average accuracy along with the standard deviation\"](https:\u002F\u002Fimages.memorilabs.ai\u002Fdocs\u002Fmemori-locomo-benchmark.webp)\n\n## OpenClaw (Persistent Memory for Your Gateway)\n\nBy default, OpenClaw agents forget everything between sessions. The Memori plugin fixes that. It automatically captures structured memory from conversation and agent execution after each turn — including tool calls, decisions, and outcomes — and makes it available for agents to recall on demand.\n\nNo changes to your agent code or prompts are required. The plugin hooks into OpenClaw's lifecycle, so you get structured memory, agent-controlled recall, and Advanced Augmentation with a drop-in plugin.\n\n```bash\nopenclaw plugins install @memorilabs\u002Fopenclaw-memori\nopenclaw plugins enable openclaw-memori\n\nopenclaw memori init \\\n  --api-key \"YOUR_MEMORI_API_KEY\" \\\n  --entity-id \"your-app-user-id\" \\\n  --project-id \"my-project\"\n\nopenclaw gateway restart\n```\n\nFor setup and configuration, see the [OpenClaw Quickstart](docs\u002Fmemori-cloud\u002Fopenclaw\u002Fquickstart.mdx). For architecture and lifecycle details, see the [OpenClaw Overview](docs\u002Fmemori-cloud\u002Fopenclaw\u002Foverview.mdx).\n\n## Hermes Agent (Persistent Memory Provider)\n\nMemori also ships as a Hermes Agent memory provider. It captures completed conversations in the background and gives Hermes explicit `memori_recall` and `memori_recall_summary` tools for agent-controlled recall.\n\n```bash\npip install hermes-memori\nhermes-memori install\n\nhermes config set memory.provider memori\nHERMES_HOME=\"${HERMES_HOME:-$HOME\u002F.hermes}\"\nmkdir -p \"$HERMES_HOME\"\necho \"MEMORI_API_KEY=YOUR_MEMORI_API_KEY\" >> \"$HERMES_HOME\u002F.env\"\necho \"MEMORI_ENTITY_ID=your-app-user-id\" >> \"$HERMES_HOME\u002F.env\"\n```\n\n`MEMORI_PROJECT_ID` is optional; when omitted, the provider uses Hermes' active project context for scoping.\n\nFor setup and configuration, see the [Hermes Quickstart](docs\u002Fmemori-cloud\u002Fhermes\u002Fquickstart.mdx). For architecture and lifecycle details, see the [Hermes Overview](docs\u002Fmemori-cloud\u002Fhermes\u002Foverview.mdx).\n\n## MCP (Connect Your Agent in One Command)\n\nYour agent forgets everything between sessions. Memori fixes that. It remembers your stack, your conventions, and how you like things done so you stop repeating yourself.\n\nWorks for solo developers and teams. Your agent learns coding patterns, reviewer preferences, and project conventions over time. For teams, that means shared context that new engineers pick up on day one instead of absorbing tribal knowledge over months.\n\nIf you use Claude Code, Cursor, Codex, Warp, or Antigravity, you can connect Memori with no SDK integration needed:\n\n```bash\nclaude mcp add --transport http memori https:\u002F\u002Fapi.memorilabs.ai\u002Fmcp\u002F \\\n  --header \"X-Memori-API-Key: ${MEMORI_API_KEY}\" \\\n  --header \"X-Memori-Entity-Id: your_username\" \\\n  --header \"X-Memori-Process-Id: claude-code\"\n```\n\nFor Cursor, Codex, Warp, and other clients, see the [MCP client setup guide](docs\u002Fmemori-cloud\u002Fmcp\u002Fclient-setup.mdx).\n\n## Attribution\n\nTo get the most out of Memori, you want to attribute your LLM interactions to an entity (think person, place or thing; like a user) and a process (think your agent, LLM interaction or program).\n\nIf you do not provide any attribution, Memori cannot make memories for you.\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>TypeScript SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```typescript\nmem.attribution(\"12345\", \"my-ai-bot\");\n```\n\u003C\u002Fdetails>\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>Python SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```python\nmem.attribution(entity_id=\"12345\", process_id=\"my-ai-bot\")\n```\n\u003C\u002Fdetails>\n\n## Session Management\n\nMemori uses sessions to group your LLM interactions together. For example, if you have an agent that executes multiple steps you want those to be recorded in a single session.\n\nBy default, Memori handles setting the session for you but you can start a new session or override the session by executing the following:\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>TypeScript SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```typescript\nmem.resetSession();\n\u002F\u002F or\nmem.setSession(sessionId);\n```\n\u003C\u002Fdetails>\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>Python SDK\u003C\u002Fb>\u003C\u002Fsummary>\n\n```python\nmem.new_session()\n# or\nmem.set_session(session_id)\n```\n\u003C\u002Fdetails>\n\n## Supported LLMs\n\n- Anthropic\n- Bedrock\n- DeepSeek\n- Gemini\n- Grok (xAI)\n- OpenAI (Chat Completions & Responses API)\n\n_(unstreamed, streamed, synchronous and asynchronous)_\n\n## Supported Frameworks\n\n- Agno\n- LangChain\n- Pydantic AI\n\n## Supported Platforms\n\n- DeepSeek\n- Nebius AI Studio\n\n## Examples\n\nFor more examples and demos, check out the [Memori Cookbook](https:\u002F\u002Fgithub.com\u002FMemoriLabs\u002Fmemori-cookbook).\n\n## Memori Advanced Augmentation\n\nMemories are tracked at several different levels:\n\n- **entity**: think person, place, or thing; like a user\n- **process**: think your agent, LLM interaction or program\n- **session**: the current interactions between the entity, process and the LLM\n\n[Memori's Advanced Augmentation](docs\u002Fmemori-cloud\u002Fconcepts\u002Fadvanced-augmentation.mdx) enhances memories at each of these levels with:\n\n- attributes\n- events\n- facts\n- people\n- preferences\n- relationships\n- rules\n- skills\n\nMemori knows who your user is, what tasks your agent handles and creates unparalleled context between the two. Augmentation occurs in the background incurring no latency.\n\nBy default, Memori Advanced Augmentation is available without an account but rate limited. When you need increased limits, [sign up for Memori Advanced Augmentation](https:\u002F\u002Fapp.memorilabs.ai\u002Fsignup) or use the Memori CLI:\n\n```bash\n# Install the CLI via pip to manage your account\npython -m memori sign-up \u003Cemail_address>\n```\n\nMemori Advanced Augmentation is always free for developers!\n\nOnce you've obtained an API key, set the following environment variable (used by both Python and TypeScript SDKs):\n\n```bash\nexport MEMORI_API_KEY=[api_key]\n```\n\n## Managing Your Quota\n\nAt any time, you can check your quota using the Memori CLI (works for both SDKs):\n\n```bash\npython -m memori quota\n```\n\nOr by checking your account at [https:\u002F\u002Fapp.memorilabs.ai\u002F](https:\u002F\u002Fapp.memorilabs.ai\u002F). If you have reached your IP address quota, sign up and get an API key for increased limits.\n\nIf your API key exceeds its quota limits we will email you and let you know.\n\n## Command Line Interface (CLI)\n\nThe Memori CLI is the unified tool for managing your account, keys, and quotas across all SDKs. To use it, execute the following from the command line:\n\n```bash\n# Requires Python installed\npython -m memori\n```\n\nThis will display a menu of the available options. For more information about what you can do with the Memori CLI, please reference [Command Line Interface](docs\u002Fmemori-byodb\u002Fconcepts\u002Fcli-quickstart.mdx).\n\n## Contributing\n\nWe welcome contributions from the community! Please see our [Contributing Guidelines](https:\u002F\u002Fgithub.com\u002FMemoriLabs\u002FMemori\u002Fblob\u002Fmain\u002FCONTRIBUTING.md) for details on:\n\n- Setting up your development environment\n- Code style and standards\n- Submitting pull requests\n- Reporting issues\n\n---\n\n## Support\n\n- [**Memori Cloud Documentation**](https:\u002F\u002Fmemorilabs.ai\u002Fdocs\u002Fmemori-cloud)\n- [**Memori BYODB Documentation**](https:\u002F\u002Fmemorilabs.ai\u002Fdocs\u002Fmemori-byodb)\n- [**Discord**](https:\u002F\u002Fdiscord.gg\u002FFpytKAxnFb)\n- [**Issues**](https:\u002F\u002Fgithub.com\u002FMemoriLabs\u002FMemori\u002Fissues)\n---\n\n## License\n\nApache 2.0 - see [LICENSE](https:\u002F\u002Fgithub.com\u002FMemoriLabs\u002FMemori\u002Fblob\u002Fmain\u002FLICENSE)\n","Memori 是一种面向代理的内存基础设施，它将代理执行和对话转化为结构化、持久化的状态，适用于生产系统。该项目的核心功能是提供一个与具体大语言模型无关的记忆层，能够无缝集成到现有的软件架构中，支持多种数据存储和框架。通过捕获代理的行为而非仅限于对话内容，Memori 使得应用程序能够更好地理解和管理复杂的状态信息。特别适合需要长期记忆管理和状态保持的应用场景，如客服聊天机器人、虚拟助手等。项目提供了Python和TypeScript两种SDK供开发者选择，易于上手并快速集成到现有项目中。",2,"2026-06-11 03:32:32","trending"]