用途:用 docxtpl 库自动填充 Word 合同、表单等 .docx 模板,把结构化数据写入模板中的 Jinja2 变量占位符。
主要能力与流程:
- 确认收到 .docx 文件,不直接读取该文件。
- 提取模板结构:运行 scripts/extract_schema.py <template.docx>,得到变量列表与 JSON schema,同样不读取文件,只运行脚本。
- 收集数据:从用户消息上下文中按 schema 字段提取值,必要时用 Claude 完成提取。
- 处理缺失数据:若必填字段缺失或不确定,直接询问用户,不要猜测。
- 填充模板:创建数据 JSON 文件,运行 scripts/fill_template.py <template.docx> <data.json> <output.docx>。
- 交付:把结果移动到 /mnt/user-data/outputs/ 并提供下载链接,不读取输出文件。
关键要点:模板必须使用 Jinja2 语法 {{VARIABLE_NAME}};schema 中所有必填字段都要填写;缺失数据必须询问用户,绝不编造值。
依赖安装:如需要,运行 pip install docxtpl --break-system-packages。
适用场景:批量或单次生成基于 Word 模板的合同、表单等文档。
限制:资料未提供支持的平台、收费方式、价格、效果保证或更多使用步骤;模板需符合 Jinja2 变量语法,且依赖 docxtpl 与上述脚本。