From content-creation
Fills .docx form templates by detecting table-based label-value fields and populating with data from context or user input. Handles CJK/Latin text with font switching.
npx claudepluginhub lovstudio/skills --plugin content-creationThis skill uses the workspace's default tool permissions.
This skill fills in Word document form templates (.docx) with user-provided data.
Fills .docx templates for contracts and forms with structured data using docxtpl library and Jinja2 {{variables}}. Extracts schema via Python scripts, gathers data, handles missing fields by asking user, generates output .docx.
Generates and manipulates DOCX files programmatically using Deno: populate templates with placeholders like {{TITLE}}, create from JSON specs, analyze/extract content for reports/contracts.
Creates, edits, and formats DOCX documents using .NET OpenXML SDK via CLI or C# scripts. Pipelines for new docs, content filling, and template formatting with validation.
Share bugs, ideas, or general feedback.
This skill fills in Word document form templates (.docx) with user-provided data. It detects table-based form fields (label in one cell, value in the adjacent cell) and populates them automatically.
.docx form template with blank fields to fillYou MUST follow these steps in order:
Discover all fillable fields:
python lovstudio-fill-form/scripts/fill_form.py --template <path> --scan
Before asking the user, try to fill as many fields as possible from:
For content-heavy fields (e.g. "主要内容/简介/摘要"), actively compose the content by synthesizing from context files, user's known expertise, and the topic/title.
Use AskUserQuestion to collect ONLY the fields you cannot fill from context.
Write a JSON data file (avoids shell escaping issues with long text), then run:
python lovstudio-fill-form/scripts/fill_form.py \
--template <path> \
--data-file /tmp/form_data.json
Output path rules:
<template_dir>/<name>_filled.docx (same directory as the template)--output to override explicitly| Argument | Default | Description |
|---|---|---|
--template | (required) | Path to template .doc/.docx file |
--output | <template_dir>/<name>_filled.docx | Output .docx path |
--scan | false | List all detected form fields |
--data | "" | JSON string with field→value mapping |
--data-file | "" | Path to JSON file with field→value mapping |
--font | Platform CJK serif | Font name for filled text |
--font-size | 11 | Font size in points |
.doc files are auto-converted to .docx via macOS textutil, which loses table structure.
For best results, use .docx templates directly. If you only have .doc, convert with
LibreOffice first: libreoffice --headless --convert-to docx file.doc--scan to verify detection.pip install python-docx --break-system-packages