Claude-code-plugins-plus-skills procore-core-workflow-a
install
source · Clone the upstream repo
git clone https://github.com/jeremylongshore/claude-code-plugins-plus-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jeremylongshore/claude-code-plugins-plus-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/saas-packs/procore-pack/skills/procore-core-workflow-a" ~/.claude/skills/jeremylongshore-claude-code-plugins-plus-skills-procore-core-workflow-a && rm -rf "$T"
manifest:
plugins/saas-packs/procore-pack/skills/procore-core-workflow-a/SKILL.mdsource content
Procore Core Workflow A
Overview
Build a complete RFI workflow: create, assign, respond, track, and close RFIs using the Procore API.
Prerequisites
- Completed
with project accessprocore-hello-world
Instructions
Step 1: Create RFI with Full Details
rfi_data = { "rfi": { "subject": "HVAC duct routing — Level 2 conflict", "question_body": "The HVAC ducts conflict with structural beams at grid B-4. Need routing alternatives.", "assignee_id": 11111, "rfi_manager_id": 22222, "due_date": "2026-04-15", "priority": "high", "cost_impact": "yes", "schedule_impact": "yes", } } rfi = requests.post( f"{BASE}/projects/{project_id}/rfis", headers={**headers, "Content-Type": "application/json"}, json=rfi_data, ) rfi_id = rfi.json()["id"]
Step 2: Add Response to RFI
response = requests.post( f"{BASE}/projects/{project_id}/rfis/{rfi_id}/responses", headers={**headers, "Content-Type": "application/json"}, json={ "response": { "body": "Route ducts below beam using 8-inch offset. See attached drawing.", } }, )
Step 3: Track RFI Status
rfi_detail = requests.get(f"{BASE}/projects/{project_id}/rfis/{rfi_id}", headers=headers) data = rfi_detail.json() print(f"RFI #{data['number']}: {data['status']['name']}") print(f" Days open: {data.get('days_open', 0)}") print(f" Responses: {len(data.get('responses', []))}")
Step 4: Close RFI
requests.patch( f"{BASE}/projects/{project_id}/rfis/{rfi_id}", headers={**headers, "Content-Type": "application/json"}, json={"rfi": {"status": "closed"}}, )
Output
- RFI created with full metadata (priority, impacts, due date)
- Responses added to RFI thread
- Status tracked through lifecycle
- RFI closed upon resolution
Error Handling
| Error | Cause | Solution |
|---|---|---|
| User not on project | Verify user is a project member |
| Not RFI manager | Only RFI manager can close |
| Missing responses | RFI in draft status | Distribute RFI first |
Resources
Next Steps
Submittal workflow:
procore-core-workflow-b