# Project Setup

> >

- **Type:** Skill
- **Install:** `agentstack add skill-dleerdefi-claude-code-construction-project-setup`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [dleerdefi](https://agentstack.voostack.com/s/dleerdefi)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [dleerdefi](https://github.com/dleerdefi)
- **Source:** https://github.com/dleerdefi/claude-code-construction/tree/main/.claude/skills/project-setup

## Install

```sh
agentstack add skill-dleerdefi-claude-code-construction-project-setup
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Project Setup

Set up a construction project directory for use with Claude Code construction skills. This skill inventories all files, classifies construction document types, and appends construction-specific context to the project's CLAUDE.md.

Run this **after** `/init` has created the base CLAUDE.md.

## Pipeline Position
```
/init (built-in) → THIS SKILL → /spec-splitter, /sheet-splitter → /submittal-log-generator
```
Runs once per project. Identifies which Builder skills should run next.

## Workflow

```
Project Setup Progress:
- [ ] Step 1: Detect operational mode
- [ ] Step 2: Inventory and classify files
- [ ] Step 3: Present summary and recommend next actions
- [ ] Step 4: Amend project CLAUDE.md
```

### Step 1: Detect Operational Mode

Check for `.construction/` directory at the project root.

**If present (AgentCM mode):**
1. Read `.construction/CLAUDE.md` for project navigation context
2. Query database for entity counts (read `query_command` from `.construction/database.yaml`):
   `{query_command} -c "SELECT (SELECT COUNT(*) FROM sheets WHERE project_id = '{id}') AS sheets, (SELECT COUNT(*) FROM rooms WHERE project_id = '{id}') AS rooms, (SELECT COUNT(*) FROM graph_elements ge JOIN sheets s ON s.id = ge.sheet_id WHERE s.project_id = '{id}') AS elements"`
   Fallback: read `.construction/graph/graph_summary.yaml` if database unavailable
3. Read `.construction/index/sheet_index.yaml` for drawing inventory
4. Skip to Step 3 with instant summary — no file scanning needed

**If absent (Flat File mode):**
Continue to Step 2.

### Step 2: Inventory and Classify Files

Scan the project directory. No vision calls — use filename and folder pattern matching only.

**Classification rules:**

| Document Type | Detection Pattern |
|---|---|
| **Drawing sets** | PDFs in `drawings/`, `plans/`, or root with discipline prefixes (A-, S-, M-, E-, P-, C-, L-). PDFs > 2MB with keywords: "plan", "drawing", "bid set", "dwg". |
| **Specifications** | Folders named `Specifications/`, `specs/`, `02 - Specifications/`. PDFs with "project manual", "spec", "volume". CSI section number patterns in filenames. |
| **Schedules** | Excel/CSV files with "schedule", "CPM", "lookahead", "milestone" in name. |
| **Submittal log** | Excel files with "submittal" in name, typically in `Submittals/` or `06 - Submittals/`. |
| **RFI log** | Excel files with "RFI" in name, typically in `RFIs/` or logs folder. |
| **Change orders** | Excel/PDF files with "change order", "CO", "PCO" in name. |
| **Other** | Correspondence, photos, reports, geotechnical, environmental. |

**Also check for existing indexes:**
- `sheet_index.yaml` → drawings already indexed
- `spec_index.yaml` → specs already split
- `.construction/spec_text/manifest.json` → spec text already extracted

### Step 3: Present Summary and Recommend Next Actions

Report what was found:

```
## Project Summary
- Drawing sets: {count} PDFs ({disciplines found})
- Specifications: {bound manual / split sections / not found}
- Schedules: {list}
- Registers: {RFI log, submittal log, CO log — found or not found}
- Other: {count} files

## Recommended Next Actions
```

**Recommendations by mode:**

| Condition | Recommendation |
|---|---|
| Bound spec manual found, not yet split | "Run `/spec-splitter` to split the project manual into individual sections and extract searchable text." |
| Bound drawing set found, flat file mode | "Run `/sheet-splitter` to split the drawing set into individual sheet PDFs and identify sheet numbers." |
| Bound drawing set found, AgentCM mode | "Split sheets via the AgentCM UI for zero-vision-cost splitting using labeled OCR data." |
| Specs already split but no text extracted | "Run `/spec-splitter` — specs are split but text extraction hasn't been done yet." |
| Submittal log needed | "Run `/submittal-log-generator` after spec text is available." |
| Specs split and text extracted | "Would you like to generate a submittal log from the specification sections? Run `/submittal-log-generator`." |

### Step 4: Amend Project CLAUDE.md

Append construction-specific context to the **project root's CLAUDE.md** (the file created by `/init`). Do NOT modify the construction skills directory CLAUDE.md.

**Append format:**

```markdown
## Construction Project Context

### Document Locations
- Drawing set: {path} ({N} sheets, disciplines: {list})
- Specifications: {path} ({N} sections or "bound manual, not yet split")
- Schedule: {path or "not found"}
- RFI log: {path or "not found"}
- Submittal log: {path or "not found"}

### Status
- Operational mode: {AgentCM / Flat File}
- Sheets indexed: {yes/no}
- Specs split: {yes/no}
- Spec text extracted: {yes/no}
```

Only append — never overwrite existing CLAUDE.md content.

### What This Skill Does NOT Do

- **Does not split PDFs** — recommends `/spec-splitter` and `/sheet-splitter` instead
- **Does not use vision** — all classification is filename/folder pattern matching
- **Does not create .construction/ directory** — that's AgentCM's job
- **Does not replace /init** — `/init` creates the base CLAUDE.md, this skill enriches it

---

## Scripts

This skill does not execute any external scripts.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [dleerdefi](https://github.com/dleerdefi)
- **Source:** [dleerdefi/claude-code-construction](https://github.com/dleerdefi/claude-code-construction)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-dleerdefi-claude-code-construction-project-setup
- Seller: https://agentstack.voostack.com/s/dleerdefi
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
