- [更新日志(简体中文)](#chinese)
- [Changelog(English)](#english)

<a id="chinese"></a>

## What's Changed

### 新增

- 知识库稀疏检索阶段新增 SQLite FTS5 支持，大幅优化万到十万级别分块时造成的召回时的显著卡顿。（[#7648](https://github.com/AstrBotDevs/AstrBot/pull/7648)）
- KOOK 平台新增角色提及支持，包含角色记录、事件解析、API 类型与相关测试。（[#7626](https://github.com/AstrBotDevs/AstrBot/pull/7626)）
- 新增 MiniMax Token Plan Provider。（[#7609](https://github.com/AstrBotDevs/AstrBot/pull/7609)）
- 新增 `on_agent_begin`、`on_using_llm_tool`、`on_llm_tool_respond`、`on_agent_done` 插件事件钩子，并更新插件开发文档。（[#7540](https://github.com/AstrBotDevs/AstrBot/pull/7540)）
- 为 t2i 模板启用 Shiki 代码高亮，并新增 VitePress 风格模板。（[#7501](https://github.com/AstrBotDevs/AstrBot/pull/7501)）

### 优化

- 优化 `EmptyModelOutputError` 处理，不再严格强制校验模型工具输出的名字是否符合工具集，采用引导的方式让模型输出正确的工具调用。（[#7375](https://github.com/AstrBotDevs/AstrBot/pull/7375)）
- 优化 `SendMessageToUserTool` 工具在本地 workspace root 内解析相对文件路径的问题。（[#7668](https://github.com/AstrBotDevs/AstrBot/pull/7668)）

### 修复

- 修复 Bocha 搜索返回 Brotli 压缩内容时出现 `Can not decode content-encoding: br` 的问题。（[#7655](https://github.com/AstrBotDevs/AstrBot/pull/7655)）
- 修复微信个人号主动 Cron 发送时 `context_token` 未持久化的问题。（[#7595](https://github.com/AstrBotDevs/AstrBot/pull/7595)）
- 修复 Anthropic Provider 默认 `max_tokens` 偏小导致工具调用输出文件操作时造成大量截断的问题。（[#7593](https://github.com/AstrBotDevs/AstrBot/pull/7593)）
- 修复 Cron `last_run_at` 在 Dashboard 中未按本地时区显示的问题。（[#7625](https://github.com/AstrBotDevs/AstrBot/pull/7625)）
- 修复 Cron 工具调度失败时静默继续的问题，并在失败时返回明确错误给模型。（[#7513](https://github.com/AstrBotDevs/AstrBot/pull/7513)）
- 修复 Telegram 媒体组异常被静默吞掉的问题。（[#7537](https://github.com/AstrBotDevs/AstrBot/pull/7537)）
- 修复会话限流计数为 0 时可能触发 `IndexError` 的问题。（[#7635](https://github.com/AstrBotDevs/AstrBot/pull/7635)）

- 修复知识库上传错误处理与错误提示，提升失败时的可诊断性。（[#7534](https://github.com/AstrBotDevs/AstrBot/pull/7534), [#7536](https://github.com/AstrBotDevs/AstrBot/pull/7536)）
- 修复 Dashboard 聊天附件 401 问题。（[#7569](https://github.com/AstrBotDevs/AstrBot/pull/7569)）
- 修复 Dashboard 数字输入框在未编辑时失焦会重置为 0 的问题。（[#7560](https://github.com/AstrBotDevs/AstrBot/pull/7560)）
- 修复 Dashboard 列表项内代码块暗色模式传递问题，并移除 `ThemeAwareMarkdownCodeBlock` 中注入的默认值。（[#7667](https://github.com/AstrBotDevs/AstrBot/pull/7667), [commit](https://github.com/AstrBotDevs/AstrBot/commit/fd2ca702d)）
- 修复 Updater 请求不支持 SOCKS 代理的问题，并补充相关测试。（[#7615](https://github.com/AstrBotDevs/AstrBot/pull/7615)）
- 回滚 SCSS import warning 修复以避免相关兼容问题。（[#7616](https://github.com/AstrBotDevs/AstrBot/pull/7616)）

<a id="english"></a>

## What's Changed (EN)

### New Features

- Added SQLite FTS5 support to the knowledge-base sparse retrieval stage, greatly reducing recall latency for knowledge bases with tens of thousands to hundreds of thousands of chunks. ([#7648](https://github.com/AstrBotDevs/AstrBot/pull/7648))
- Added KOOK role mention support, including role records, event parsing, API types, and tests. ([#7626](https://github.com/AstrBotDevs/AstrBot/pull/7626))
- Added the MiniMax Token Plan Provider. ([#7609](https://github.com/AstrBotDevs/AstrBot/pull/7609))
- Added plugin event hooks for `on_agent_begin`, `on_using_llm_tool`, `on_llm_tool_respond`, and `on_agent_done`, with updated plugin development docs. ([#7540](https://github.com/AstrBotDevs/AstrBot/pull/7540))
- Enabled Shiki highlighting for t2i templates and added a VitePress-style template. ([#7501](https://github.com/AstrBotDevs/AstrBot/pull/7501))

### Improvements

- Improved `EmptyModelOutputError` handling by no longer strictly enforcing whether model tool output names match the tool set, and instead guiding the model toward valid tool calls. ([#7375](https://github.com/AstrBotDevs/AstrBot/pull/7375))
- Improved relative file path resolution within the local workspace root for `SendMessageToUserTool`. ([#7668](https://github.com/AstrBotDevs/AstrBot/pull/7668))

### Bug Fixes

- Fixed Bocha search failures caused by Brotli-compressed responses reporting `Can not decode content-encoding: br`. ([#7655](https://github.com/AstrBotDevs/AstrBot/pull/7655))
- Fixed `context_token` persistence for proactive Cron sends in the Weixin OC adapter. ([#7595](https://github.com/AstrBotDevs/AstrBot/pull/7595))
- Increased the Anthropic Provider default `max_tokens` value to avoid heavy truncation during tool-call output for file operations. ([#7593](https://github.com/AstrBotDevs/AstrBot/pull/7593))
- Displayed Cron `last_run_at` in the local timezone in Dashboard. ([#7625](https://github.com/AstrBotDevs/AstrBot/pull/7625))
- Returned explicit errors to the model when Cron tool scheduling fails instead of continuing silently. ([#7513](https://github.com/AstrBotDevs/AstrBot/pull/7513))
- Prevented Telegram media group exceptions from being silently swallowed. ([#7537](https://github.com/AstrBotDevs/AstrBot/pull/7537))
- Fixed an `IndexError` when session `rate_limit_count` is 0. ([#7635](https://github.com/AstrBotDevs/AstrBot/pull/7635))
- Improved knowledge-base upload error handling and error messages for better diagnostics. ([#7534](https://github.com/AstrBotDevs/AstrBot/pull/7534), [#7536](https://github.com/AstrBotDevs/AstrBot/pull/7536))
- Fixed Dashboard chat attachment 401 errors. ([#7569](https://github.com/AstrBotDevs/AstrBot/pull/7569))
- Fixed numeric inputs resetting to 0 on blur when the value was not edited. ([#7560](https://github.com/AstrBotDevs/AstrBot/pull/7560))
- Fixed dark-mode propagation for code blocks inside Dashboard list items and removed the injected default value from `ThemeAwareMarkdownCodeBlock`. ([#7667](https://github.com/AstrBotDevs/AstrBot/pull/7667), [commit](https://github.com/AstrBotDevs/AstrBot/commit/fd2ca702d))
- Added SOCKS proxy support for updater requests and related tests. ([#7615](https://github.com/AstrBotDevs/AstrBot/pull/7615))
- Reverted the SCSS import warning fix to avoid related compatibility issues. ([#7616](https://github.com/AstrBotDevs/AstrBot/pull/7616))
