microsoft / microsoft/agent-framework
.NET & Python: [Durable Agents] Automatic thread/session cleanup TTL
- Dominant language
- Python
- Stars
- 13.6k
- Forks
- 2.3k
- Avg merge
- 2d 45m
- Merged PRs (30d)
- 358
Description
The Durable Task extension for Agent Framework ("Durable Agents") provides built-in thread storage. However, there's no clear way to cleanup the thread storage data, which will accumulate in either the Azure Storage account or in the Durable Task Scheduler resource owned by the user.
This issue tracks a proposal to create configurable TTLs on durable agents that allow them to be "garbage collected" if there aren't any interactions after a period of time. For example, if a particular agent session is idle for 30 days, the underlying entity state (e.g., the conversation history) gets deleted. Each new interaction with the agent would reset the TTL. Any messages to an "expired" agent session will result in a new conversation history.
[Design doc](https://github.com/microsoft/agent-framework/blob/main/docs/features/durable-agents/durable-agents-ttl.md)
This is needed for each language we support:
- [x] .NET
- [ ] Python
Contributor guide
Assessment
This issue has not been assessed yet.