Port AgentCoreMemoryStore (MemoryStore interface) from TypeScript SDK to Python
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 58/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- aws, python, typescript
Research direction
Start by reading the TypeScript implementation under bedrock-agentcore/memory/integrations/strands and compare it with the Python AgentCoreMemorySessionManager. Add the Python memory_store.py entry points and factory described in the issue, mapping search and add_messages to AgentCore Memory. Done means Python users can pass the created stores to Strands MemoryManager for recall, injection, and extraction.
Written by the indexing model from the issue text.
Description
Problem Statement
The TypeScript bedrock-agentcore SDK (v0.4.1+) ships an AgentCoreMemoryStore that implements the Strands MemoryStore interface, enabling AgentCore Memory to plug into the MemoryManager pipeline with recall (search tool), injection (automatic prompt augmentation), and server-side extraction. It is documented on the Strands integrations page: https://strandsagents.com/docs/integrations/memory-stores/agentcore-memory-store/
The Python bedrock-agentcore SDK currently only integrates AgentCore Memory as a session manager (AgentCoreMemorySessionManager). There is no MemoryStore implementation, so Python developers cannot use AgentCore Memory with MemoryManager.
Proposed Solution
Port the AgentCoreMemoryStore from the TypeScript SDK to Python. The integration lives at bedrock-agentcore/memory/integrations/strands/ in the TS package and maps:
searchto AgentCore'sretrieveMemoryRecordsadd_messagesto conversation ingestion for server-side extraction- Per-namespace store creation via a
create_agentcore_memory_storesfactory
Target usage:
from strands import Agent
from strands.memory import MemoryManager
from bedrock_agentcore.memory.integrations.strands.memory_store import (
AgentCoreMemoryStore,
create_agentcore_memory_stores,
)
stores = create_agentcore_memory_stores(
memory_id="mem-abc",
actor_id="user-123",
session_id="session-1",
namespaces=[
{"namespace": "/facts/{actorId}", "writable": True},
{"namespace": "/preferences/{actorId}"},
],
extraction=True,
)
agent = Agent(memory_manager=MemoryManager(stores=stores))
Use Case
Python agents that want to use AgentCore Memory as a long-term memory backend through the standard MemoryManager pipeline, with injection, recall tools, and extraction.
Additional Context
- TypeScript implementation: https://github.com/aws/bedrock-agentcore-sdk-typescript/tree/main/src/memory/integrations/strands
- Strands integration page (TS only): https://strandsagents.com/docs/integrations/memory-stores/agentcore-memory-store/
- The existing Python
AgentCoreMemorySessionManagerwould remain for session persistence use cases. TheMemoryStoreis complementary.
- Dominant language
- Python
- Stars
- 764
- Forks
- 149
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 7
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from aws/bedrock-agentcore-sdk-python
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
aws/bedrock-agentcore-sdk-python#496 · 1 comment ·
-
Pydantic deprecation warning: Support for class-based `config` is deprecated, use ConfigDict instead Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
aws/bedrock-agentcore-sdk-python#320 · 2 comments · 3 reactions ·
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
All issues in aws/bedrock-agentcore-sdk-python
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100