Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
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
2 changes: 1 addition & 1 deletion content/develop/ai/agent-builder/agent-concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -329,7 +329,7 @@ Production-ready agents include built-in reliability features:
- Access controls: Implement proper authentication and authorization
- Governed data access: Give agents defined tools instead of direct database access. [Context Gateway](/content/develop/ai/context-engine/context-gateway/concepts.md) serves these tools through one MCP endpoint, so agents never hold database or Upstream credentials.
- Data retention: Automatic cleanup of personal data per regulations
- Sensitive data in memory: Keep information such as payment card numbers out of long-term memory. Agent Memory [sensitive-data exclusions](/content/operate/iris/agent-memory/create-service.md#sensitive-data-exclusions) guide automatic extraction away from it
- Sensitive data in memory: Keep information such as payment card numbers out of long-term memory. Agent Memory [sensitive-data exclusions](/content/operate/iris/cloud/agent-memory/create-service.md#sensitive-data-exclusions) guide automatic extraction away from it
- Audit logging: Track all data access and modifications
- Memory integrity: Validate content before it is written to agent memory and verify protected records on read. Memory written from tool results, web pages, or other agents can carry instructions that are replayed into later prompts ([OWASP Top 10 for Agentic Applications, ASI06](https://genai.owasp.org/resource/owasp-top-10-for-agentic-applications-for-2026/); [MITRE ATLAS AML.T0080.000](https://atlas.mitre.org/techniques/AML.T0080.000)). [OWASP Agent Memory Guard](https://github.com/OWASP/www-project-agent-memory-guard) is an open-source guard for this with adapters for LangChain, OpenAI Agents SDK, AutoGen, CrewAI, and mem0

Expand Down
4 changes: 2 additions & 2 deletions content/develop/ai/context-engine/agent-memory/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,12 +104,12 @@ Get started with Redis Agent Memory on Redis Cloud or deploy it with Redis Softw
<div class="p-5 border border-redis-pen-300 rounded-lg">
<h3 class="text-redis-ink-900 font-semibold mb-3">Redis Cloud</h3>
<p>Create a managed Redis Agent Memory service and make your first requests.</p>
<p><a href="{{< relref "/operate/iris/agent-memory/create-service" >}}">Open the Redis Cloud setup guide</a></p>
<p><a href="{{< relref "/operate/iris/cloud/agent-memory/create-service" >}}">Open the Redis Cloud setup guide</a></p>
</div>
<div class="p-5 border border-redis-pen-300 rounded-lg">
<h3 class="text-redis-ink-900 font-semibold mb-3">Redis Software</h3>
<p>Deploy Redis Agent Memory on Kubernetes with Redis Software.</p>
<p><a href="{{< relref "/operate/iris/agent-memory/self-managed" >}}">Open the self-managed deployment guide</a></p>
<p><a href="{{< relref "/operate/iris/self-managed/agent-memory" >}}">Open the self-managed deployment guide</a></p>
</div>
</div>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Every client needs the service endpoint, Store ID, and application programming i

### Manage a service with the Control Plane SDK

For store and extractor administration, see [Manage a service with the Control Plane SDK](/content/operate/iris/agent-memory/self-managed/api-examples.md#manage-a-service-with-the-control-plane-sdk). Keep operator credentials separate from application credentials.
For store and extractor administration, see [Manage a service with the Control Plane SDK](/content/operate/iris/self-managed/agent-memory/api-examples.md#manage-a-service-with-the-control-plane-sdk). Keep operator credentials separate from application credentials.

## Identify users and conversations

Expand All @@ -51,7 +51,7 @@ Some IDs come from your application; others come from Redis Agent Memory:

For example, the quickstart uses `quickstart-user` as the user's ID and `travel-planning-session` for one conversation. Replace the user ID with your authenticated account ID in an application. IDs must follow the format in the [API reference]({{< relref "/develop/ai/context-engine/agent-memory/api-reference" >}}).

For on-prem deployments, see [Server-side ownership enforcement](/content/operate/iris/agent-memory/self-managed/authentication.md#server-side-ownership-enforcement) for identity requirements and configuration.
For on-prem deployments, see [Server-side ownership enforcement](/content/operate/iris/self-managed/agent-memory/authentication.md#server-side-ownership-enforcement) for identity requirements and configuration.

### Authorize every memory request

Expand Down Expand Up @@ -120,7 +120,7 @@ When a search returns no matches, `items` is an empty array. In the example, `re
1. If you expect a custom memory type, check that it is enabled under **Memory types & extraction**. Check that its extraction prompt covers the information in the event.
1. Compare the request's `ownerId`, `memoryType`, and namespace filters with the IDs and type used for the memory. Start with the owner filter alone to check whether an added filter excludes it.

See [View and edit service configuration]({{< relref "/operate/iris/agent-memory/view-service#configuration-tab" >}}) for the settings. Extraction uses a model, so it may not create a memory for every statement.
See [View and edit service configuration]({{< relref "/operate/iris/cloud/agent-memory/view-service#configuration-tab" >}}) for the settings. Extraction uses a model, so it may not create a memory for every statement.

A failed request is different from a successful search with no matches. Handle the returned error before you use the result:

Expand Down Expand Up @@ -222,4 +222,4 @@ Exclusions apply to automatic extraction from session events. They do not apply
> [!WARNING]
> Detector matches are deterministic, but semantic exclusions are advisory and do not guarantee exclusion. Sensitive session content still reaches the extraction model provider. Use appropriate controls before sending sensitive information to Redis Agent Memory or the model provider.

See [sensitive-data exclusions]({{< relref "/operate/iris/agent-memory/create-service#sensitive-data-exclusions" >}}) to configure the feature in Redis Cloud.
See [sensitive-data exclusions]({{< relref "/operate/iris/cloud/agent-memory/create-service#sensitive-data-exclusions" >}}) to configure the feature in Redis Cloud.
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,11 @@ Configuration, reads, searches, automatic expiration, and store teardown are out

## Prepare the deployment

Ask your operator to [enable ingestion webhooks](/content/operate/iris/agent-memory/self-managed/configuration.md#enable-ingestion-webhooks) and configure the signing-secret backend.
Ask your operator to [enable ingestion webhooks](/content/operate/iris/self-managed/agent-memory/configuration.md#enable-ingestion-webhooks) and configure the signing-secret backend.

## Configure a store policy

Your operator must [configure a store policy](/content/operate/iris/agent-memory/self-managed/api-examples.md#configure-a-webhook-policy), then provide the receiver with its signing keys and key IDs through a secret store. The receiver example reads them from `HOOK_KEYS_JSON`. Enable delivery after the receiver is ready.
Your operator must [configure a store policy](/content/operate/iris/self-managed/agent-memory/api-examples.md#configure-a-webhook-policy), then provide the receiver with its signing keys and key IDs through a secret store. The receiver example reads them from `HOOK_KEYS_JSON`. Enable delivery after the receiver is ready.

## Verify callbacks and return decisions

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@ Try different messages to see how they change what the service remembers. Open *

## Next steps

- [Create an Agent Memory service](/content/operate/iris/agent-memory/create-service.md) on Redis Cloud.
- [Create an Agent Memory service](/content/operate/iris/cloud/agent-memory/create-service.md) on Redis Cloud.
- Follow the [quickstart]({{< relref "/develop/ai/context-engine/agent-memory/quickstart" >}}) to try the same example with Python, TypeScript, or curl against a real service.
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Redis Agent Memory provides two ways to create memories:

Configure the long-term-memory time to live (TTL) separately from the session-memory TTL.

See [memory configuration]({{< relref "/operate/iris/agent-memory/create-service#memory-configuration" >}}) to configure the extraction cadence and long-term-memory TTL in Redis Cloud.
See [memory configuration]({{< relref "/operate/iris/cloud/agent-memory/create-service#memory-configuration" >}}) to configure the extraction cadence and long-term-memory TTL in Redis Cloud.

## Memory fields

Expand Down Expand Up @@ -421,7 +421,7 @@ JSON

Inspect the bulk response for per-record errors. Run the custom-memory search again to retrieve the record. Direct creation does not wait for background extraction and does not apply the extraction prompt or sensitive-data exclusions. Creating an eligible record with the same `id` again replaces that record. Access checks and protection for document-managed records still apply.

See [custom memory types]({{< relref "/operate/iris/agent-memory/create-service#custom-memory-types" >}}) for configuration requirements and limits.
See [custom memory types]({{< relref "/operate/iris/cloud/agent-memory/create-service#custom-memory-types" >}}) for configuration requirements and limits.

## Test semantic exclusions

Expand Down Expand Up @@ -554,4 +554,4 @@ JSON
> [!WARNING]
> Semantic exclusions are advisory and do not guarantee that sensitive information is excluded. Session content still reaches the extraction model provider. Do not use real sensitive data in this exercise. Exclusions do not apply to directly created long-term memories.

See [sensitive-data exclusions]({{< relref "/operate/iris/agent-memory/create-service#sensitive-data-exclusions" >}}) for configuration details.
See [sensitive-data exclusions]({{< relref "/operate/iris/cloud/agent-memory/create-service#sensitive-data-exclusions" >}}) for configuration details.
6 changes: 3 additions & 3 deletions content/develop/ai/context-engine/agent-memory/memory-etl.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,19 @@ Use [session extraction](/content/develop/ai/context-engine/agent-memory/session

## Prepare the service

MemoryETL is available in Redis Cloud and enabled in self-managed deployments. These examples use a self-managed service. For its model, processing limits, and worker settings, see [Configure document ingestion](/content/operate/iris/agent-memory/self-managed/configuration.md#enable-document-ingestion).
MemoryETL is available in Redis Cloud and enabled in self-managed deployments. These examples use a self-managed service. For its model, processing limits, and worker settings, see [Configure document ingestion](/content/operate/iris/self-managed/agent-memory/configuration.md#enable-document-ingestion).

Install the SDK using the [quickstart](/content/develop/ai/context-engine/agent-memory/quickstart.md#install-the-sdk). Set:

| Variable | Value |
|:---------|:------|
| `AGENT_MEMORY_URL`, `STORE_ID`, `API_KEY` | The Data Plane endpoint, store, and application credential. |
| `OWNER_ID` | Your application's authenticated user ID for this document. |
| `USER_TOKEN` | The user's token when self-managed ownership enforcement is enabled. See [delegation](/content/operate/iris/agent-memory/self-managed/authentication.md#delegate-a-user-with-an-agent-key). |
| `USER_TOKEN` | The user's token when self-managed ownership enforcement is enabled. See [delegation](/content/operate/iris/self-managed/agent-memory/authentication.md#delegate-a-user-with-an-agent-key). |

## Create an extractor

Ask your operator to [register a memory type and create a document extractor](/content/operate/iris/agent-memory/self-managed/api-examples.md#create-an-extractor). Set `EXTRACTOR_ID` to the returned extractor ID. Applications use their Data Plane credential to submit documents.
Ask your operator to [register a memory type and create a document extractor](/content/operate/iris/self-managed/agent-memory/api-examples.md#create-an-extractor). Set `EXTRACTOR_ID` to the returned extractor ID. Applications use their Data Plane credential to submit documents.

## Submit and track a document

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ aliases:

Namespace routing selects a shared namespace for an eligible memory. Admission rules check whether a memory can enter a destination. Use routing to organize shared memories by content, and admission rules to reject content that does not belong in a namespace.

The policy applies to one store. It targets existing shared namespace resources, using their stable `namespaceId` values. It does not create namespaces or change access permissions. Namespace routing is available in Redis Cloud and enabled in self-managed deployments. Configure a policy to use it for a store. For self-managed process settings, see [Configure namespace routing](/content/operate/iris/agent-memory/self-managed/configuration.md#enable-namespace-routing).
The policy applies to one store. It targets existing shared namespace resources, using their stable `namespaceId` values. It does not create namespaces or change access permissions. Namespace routing is available in Redis Cloud and enabled in self-managed deployments. Configure a policy to use it for a store. For self-managed process settings, see [Configure namespace routing](/content/operate/iris/self-managed/agent-memory/configuration.md#enable-namespace-routing).

## Understand placement and admission

Expand Down
2 changes: 1 addition & 1 deletion content/develop/ai/context-engine/agent-memory/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ You can think of Redis Agent Memory's tiers as analogous to human memory:

Session memory is the working set: the current conversation's events, read and written every turn. Long-term memory is what survives after the session ends, durable enough to recall in a conversation the agent hasn't seen before.

Redis Agent Memory also maintains an automatically updated summary of each session, as derived session state. It returns this summary separately from long-term memories. You can also define custom long-term memory types for domain-specific information. See [Memory types & extraction]({{< relref "/operate/iris/agent-memory/create-service#memory-types-and-extraction" >}}) for the complete set of built-in and custom types.
Redis Agent Memory also maintains an automatically updated summary of each session, as derived session state. It returns this summary separately from long-term memories. You can also define custom long-term memory types for domain-specific information. See [Memory types & extraction]({{< relref "/operate/iris/cloud/agent-memory/create-service#memory-types-and-extraction" >}}) for the complete set of built-in and custom types.

## Adding to session memory

Expand Down
4 changes: 2 additions & 2 deletions content/develop/ai/context-engine/agent-memory/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ The SDK examples read `API_KEY` from your environment; replace `<ENDPOINT>` and

The endpoint must include `https://`. Keep the API key out of source control, application logs, and other unsecured locations.

For a self-managed service with ownership enforcement, use the authenticated client setup in [Delegate a user with an agent key](/content/operate/iris/agent-memory/self-managed/authentication.md#delegate-a-user-with-an-agent-key) and set `OWNER_ID` to the verified user ID before using these examples.
For a self-managed service with ownership enforcement, use the authenticated client setup in [Delegate a user with an agent key](/content/operate/iris/self-managed/agent-memory/authentication.md#delegate-a-user-with-an-agent-key) and set `OWNER_ID` to the verified user ID before using these examples.

## Install the SDK

Expand Down Expand Up @@ -228,7 +228,7 @@ Run the search and inspect `items`. Extraction is asynchronous, so run the searc
> [!NOTE]
> **What to expect:** Results similar to `User is a vegetarian` and `User prefers spicy food`. Your application did not create these memories directly. Redis Agent Memory derived them from the session event. The exact text and memory types can vary.

The extracted memory remains searchable after the session expires, subject to the long-term memory time to live (TTL). You can change the extraction cadence and both TTLs in the [Redis Agent Memory service configuration]({{< relref "/operate/iris/agent-memory/create-service#memory-configuration" >}}).
The extracted memory remains searchable after the session expires, subject to the long-term memory time to live (TTL). You can change the extraction cadence and both TTLs in the [Redis Agent Memory service configuration]({{< relref "/operate/iris/cloud/agent-memory/create-service#memory-configuration" >}}).

## Next steps

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ curl --fail-with-body --silent --show-error --request POST \

Send each new message once, using the same session ID throughout the conversation.

The session's `ownerId` comes from the first event's `actorId` and is returned when you retrieve the session. In on-prem deployments with [server-side ownership enforcement](/content/operate/iris/agent-memory/self-managed/authentication.md#server-side-ownership-enforcement), the first event's `actorId` must match the authenticated user ID.
The session's `ownerId` comes from the first event's `actorId` and is returned when you retrieve the session. In on-prem deployments with [server-side ownership enforcement](/content/operate/iris/self-managed/agent-memory/authentication.md#server-side-ownership-enforcement), the first event's `actorId` must match the authenticated user ID.

## Retrieve conversation context

Expand Down Expand Up @@ -110,7 +110,7 @@ The session-memory time to live (TTL) controls how long sessions remain availabl

In the Redis Cloud console, open your service's **Configuration** tab and select **Edit**. Set **Short-term TTL** under **Memory configuration**.

See [memory configuration]({{< relref "/operate/iris/agent-memory/create-service#memory-configuration" >}}) to configure the session-memory TTL in Redis Cloud.
See [memory configuration]({{< relref "/operate/iris/cloud/agent-memory/create-service#memory-configuration" >}}) to configure the session-memory TTL in Redis Cloud.

## Configure automatic summarization

Expand All @@ -123,7 +123,7 @@ In the Redis Cloud console, open your service's **Configuration** tab and select

For example, with **Summarize after** set to 20 and **Keep most recent** set to 10, Redis Agent Memory summarizes the older 10 messages when the session reaches 20 messages and retains the 10 most recent messages in full.

See [automatic summarization]({{< relref "/operate/iris/agent-memory/create-service#automatic-summarization" >}}) to enable summarization and configure both thresholds in Redis Cloud.
See [automatic summarization]({{< relref "/operate/iris/cloud/agent-memory/create-service#automatic-summarization" >}}) to enable summarization and configure both thresholds in Redis Cloud.

For an example that combines session events with long-term recall, follow the [developer guide]({{< relref "/develop/ai/context-engine/agent-memory/developer-guide" >}}). For complete schemas, see the [session-memory application programming interface (API) reference]({{< relref "/develop/ai/context-engine/agent-memory/api-reference" >}}#operation/GetSessionMemory).

Expand Down
Loading
Loading