Annotates spec sheet PDFs with codes from any schedule — interior design, equipment, procurement, or any other domain. Stamps every page with its schedule code in red at the top-right corner, highlights critical text (dimensions, tolerances, electrical/power specs, clearances, weights) in yellow, then merges all spec sheets into one combined PDF. Use this skill whenever the user wants to add codes to spec sheets, highlight critical specs or requirements in a PDF, combine multiple spec PDFs into one document, create an annotated spec package, or prep spec sheets for contractors, installers, or purchasing. Trigger on: "annotate spec sheets", "add codes to spec sheets", "highlight specs", "combine spec sheets", "label spec PDFs from schedule", "create spec package", or any mention of a schedule alongside spec sheet PDFs.
How this skill is triggered — by the user, by Claude, or both
Slash command
/interior-design-skills:spec-sheet-annotatorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You have access to a bundled annotation script at `scripts/annotate_spec_sheets.py`
You have access to a bundled annotation script at scripts/annotate_spec_sheets.py
that handles all the heavy lifting. Your job is to:
Ask the user (or infer from context) for:
| Input | Description | Example |
|---|---|---|
| Schedule | Any schedule as .xlsx | Kitchen Schedule.xlsx, Equipment List.xlsx |
| Spec sheets dir | Folder containing spec sheet PDF(s) | Project/Spec Sheets/ |
| Output path | Where to save the final PDF | Project - Spec Sheets.pdf |
If a Spec Sheets folder exists inside the project folder, use it. The script will
scan all PDFs in that directory automatically.
The schedule must have a CODE column (e.g., AP-1, EQUIP-3) and a MODEL column.
pip install pymupdf openpyxl --break-system-packages -q
python3 /path/to/scripts/annotate_spec_sheets.py \
--schedule "/path/to/Schedule.xlsx" \
--spec-dir "/path/to/Spec Sheets" \
--output "/path/to/output/Project - Spec Sheets.pdf"
Optional flags:
--schedule-sheet NAME — if the xlsx has multiple sheets, specify the one to read (default: first sheet)--order schedule — output pages in schedule code order (default, recommended)--order original — preserve original PDF orderReads the schedule — extracts CODE → MODEL pairs in schedule order,
skipping category headers and blank rows.
Maps pages to codes — scans each PDF page for model numbers. The first page where a model number appears starts a new item "section"; all following pages until the next match inherit that code. Multi-page specs are handled correctly.
Labels every page — stamps the code (e.g., AP-1) in red at the
top-right corner with a white background for legibility.
Highlights critical text in yellow:
Combines all annotated pages into a single PDF in schedule order.
Some pages didn't get a code label:
→ The model number from the schedule wasn't found in the PDF text. This can
happen with scanned/image-based PDFs. In that case, the script will print a
warning. You can pass --manual-map to provide a JSON override:
--manual-map '{"AP-4": [{"file": "bosch_spec.pdf", "pages": [0, 1, 2]}]}'
No highlights on a page: → That page may not contain critical keywords, or the text may not be selectable. This is normal for marketing/overview pages.
File permissions error on save: → Save to a temp location first, then copy:
--output /tmp/annotated.pdf
# then copy to destination
After the script succeeds, share the link to the output PDF and mention:
npx claudepluginhub stevencastroverde/interior-design-claude-plugin --plugin interior-design-skillsExtracts structured FF&E product specs from PDFs like price books, fact sheets, and spec sheets using PyMuPDF, structuring into standardized Google Sheets, CSV, or markdown schedules.
Create, edit, analyze office documents (PDF, DOCX, PPTX, XLSX): extract text/tables, merge/split, fill forms, data analysis using pdfplumber, pypdf, pandas, openpyxl.
Produces architectural drawing sets, specifications, schedules, and construction administration workflows. Use when creating or reviewing construction documents for building projects.