若WorkBuddy自动报告被截断,需依次检查模板渲染、脚本拼接、通道限制及前端压缩:一、模板中改{{var}}为{{{var}}}禁用截断;二、工作流脚本移除字符串切片限制;三、提升SMTP/PDF配置中的大小与超时阈值;四、前端执行localStorage指令禁用预览压缩。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您使用 WorkBuddy 自动发送报告功能,但发现生成的报告内容在邮件或导出文件中被意外截断,则可能是由于模板渲染限制、字符长度阈值触发或输出缓冲区配置不当所致。以下是解决此问题的步骤:
一、调整报告模板中的动态字段渲染方式
WorkBuddy 在解析模板时可能对嵌套循环或长文本字段执行默认截断,尤其当使用 {{summary}} 或 {{log_entries}} 等未加修饰符的变量时,系统会启用安全长度限制以防止页面溢出。
1、打开 WorkBuddy 后台管理界面,进入「自动化报告」→「模板编辑器」。
2、定位到被截断内容所在的模板区块,例如 {{report_body}} 所在段落。
3、将原始变量替换为带完整输出修饰符的语法:{{{report_body}}}(三重大括号表示禁用 HTML 转义与长度截断)。
4、保存模板并重新触发一次测试报告生成,验证是否仍存在截断。
二、修改工作流脚本中的字符串拼接逻辑
若报告由自定义 Python 或 JavaScript 工作流生成,截断常源于字符串拼接过程中隐式调用了 str[:5000] 类型的切片操作,或日志采集模块设置了单条记录最大长度。
1、进入「自动化中心」→「工作流详情」→「脚本编辑」。
2、搜索关键词 [:、.substr(、truncate 或 max_length。
3、将类似 content = raw_content[:8192] 的语句改为 content = raw_content,或显式提升阈值至 [:65536]。
4、检查所有 join() 或 concat() 操作前是否对子项做了预截断,如有则移除对应限制逻辑。
WorkBuddy 桌宠工厂 —— 给一张角色图、一个 codex.pet 链接、一条 codex-pets.net 下载 URL、或一份现成的精灵表,就能自动创建一只可联动 WorkBuddy 状态的桌面宠物。当用户说"创建桌宠"、"做一只桌宠"、"用这张图做桌宠"、"从 codex.pet 安装桌宠"、"导入 codex 桌宠 XX"、"装一下 codex-pets.net 上的 XX&quo
三、校准 SMTP 或导出通道的载荷限制配置
部分部署环境(如 Docker 容器内嵌 SMTP 代理或 PDF 导出服务)会对单次 HTTP 响应体或邮件正文设定硬性大小上限,超限后自动丢弃尾部数据,造成视觉上的“内容截断”。
1、登录 WorkBuddy 服务器终端,执行 grep -r "max_body_size\|payload_limit" /opt/workbuddy/config/。
2、在 config/smtp.yml 中找到 max_message_size 字段,将其值从默认 1048576(1MB)提升至 5242880(5MB)。
3、若使用 PDF 导出,检查 config/export.yml 中 html_to_pdf_timeout 是否过短导致渲染中断,建议设为 120 秒。
4、重启 WorkBuddy 服务使配置生效:sudo systemctl restart workbuddy。
四、禁用前端预览阶段的内容压缩中间件
WorkBuddy Web 界面在加载报告预览时,可能启用了基于 DOM 文本节点的轻量级压缩逻辑,该逻辑会主动折叠连续空白字符并截断超长行,仅影响预览显示,但易被误判为实际报告异常。
1、在浏览器中打开报告预览页,按 F12 打开开发者工具,切换至 Console 标签页。
2、输入并执行:localStorage.setItem('wb_disable_preview_truncate', 'true')。
3、刷新当前页面,观察预览内容是否恢复完整。
4、如确认有效,可将该指令添加至组织级初始化脚本,路径为 /opt/workbuddy/static/js/init.js 末尾。
















