openai-agents-recall
Recall memory for the OpenAI Agents SDK. Recall learns about the people your agent talks to from their conversations, and gives that back as context, search results and answers.
Install
pip install openai-agents-recall
Create an API key at https://app.recallmem.dev/keys and export it as RECALL_API_KEY (and RECALL_WORKSPACE_ID
to pick a workspace). Running your own server? Set RECALL_URL=http://localhost:8000.
Quickstart
from agents import Agent, Runner
from openai_agents_recall import RecallSession, recall_instructions, recall_tools
agent = Agent(
name="Assistant",
instructions=recall_instructions("You are a helpful assistant."), # + what Recall knows
tools=recall_tools(), # recall_search, recall_ask, recall_remember
)
session = RecallSession("chat-1", user_id="user-42") # the history, kept in Recall
result = await Runner.run(
agent, "Plan my weekend.", session=session, context={"user_id": "user-42"}
)
The session loads the conversation before each run and stores the new items after it, and Recall learns from
the user's messages among them. The instructions add the user's peer card and their most relevant facts (no model
call, well under a second). The tools let the model look things up and save facts the user states. One agent can
serve many users: the tools and instructions read user_id from the run's context, or pass user_id= to them.
What is in the package
| Import | Agents SDK interface | What it does |
|---|---|---|
RecallSession |
Session protocol |
Conversation history in a Recall session: get_items, add_items, pop_item, clear_session. |
recall_tools() |
FunctionTools |
recall_search (facts and messages, no model call), recall_ask (an answer from memory, a few seconds), recall_remember (save facts, searchable at once). |
recall_instructions() |
Dynamic instructions |
Your instructions plus what Recall knows about the user. |
RecallSession stores the user's messages as written by user_id (Recall learns from them) and the agent's as
written by assistant_id (read as context, not learned about). Tool calls, tool results and reasoning items are
kept for the history only, and every item comes back exactly as it was added. Messages other clients write to
the same Recall session are read back as user or assistant messages. pop_item() and clear_session() hide
items from the history; Recall keeps the messages and what it learned. Delete the Recall session to erase them.
Pass client=Recall(...) or AsyncRecall(...) from recall-mem to any of
them; without one they use Recall(), configured from the environment.
Docs
- Guide: https://recallmem.dev/guides/openai-agents
- Recall docs: https://recallmem.dev/docs
MIT licensed.
Metadata
Release files for openai-agents-recall 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openai_agents_recall-0.1.0.tar.gz | 9.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openai_agents_recall-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.5 kB
Release files / openai_agents_recall-0.1.0.tar.gz
| Download URL | openai_agents_recall-0.1.0.tar.gz |
|---|---|
| Size | 9.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c01170b63ac766021d722bbc983ed52c4e4f77f2b447f4c32e31763dbbeba52c
|
|
BLAKE2b-256 checksum How to use checksums |
bf78b0b12c4452dd937e6a6a85c9f54bff9de238eb3396517b6977cb4247cfec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / openai_agents_recall-0.1.0-py3-none-any.whl
| Download URL | openai_agents_recall-0.1.0-py3-none-any.whl |
|---|---|
| Size | 12.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
655f9f82e08f1c5c0429a998ecad28ed86448f1087674e6a99a582de5df9ea5e
|
|
BLAKE2b-256 checksum How to use checksums |
5ed617e07a83d98a641ac2ec1487dda2c5f889b895dc68e1b306b07ebb5d8d63
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|