Session & Memo
For multi‑turn tasks you usually need:
- Full history for audit/replay
- Current context for prompt length control
- Memo for stable preferences/constraints
Agently provides a Session object. The default plugin is AgentlyMemoSession.
Create and append messages
python
from agently import Agently
from agently.core import Session
agent = Agently.create_agent()
session = Session(agent=agent)
session.append_message({"role": "user", "content": "I prefer concise answers"})
session.append_message({"role": "assistant", "content": "Got it"})Memo update and resize
session.resize() decides whether to compress context and updates session.memo when enabled.
python
session.set_settings("session.memo.enabled", True)
session.set_settings("session.resize.every_n_turns", 8)
current = session.resize()
print(current)
print(session.memo)Serialize and restore
python
dump = session.to_json()
session.load_json(dump)Notes
- Memo instructions are controlled by
session.memo.instruct - Context limits:
session.resize.max_messages_text_length/session.resize.max_keep_messages_count