drawing-analyzer — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited drawing-analyzer (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Pre-processes a set of construction drawing PDFs into structured, lightweight text indexes. Run this once on any new drawing set. After it completes, answer questions by reading the indexes first, then targeting only the specific drawing needed.
Goal: Break the merged PDF into individual sheets. Extract text and create an image of each.
Run the PDF splitter script first:
scripts/split_drawings.pyFor each sheet produced:
sheets/SHEET-001.pdf, sheets/SHEET-002.pdf, etc.sheets/SHEET-001.txtsheets/SHEET-001.pngImportant: Do NOT use pattern matching scripts to classify drawings. Use Claude vision to read each sheet image and determine its type. Scripts cannot reliably handle the variation in construction drawing formats.
Read each sheet image (.png) and text file (.txt) and classify every sheet.
Output file: indexes/sheet-classification.md
For each sheet, record:
| Sheet No | File | Drawing Type | Title | Scale | Key Elements | Notes |Drawing types to classify into:
For schedules and legends: extract the full symbol or item list into the notes column. This is critical — it allows later queries to understand what symbols mean without re-reading the image.
Read the drawing type reference guide if uncertain: → references/drawing-types.md
Read all sheets. Map which drawings reference which other drawings.
Output file: indexes/cross-reference.md
| Source Sheet | Element / Note | References | Purpose |Examples:
This index allows Claude to follow cross-references without manually hunting through sheets.
For each sheet that contains a legend, symbol key, or abbreviation list:
Output file: indexes/symbol-library.md
| Symbol / Line Type | Meaning | Sheet(s) |Examples:
Output file: indexes/drawings.md
This file is loaded at the start of every subsequent query. Keep it concise.
Include:
Target size: under 10KB. This file is read on every query. Keep it lean.
Report to the user:
When a user asks a question about the drawings after this skill has run:
For quantity takeoffs: run the polygon extraction script on the specific sheet only.
scripts/extract_polygons.py --sheet SHEET-XXXCross-check polygon extraction against dimension annotations for high-value items.
references/drawing-types.md — Construction drawing type descriptions and what to extract from eachreferences/takeoff-guide.md — How to run accurate quantity takeoffs using the processed indexesdrawings.md ~500 tokens, target sheet text ~2,000 tokens, image ~4,000 tokens~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.