核心用法
火一五文档技能是一款面向企业级场景的文档生成工具,支持 Word 与原生 PDF 双格式输出。用户通过自然语言触发词(如"写劳动合同""写技术方案")或 CLI 参数调用,系统基于 39 类预设规范自动匹配版式结构,包括页眉页脚、元数据表、版本历史、审批记录、TOC 目录等文档壳元素。
三条输出路径:
- Word 直出:
create-word-doc.py,依赖 python-docx,支持完整 OOXML 控制 - 原生 PDF 直出:
create-pdf-doc.py,基于 reportlab,无需 Office 环境 - Word→PDF 转换:
word-to-pdf.py,多后端自动回落(LibreOffice → docx2pdf → COM)
CLI 精细控制:--doc-format 强制指定规范,--with/no-* 系列开关覆盖默认文档壳(密级 banner、元数据表、版本史、审批表、TOC),满足涉密文档、对外合同、内部简报等不同场景的版式需求。
显著优点
1. 规范覆盖极全:39 类文档含 7 种合同细分(劳动/服务/技术开发/销售/采购/NDA/合作),每类配 Markdown 范本,解决"合同太粗"的 ToB 痛点
2. 版式智能适配:每种规范独立配置章节编号正则(中文数字/阿拉伯数字/第X章混排)、文档壳元素(banner/meta/版本史/审批/TOC),避免一刀切
3. 工程化程度高:Block AST 解析、OOXML 直写强制对齐、PDF NumberedCanvas 真页码、TOC 占位符回填真目录(v7.6),细节打磨深入
4. 本地化友好:CJK 软换行无多余空格、首行缩进字符级控制、宋体/黑体多平台字体回落、本地公司信息缓存 + Odoo 自动拉取
5. 触发词丰富:80+ 自然语言指令覆盖全场景,降低使用门槛
潜在缺点与局限性
1. 生态依赖较重:python-docx、reportlab、Pygments 等 Python 包需预装;Word→PDF 需 LibreOffice 或 Windows Office 环境
2. 模板扩展门槛:新增规范需修改 doc_core.py 中的 FormatPreset,非纯配置化;reference docx 模板继承(Pandoc/Quarto 风格)尚未实现
3. 高级功能缺失:LaTeX 公式、修订追踪、批注、水印加密、Jinja2 模板槽等列在未来路线,当前刚需场景需绕行
4. 企业信息冷启动:首次使用若无本地缓存或 Odoo,需补录公司名/LOGO,流程虽自动化但增加一步交互
5. PDF 版式局限:原生 PDF 基于 reportlab,复杂表格、图文混排不如 Word 灵活;极端场景建议 Word 转 PDF
适合人群
- 中小企业运营/HR/法务:快速生成标准化合同、制度、任命书、在职证明等
- 技术团队 PM/运维:输出技术方案、API 文档、部署手册、SOP、故障报告
- 市场销售:商业计划书、报价单、新闻稿、招投标书、演讲稿
- 知识管理:会议纪要、复盘报告、项目计划/结项、备忘录(MOU)
- 开发者:需文档自动化流水线,CLI 与 Python API 均可集成
常规风险
- 法律合规风险:合同范本需法务审核,工具生成内容为草稿性质,非最终法律文件
- 信息泄露风险:涉密文档(带【内部】banner)若误用
--no-classification-banner可能脱密;建议生产环境禁用覆盖开关 - 版本兼容性:WPS 部分版本对 OOXML
<w:jc>解析有差异,极端版式建议用 Microsoft Word 打开校验 - 元数据残留:Word 文档属性含作者、公司信息,对外发送前需检查
--author等参数 - PDF 生成失败:reportlab outline level 跳跃(v7.6 已修复)或字体缺失时可能抛异常,建议保留 Word 源文件备用