Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions site/src/config/navigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -337,6 +337,9 @@ sidebar:
- docs/community/model-providers/mlx
- docs/community/model-providers/ovhcloud-ai-endpoints
- docs/community/model-providers/xai
- label: Memory Stores
items:
- docs/community/memory-stores/overview
- label: Session Managers
items:
- docs/community/session-managers/agentcore-memory
Expand Down
2 changes: 1 addition & 1 deletion site/src/content.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ export const collections = {
// Category for TypeScript API docs (classes, interfaces, type-aliases, functions)
category: z.string().optional(),
// Integration type for filtering (e.g., 'model-provider' for model providers)
integrationType: z.enum(['model-provider', 'tool', 'session-manager', 'integration', 'plugin', 'agent-extension']).optional(),
integrationType: z.enum(['model-provider', 'tool', 'session-manager', 'memory-store', 'integration', 'plugin', 'agent-extension']).optional(),
// Short description for catalog listings
description: z.string().optional(),
// Array of slugs that should redirect to this page (e.g., old URLs)
Expand Down
9 changes: 9 additions & 0 deletions site/src/content/docs/community/community-packages.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ export const communityIntegrations = getIntegrationEntries(allDocs, 'integration
export const communityPlugins = getIntegrationEntries(allDocs, 'plugin', true)
export const communityModelProviders = getIntegrationEntries(allDocs, 'model-provider', true)
export const communitySessionManagers = getIntegrationEntries(allDocs, 'session-manager', true)
export const communityMemoryStores = getIntegrationEntries(allDocs, 'memory-store', true)
export const communityTools = getIntegrationEntries(allDocs, 'tool', true)
export const communityAgentExtensions = getIntegrationEntries(allDocs, 'agent-extension', true)

Expand Down Expand Up @@ -71,6 +72,14 @@ Session managers provide alternative storage backends for conversation history.
{renderCell}
</SimpleTable>

## Memory stores
Comment thread
opieter-aws marked this conversation as resolved.
Resolved

Memory stores are backends that give agents long-term memory across sessions. Each implements the `MemoryStore` interface and plugs into an agent through a `MemoryManager`. See the [Memory Stores overview](./memory-stores/overview.md) for how they fit together.

<SimpleTable data={communityMemoryStores} columns={packageColumns}>
{renderCell}
</SimpleTable>

## Tools

Tools extend your agents with capabilities for specific services and platforms. Each package provides one or more tools you can add to your agents.
Expand Down
8 changes: 5 additions & 3 deletions site/src/content/docs/community/get-featured.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ We feature **reusable packages** that extend Strands Agents capabilities:

- **Model Providers** — integrations with LLM services (OpenAI-compatible endpoints, custom APIs, etc.)
- **Tools** — packaged tools that solve common problems (API integrations, utilities, etc.)
- **Session Managers** — custom session/memory implementations
- **Session Managers** — custom storage backends for conversation history
- **Memory Stores** — `MemoryStore` implementations giving agents long-term knowledge across sessions
- **Plugins** — extend or modify agent behavior during lifecycle events
- **Integrations** — protocol implementations, framework bridges, etc.
- **Agent Extensions** — specialized agent subclasses that change how agents reason and act
Expand All @@ -39,6 +40,7 @@ Place your documentation in the right spot:
| Model Providers | `community/model-providers/` | `cohere.mdx` |
| Tools | `community/tools/` | `strands-deepgram.mdx` |
| Session Managers | `community/session-managers/` | `agentcore-memory.mdx` |
| Memory Stores | `community/memory-stores/` | `overview.mdx` |
Comment thread
opieter-aws marked this conversation as resolved.
Resolved
| Plugins | `community/plugins/` | `my-plugin.mdx` |
| Integrations | `community/integrations/` | `ag-ui.mdx` |
| Agent Extensions | `community/agent-extensions/` | `strands-code-agent.mdx` |
Expand Down Expand Up @@ -79,7 +81,7 @@ Links to your repo, PyPI, official docs, etc.

Every community page needs frontmatter with catalog fields so it appears in the [community catalog](./community-packages.md). Without `community: true`, `integrationType`, `description`, and `languages`, your page won't show up in the catalog tables.

Here's the full frontmatter for a **Tool** (adapt `integrationType` for your package type — `tool`, `model-provider`, `session-manager`, `plugin`, `integration`, or `agent-extension`):
Here's the full frontmatter for a **Tool** (adapt `integrationType` for your package type — `tool`, `model-provider`, `session-manager`, `memory-store`, `plugin`, `integration`, or `agent-extension`):

```yaml
---
Expand All @@ -103,7 +105,7 @@ service:
| Field | Required | Notes |
|-------|----------|-------|
| `community` | ✅ | Must be `true` |
| `integrationType` | ✅ | `tool`, `model-provider`, `session-manager`, `plugin`, or `integration` |
| `integrationType` | ✅ | `tool`, `model-provider`, `session-manager`, `memory-store`, `plugin`, or `integration` |
Comment thread
opieter-aws marked this conversation as resolved.
Resolved
| `description` | ✅ | Shown in the catalog table |
| `languages` | ✅ | `Python`, `TypeScript`, or omit for both |
| `project` | Recommended | PyPI/npm link, GitHub repo, maintainer |
Expand Down
36 changes: 36 additions & 0 deletions site/src/content/docs/community/memory-stores/overview.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
title: Community Memory Stores
description: Community-built memory stores that give agents long-term memory across sessions.
tags: [memory]
sidebar:
label: "Overview"
---

A **memory store** is the backend that holds an agent's long-term knowledge. The
[`MemoryManager`](../../user-guide/concepts/memory/overview.md) orchestrates one or
more stores to recall, inject, and extract memories across sessions. Any backend that
implements the `MemoryStore` interface can plug in: see
[Custom Stores](../../user-guide/concepts/memory/overview.md#custom-stores) for the
contract.

The SDK ships reference stores like the
[Bedrock Knowledge Base store](../../user-guide/concepts/memory/bedrock-knowledge-base.md).
The packages below go further: they are **community-built** memory stores you can install
and attach to an agent, backed by vector databases, managed services, and other stores the
SDK does not vend itself.

:::note[Community maintained]
These packages are maintained by their authors, not the Strands team. Review packages
before using them in production. Quality and support may vary.
:::

## Browse the catalog

See the [Memory stores section of the community catalog](../community-packages.md#memory-stores)
for the current list, with language support and links to each package.

## Add your memory store

Built a `MemoryStore` implementation? See the [Get Featured guide](../get-featured.md) to
list it here, and the [Extensions guide](../../contribute/contributing/extensions.md) for
how to build and publish a package.
3 changes: 2 additions & 1 deletion site/src/util/integration-content.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* Utilities for querying and filtering integration content from the docs collection.
*
* This module provides typed helper functions for working with integration pages
* (model providers, tools, session managers, etc.) that have `integrationType` frontmatter.
* (model providers, tools, session managers, memory stores, etc.) that have `integrationType` frontmatter.
*/

import type { CollectionEntry } from 'astro:content'
Expand All @@ -14,6 +14,7 @@ export type IntegrationType =
| 'model-provider'
| 'tool'
| 'session-manager'
| 'memory-store'
| 'integration'
| 'plugin'
| 'agent-extension'
Expand Down
Loading