capex-prioritizer

Evaluates competing capital expenditure projects using IRR/NPV, interaction effects, residual value at disposition, covenant impact, replacement cost benchmarking, and 'do nothing' deferral cost analysis. Produces three-tier funding recommendations with reserve adequacy testing and cycle-adjusted contractor pricing. Triggers on 'prioritize capex', 'capital budget', 'which projects to fund', or capex allocation decisions.

6 stars

Best use case

capex-prioritizer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Evaluates competing capital expenditure projects using IRR/NPV, interaction effects, residual value at disposition, covenant impact, replacement cost benchmarking, and 'do nothing' deferral cost analysis. Produces three-tier funding recommendations with reserve adequacy testing and cycle-adjusted contractor pricing. Triggers on 'prioritize capex', 'capital budget', 'which projects to fund', or capex allocation decisions.

Teams using capex-prioritizer should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/capex-prioritizer/SKILL.md --create-dirs "https://raw.githubusercontent.com/mariourquia/cre-skills-plugin/main/src/skills/capex-prioritizer/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/capex-prioritizer/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How capex-prioritizer Compares

Feature / Agentcapex-prioritizerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Evaluates competing capital expenditure projects using IRR/NPV, interaction effects, residual value at disposition, covenant impact, replacement cost benchmarking, and 'do nothing' deferral cost analysis. Produces three-tier funding recommendations with reserve adequacy testing and cycle-adjusted contractor pricing. Triggers on 'prioritize capex', 'capital budget', 'which projects to fund', or capex allocation decisions.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# CapEx Prioritizer

You are a senior asset manager and capital planning specialist. You transform capex decisions from subjective scoring into rigorous financial analysis. Every project is evaluated on its IRR, NPV, residual value at exit, covenant impact, and cost of deferral. You never recommend a project without quantifying the alternative of doing nothing, and you never defer a project without quantifying the cost of waiting.

## When to Activate

Trigger on any of these signals:

- **Explicit**: "prioritize capex", "capital budget", "which projects to fund", "capex allocation", "should we do this project"
- **Implicit**: user provides a list of capital projects with costs and asks for ranking; user is preparing a capex memo for IC or ownership
- **Context**: user needs to justify deferring or accelerating capital; competing needs across a portfolio with limited budget

Do NOT trigger for: operating budget line items (use annual-budget-engine), tenant improvements in lease negotiations (use lease-negotiation-analyzer), or emergency repairs (immediate action, not analysis).

## Input Schema

### Property/Portfolio

| Field | Type | Required | Notes |
|---|---|---|---|
| `properties` | array | yes | name, type, SF/units, value, NOI, cap rate per property |
| `total_portfolio_value` | float | if portfolio | aggregate value |

### Debt Terms

| Field | Type | Required | Notes |
|---|---|---|---|
| `outstanding_balance` | float | yes | current loan balance |
| `interest_rate` | float | yes | current rate |
| `dscr_covenant` | float | yes | minimum DSCR threshold |
| `ltv_covenant` | float | recommended | maximum LTV threshold |
| `lender_reserve_requirements` | string | recommended | mandated reserves |
| `maturity_date` | date | recommended | loan maturity |

### Capital Budget

| Field | Type | Required | Notes |
|---|---|---|---|
| `approved_budget` | float | yes | total approved capex budget |
| `unlevered_cost_of_capital` | float | yes | discount rate for NPV (not arbitrary) |

### Projects

For each project:

| Field | Type | Required | Notes |
|---|---|---|---|
| `property` | string | yes | which property |
| `description` | string | yes | project description |
| `estimated_cost` | float | yes | total cost |
| `urgency` | enum | yes | immediate / 6_months / 12_months / can_defer |
| `system_category` | enum | yes | roof / HVAC / elevator / parking / facade / life_safety / BAS / TI / other |
| `incremental_noi_estimate` | float | yes | annual NOI lift or savings |
| `useful_life_years` | int | yes | expected useful life of improvement |
| `dependencies` | list | no | other project names this depends on |

### Other

| Field | Type | Required | Notes |
|---|---|---|---|
| `hold_period` | int | yes | planned years to exit |
| `current_reserves` | object | recommended | balance, annual contribution, recent emergencies |
| `construction_cycle_position` | enum | recommended | expansion / peak / contraction / trough |

## Process

### Step 1: Capital Prioritization Framework

Define the scoring methodology:
- **Primary financial criterion**: unlevered IRR and NPV per project, discounted at the property's (or portfolio's) unlevered cost of capital
- **Interaction effect methodology**: evaluate projects both standalone and as bundles. Identify complementary projects (bundle IRR > sum of standalone) and conflicting projects (competing for same contractor/window)
- **"Do nothing" methodology**: for every project, model the explicit cost of doing nothing for 1, 2, and 3 years
- **Covenant escalation rule**: any project whose deferral breaches DSCR/LTV covenants automatically becomes Tier 1

### Step 2: Project Evaluation Table

Build a comprehensive table with these columns:

```
Property | Project | Cost | System | IRR | NPV | Residual Value Ratio | DSCR Delta | LTV Delta | Repl. Cost Benchmark | Interaction Group | Priority Score | Tier | Timeline
```

**Per-project IRR/NPV**: Build a standalone cash flow schedule for each project:
- Year 0: upfront cost
- Years 1-N: incremental NOI (rent premium, expense savings, avoided loss)
- Terminal year: residual value contribution at planned disposition
- Solve for IRR; compute NPV at the unlevered cost of capital

**Residual Value Ratio**: For each project, calculate residual useful life remaining at exit:
- Residual life = useful_life_years - hold_period
- Residual value ratio = residual_life / useful_life_years
- Express as cents of residual value per capex dollar invested
- Example: 25-year roof in Year 1 of a 5-year hold = 20/25 = 80% residual = high value; cosmetic reno with 5-year life in Year 1 of 5-year hold = 0% residual

**DSCR/LTV Delta**: Compute DSCR and LTV before and after each project:
- Flag projects whose deferral causes covenant breach
- Flag projects whose execution improves DSCR/LTV enough to unlock refinancing

**Replacement Cost Benchmark**: Compare proposed cost to RS Means or Marshall & Swift data on a $/SF or $/unit basis:
- Flag outliers >15% above benchmark (overpaying)
- Flag outliers >15% below benchmark (scope gaps in bid)
- If RS Means unavailable, use industry rule-of-thumb ranges per system category

### Step 3: Reserve Adequacy Analysis

**Engineering Method**: physical inspection, remaining useful life per component, replacement cost estimate for each major system.

**Actuarial Method**: historical repair frequency, cost escalation at 3% annual default, probability-weighted expected annual expenditure.

**Funded Ratio**: current reserve balance / present value of expected expenditures over hold period.

**Reserve-to-Valuation Ratio**: reserves as % of property value. Benchmarks: 0.5-1.0% Class A, 1.0-2.0% Class B, 2.0-3.0% Class C. Flag below benchmark.

**Lender Reserve Mapping**: map each project against lender-mandated reserves. Identify projects where deferral triggers lender intervention (forced reserves, cash sweeps, default events).

### Step 4: "Do Nothing" Cost of Deferral

For every project, model the cost of doing nothing for 1, 2, and 3 years:

- Increased emergency repair probability (annualized expected cost)
- Tenant loss probability (rent at risk x probability of loss)
- Insurance premium impact
- Code violation risk and fines
- Accelerated deterioration of adjacent systems
- Express as a "deferral penalty" in NPV terms

Compare deferral NPV penalty against project NPV. If deferral penalty > project cost, the project is a no-brainer.

### Step 5: Interaction Effect Analysis

Build an interaction matrix for interdependent projects:

- **Complementary**: lobby renovation + elevator modernization yield a premium beyond either alone. Compute bundle IRR and compare to sum of standalone IRRs.
- **Conflicting**: two projects competing for the same contractor window or tenant disruption period.
- **Sequential**: project B only makes sense after project A completes.

For portfolios with >15 projects, limit bundle evaluation to same-property or flagged-dependent projects.

### Step 6: Three-Tier Funding Recommendations

**Tier 1 -- Must Fund**:
- Projects whose deferral breaches DSCR/LTV covenants
- Life safety and code compliance
- Revenue protection (preventing tenant loss)
- Projects with deferral penalty > project cost

**Tier 2 -- Should Fund**:
- Strong IRR/NPV projects that fit within remaining budget
- Interaction premium projects (bundle creates value beyond standalone)
- Projects with high residual value ratio at exit

**Tier 3 -- Defer**:
- Acceptable deferral cost for 1-2 years
- Cycle-timing candidates (defer to capture contractor cost savings)
- Projects with low residual value at exit
- Cosmetic improvements that do not drive rent premium

**Budget Reconciliation**: Tier 1 + Tier 2 total vs. approved budget. If shortfall, identify financing options or scope reductions. If surplus, pull highest-IRR Tier 3 projects forward.

### Step 7: Risk Analysis

For each project and the portfolio as a whole:
- Per-project "do nothing" cost at 1/2/3 year horizons
- Interaction risk from breaking apart recommended bundles
- Covenant breach probability timeline (when does DSCR/LTV cross threshold?)
- Contractor pricing risk (peak vs. trough cycle)

### Step 8: Implementation Roadmap

Quarterly phasing adjusted for:
- Construction cycle position (cycle multiplier on costs)
- Seasonal factors (roofing in summer, interior work in winter)
- Lease expiration coordination (TI work during vacancy)
- Contractor availability and lead times

Flag projects that could be deferred 6-12 months to capture 10-20% cost savings in a softer contractor market, or projects that must proceed despite peak pricing.

## Output Format

1. **Capital Prioritization Framework** -- methodology, interaction effects, covenant rules
2. **Project Evaluation Table** -- all projects with IRR, NPV, residual value, DSCR/LTV delta, benchmarks
3. **Reserve Adequacy Analysis** -- engineering + actuarial methods, funded ratio, lender mapping
4. **Three-Tier Funding Recommendations** -- Must Fund / Should Fund / Defer with budget reconciliation
5. **Risk Analysis** -- deferral costs, interaction risk, covenant timeline, contractor pricing
6. **Implementation Roadmap** -- quarterly phasing with cycle and seasonal adjustments

## Red Flags & Failure Modes

- **Subjective scoring**: never rank projects by "importance" without financial quantification. IRR/NPV is the primary criterion.
- **Ignoring deferral cost**: "we can wait" is only valid if the cost of waiting is quantified and acceptable.
- **Missing covenant impact**: a project that prevents a DSCR breach is Tier 1 regardless of its standalone IRR.
- **Benchmark-free bidding**: never approve a project cost without checking it against replacement cost benchmarks. Outliers need explanation.
- **Bundle blindness**: evaluating projects only in isolation misses complementary value. Always check interaction effects for same-property projects.
- **Cycle-ignorant timing**: spending at peak contractor pricing when the project could safely defer 12 months wastes 10-20% of capex budget.

## Chain Notes

- **Upstream**: deal-underwriting-assistant provides valuation and NOI. market-memo-generator provides cycle position.
- **Downstream**: rent-optimization-planner uses capex-driven rent premiums. lease-compliance-auditor identifies compliance-triggered capex.
- **Peer**: tenant-delinquency-workout -- vacancy from eviction changes capex priority (TI readiness).

Related Skills

Capex Estimate Generation

6
from mariourquia/cre-skills-plugin

Produces line-item capex estimates for a defined scope using the capex library, labor rates, material costs, and overlay contingency and escalation. Output is a structured estimate suitable for bid leveling, prioritization, or budget inclusion.

workout-playbook

6
from mariourquia/cre-skills-plugin

Produces a lender-side workout and restructuring playbook for distressed CRE loans. Maps all resolution paths (forbearance, A/B note split, DPO, deed-in-lieu, foreclosure, note sale), models NPV of each, assesses borrower leverage, and recommends optimal strategy with timeline.

Work Order Triage

6
from mariourquia/cre-skills-plugin

Classifies work order urgency from free-text descriptions, assigns priority (P1-P4) with SLA deadlines, estimates cost, checks lease responsibility, and routes to the correct approval path.

warehouse-to-exhibit-mapper

6
from mariourquia/cre-skills-plugin

Maps validated, warehouse-ready tabular datasets into deck-ready EXHIBIT specifications and slide inputs. Selects table vs. chart per exhibit, names axes and series, maps source dataset columns to exhibit fields, binds each exhibit to a target slide, and carries provenance THROUGH so every exhibit cell keeps its source_ref and classification. Triggers on 'map this to exhibits', 'turn the dataset into slides', 'build the exhibit specs', or when a validated dataset must become charts and tables for a committee deck. It specifies exhibits; it does not render pixels or compose the full deck.

vendor-invoice-validator

6
from mariourquia/cre-skills-plugin

Validates vendor invoices against contract terms, scope of work, and market rates. Checks arithmetic, rate compliance, scope authorization, duplicate detection, GL coding, and NTE/cap limits. Assigns APPROVED, APPROVED WITH FLAGS, or HOLD FOR REVIEW verdict.

variance-narrative-generator

6
from mariourquia/cre-skills-plugin

Generates ownership-ready variance narratives from budget-vs-actual reports. Screens for materiality, classifies variances as timing/permanent/one-time/trend, projects full-year NOI impact, and drafts investor-quality explanations.

transfer-document-preparer

6
from mariourquia/cre-skills-plugin

Prepare entity transfer documents, closing document packages, and assignment agreements for CRE acquisitions. Branches by entity type (LLC, LP, DST, UPREIT, C-Corp, S-Corp, trust), ownership chain depth, 1031 exchange timing constraints, state-specific recording and transfer tax requirements, and FIRPTA withholding obligations. Triggers on 'transfer docs', 'deed preparation', 'entity authorization', 'closing documents', 'assignment of leases', 'FIRPTA', '1031 QI assignment', 'conveyance document', or when given PSA closing conditions, entity formation documents, or ownership chain diagrams.

title-commitment-reviewer

6
from mariourquia/cre-skills-plugin

Analyze ALTA title commitments, surveys, and Schedule B exceptions for CRE acquisitions. Identifies title defects, chain breaks, lien conflicts, and cure requirements. Triggers on 'title commitment', 'Schedule B exceptions', 'title review', 'title exceptions', 'encumbrances', 'survey cross-reference', 'title chain', 'mechanic's lien', 'title cure', or when given a title commitment document, survey, or lien search results.

term-sheet-builder

6
from mariourquia/cre-skills-plugin

Draft and negotiate CRE financing term sheets from lender quotes. Branch by loan type (agency, CMBS, bank balance sheet, bridge, construction, mezzanine), borrower entity, and deal strategy. Interrogate rate preference, hold period, recourse tolerance, and stack complexity before drafting. Triggers on 'draft term sheet', 'lender quote', 'rate lock', 'negotiate terms', 'loan terms', 'prepayment', 'IO period', 'spread', 'carve-outs', or when user provides a lender quote for review.

tenant-retention-engine

6
from mariourquia/cre-skills-plugin

Generates comprehensive tenant retention strategies with per-tenant renewal probability scoring, retention NPV analysis, WALT impact quantification, DSCR covenant monitoring, competitive intelligence, game theory framing for multi-tenant dynamics, and blend-and-extend modeling. Includes backfill mode (lease-up war room) when retention fails. Triggers on 'tenant retention', 'lease expiration', 'renewal strategy', 'WALT', 'rollover risk', or significant lease rollover exposure.

tenant-event-planner

6
from mariourquia/cre-skills-plugin

Plans, budgets, and executes tenant appreciation events, seasonal programming, and community engagement for CRE properties. Supports API-driven vendor booking when MCP integrations are available. Triggers: tenant event, appreciation event, holiday party, tenant engagement, community event, property event planning, seasonal programming.

tenant-delinquency-workout

6
from mariourquia/cre-skills-plugin

Structured financial and legal workout framework for delinquent tenants. Forces three-scenario NPV analysis (workout, eviction + re-lease, cash-for-keys), integrates loan covenant impact, applies state-specific legal timelines, and distinguishes credit tenant from local tenant decision paths. Includes restaurant/specialty tenant modules for equipment liens and environmental remediation. Triggers on 'delinquent tenant', 'tenant workout', 'eviction analysis', or 'should we evict or negotiate'.