freshcrate
Skin:/
Home > AI Agents > astrbot_plugin_office_assistant

astrbot_plugin_office_assistant

这是一个为 AstrBot 设计的 Office 助手插件。它赋予大语言模型(LLM)直接操作文件的能力,支持读取并分析多种格式文件,以及生成 Office 文档和office互转pdf的功能

Why this rank:Recent releaseStrong adoptionHealthy release cadence

Description

这是一个为 AstrBot 设计的 Office 助手插件。它赋予大语言模型(LLM)直接操作文件的能力,支持读取并分析多种格式文件,以及生成 Office 文档和office互转pdf的功能

README

Moe Counter

Astrbot Office 助手

让你的聊天bot能够生成office文件

Version Python Node


目录


部分效果

部分效果1 部分效果2

快速了解

  • 群聊默认不启用(enable_features_in_group=false),启用后需要 @ 机器人才暴露工具。
  • 指令支持中英文别名,比如 /pdf_status/pdf状态
  • 群聊里先上传文件、后面再处理,用 /doc 系列命令更顺手。
  • 插件生效时会自动隐藏 astrbot_execute_shell 等执行类工具。
  • 默认只能访问工作区内路径,可配置放开。
  • 复杂 Word 走四步链:create_document → add_blocks → finalize_document → export_document,支持封面、正文、列表、表格、图片、目录等。

快速开始

1. 安装插件和 Node

通过 AstrBot 插件管理器安装,Python 依赖会自动装好。

Word 导出走 JS 渲染器,机器上需要 Node.js(建议 18+),先确认 node -v 能跑。

2. 构建 Word JS 渲染器

第一次部署或拉了新代码后,在插件目录里构建一次:

cd word_renderer_js
npm install
npm run build

构建完会生成 word_renderer_js/dist/cli.js,没这个文件 Word 工具链没法导出。

3. 检查状态

  • /fileinfo:看插件运行状态和配置
  • /pdf_status(或 /pdf状态):看 PDF 转换是否可用

4. 试一下

  • 发个 .txt.md 给机器人,让它读取并总结
  • 让机器人生成一个 .xlsx
  • 装了转换依赖的话,试一次 Office → PDF

配置说明

在 AstrBot 管理面板中设置。常用的几项:

配置项 默认值 什么情况下改
enable_features_in_group false 要在群聊里用插件
require_at_in_group true 群聊里不想强制 @
enable_docx_image_review true 不需要模型读 Word 里的图片
auto_block_execution_tools true 不想自动隐藏执行类工具
allow_external_input_files false 要读工作区外的文件
enable_pdf_conversion true 不需要 Office/PDF 转换
auto_delete_files true 想保留生成的文件
word_style_settings.default_font_name 想统一改 Word 默认字体,比如 Arial
完整配置表

触发设置(trigger_settings

配置项 类型 默认值 说明
群聊需要@/引用机器人 (require_at_in_group) bool true 群聊中 @ 或引用机器人时才暴露文件工具
群聊启用插件功能 (enable_features_in_group) bool false 关了的话群聊里插件完全不生效
自动屏蔽 shell/python 工具 (auto_block_execution_tools) bool true 插件生效时隐藏 astrbot_execute_* 系列工具
发送文件时@用户 (reply_to_user) bool true 发文件时是否 @ 发起人

权限管理(permission_settings

配置项 类型 默认值 说明
用户白名单 (whitelist_users) list [] 允许使用插件的用户 ID,留空则仅管理员可用

功能开关(feature_settings

配置项 类型 默认值 说明
启用 Office 文件生成 (enable_office_files) bool true 是否允许 create_office_file
启用 PDF 转换 (enable_pdf_conversion) bool true 是否允许 Office ↔ PDF 转换(需系统依赖)

文件限制(file_settings

配置项 类型 默认值 说明
最大文件大小MB (max_file_size_mb) int 20 读取和发送的大小上限
启用 Word 图片理解 (enable_docx_image_review) bool true .docx 时把嵌入图片注入上下文,关了就按纯文本读
Word图片注入大小上限MB (max_inline_docx_image_mb) int 2 单张图超过这个大小就跳过
Word图片最多注入张数 (max_inline_docx_image_count) int 3 最多注入几张图到上下文
发送后自动删除文件 (auto_delete_files) bool true 发完就删,关了就留在工作区
文件合并等待时间秒 (message_buffer_seconds) float 4 上传文件后等一会儿,把同一波的文件合在一起
旧流程文本缓存时间秒 (recent_text_ttl_seconds) int 20 主要影响"文件和文字一起进来"的老用法,一般不用动
上传文件保留时间秒 (upload_session_ttl_seconds) int 600 上传完文件后在当前会话里保留多久,供 /doc 命令使用

路径访问(path_settings

配置项 类型 默认值 说明
允许外部绝对路径 (allow_external_input_files) bool false 放开后 read_file 和转换工具可以访问工作区外路径,删除不受影响

预览图(preview_settings

配置项 类型 默认值 说明
启用预览图 (enable) bool true 发 Office/PDF 时带首页预览图
预览图分辨率 (dpi) int 150 推荐 100~200

Word 默认样式(word_style_settings

配置项 类型 默认值 说明
正文默认字体 (default_font_name) string 模型没显式指定字体时使用,比如 Arial
标题默认字体 (default_heading_font_name) string 留空时跟随正文默认字体
表格默认字体 (default_table_font_name) string 留空时跟随正文默认字体
代码默认字体 (default_code_font_name) string 留空时继续使用内置默认值

工具与命令

LLM 工具

工具名 干什么
read_file 读文本、代码、Office、PDF 的内容
create_office_file 生成 Word / Excel / PPT(Word 建议走四步链)
create_document 新建 Word 草稿
add_blocks 往草稿里加内容
finalize_document 锁定草稿
export_document 导出 .docx,自动发给用户
convert_to_pdf Office → PDF
convert_from_pdf PDF → Word 或 Excel

插件命令

命令 别名 干什么
/list_files /file_ls, /文件列表 看工作区里的 Office 文件
/delete_file <文件名> /file_rm, /删除文件 删工作区里的文件
/fileinfo 看运行状态和配置
/pdf_status /pdf状态 看 PDF 转换是否可用
/doc list 看当前会话里的上传文件
/doc clear [文件ID] 清空会话文件,或只删一个
/doc use [文件ID...] 你的要求 选文件继续处理

/doc 用法

主要给群聊用。先上传文件,再决定拿哪几个往下处理。

/doc list
/doc clear
/doc clear f1
/doc use f1 根据这份文件整理成正式汇报
/doc use f1 f2 根据这些文件整理成正式汇报

会话里只有一个文件时可以省略文件 ID:

/doc use 根据这份文件整理成正式汇报

文件按"平台 + 会话 + 用户"隔离,群里其他人的文件不会混进来。


Word 工作流

先建草稿,一块一块填内容,最后锁定导出。适合周报月报、管理层汇报、简历、带表格和图的报告这些东西。

流程

  1. create_document:建草稿,定主题、表格模板、密度、强调色
  2. add_blocks:往里加内容,可以多次调用
  3. finalize_document:锁定,之后不能再追加
  4. export_document:导出 .docx,自动发文件和预览图
┌───────────────────────────┐
│     create_document       │
│                           │
│  theme_name               │
│  table_template           │
│  density                  │
│  accent_color             │
└─────────────┬─────────────┘
              │
              ▼
┌───────────────────────────┐
│       add_blocks          │◄──┐
│                           │   │
│  page_template hero_banner│   │
│  heading      paragraph   │   │
│  list         table image │   │ 可多次调用
│  summary_card accent_box  │   │
│  metric_cards page_break  │   │
│  section_break toc        │   │
│  group       columns      │   │
└─────────────┬─────────────┘   │
              │ 内容完成        │
              │─────────────────┘
              ▼
┌───────────────────────────┐
│   finalize_document       │
│       锁定草稿            │
└─────────────┬─────────────┘
              │
              ▼
┌───────────────────────────┐
│    export_document        │
│  导出 .docx + 自动发送    │
└───────────────────────────┘

可选配置

  • 主题:business_reportproject_reviewexecutive_brief
  • 表格样式:report_gridmetrics_compactminimal
  • 排版密度:comfortable(宽松)或 compact(紧凑)
  • 强调色:accent_color=RRGGBB
  • 卡片变体:summaryconclusion
  • 页面模板:business_review_cover(经营复盘封面)、technical_resume(技术简历)
  • 段落和表格支持富文本(粗体、斜体、下划线、颜色、字体、超链接等)和边框
  • 表格支持两层表头(header_groups
  • 支持页眉页脚(首页不同、奇偶页不同)、分节、目录

注意

  • 中途出错别续旧草稿,重新来一份更稳。
  • 想参考旧版内容,先上传旧文档让模型提取,再用提取结果生成新的。

Tip

提示写清楚效果会好很多:文档给谁看、要哪些章节、哪些内容用表格或卡片、语气正式还是简洁、排版宽松还是紧凑。


支持的文件格式

可读取

  • Office:.docx .xlsx .pptx .doc .xls .ppt
  • PDF:.pdf
  • 文本和代码:.txt .md .log .rst .json .yaml .yml .toml .xml .csv .html .css .sql .sh .bat .py .js .ts .jsx .tsx .c .cpp .h .java .go .rs

可生成

.docx .xlsx .pptx

PDF 转换

方向 依赖 说明
Office → PDF Windows: docx2pdf / pywin32(要装 Office);或 LibreOffice Word / Excel / PPT 都能转
PDF → Word pdf2docx 文本型 PDF 效果好一些
PDF → Excel tabula-py(要 Java)或 pdfplumber 抽表格为主,复杂版面会丢东西

系统依赖安装

Note

Python 包自动装。下面是系统层面需要自己装的东西。

平台 读旧 .doc Office → PDF 怎么选
Windows pywin32 Word 用 docx2pdf,Excel/PPT 用 pywin32 或 LibreOffice 有 Office 就用 docx2pdf + pywin32,没有就装 LibreOffice
Linux antiword LibreOffice 装 LibreOffice 就行
macOS antiword LibreOffice brew install

Tip

不确定缺什么,跑 /pdf_status 就知道了。

各平台安装命令

Windows

# 旧格式读取 + win32com 转换
pip install pywin32

# Word 转 PDF
pip install docx2pdf

也可以装 LibreOffice 当跨平台转换后端:https://www.libreoffice.org/download/

Linux(Debian/Ubuntu)

# 读 .doc
apt install antiword

# Office -> PDF
apt install libreoffice-writer libreoffice-calc libreoffice-impress

macOS

# 读 .doc
brew install antiword

# Office -> PDF
brew install --cask libreoffice

Tip

装完记得重启 AstrBot。


Docker 部署

写进 Dockerfile,镜像重建也不丢:

RUN apt-get update && apt-get install -y \
    antiword \
    libreoffice-writer libreoffice-calc libreoffice-impress \
    && rm -rf /var/lib/apt/lists/*
进容器手装(临时)
docker exec -it <容器名> bash
apt-get update
apt-get install -y antiword
apt-get install -y libreoffice-writer libreoffice-calc libreoffice-impress

容器删了重建得重装。


安全说明

  • 默认只能访问插件工作区。开了外部路径也只放开读取和转换,删除不受影响。
  • 群聊默认关闭,按需开。白名单留空 = 仅管理员可用。
  • 大文件超限直接拒绝,纯文本超出分块上限会截断并提示。

常见问题

群聊里插件没反应?

enable_features_in_group 默认 false,打开它。如果还需要去掉 @ 限制,把 require_at_in_group 也关了。

私聊看不到文件工具?

查白名单。留空只有管理员能用。

没有预览图?

三种可能:preview_settings.enable 关了;缺 pymupdf;Office 预览目前只支持 Windows 上的 Word。

PDF → Excel 出来是空表或者乱的?

PDF → Excel 是抽表格的,扫描件、跨页表格、复杂版面都容易出问题。换一份干净的 PDF,或者装 Java + tabula-py 试试。

Office → PDF 失败?

/pdf_status 看缺什么。Windows 上 Word 要 Office + docx2pdf,Excel/PPT 要 Office + pywin32;Linux/macOS 装 LibreOffice。


后续规划

Word

  • 合并单元格和跨列表头
  • 局部字体/颜色/边框
  • 脚注/尾注
  • 超链接
  • 页码格式(罗马数字等)

Excel

  • 独立的工作簿/工作表模型,支持 create_workbook -> write_rows -> export_workbook
  • 覆盖大多数新建报表场景:多工作表、表头、分批写入、导出
  • 补齐常用报表格式:列宽、冻结窗格、自动筛选、数字格式、条件格式
  • 增加已有 .xlsx 的读取与续写能力,支持“先读后建”和基于现有文件继续生成
  • 高级能力按需补充:公式、图表、复杂模板编辑

PPT

  • 独立的演示文稿模型
  • 标题页、内容页、结论页

交流

遇到问题或者有想法,来群里聊:QQ 群 1072198212


Star History

Star History Chart

许可证

AGPL-3.0

贡献

项目架构见 docs/architecture.md

欢迎提 Issue 和 PR。涉及行为变更的话附上复现步骤和预期结果。

Release History

VersionChangesUrgencyDate
v1.9.1### 新增 - 新增会话级图片资源池,用户上传图片后可注册为 `images/...` 受管引用,供 Word/PPT 文档工作流安全使用。 - 新增 `/doc help`,可查看会话文件命令说明。 - 新增 `/img help`,可查看图片资源池命令说明。 - 新增 `/img add [备注]`,支持把当前消息图片或待注册缓存中的图片写入资源池。 - 新增 `/img list`,可查看当前会话已注册图片。 - 新增 `/img active`,可查看本轮文档/PPT 工作流允许直接使用的活动图片。 - 新增 `/img use <序号或引用...|all>`,可手动选择一张或多张活动图片。 - 新增 `/img note <序号或引用> <备注>`,可修改图片备注。 - 新增 `/img clear [序号或引用|all]`,可清理当前会话图片资源。 - 新增当前活动图片集机制:`/img add` 成功后自动把本次注册图片设为活动图片,文档/PPT 工作流默认只使用活动图片。 - Word 结构化文档新增 `image` block 渲染,支持把资源池图片嵌入 `.doHigh5/31/2026
v1.8.0### 新增 - `write_rows` 新增 `number_formats` 选项,支持按列设置 Excel 数字格式(货币、百分比、日期等)。 - 条件格式场景检测与 domain hint 注入,引导模型使用 `CellIsRule`/`FormulaRule` 而非静态 PatternFill。 ### 修复 - 修复 exporter 对超出数据范围的列创建空单元格导致文件膨胀的问题。 - 修复 `number_formats` 验证器对非字符串值给出模糊错误提示的问题。 - 修复 `number_formats` 在 `start_row > 1` 时错误格式化表头行的问题。 - 修复 Excel 公式质量检查将 Sheet 名引用中的单引号误判为文本字面量的问题。 - 放宽 `execute_excel_script` 路由硬约束,允许编辑已有工作簿的纯值场景。 - 修复 Sheet 名引用正则未匹配引号与感叹号之间可选空格的问题。 ### 优化 - 重构 Excel 脚本提示词:精简 helper 列表,突出 `save_output_workbook` High5/18/2026
v1.7.1-preview### 新增 - 新增 `permission_settings.allow_all_users` 配置,可在受信环境中跳过管理员校验,让所有用户直接使用插件功能。 ### 优化 - `write_rows` schema 兼容性优化:通过运行时 helper 强制保证 cell 类型一致性,适配严格 schema 校验的模型 provider。 - `add_blocks` 在上游调度器把参数降级为空 kwargs 时,现在会打一条 warning 日志并返回明确的拆分指引,便于运维关联上游 JSON 解析问题。 ### 修复 - 修复 `add_blocks` 收到空参数时静默失败的问题,现在直接返回可操作的拆分指引,模型可据此修正调用策略。 - 修复 `allow_all_users` 权限设置在 review 反馈后的若干边界问题。High5/13/2026
v1.7.0-preview### 新增 - 新增 Excel 脚本执行链路,支持在 AstrBot runtime / sandbox 环境中运行受控脚本来生成或修改工作簿。 - 新增 Excel 脚本模板和路由能力,可按请求类型在读取现有文件、workbook 会话和脚本执行之间选择更合适的流程。 - 新增 Excel 脚本结果质量检查,生成文件存在明显结构问题或质量提示时,会把 `requires_review` 和 `quality_warnings` 返回给模型。 - 新增 `allow_local_excel_script` 配置。`computer_use_runtime=local` 时可单独开放 `execute_excel_script`,不需要关闭 `auto_block_execution_tools`,通用 shell/python 执行工具仍会被隐藏。 - 新增 `add_blocks` 公共 schema 测试辅助函数,方便稳定断言 provider 兼容字段。 - 新增 `technical_resume` 模板的 `auto_page_break` 支持,可让模板页自行附带分页High5/1/2026
v1.6.3-beta### 新增 - 新增会话式 Excel 工作簿流程,支持 `create_workbook -> write_rows -> export_workbook` 分步创建报表,适合多 sheet、分批写入后再导出 `.xlsx`。 - 新增 `workbook_id` 续写能力,上一轮创建的工作簿可以在后续对话里继续补写和导出。 - 新增面向 Excel 报表场景的工作簿会话管理,支持在对话里连续维护同一份报表,而不是每次重新生成整份文件。 ### 优化 - Excel 相关提示会更严格地区分“新建报表”“继续写入”“读取现有文件”“转换为其他格式”这几类请求,减少误用工具。 - workbook 导出现在支持在工作区内使用相对子目录组织输出,例如 `reports/q1/final-report.xlsx`。High4/19/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的High4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的High4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的High4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.2### 新增 - 段落富文本支持行内超链接,可直接插入可点击的外部链接和 mailto 链接。 - 段落与表格单元格支持更完整的富文本样式控制,包括字体、字号缩放、颜色、下划线、删除线、粗体、斜体等。 - 新增段落边框与表格单元格边框控制,能更方便地做分隔线、重点标注和局部描边。 ### 改进 - 旧格式的标题、颜色字段和表格单元格写法会自动兼容到新结构,已有调用方式更容易直接使用。 - 长表格分页和表头重复显示的稳定性进一步提升,跨页版面更自然。 ### 修复 - 修复 create_document 生成的长 document_id 容易在对话里被写错、漏写或改写,导致续写、定稿、导出中断的问题;现在改为更短的顺- 序编号,例如 doc-1、doc-2。([#52](https://github.com/Clhikari/astrbot_plugin_office_assistant/issues/52)) - 修复富文本表格单元格在字号、默认样式和首列加粗继承上的显示问题,表格正文样式更稳定。 - 修复段落和表格边框在不同配置下处理不一致的Medium4/16/2026
v1.6.1### 新增 - 表格正文支持 `col_span`,可以直接做横向合并单元格 - 页眉页脚支持 `page_number_format`,可控制页码格式为阿拉伯数字、罗马数字或字母序号 - 新增对应回归测试,覆盖 DOCX 结构和分节页码输出 ### 修复 - 拦截 `col_span` 与已有 `row_span` 占位重叠的非法表格结构 - 拦截越界 `col_span`,不再静默裁剪 - 拦截非整数、非正数 `col_span` - 拦截非法 `page_number_format`,避免写出不合规的页码元数据 High4/12/2026
v1.6.0## 新增 - 新增技术简历页模板,适合直接生成中文技术简历。 - `/fileinfo` 新增 Word 工具链状态显示,可以直接看到当前环境下 Node 渲染链路是否可用,以及实际渲染器入口路径。 - Node Word 渲染能力继续补齐,封面、摘要卡片、目录、分节、页眉页脚、宽表、表格样式和页面模板现在都能走同一条导出链路。 - 增加了更适合简历、总结、汇报场景的正式文档页面模板。 ## 优化 - Word 导出效果整体提升,复杂正式文档更接近可直接交付的观感。 - Word 渲染链路现在更明确地以 Node 渲染为主,复杂版式的一致性更稳定。 - 多文件上传后的提示更简洁,省略展示和文件计数更准确,群聊和私聊里继续处理文件更顺手。 - 复杂 Word 四步工作流在续写、定稿、导出这些阶段的提示更清楚,误跳步骤的情况更少。 - 文件读取、导出和工具拒绝这几类失败场景,现在给出的信息更直接,后续操作更容易判断。 ## 修复 - 修复了一批复杂 Word 导出中的版式和兼容性问题,包括表格布局、分节衔接、默认样式继承、目录、页眉页脚、宽表分High4/10/2026
v1.5.1### 更新内容 - 群聊新增 `/doc` 文件会话命令 - 支持 `/doc list` 查看当前待处理文件 - 支持 `/doc clear` 和 `/doc clear f1` 清理文件 - 支持 `/doc use f1 ...` 和 `/doc use f1 f2 ...` 按文件编号继续处理 - 群聊上传文件后,会为当前会话里的文件分配 `f1`、`f2` 这类短编号 ### 使用体验调整 - 群聊上传文件后,默认先缓存文件,等你确认后再继续处理 - 私聊上传文件时,继续保留原来的自动处理体验 - 多文件场景下,可以一次选中多个文件一起处理High4/2/2026
v1.5.0### 新增 - 新增 Word 文档页眉页脚能力,支持整份文档统一设置页眉页脚内容。 - 新增首页单独页眉页脚能力,封面页可以和正文使用不同设置。 - 新增奇数页与偶数页不同页眉页脚能力。 - 新增目录插入能力,可在 Word 文档中生成目录。 - 新增分节能力,可在文档中插入新节。 - 新增横向页面支持,可在同一份文档中切换横向和纵向页面。 - 新增节级页码控制,支持在新节中重新开始页码。 ### 优化 - 优化复杂 Word 文档的生成体验,正式报告、管理汇报、复盘材料这类长文档更容易一次生成成功。 - 优化横向宽表场景下的排版表现,表格章节衔接更自然。 - 优化标题、目录和正文之间的衔接表现,长文档阅读体验更稳定。 - 优化复杂文档的分页和分节表现,封面、正文、附录这类结构更容易按预期排版。Medium4/1/2026
v1.4.3### 新增 - 新增 Discord 群聊缓冲上传场景的文件工具适配,支持优先基于平台级提及信息判断是否满足 `@机器人` 触发条件 - 新增框架 `admins_id` 兜底支持,插件权限判断现在可以识别框架管理员配置 - 新增针对 Discord 缓冲上传、管理员刷新、旧版配置路径和标量 `admins_id` 配置的回归测试 ### 变更 - 文件缓冲重放后不再覆盖平台原始 `raw_message`,从而保留 Discord 原始消息上的 `mentions` 等平台字段 - 文件工具隐藏日志现在会区分“无文件权限”和“未满足群聊触发条件”,排查时更容易定位卡点 - 管理员 ID 解析结构调整为更清晰的 resolver 对象,并保留显式刷新能力 - 管理员 ID 归一化与配置解析逻辑进一步收紧,对动态集合、旧版配置和异常配置的兼容性更稳Medium3/30/2026
v1.4.2### 新增 - 新增文档级 `document_style` 默认样式入口,可统一控制标题、正文、列表、`summary_card` 和表格的基础样式。 - 新增 `summary_card_defaults`,支持按整份文档统一控制摘要卡片标题对齐、强调和间距等表现。 - 新增 `table_defaults`,支持按整份文档统一控制表头颜色、斑马纹、首列加粗、边框、对齐和 caption 强调样式。 ### 优化 - Word 文档渲染现在会优先读取文档级默认样式,再回退到主题默认值。 - 表格块和 `summary_card` 块现在支持在文档级默认样式之上继续做局部覆盖。 - 分组表头表格与文档级样式系统已对齐,可以和默认表格样式一起工作。 - 补充平台声明,当前已确认支持 `aiocqhttp` 和 `telegram`。 ### 修复 - 修复长表格跨页时表头不重复显示的问题。 - 修复长表格跨页时数据行容易被拆成上下两段的问题。 - 修复表格分页标记在已有冲突值时不够明确的问题,现在会显式写入分页控制标志。 Medium3/29/2026
v1.4.1### 新增 - 新增 Word 表格分组表头能力,支持通过 `header_groups` 渲染两层表头。 - 新增分组表头横向合并渲染能力,可在表头第一层按 `span` 合并单元格。 ### 优化 - 重构插件内部 hook 与文件处理分层,请求前 hooks、导出后收尾、上传提示、Word 读取和生成文件交付都已拆到更清晰的 service 层。 - `runtime_builder` 继续收敛为统一装配入口,`LLMRequestPolicy` 不再内部临时拼默认 request hooks。 - Word 表格渲染顺序固定为 `caption -> header_groups -> headers -> rows`,更贴近报表型表格输出。 - `header_groups` 的 schema、块模型、session store 和渲染器约束进一步对齐,错误信息也更具体。 ### 修复 - 修复上传缓冲和最近文本回补在慢文件场景下容易丢失用户指令的问题。 - 修复导出后缺失文件提示可能暴露完整路径的问题,用户侧仅显示文件名。 - 修复Medium3/28/2026
v1.4.0 ### 🚀 Features - `docx-read`: 新增 `.docx` 嵌入图片读取能力,并支持按配置决定是否将图片注入模型上下文。[#21](https://github.com/Clhikari/astrbot_plugin_office_assistant/pull/21) - `file-settings`: 新增 `enable_docx_image_review`、`max_inline_docx_image_mb`、`max_inline_docx_image_count` 配置项,用于控制 Word 图片理解和图片注入限制。[#21](https://github.com/Clhikari/astrbot_plugin_office_assistant/pull/21) - `word-builder`: 新增 Word 段落内联富文本支持,补强复杂正文样式与 rich runs 渲染能力。[#18 ] ### 🛠 Improvements - `word-rendering`: 重构 Word 内容格式化与表格渲染链路,统一 `Medium3/25/2026
v1.3.1## What's Changed ### 新增 - 新增 `services/` 运行时服务层,补齐运行时装配、访问策略、LLM 请求策略、上传会话、消息入口、工作区、文件工具、交付发送、命令处理、错误钩子等模块。 - 新增 `tests/test_office_assistant_services.py`,补充 service 层回归测试。 - 新增并更新项目架构图、贡献流程图,使图示与当前实现保持一致。 ### 优化 - 收敛 `main.py`,将入口层进一步薄化,主要保留 AstrBot 插件入口、装饰器绑定、生命周期管理和少量转发逻辑。 - 保持复杂 Word 四步工作流不变,继续沿用 `create_document -> add_blocks -> finalize_document -> export_document` 作为稳定的公开 contract。 - 优化上传文件场景下的缓冲、recent text 管理和读取顺序约束,减少先建文档再读文件或上传后乱跳工具的情况。 - 优化相关 system notice 和工具提示语,改为Low3/19/2026
v1.3.0# 📦 v1.3.0 发布说明 本版本对复杂 Word 文档的生成流程进行了重构。原有的一次性生成方式已改为分步工作流: **create_document → add_blocks → finalize_document → export_document** 新流程在处理报告、复盘、总结等结构化内容时更加稳定,也更便于按需追加内容。 ## ✨ 主要更新 - 复杂 Word 生成重构为四步工作流,流程更清晰,各阶段职责明确 - add_blocks 全面扩展,统一支持标题、正文、列表、表格、摘要卡片、分页、分组、分栏等多种内容块 - 项目结构调整,新增 document_core、mcp_server、agent_tools 模块及测试目录,逻辑拆分更合理 - Word 样式参数扩充,支持主题、表格模板、内容密度、强调色等配置项 - 导出文件可直接回传,Word 文件生成后可即时交付用户 ## 🔄 兼容性说明 - create_office_file 接口保持不变,简单场景可继续使用 - 复杂 Word 场景建议迁移至新的四步工作流Low3/17/2026
v1.2.5## v1.2.5 发布说明(2026-03-06) ### 重点更新 - 新增群聊总开关:enable_features_in_group(默认 false),可在群聊中整体禁用插件能力。 - 新增执行工具屏蔽开关:auto_block_execution_tools(默认 true),在插件能力生效时自动隐 藏 astrbot_execute_shell/python/ipython。 - 新增路径访问配置:allow_external_input_files(默认 false),可选允许读取/转换工作区外 绝对路径(删除仍仅限工作区)。 - 增强“先发文件后发文本”体验:加入会话级最近文本缓存,文件消息可继承最近指令。 ### 行为与命令调整 - 主命令统一为: - /list_files - /delete_file - 文档已标注别名为兼容用法,建议优先使用主命令。 ### 修复与稳定性 - 修复 EXECUTION_TOOLS 缺失导入导致的运Low3/6/2026
v1.2.4- 新增报错移动到指定会话功能,便于统一处理错误信息(此功能需要框架版本为4.17.5+)Low2/19/2026
v1.2.3## Fixed - 紧急修复LLM对话被意外禁用的问题,保持正常的 LLM 对话功能可用Low2/14/2026
v1.2.2- docs: 新增并补全 CHANGELOG 更新记录 - fix: 修复上传文件名路径穿越并补充PDF转Excel依赖Low2/10/2026
v1.2.1## 引入可复用的 COM 应用程序上下文管理器,并重构与 Office 相关的操作,以使用集中式配置和更安全的资源管理。 **✨新功能:** - 添加一个通用的 Windows COM 应用程序上下文管理器,用于管理 COM 初始化和应用程序生命周期。 **🐛错误修复:** - 确保 Office COM 文档、工作簿和演示文稿在出现错误时也能可靠关闭,并正确反初始化 COM,降低资源泄漏风险。 - 修复回复模式和群组 @ 要求检查逻辑,使其在文件发送与工具可见性逻辑中一致地使用预加载的配置标志。 **⚡改进:** - 重构 Word/Excel/PPT 文本提取和 Office 转 PDF 转换逻辑,使其使用共享的 COM 上下文管理器,以实现更稳健的清理和错误处理。 - 在主插件类中预加载文件、触发器和预览相关的配置值,避免重复查询并简化条件逻辑。 - 统一 LLM 请求处理中的工具暴露逻辑,更好地遵循权限与群组 @ 提及要求。 - 清理工具函数和预览生成函数中的格式与部分参数布局。Low2/4/2026
v1.2.0 ## 🚀 v1.2.0 更新日志 ### ✨ 新功能 - **📄 PDF 文本提取**:`read_file` 工具现在支持直接读取 PDF 文件内容,LLM 可以分析 PDF 文档并提供总结、建议 - **🖼️ 预览图生成**:发送 Office/PDF 文件时自动生成第一页预览图,让用户无需下载即可预览文件内容 - ✅ 支持 PDF 文件预览 - ✅ 支持 Word 文件预览(仅 Windows,需要 Microsoft Office) - ⚙️ 可在配置中启用/禁用,支持自定义 DPI 分辨率 ### 🐛 修复 - 修复 `create_office_file` 异常时无返回值导致 LLM 收到空响应的问题 - 修复 Windows 下 `docx2pdf` COM 初始化错误(`尚未调用 CoInitialize`) ### ⚡ 优化 - 优化转换工具描述,提示 LLM 无需先调用 `read_file` 读取文件即可直接转换 - 统一代码风格,将函数内 `imLow1/13/2026
v1.1.2### ✨ 新功能 - 跨平台旧格式支持 - .doc 文件:Linux/macOS 使用 antiword,Windows 使用 pywin32 - .xls 文件:使用 xlrd 跨平台读取(自动安装) - .ppt 文件:Windows 支持,其他平台提示转换格式 ### 📦 依赖优化 - 添加 xlrd 依赖,跨平台读取 .xls 文件 - pywin32 和 docx2pdf 改为条件安装(仅 Windows) - 非 Windows 平台不再尝试安装不兼容的包 ### 📖 文档改进 - 重构依赖安装说明,更清晰易懂 - 补充完整的可读取文件格式列表 - 优化 Docker 环境安装指南,区分临时/永久两种方式 - 添加重启提醒:安装系统依赖后需重启 AstrBot ### 🐛 修复 - 修复 Linux/Docker 环境下提示安装 pywin32 的问题 - 优化错误提示,根据不同平台给出正确的安装建议Low1/6/2026
v1.1.1### 🐛修复 - 修复不支持的文件格式(图片/视频等)仍会触发插件处理的问题,现在直接放行 ### ♻️优化 - 优化 read_file 工具描述,明确列出支持的格式 - 移除未使用的 passthrough 回调代码 ### 📦新增 - 添加 requirements.txt 支持自动安装依赖 ### 📝文档 - 简化 README 依赖说明Low1/4/2026
v1.1.0## ✨ 新功能 - **PDF 转换**:新增 Office⇄PDF 双向转换 - Office → PDF:Word/Excel/PPT 转 PDF - PDF → Word:PDF 转 Word 文档 - PDF → Excel:PDF 表格提取为 Excel - **旧版 Office 格式支持**:新增 .doc/.xls/.ppt 文件读取(Windows + pywin32) ## 🔧 改进 - **统一线程池管理**:所有子模块共享线程池,降低资源消耗 - **增强文件名清理**:防止隐藏文件、连续点号、超长文件名等问题 - **安全错误消息**:错误提示中自动隐藏敏感路径信息 - **重入保护**:消息缓冲器增加重入计数,防止无限循环 ## 📦 新增可选依赖 ```bash # PDF→Word pip install pdf2docx ``` ```bash # PDF→Excel (二选一) pip install pdfLow1/3/2026
v1.0.0Release v1.0.0Low1/3/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

ComfyUI-LoaderUtils🔄 Optimize model loading in ComfyUI with flexible node connections and controlled sequences for better performance and memory management.main@2026-06-06
Paper2Slides📊 Transform research papers into professional slides and posters seamlessly and quickly with Paper2Slides, saving you valuable time.main@2026-06-06
langgraph-llama-cpp-starter🤖 Build intelligent, offline LLM agents with LangGraph and llama-cpp-python using this starter template for local, private tool-calling applications.main@2026-06-05
eternegoThe Eternego codebasev0.15.1
MaiBotMaiSaka, an LLM-based intelligent agent, is a digital lifeform devoted to understanding you and interacting in the style of a real human. She does not pursue perfection, nor does she seek efficiency; 1.0.0-rc.4

More in AI Agents

hermes-agentThe agent that grows with you
awesome-copilotCommunity-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.
CopilotKitThe Frontend Stack for Agents & Generative UI. React + Angular. Makers of the AG-UI Protocol
e2bE2B SDK that give agents cloud environments