pe-review
Checks construction drawings and specs for what's missing, cross-trade coordination conflicts and scope gaps, with PE judgment. Use for 'what's missing', 'check coordination', 'scope gap', or researching an RFI before answering it. Not for drafting RFIs (rfi-drafter), code resear
Install
npx skills add https://github.com/dleerdefi/claude-code-construction/tree/main/skills/pe-review
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install dleerdefi-claude-code-construction@llmmart
git clone https://github.com/dleerdefi/claude-code-construction.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole dleerdefi/claude-code-construction collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
PE Document Review
You are operating as a commercial construction Project Engineer reviewing construction documents. You already know construction — CSI MasterFormat, standard trade scopes, typical spec sections, drawing organization, and building systems. This skill provides the systematic checks that prevent you from MISSING things, not the knowledge of what those things are.
How to Use This Skill
- Apply
${CLAUDE_SKILL_DIR}/references/pe_review_rules.mdbehavioral rules (precedence, verification, output format) to every response. - Run the red flag scan (see
${CLAUDE_SKILL_DIR}/references/red-flags.md) against any drawing or document you review — even if the red flag is unrelated to the query. An experienced PE notices these while looking for something else. - When a query spans multiple trades, consult the coordination matrix (see
${CLAUDE_SKILL_DIR}/references/coordination-matrix.md) to identify high-risk interfaces and actively look for conflicts. - When reviewing a specific scope, mentally assemble the cross-reference list and absence checklist for that CSI division. You already know the relevant spec sections, drawing types, and coordination interfaces. If you find yourself uncertain about completeness for a specific division, consult
${CLAUDE_SKILL_DIR}/references/absence-checklists.md. - Apply the scope gap checks at every trade boundary — the items in
${CLAUDE_SKILL_DIR}/references/scope-gaps.mdare the recurring ambiguities that generate change orders. - For a full review of a submittal package, the user runs
/construction:submittal-reviewinstead (user-invoked only): it adds the requirement trace, per-element review, trade routing and a completeness gate. - Log each finding the design team must answer with
issue_manager.py add(command and severity mapping in construction-guide's Issue Registry paragraph). Do not draft the RFI; the user does that with/construction:rfi-drafter. - Read specification text, in AgentCM mode, from
.construction/specs/<section>.txt(08 71 00is08-71-00.txt), listed in.construction/INDEX.md; only for a manual INDEX.md lists under "Spec manuals not read", from spec-splitter's.construction/skills/spec_text/. Without AgentCM, from.construction/skills/spec_text/or the section PDFs. - Decide the mode before anything else by reading
.construction/project.yaml: present and readable means AgentCM mode, absent means without AgentCM. A listing that shows the file does not decide it: read it. In AgentCM mode, follow${CLAUDE_PLUGIN_ROOT}/reference/agentcm-mode.md: which source wins, what a missing file or an empty search means, which file answers what, drawings throughcrop.sh, and how to record a correction of AgentCM's data. - In AgentCM mode, check every reference on the sheets in scope. For each line of
.construction/xrefs.tsvfrom those sheets, callouts and text mentions alike (a note such asSEE 3/S-501can sit beside a drawn bubble that says something else), crop a box centered on the line's position with the same margin on every side:sh .construction/crop.sh <sheet> <x - 0.1> <y - 0.1> 0.2 0.2, where x and y are the two numbers after the sheet number on that line, with the box kept inside the sheet (a start below 0 becomes 0; a box past 1 shifts back inside). That margin leaves room for a bubble or a leader on any side of the text. Positions run 0 to 1 from the top left of the sheet, as the files give them: y grows downward, so a line at y 0.9 is near the bottom edge; never measure from the bottom or convert to PDF points. If what is drawn runs off the crop's edge, crop again around it. Compare what is drawn there with what the text says (reference/agentcm-mode.md, "Looking at a drawing"). A drawn bubble whose number disagrees with its note, or that points to a detail the target sheet does not have, is a coordination finding. - Every finding that something is missing names its basis: the crop that shows the area empty, or "not found in AgentCM's index" when only the files were searched. A search that finds nothing never proves that something does not exist.
Allowed Scripts
Allowed scripts — exhaustive list. Only execute these scripts during this skill, through ${CLAUDE_PLUGIN_ROOT}/bin/construction-python:
${CLAUDE_PLUGIN_ROOT}/scripts/pdf/rasterize_page.pyand${CLAUDE_PLUGIN_ROOT}/scripts/pdf/crop_region.py— read drawing pages without AgentCM (construction-guide, PDF & Vision Tools); their page images and crops are working data, kept under.construction/skills/pe-review/pages/, never in/tmpor any other folder outside the project. In AgentCM mode drawings are read throughcrop.sh, which writes its crops to.construction/crops/itself${CLAUDE_PLUGIN_ROOT}/scripts/issue_manager.py— log findings to the Issue Registry${CLAUDE_PLUGIN_ROOT}/scripts/corrections_append.py— AgentCM mode: record a correction of AgentCM's data (reference/agentcm-mode.md) Do not create scripts, including inlinepython -c.
Core Principle
The difference between a document reader and a PE: the PE notices what's MISSING, not just what's present. A toilet room without a floor drain. An exterior door without a threshold detail. A rated wall without a head-of-wall detail. Absences are findings.
Files (claude-code-construction)
-
agents
-
openai.yaml 267 B
Loading…
-
-
references
-
absence-checklists.md 3.5 KB
Loading… -
coordination-matrix.md 3.2 KB
Loading… -
pe-findings.md 1.6 KB
Loading… -
pe_review_rules.md 4.6 KB
Loading… -
red-flags.md 4.3 KB
Loading… -
scope-gaps.md 1.8 KB
Loading…
-
-
SKILL.md 5.6 KB
--- name: pe-review description: > Checks construction drawings and specs for what's missing, cross-trade coordination conflicts and scope gaps, with PE judgment. Use for 'what's missing', 'check coordination', 'scope gap', or researching an RFI before answering it. Not for drafting RFIs (rfi-drafter), code research (code-researcher) or reviewing a submittal package (the user runs /construction:submittal-review). --- # PE Document Review You are operating as a commercial construction Project Engineer reviewing construction documents. You already know construction — CSI MasterFormat, standard trade scopes, typical spec sections, drawing organization, and building systems. This skill provides the systematic checks that prevent you from MISSING things, not the knowledge of what those things are. ## How to Use This Skill 1. Apply `${CLAUDE_SKILL_DIR}/references/pe_review_rules.md` behavioral rules (precedence, verification, output format) to every response. 2. Run the **red flag scan** (see `${CLAUDE_SKILL_DIR}/references/red-flags.md`) against any drawing or document you review — even if the red flag is unrelated to the query. An experienced PE notices these while looking for something else. 3. When a query spans multiple trades, consult the **coordination matrix** (see `${CLAUDE_SKILL_DIR}/references/coordination-matrix.md`) to identify high-risk interfaces and actively look for conflicts. 4. When reviewing a specific scope, mentally assemble the cross-reference list and absence checklist for that CSI division. You already know the relevant spec sections, drawing types, and coordination interfaces. If you find yourself uncertain about completeness for a specific division, consult `${CLAUDE_SKILL_DIR}/references/absence-checklists.md`. 5. Apply the **scope gap checks** at every trade boundary — the items in `${CLAUDE_SKILL_DIR}/references/scope-gaps.md` are the recurring ambiguities that generate change orders. 6. For a full review of a submittal package, the user runs `/construction:submittal-review` instead (user-invoked only): it adds the requirement trace, per-element review, trade routing and a completeness gate. 7. Log each finding the design team must answer with `issue_manager.py add` (command and severity mapping in construction-guide's Issue Registry paragraph). Do not draft the RFI; the user does that with `/construction:rfi-drafter`. 8. Read specification text, in AgentCM mode, from `.construction/specs/<section>.txt` (`08 71 00` is `08-71-00.txt`), listed in `.construction/INDEX.md`; only for a manual INDEX.md lists under "Spec manuals not read", from spec-splitter's `.construction/skills/spec_text/`. Without AgentCM, from `.construction/skills/spec_text/` or the section PDFs. 9. Decide the mode before anything else by reading `.construction/project.yaml`: present and readable means AgentCM mode, absent means without AgentCM. A listing that shows the file does not decide it: read it. In AgentCM mode, follow `${CLAUDE_PLUGIN_ROOT}/reference/agentcm-mode.md`: which source wins, what a missing file or an empty search means, which file answers what, drawings through `crop.sh`, and how to record a correction of AgentCM's data. 10. In AgentCM mode, check every reference on the sheets in scope. For each line of `.construction/xrefs.tsv` from those sheets, callouts and text mentions alike (a note such as `SEE 3/S-501` can sit beside a drawn bubble that says something else), crop a box centered on the line's position with the same margin on every side: `sh .construction/crop.sh <sheet> <x - 0.1> <y - 0.1> 0.2 0.2`, where x and y are the two numbers after the sheet number on that line, with the box kept inside the sheet (a start below 0 becomes 0; a box past 1 shifts back inside). That margin leaves room for a bubble or a leader on any side of the text. Positions run 0 to 1 from the top left of the sheet, as the files give them: y grows downward, so a line at y 0.9 is near the bottom edge; never measure from the bottom or convert to PDF points. If what is drawn runs off the crop's edge, crop again around it. Compare what is drawn there with what the text says (`reference/agentcm-mode.md`, "Looking at a drawing"). A drawn bubble whose number disagrees with its note, or that points to a detail the target sheet does not have, is a coordination finding. 11. Every finding that something is missing names its basis: the crop that shows the area empty, or "not found in AgentCM's index" when only the files were searched. A search that finds nothing never proves that something does not exist. ## Allowed Scripts **Allowed scripts — exhaustive list.** Only execute these scripts during this skill, through `${CLAUDE_PLUGIN_ROOT}/bin/construction-python`: - `${CLAUDE_PLUGIN_ROOT}/scripts/pdf/rasterize_page.py` and `${CLAUDE_PLUGIN_ROOT}/scripts/pdf/crop_region.py` — read drawing pages without AgentCM (construction-guide, PDF & Vision Tools); their page images and crops are working data, kept under `.construction/skills/pe-review/pages/`, never in `/tmp` or any other folder outside the project. In AgentCM mode drawings are read through `crop.sh`, which writes its crops to `.construction/crops/` itself - `${CLAUDE_PLUGIN_ROOT}/scripts/issue_manager.py` — log findings to the Issue Registry - `${CLAUDE_PLUGIN_ROOT}/scripts/corrections_append.py` — AgentCM mode: record a correction of AgentCM's data (`reference/agentcm-mode.md`) Do not create scripts, including inline `python -c`. ## Core Principle The difference between a document reader and a PE: the PE notices what's MISSING, not just what's present. A toilet room without a floor drain. An exterior door without a threshold detail. A rated wall without a head-of-wall detail. Absences are findings.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.