bid-evaluator
Evaluate tabulated subcontractor bids against specs and drawings — scope gap analysis, exclusion risk scoring, award recommendation. Triggers: 'evaluate bids',…
Extract all submittal requirements from specification sections and generate a comprehensive submittal register in Excel. Triggers: 'submittal log', 'extract submittals', 'submittal register'. Requires /spec-splitter output.
$ npx -y skills add dleerdefi/claude-code-construction --skill submittal-log-generator --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/submittal-log-generatorContext preview
The summary Claude sees to decide when to auto-load this skill.
Extract all submittal requirements from specification sections and generate a comprehensive submittal register in Excel. Triggers: 'submittal log', 'extract submittals', 'submittal register'. Requires /spec-splitter output.
name: submittal-log-generator description: > Extract all submittal requirements from specification sections and generate a comprehensive submittal register in Excel. Triggers: 'submittal log', 'extract submittals', 'submittal register'. Requires /spec-splitter output. argument-hint: "[spec_range: all|div_08|div_09]" disable-model-invocation: true
Long-running skill that processes every specification section to extract submittal requirements and produces a professional submittal register in Excel. Designed to handle full project manuals (200+ spec sections) with state persistence.
**Prerequisite:** This skill depends on `/spec-splitter` to provision clean, per-section `.txt` files at `.construction/spec_text/`. The spec-splitter owns all text quality — extraction, repair, and quality assessment. This skill reads those `.txt` files and focuses on identifying submittal items.
This skill uses a three-tier approach:
**Allowed scripts — exhaustive list.** Only execute these scripts during this skill:
Do not create, generate, or write any `.py`, `.sh`, or other script files. All data assembly is Claude writing JSON directly.
!`cat .construction/submittal_extraction_state.yaml 2>/dev/null || echo "No prior extraction — starting fresh"`
---
The Excel submittal log MUST contain these columns in this order. Do not rename, reorder, or omit columns.
| Column | Description | Example | |---|---|---| | Spec Section | CSI section number | 03 30 00 | | Spec Title | Section title | Cast-in-Place Concrete | | Submittal No. | Sequential ID: `[Section]-[###]` | 03 30 00-001 | | Submittal Type | Categorized type (see taxonomy below) | Product Data | | Submittal Description | The actual submittal requirement, cleaned | Submit product data for each concrete mix design including compressive strength, admixtures, and mix proportions | | Article Reference | Where found in the spec | 1.3.A.1 | | Action/Informational | Action or Informational | Action | | Confidence | HIGH / MEDIUM / LOW / FLAGGED | HIGH | | Flag Reason | Empty if HIGH; explanation otherwise | Possible boilerplate — verify intent | | Extraction Method | pdfplumber / vision / hybrid | pdfplumber | | Notes | Any context Claude thinks the PE should know | Referenced mix designs in 03 31 00 |
Use the rigid export script for all Excel output. The script handles:
---
Submittal Log Progress: - [ ] Step 0: Ensure spec text is available (invoke /spec-splitter if needed) - [ ] Step 1: Submittal identification (per section, Claude intelligence) - [ ] Step 2: Confidence scoring & flagging - [ ] Step 3: Assembly & deduplication - [ ] Step 4: Excel output (rigid script) - [ ] Step 5: Write graph entry
This skill reads from `.construction/spec_text/*.txt` files provisioned by `/spec-splitter`. Check whether they exist and invoke spec-splitter if needed.
**Branch A — Text already extracted:** 1. Check `.construction/spec_text/manifest.json` 2. If present with corresponding `.txt` files → inventory them, build the processing queue, proceed to Step 1 3. Note any sections with `quality_rating: "POOR"` in the manifest — items extracted from these sections will receive a minimum confidence of MEDIUM
**Branch B — No text extracted:** 1. Invoke `/spec-splitter` — it will handle everything: locating or splitting spec PDFs, extracting text, and repairing quality issues 2. After `/spec-splitter` completes, read `.construction/spec_text/manifest.json` and proceed to Step 1
**Important:** Always invoke `/spec-splitter` as a skill — do not call `extract_spec_text.py` or `split_spec_manual.py` directly. The spec-splitter skill manages directory discovery, naming conventions, text extraction, and text repair.
**Build processing queue from manifest:** 1. Read all section keys from `manifest.json` 2. For each section, verify the corresponding `.txt` file exists 3. Sort by CSI section number 4. Build the queue
Initialize state file:
# .construction/submittal_extraction_state.yaml run_id: "uuid" started: "ISO-8601" status: "in_progress" total_sections: 48 processed: 0 current_section: null queue_remaining: ["03 30 00", "04 20 00", ...] submittals_found: 0 errors: []
For each section in the queue, read the `.txt` file from `.construction/spec_text/` and identify submittal items.
This is where your understanding of construction specifications matters most. Do not follow a rigid script here — use the domain knowledge below to identify every legitimate submittal requirement whi
Open-source skills that give Claude Code the working knowledge of a Project Engineer. Split drawings, parse specs, tabulate bids, generate subcontracts, and more — directly from your terminal or IDE.
Evaluate tabulated subcontractor bids against specs and drawings — scope gap analysis, exclusion risk scoring, award recommendation. Triggers: 'evaluate bids',…
Extract data from subcontractor bid PDFs and produce a comparison spreadsheet. Feeds into /bid-evaluator. Triggers: 'tabulate bids', 'bid comparison', 'compare…
Scope-specific code gap analysis — extracts referenced codes from project docs, researches what should apply, surfaces the delta. Triggers: 'code research',…
Construction document review with PE judgment — RFI research, submittal analysis, coordination checking, scope gap detection. Use when reviewing drawings,…
Set up a construction project — inventories files, classifies drawings/specs/schedules/registers, detects AgentCM mode, appends construction context to…
Draft RFIs and manage the ambient issue registry. Reviews issues surfaced by other skills, escalates to formal RFIs. Triggers: 'draft RFI', 'write RFI',…