0.97.0
Added
- Модернизация системного промпта (референс — OpenClaw): промпт разбит на самостоятельные секции вместо монолитного
buildIdentity(): ## Safety— расширенная секция: запрет self-preservation, resource acquisition, power-seeking, bypass safeguards.## Execution Bias— 7 пунктов вместо 2: “Actionable request: act in this turn”, “Weak/empty tool result: vary query”, “Mutable facts need live checks” и т.д.## Tool Call Style— новая секция: “Routine low-risk calls: no narration”, guidance по spawn, timeouts.## Self-Update— guidance: обновление только по явному запросу.## Sub-Agent Delegation— guidance по spawn (условно, если spawn tool доступен).## Heartbeats— guidance по heartbeat polling.## Memory Recall— улучшенный guidance по memory_search (scope=‘graph’/‘documents’/‘facts’).- Skills: добавлен заголовочный guidance (“One skill active at a time. External API writes: batch when safe”).
- Prompt caching stratification: системный промпт теперь собирается из 3 system-сообщений с разными
CacheLevel: CacheStable— Identity + Safety + Security + Execution Bias + Tool Call Style + Tools + Skills + Soul (кешируется провайдером).CacheDynamic— RAG (facts + documents + KG) (НЕ кешируется, меняется каждый запрос).- Для Anthropic: каждый system block с
CacheStable/CacheSemiStableполучаетcache_control: {type: "ephemeral"}. - Для OpenAI: dynamic system messages переносятся перед первым user message, stable prefix кешируется автоматически.
- Cached tokens tracking:
- Anthropic:
CacheReadInputTokensиCacheCreationInputTokensпарсятся из ответа (non-streaming и streaming). - OpenAI:
PromptTokensDetails.CachedTokensпарсится из ответа. - Store:
LLMUsageEntry.CacheCreationTokens— новое поле, SQLite/PostgreSQL INSERT/SELECT обновлены. - Миграция
054_cache_creation_tokensдля SQLite и PostgreSQL. - LLM log:
UsagePayload.CacheCreationTokensлогируется. - Metrics:
LLMTokensCacheCreate— новый счётчик, Prometheus metrictaigaclaw_llm_tokens_cache_creation_total.
Changed
buildIdentity()больше не содержит Autonomy, Execution Bias, Anti-Narration, Security, System Info, Provider Hints — всё вынесено в отдельные методы.BuildMessagesвозвращает 3 system-сообщения вместо одного (RAG в отдельном блоке).- Anthropic: убран порог
len(systemText) > 3072для cache_control — кешируется всегда. - Anthropic:
convertRequestвозвращает[]anthropic.TextBlockParamвместоstring.