Repository navigation
docs(memory): add community page for AgentCore Memory Store #3316
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
opieter-aws
merged 4 commits into
strands-agents:main
from
opieter-aws:agent-tasks/vendor-agentcore-memory-store
Jul 20, 2026
Merged
Changes from all commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
9cce186
docs(memory): add community page for AgentCore Memory Store
opieter-aws 7d75c93
Merge branch 'main' into agent-tasks/vendor-agentcore-memory-store
opieter-aws 265371b
Merge branch 'main' into agent-tasks/vendor-agentcore-memory-store
opieter-aws 4136b0b
address feedback
opieter-aws File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
118 changes: 118 additions & 0 deletions
118
site/src/content/docs/community/memory-stores/agentcore-memory-store.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,118 @@ | ||
| --- | ||
| title: AgentCore Memory Store | ||
| community: true | ||
| description: Amazon Bedrock AgentCore Memory as a MemoryStore for long-term recall and server-side extraction | ||
| integrationType: memory-store | ||
| languages: TypeScript | ||
| sidebar: | ||
| label: "AgentCore Memory Store" | ||
| project: | ||
| npm: https://www.npmjs.com/package/bedrock-agentcore | ||
| github: https://github.com/aws/bedrock-agentcore-sdk-typescript/tree/main/src/memory/integrations/strands | ||
| maintainer: aws | ||
| service: | ||
| name: Amazon Bedrock AgentCore | ||
| link: https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/memory.html | ||
| --- | ||
|
|
||
| The [AgentCore Memory Store](https://github.com/aws/bedrock-agentcore-sdk-typescript/tree/main/src/memory/integrations/strands) | ||
| implements the Strands [`MemoryStore`](../../user-guide/concepts/memory/overview.md#custom-stores) | ||
| interface on top of Amazon Bedrock AgentCore Memory. Search maps to AgentCore's | ||
| `retrieveMemoryRecords`, and conversation turns are ingested for | ||
| server-side memory extraction into long-term records. Attach it to an agent through a | ||
| [`MemoryManager`](../../user-guide/concepts/memory/overview.md) like any other store. See | ||
| the [Getting Started](../../user-guide/concepts/memory/overview.md#getting-started) section for more information. | ||
|
|
||
| ## Requirements | ||
|
|
||
| - `bedrock-agentcore >= 0.4.1` | ||
| - `@strands-agents/sdk >= 1.5.0` | ||
| - An [Amazon Bedrock AgentCore Memory](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/memory.html) resource, with AWS credentials to reach it | ||
|
|
||
| ## Installation | ||
|
|
||
| ```bash | ||
| npm install bedrock-agentcore @strands-agents/sdk | ||
| ``` | ||
|
|
||
| ## Usage | ||
|
|
||
| `createAgentCoreMemoryStores` builds one store per namespace over a shared client, and you | ||
| attach them to an agent through a `MemoryManager`. Mark a namespace `writable` to capture the | ||
| conversation into it; a namespace left unmarked stays read-only for recall. | ||
|
|
||
| ```typescript | ||
| import { Agent, MemoryManager, BedrockModel } from '@strands-agents/sdk' | ||
| import { createAgentCoreMemoryStores } from 'bedrock-agentcore/memory/strands' | ||
|
|
||
| const stores = createAgentCoreMemoryStores({ | ||
| memoryId: 'mem-abc', | ||
| actorId: 'user-123', | ||
| sessionId: 'session-1', | ||
| namespaces: [ | ||
| { namespace: '/facts/{actorId}', writable: true }, | ||
| { namespace: '/preferences/{actorId}', minScore: 0.5 }, | ||
| ], | ||
| extraction: true, | ||
| }) | ||
|
|
||
| const agent = new Agent({ | ||
| model: new BedrockModel(), | ||
| memoryManager: new MemoryManager({ stores }), | ||
| }) | ||
| ``` | ||
|
|
||
| A single `AgentCoreMemoryStore` can also be constructed directly when you only need one | ||
| namespace: | ||
|
|
||
| ```typescript | ||
| import { AgentCoreMemoryStore } from 'bedrock-agentcore/memory/strands' | ||
|
|
||
| const store = new AgentCoreMemoryStore({ | ||
| memoryId: 'mem-abc', | ||
| actorId: 'user-123', | ||
| sessionId: 'session-1', | ||
| namespace: '/facts/{actorId}', | ||
| writable: true, | ||
| extraction: true, | ||
| }) | ||
| ``` | ||
|
|
||
| ## Configuration | ||
|
|
||
| In `createAgentCoreMemoryStores`, `namespace`, `writable`, and `minScore` are set per | ||
| `namespaces` entry, while everything else is passed once at the top level. The direct | ||
| `AgentCoreMemoryStore` constructor takes all options in one flat config. | ||
|
|
||
| | Option | Type | Description | | ||
| |--------|------|-------------| | ||
| | `memoryId` | `string` | The AgentCore Memory resource to read from and write to. | | ||
| | `actorId` | `string` | Identifies the user; substituted into `{actorId}` placeholders. | | ||
| | `sessionId` | `string` | Identifies the conversation; substituted into `{sessionId}` placeholders. | | ||
| | `namespace` | `string` | Exact namespace prefix for recall. Use `namespacePath` instead to query a whole subtree. | | ||
| | `writable` | `boolean` | Enables writing conversation turns for extraction. Defaults to `false`. | | ||
| | `extraction` | `boolean \| object` | Turns on server-side extraction, with optional cadence and filter config. | | ||
| | `minScore` | `number` | Drops recalled records below this relevance threshold. | | ||
|
|
||
| See the [package README](https://github.com/aws/bedrock-agentcore-sdk-typescript/tree/main/src/memory/integrations/strands) | ||
| for the full option reference, including subtree reads and over-fetch tuning. | ||
|
|
||
| ## Notes | ||
|
|
||
| - **One writable store per session.** Mark at most one store `writable` for a given | ||
| `(actorId, sessionId)`: because writes are namespace-free, multiple writable stores would | ||
| emit duplicate events to the same `(memoryId, actorId, sessionId)` stream. | ||
| `createAgentCoreMemoryStores` enforces this and throws if more than one store is writable. | ||
| - **Placeholders resolve at construction.** Only `{actorId}` and `{sessionId}` are substituted | ||
| client-side, into the namespace used for recall. Any other placeholder in a namespace causes | ||
| construction to throw. Provision strategies with `{actorId}`/`{sessionId}`-only templates to | ||
| match. | ||
| - **Eventual consistency.** Writes and extraction are asynchronous, so a fact written this | ||
| turn may not be retrievable on the next one. | ||
|
|
||
| ## References | ||
|
|
||
| - [Integration source](https://github.com/aws/bedrock-agentcore-sdk-typescript/tree/main/src/memory/integrations/strands) | ||
| - [`bedrock-agentcore` on npm](https://www.npmjs.com/package/bedrock-agentcore) | ||
| - [Amazon Bedrock AgentCore Memory](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/memory.html) | ||
| - [Report an issue](https://github.com/aws/bedrock-agentcore-sdk-typescript/issues/new/choose) | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.