Install
openclaw skills install @thcjp/office-productivity-hub常见办公流程自动化中枢,覆盖文档处理、数据整理、邮件管理、日程协调、报表生成与工作流编排。 聚焦批量操作容错、格式保真、PII 脱敏、模板复用四大痛点,让繁琐办公一键稳妥完成。 核心能力: - 文档批处理:Word/PDF/Excel/PPT 批量生成、转换、合并拆分,含失败隔离与重试 - 数据整理:清洗、转换、...
openclaw skills install @thcjp/office-productivity-hub核心功能: 本技能提供化工作流场景等能力。
把繁琐的日常办公工作自动化。覆盖文档、数据、邮件、日程、报表五大场景,每个场景都内建失败隔离、格式保真与合规检查.
| 场景 | 核心能力 | 关键痛点解决 |
|---|---|---|
| 文档处理 | Word/PDF/Excel/PPT 批量生成、转换、合并拆分 | 失败隔离 + 格式保真 |
| 数据整理 | 清洗、转换、合并、统计、格式互转 | 字段对齐 + 异常值处理 |
| 邮件管理 | 批量发送、模板变量、定时、附件治理 | 附件大小 + 退订合规 |
| 日程协调 | 安排、冲突检测、跨时区、优先级 | 冲突避免 + 时区对齐 |
| 报表生成 | 数据采集、图表、定时、自动分发 | 增量更新 + 多通道分发 |
批量操作时一个文件失败不阻断整批:
批量处理 N 个文件
├─ 每个文件独立处理(try-catch)
├─ 失败的记录到 failed.log(含原因)
├─ 成功的继续,不打断
├─ 全部完成后汇总报告
└─ 提供 --resume 从 failed.log 续跑
示例:
# 批量 Word 转 PDF
(请参考skill目录中的脚本文件) batch convert --input ./docs --to pdf --resume failed.log
# ...
# 输出:
# 处理 50 个文件:成功 47,失败 3
# 失败列表见 failed.log
# 续跑命令:(请参考skill目录中的脚本文件) batch convert --resume failed.log
文档转换/生成前后逐项核对,避免格式损失:
处理含个人信息的文档前强制脱敏:
| 字段类型 | 识别规则 | 脱敏方式 |
|---|---|---|
| 身份证 | 18 位数字(最后一位 X) | 保留前 6 后 4,中间 8 位 * |
| 手机号 | 11 位数字、1 开头 | 保留前 3 后 4,中间 4 位 * |
| 银行卡 | 16-19 位数字 | 保留后 4 位,其余 * |
| 邮箱 | 正则匹配 | 用户名首字符 + ***@domain |
| 姓名 | 配合姓名库识别 | 保留姓,名用 * |
| 地址 | 配合地址库识别 | 保留到区/县,详细地址 * |
# 示例
(请参考skill目录中的脚本文件) mask --input customers.xlsx --output customers_masked.xlsx \
--rules "id_card,phone,bank_card,email,name"
脱敏后禁止保留映射表与原文档同目录;映射表需加密存储并设访问权限.
模板中使用 <动态配置> 占位,注入时严格区分类型:
# 字符串
<动态配置> # 金额,自动千分位 + 货币符号
<动态配置> # 日期,按配置格式化
<动态配置> # 表格,从数据源循环渲染
<动态配置>... # 条件块
注入示例:
# 用员工名单批量生成劳动合同
(请参考skill目录中的脚本文件) batch generate \
--template "劳动合同模板.docx" \
--data "员工名单.xlsx" \
--output "./output/劳动合同_$(date +%Y%m%d)/" \
--format pdf
模板变量规范:
employee_name)批量生成劳动合同 使用template.docx 填充员工名单.xlsx
将这个文件夹下的Word文档转换为PDF
合并这10个Excel文件到一个工作簿
批量发送邮件 收件人列表.xlsx 邮件模板.txt
根据这个Excel数据生成销售周报
清洗这份客户数据 去除重复项 补全缺失信息 并脱敏后导出
帮我安排下周的会议 时间避开周三下午
根据数据库自动生成本月销售报表 并发送给相关人员
{
"skills": {
"entries": {
"office-productivity": {
"config": {
"email": {
"smtp_server": "smtp.example.com",
"smtp_port": 465,
"username": "your@email.com",
"password": "${EMAIL_PASSWORD}",
"max_attachment_size_mb": 25,
"chunk_large_attachments": true
}
}
}
}
}
}
密码走环境变量 ${EMAIL_PASSWORD},不入配置文件明文。附件超 25MB 自动分片或转链接.
========================================
任务执行报告
========================================
# ...
【任务类型】批量生成文档
【执行时间】2026-07-18 14:30:00
# ...
【处理概况】
模板文件: 劳动合同模板.docx
数据文件: 员工名单.xlsx
处理数量: 50 份
成功数量: 48 份
失败数量: 2 份(见 failed.log)
耗时: 12.5 秒
# ...
【PII 脱敏】已对身份证、手机号字段脱敏
【格式保真】字体已嵌入、表格边框完整
# ...
【生成文件】
输出目录: ./output/劳动合同_20260718/
文件列表:
- 张三_劳动合同.pdf
- 李四_劳动合同.pdf
- ... (共 48 个文件)
# ...
【失败文件】
- 王五_劳动合同.pdf(模板变量缺失:hire_date)
- 赵六_劳动合同.pdf(数据源第 23 行格式错)
续跑命令:(请参考skill目录中的脚本文件) batch generate --resume failed.log
# ...
【统计信息】
文件大小总计: 24.2 MB
平均处理时间: 0.26 秒/份
效率提升: 相比手动操作节省约 2 小时
# ...
========================================
用户:用入职模板给 50 个新员工生成劳动合同,转 PDF
执行:
1. 校验员工名单字段(姓名/身份证/岗位/薪资/入职日期)
2. PII 脱敏:身份证号中间 8 位打码(仅 HR 主管可解密)
3. 模板变量注入,生成 50 份 docx
4. 转 PDF(嵌入字体、保留页眉)
5. 失败隔离:2 份缺入职日期的单独记录
6. 输出报告 + 续跑命令
用户:把这个文件夹的 100 张发票 PDF 转成 Excel 汇总
执行:
1. OCR 提取发票字段(号码/日期/金额/税额)
2. 字段对齐到 Excel 模板
3. 金额自动千分位 + 货币符号
4. 异常值检测(金额为负、日期未来)
5. 输出汇总 Excel + 异常清单
用户:给 200 个客户发产品更新邮件,每个客户名字和产品不同
执行:
1. 校验收件人列表(邮箱格式、退订标记)
2. 模板变量注入(、)
3. 附件大小检查(>25MB 转链接)
4. 分批发送(每批 50,间隔 60s,避免被限流)
5. 退订合规:每封邮件含退订链接
6. 输出发送报告(成功/失败/退订)
用户:每月 1 号自动生成上月销售报表发给老板
执行:
1. 配置 cron:0 9 1 * *
2. 从数据库采集上月销售数据
3. 渲染图表(柱状图/折线图)
4. 生成 PDF 报表(含目录、页眉)
5. 邮件发送给配置的收件人列表
6. 失败重试 3 次,仍失败告警
用户:清洗客户数据 去重 补缺 脱敏后导出
执行:
1. 去重:按手机号 + 邮箱联合判重
2. 补缺:姓名/地址用规则补全或标记缺失
3. 脱敏:身份证、手机号、银行卡按规则表打码
4. 异常值处理:金额为负、日期未来 → 标记异常列
5. 导出清洗后 Excel + 异常清单
| 序号 | 错误场景 | 原因 | 处理方式 | 优先级 |
|---|---|---|---|---|
| 1 | 输入参数缺失 | 用户未提供必要参数 | 提示用户提供所需参数后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 | P0 |
| 2 | 执行超时 | 处理时间过长 | 检查输入数据量,分批处理 | P1 |
| 3 | 输出格式错误 | 结果不符合预期格式 | 检查output_format参数配置 | P1 |
Q1: 批量处理中某个文件失败怎么办?
A: 失败隔离,记录到 failed.log,整批继续。完成后用 --resume failed.log 续跑失败项.
Q2: Word 转 PDF 字体变了怎么办?
A: 转换时启用字体嵌入。若目标字体缺失,安装字体后重转。格式保真检查表会标出字体不一致.
Q3: 邮件附件超 25MB 怎么办?
A: 自动分片(拆成多封)或上传到云存储转链接。配置 chunk_large_attachments: true.
Q4: PII 脱敏后还能还原吗?
A: 默认不可逆。如需可逆,映射表单独加密存储,访问需二次授权。建议生产环境默认不可逆.
Q5: 模板变量找不到对应数据怎么办?
A: 默认失败隔离,该文件记入 failed.log。可在模板中用 <动态配置>默认值 提供默认值.
Q6: 大批量操作要多久?
A: 文档生成约 0.25 秒/份,500 份约 2 分钟。邮件发送受 SMTP 限速,约 1 封/秒。建议分批 + 间隔.
Q7: 支持哪些办公软件集成?
A: Microsoft Office、WPS Office(本地文件操作);飞书/钉钉/企业微信(通过 Webhook/API).
| 现象 | 排查路径 |
|---|---|
| 批量处理中途崩 | 查 failed.log → 修复失败项 → --resume 续跑 |
| Word→PDF 格式乱 | 启用字体嵌入 → 检查页眉页脚 → 调整页面布局 |
| 邮件发送被限流 | 降并发到 1 封/秒 → 加间隔 → 检查 SPF/DKIM |
| Excel 公式变值 | 用 xlsx 而非 csv → 保留公式选项开启 |
| 模板变量未替换 | 检查变量名大小写 → 检查数据源字段名 → 用 <动态配置> 兜底 |
| PII 漏脱敏 | 检查规则表是否覆盖该字段 → 用更宽的正则 → 人工抽检 |
| 报表图表不显示 | 检查数据源非空 → 检查图表类型匹配 → 渲染前预览 |
| 定时任务未触发 | 检查 cron 表达式 → 检查时区 → 查任务日志 |
.trash/| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| API密钥泄露 | 高 | 通过环境变量配置,禁止硬编码 | 定期检查代码和配置文件 |
| 命令执行风险 | 高 | 仅执行白名单命令,避免拼接用户输入 | 使用沙箱环境测试 |
| 网络通信安全 | 中 | 使用HTTPS协议,验证SSL证书 | 定期检查证书有效期 |
| 敏感数据暴露 | 高 | 输出结果中不包含密钥、令牌等敏感信息 | 日志脱敏审查 |
| 未授权访问 | 中 | 限制访问权限,实施认证机制 | 定期审计访问日志 |
.trash/)--dry-run 预览| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| Python ≥ 3.9 | 运行时 | 必需(脚本依赖) | python.org |
python-docx | 库 | 文档处理必需 | pip install python-docx |
openpyxl | 库 | Excel 处理必需 | pip install openpyxl |
python-pptx | 库 | PPT 处理必需 | pip install python-pptx |
pdfplumber / PyPDF2 | 库 | PDF 处理必需 | pip install pdfplumber |
pandas | 库 | 数据整理必需 | pip install pandas |
| SMTP 服务 | 邮件发送 | 邮件场景必需 | 用户邮箱提供商 |
| LibreOffice(可选) | 文档转换 | 推荐(无 Office 时转 PDF) | libreoffice.org |
| LLM API | API | 必需 | 由 Agent 内置 LLM 提供 |
${EMAIL_PASSWORD})| 场景(续) | 核心能力 | 关键痛点解决 |
|---|---|---|
| 文档处理 | Word/PDF/Excel/PPT 批量生成、转换、合并拆分 | 失败隔离 + 格式保真 |
技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置. |
用input_params参数进行配置.
处理: 解析核心功能执行的输入参数,完成核心逻辑,返回格式化结果.
输出: 返回核心功能执行的响应数据,包含状态信息、结果数据和执行记录.
input_params参数调用,支持创建/查询/导出用config_options参数进行配置.
处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回格式化结果.
输出: 返回参数配置与调用的响应数据,包含状态信息、结果数据和执行记录.
config_options参数,支持修改/重置/导入操作用output_format参数进行配置.
处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回格式化结果.
输出: 返回结果处理与输出的响应数据,包含状态信息、结果数据和执行记录.
output_format参数,支持导出/保存/转换操作
能力覆盖范围:本技能覆盖以下场景:解决批量炸裂、格式丢失、PII、模板难复用痛点、让文档、报表快速稳妥产出、常见办公流程自动、化中枢、覆盖文档处理、报表生成与工作流、聚焦批量操作容错、模板复用四大痛点、让繁琐办公快速稳、妥完成、Use、when、需要提升效率、自动化流程、批量处理、工作流优化时使用、不适用于需要人工、创意判断的任务、适用于独立开发者、企业团队和自动化、工作流场景等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持.详细的输入输出格式请参考下方章节说明。
用户:用入职模板给 50 个新员工生成劳动合同,转 PDF
执行:
1. 校验员工名单字段(姓名/身份证/岗位/薪资/入职日期)
2. PII 脱敏:身份证号中间 8 位打码(仅 HR 主管可解密)
3. 模板变量注入,生成 50 份 docx
4. 转 PDF(嵌入字体、保留页眉)
5. 失败隔离:2 份缺入职日期的单独记录
6. 输出报告 + 续跑命令
用户:把这个文件夹的 100 张发票 PDF 转成 Excel 汇总
执行:
1. OCR 提取发票字段(号码/日期/金额/税额)
2. 字段对齐到 Excel 模板
3. 金额自动千分位 + 货币符号
4. 异常值检测(金额为负、日期未来)
5. 输出汇总 Excel + 异常清单
用户:给 200 个客户发产品更新邮件,每个客户名字和产品不同
执行:
1. 校验收件人列表(邮箱格式、退订标记)
2. 模板变量注入(、)
3. 附件大小检查(>25MB 转链接)
4. 分批发送(每批 50,间隔 60s,避免被限流)
5. 退订合规:每封邮件含退订链接
6. 输出发送报告(成功/失败/退订)
用户:每月 1 号自动生成上月销售报表发给老板
执行:
1. 配置 cron:0 9 1 * *
2. 从数据库采集上月销售数据
3. 渲染图表(柱状图/折线图)
4. 生成 PDF 报表(含目录、页眉)
5. 邮件发送给配置的收件人列表
6. 失败重试 3 次,仍失败告警
用户:清洗客户数据 去重 补缺 脱敏后导出
执行:
1. 去重:按手机号 + 邮箱联合判重
2. 补缺:姓名/地址用规则补全或标记缺失
3. 脱敏:身份证、手机号、银行卡按规则表打码
4. 异常值处理:金额为负、日期未来 → 标记异常列
5. 导出清洗后 Excel + 异常清单
| 操作场景 | 手动耗时 | 自动化耗时 | 效率提升 |
|---|---|---|---|
| 文件解析与提取 | 5-10分钟/个 | <5秒/个 | 60-120x |
| 批量文件处理(100个) | 8-16小时 | <5分钟 | 96-192x |
| API调用与响应解析 | 2-3分钟/次 | <1秒/次 | 120-180x |
| 多接口数据聚合 | 15-30分钟 | <10秒 | 90-180x |
| 命令执行与结果收集 | 3-5分钟/次 | <2秒/次 | 90-150x |
| 重复任务批量执行 | 因任务而异 | 线性缩减 | 5-50x |
| 错误排查与修复 | 10-30分钟 | <30秒 | 20-60x |
| 对比维度 | 办公效率中枢 | 传统手动方式 | 通用脚本工具 |
|---|---|---|---|
| 自动化程度 | 全流程自动 | 完全手动 | 部分自动 |
| 错误处理 | 内置错误恢复 | 依赖人工经验 | 基本try-catch |
| 可复用性 | 参数化配置 | 一次性脚本 | 模板化 |
| 安全合规 | 内置安全检查 | 无安全保障 | 无安全保障 |
| 适用场景 | 解决批量炸裂、格式丢失、PII泄露、模板难复用痛点,让文档/数据/邮件/报表快速 | 通用场景 | 通用场景 |
A1: 解决批量炸裂、格式丢失、PII泄露、模板难复用痛点,让文档/数据/邮件/报表快速稳妥产出。常见办公流程自动化中枢,覆盖文档处理、数据整理、邮件管理、日程协调、报。支持文本指令和结构化参数输入,具体格式参考使用流程章节。
A2: 是的,部分功能需要配置对应平台的API Key。请在依赖说明章节查看具体要求,并通过环境变量安全配置。
A3: 检查命令参数是否正确,确认运行环境支持exec能力。如遇权限问题,请参照错误处理章节排查。