Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.0.5] - 2026-03-21¶
Added¶
LimitWarnerProcessor— standalone history processor that injects warningSystemPromptParts as request, context-window, or total-token limits approach (#10, by @Gby56)create_limit_warner_processor()factory functionWarningOntype alias for selecting warning categories
[0.0.4] - 2026-02-25¶
Added¶
on_before_compresscallback — called before compression with messages and cutoff indexon_after_compresscallback — called after compression; return a string to re-inject into context asSystemPromptPart- Continuous message persistence via
messages_path— saves all messages to JSON on every call - Guided compaction —
focusparameter oncompact()andrequest_compact()for topic-focused summaries request_compact(focus)method — deferred manual compactioncompact(messages, focus)method — direct LLM-based compactionmax_tokensauto-detection fromgenai-pricesviaresolve_max_tokens(model_name)model_nameparameter for auto-detection- Async token counting —
TokenCounternow accepts sync or async callables (#6) async_count_tokens()helper functionBeforeCompressCallback,AfterCompressCallbacktype aliases- 6 runnable examples in
examples/
Changed¶
max_tokensdefault:200_000→None(auto-detect, fallback 200K)keepdefault:("messages", 20)→("messages", 0)(only summary survives)- Validation: 0 now allowed for messages/tokens (negative still rejected)
[0.0.3] - 2025-02-15¶
Added¶
- ContextManagerMiddleware — dual-protocol middleware (history processor + AgentMiddleware)
- Shared cutoff algorithms —
_cutoff.pymodule ModelTypetype alias
Changed¶
- Replaced
pydantic-aiwithpydantic-ai-slim - Custom model support (
str | Model | KnownModelName)
[0.0.2] - 2025-01-22¶
Changed¶
- README rewrite, documentation styling
[0.0.1] - 2025-01-20¶
Added¶
SummarizationProcessor,SlidingWindowProcessor- Factory functions, utility functions, type definitions
- Full MkDocs documentation