Skip to content

v1.5.2

Choose a tag to compare

@monster1389 monster1389 released this 17 Oct 16:50
· 20 commits to master since this release

[1.5.2] - 2026-10-18

变更

  • skills/show-me 的 description 改为强制语气:删掉英文触发词清单,改成 You MUST use this skill whenever… 的类别式条件,覆盖面按 system / paper / protocol / algorithm / API / data model 列举。
  • 明确「用户用中文提问时,英文描述同样适用」,堵住「描述是英文所以中文请求不算匹配」这条推理;末句把只用散文回答定义为该 skill 的失败。
  • 只改系统提示里那一行路由文本,SKILL.md 正文未变。

注意

  • description 里出现 : 会被 YAML 当作映射键,_parse_frontmatter_description 静默返回空串,技能描述直接变成 No description。这行必须避开冒号,或整体加引号。

[1.5.1] - 2026-10-17

变更

  • 渲染与发送流水线化:process_chain 拆成 plan_chain(解析、分组、一次性提交全部渲染任务)+ Pipeline(按序逐条产出 Message),deliver 改为消费流水线、每条就绪即发。首条消息不再等最慢的元素渲染完成——实测一条多元素回复的首屏延迟从约 2.7 秒降到首条产出即发(该条本身为纯文本时约 0.1 秒)。
  • 流水线严格保序:慢的组挡住它后面的消息,绝不越过;末条由 Pipeline 的 is_tail 标记,交付语义不变(仍留作 result.chain)。
  • 防风控延时与渲染重叠:两条消息的间隔按上一条实际发出时刻起算,渲染耗时已消耗的部分不再叠加,不足下限才补。
  • 单个元素的渲染加 15 秒保险丝(_RENDER_TIMEOUT),超时走既有失败降级(该模式含 md 文件仍写文件,否则回退原文),最坏停顿有界。
  • 已渲染 N 项 汇总日志改为流水线跑完后输出;逐条发送日志不再带总条数(流式送出,条数在首条发出时未知)。

文档

  • README 按使用顺序重排:定位、效果图、启用、默认行为、配置、常见问题、字体、架构。补「启用」章节,把原先藏在提示块里的两个 AstrBot 开关并进安装步骤;字体教程移到 docs/fonts.md;渲染效果合成一张横排总览图 docs/demo/overview.png,聊天截图裁为纵条并配两栏版面,均由 docs/demo/make_overview.py 生成。
  • _conf_schema.json 的 hint 改为陈述句:去掉补充性括号与解释性从句,与 README 用同一套笔法。

[1.5.0] - 2026-10-17

新增

  • 根级配置「仅处理模型回复」(默认关):开启后只处理 LLM / Agent 回复(result.is_model_result()),其它插件与内置命令的普通消息原样放过。

变更

  • 字体不再依赖手动安装:render/font.py 的发现结果由路径升级为 FontSpec(path, index),按「data_dir/fonts/SarasaMonoSC-Regular.ttf → 系统 Noto Sans Mono CJK SC(NotoSansCJK-Regular.ttc 第 7 个 face,AstrBot 官方镜像自带)→ 文泉驿等宽(第 1 个 face)→ DejaVu Sans Mono」取第一个存在的。ttc 必须指定 face:第 0 个是比例字体,直接按路径取会让代码列对齐歪掉。
  • 代码块渲染改用 ImageFormatter 子类注入 face index(_FaceFormatter / _FaceFontManager),不新增依赖。
  • README:手动安装 Sarasa 由「必读」降为「可选、观感更佳」,补字体发现顺序表;配置章节补根级开关;补流式输出相关说明。
  • skills/show-me/SKILL.md 说明改为全英文,frontmatter 描述保留中文触发词。

修复

  • 流式输出开启且平台不支持流式(默认策略「实时分段回复」)时,跳过 STREAMING_FINISH 结果。此前该结果仍会触发渲染并经 deliver 把非末条消息再次发出,造成内容重复,而末条又被 RespondStage 丢弃。

[1.4.0] - 2026-10-17

新增

  • HTML 文档渲染:```html 围栏且含 <!DOCTYPE/<html> 时,用 pytakumi(Rust 布局引擎,无浏览器)渲染为 PNG;抽取 <style> 经 stylesheets 传入,注册 Noto Sans CJK / 文泉驿 / 插件字体。新增配置「HTML」与「HTML 宽度」(默认 1000)。
  • Mermaid 图表渲染:```mermaid 经 mermaid.ink 渲染为暗底 PNG(bgColor=1E1E1E),5 秒超时、5xx 重试一次,失败回退源码文本。配置对齐代码/表格的五种模式,仅md文件 交给 QQ 原生渲染。新增配置「Mermaid」,需联网(仅图片模式)。
  • 插件内置技能:skills/show-me/SKILL.md,改写为可被模型主动触发,第 7 种表达改为输出 ```html 文档而非写文件。

修复

  • 未知语言的代码块不再 guess_lexer(会把 mermaid 认成 ECLLexer、调用树认成 ScdocLexer),改为 TextLexer 纯文本渲染。
  • 渲染且md文件 模式下图渲染失败时,不再连 .md 一起丢掉:仍写文件,不回退原文。
  • 临时文件命名白名单补上 html/mermaid 前缀,否则新渲染器产出的文件不会被发送后删除,也不会被 TTL 清扫。

其他

  • 依赖新增 pytakumi>=0.1.5;README/CLAUDE/架构图同步。