Install any skill in seconds. Free to start, no credit card required.
Get Started Free →datadrivenconstruction/docx-construction
Word document generation for construction: contracts, proposals, reports, specifications, transmittals. Template-based with dynamic content insertion.
Passed 17 of 24 test cases with the skill, and 14 of 24 without it.
and 2 more in the full report
5 fixed12 passed either way5 still failing2 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 5 test cases the skill fixed. Same model, same prompt, with and without the skill.
Which dictionary key names should be passed into `contract_data` to supply project scheduling dates to `generate_subcontract`?
| Checked | Without skill | With skill |
|---|---|---|
| Reads contract start date from start_date key. | Missed | Passed |
The instructions your model reads when the skill loads.
Create professional Word documents for construction workflows using python-docx. Generate contracts, proposals, reports, and specifications from templates with dynamic data.
Generate construction contracts from templates with project-specific data.
from docx import Document
from docx.shared import Inches, Pt
from docx.enum.text import WD_ALIGN_PARAGRAPH
from datetime import datetime
def generate_subcontract(template_path: str, contract_data: dict, output_path: str) -> str:
"""Generate subcontract from template."""
doc = Document(template_path)
# Replace placeholders
replacements = {
'{{PROJECT_NAME}}': contract_data['project_name'],
'{{CONTRACT_NUMBER}}': contract_data['contract_number'],
'{{SUBCONTRACTOR_NAME}}': contract_data['subcontractor'],
'{{SCOPE_OF_WORK}}': contract_data['scope'],
'{{CONTRACT_VALUE}}': f"${contract_data['value']:,.2f}",
'{{START_DATE}}': contract_data['start_date'],
'{{END_DATE}}': contract_data['end_date'],
'{{RETENTION_PERCENT}}': f"{contract_data['retention']}%",
}
for paragraph in doc.paragraphs:
for key, value in replacements.items():
if key in paragraph.text:
paragraph.text = paragraph.text.replace(key, value)
# Also check tables
test cases passed, vs 14 / 24 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.