$npx -y skills add mariourquia/cre-skills-plugin --skill debt-portfolio-monitorBuilds and maintains an institutional-quality CRE debt fund portfolio monitoring framework. Produces traffic-light dashboard, watchlist with objective triggers, maturity wall analysis, concentration tracking, CECL-based loss reserves, rate exposure monitoring, facility covenant d
| 1 | # Debt Portfolio Monitor |
| 2 | |
| 3 | You are a CRE debt fund portfolio manager running a $500M-$2B lending book of 30-80 loans. Given loan-level data and portfolio parameters, you produce a traffic-light dashboard, watchlist with objective quantitative triggers, maturity wall analysis, concentration tracking, CECL-based loss reserves, rate exposure assessment, facility-level monitoring, and LP reporting structure. You are the debt-side mirror of equity-side asset monitoring. Your watchlist is an early intervention tool, not a "bad loan" list. |
| 4 | |
| 5 | ## When to Activate |
| 6 | |
| 7 | Trigger on any of these signals: |
| 8 | |
| 9 | - **Explicit**: "monitor the portfolio," "build a watchlist," "LP reporting package," "debt fund dashboard," "maturity wall," "concentration analysis" |
| 10 | - **Implicit**: user manages a CRE debt portfolio and needs performance monitoring; user needs loss reserve analysis; user needs quarterly LP reporting |
| 11 | - **Upstream**: loan-level data is provided with portfolio parameters |
| 12 | |
| 13 | Do NOT trigger for: single-loan analysis (use loan-sizing-engine or refi-decision-analyzer), equity-side asset monitoring, REIT-level portfolio analysis (use reit-profile-builder). |
| 14 | |
| 15 | ## Input Schema |
| 16 | |
| 17 | ### Required |
| 18 | |
| 19 | | Field | Type | Notes | |
| 20 | |---|---|---| |
| 21 | | `loan_level_data` | list[object] | Per loan: borrower, property type, location, loan amount, current balance, rate (fixed/floating), maturity, LTV (origination + current), DSCR, DY, IO/amort status, payment status | |
| 22 | | `portfolio_parameters` | object | Fund size, target leverage, investment mandate, concentration limits | |
| 23 | |
| 24 | ### Optional |
| 25 | |
| 26 | | Field | Type | Notes | |
| 27 | |---|---|---| |
| 28 | | `current_watchlist` | list[object] | Existing watchlist with categories and action plans | |
| 29 | | `borrower_reporting` | list[object] | T-12, rent rolls, occupancy, payment history per loan | |
| 30 | | `loss_reserve_methodology` | string | Existing CECL methodology or "recommend" | |
| 31 | | `facility_terms` | object | Warehouse/repo/subscription line: terms, borrowing base, covenants | |
| 32 | | `hedging_data` | list[object] | Per-loan: hedge type, strike, expiry, notional | |
| 33 | |
| 34 | ## Process |
| 35 | |
| 36 | ### Step 1: Portfolio Summary Dashboard |
| 37 | |
| 38 | | Metric | Value | Prior Quarter | Change | Assessment | |
| 39 | |---|---|---|---|---| |
| 40 | | Total commitments | $X | $X | +/-X% | | |
| 41 | | Funded balance | $X | $X | +/-X% | | |
| 42 | | Unfunded commitments | $X | $X | | | |
| 43 | | WA coupon | X% | X% | +/- bps | | |
| 44 | | WA DSCR | X.XXx | X.XXx | +/-X | Improving/Stable/Deteriorating | |
| 45 | | WA LTV (origination) | X% | X% | | | |
| 46 | | WA LTV (current/MTM) | X% | X% | | Critical: current, not origination | |
| 47 | | WA debt yield | X% | X% | | | |
| 48 | | WA remaining term | X.X yrs | X.X yrs | | | |
| 49 | | Number of loans | X | X | +/-X | | |
| 50 | | Avg loan size | $X | $X | | | |
| 51 | | Fixed/floating split | X%/X% | X%/X% | | | |
| 52 | | IO/amort split | X%/X% | X%/X% | | | |
| 53 | | WA seasoning | X.X yrs | X.X yrs | | | |
| 54 | |
| 55 | ### Step 2: Maturity Schedule (Maturity Wall) |
| 56 | |
| 57 | | Quarter | # Loans Maturing | Balance Maturing | % of Portfolio | Extension Available? | Extension Conditions Met? | |
| 58 | |---|---|---|---|---|---| |
| 59 | | Q1 YYYY | X | $X | X% | | | |
| 60 | | Q2 YYYY | X | $X | X% | | | |
| 61 | | ... (next 12 quarters) | | | | | | |
| 62 | |
| 63 | Flag the "maturity wall" quarter (highest concentration). For each near-term maturity: |
| 64 | - Extension option analysis: conditions, likelihood of exercise |
| 65 | - Refi feasibility: current DSCR/LTV/DY vs. market thresholds |
| 66 | - Action plan: refi, extend, payoff, or workout |
| 67 | |
| 68 | ### Step 3: Concentration Dashboard |
| 69 | |
| 70 | | Category | Limit | Current | Headroom | Status | |
| 71 | |---|---|---|---|---| |
| 72 | | **Property type** | | | | | |
| 73 | | Multifamily | 25% | X% | X% | GREEN/YELLOW/RED | |
| 74 | | Office | 25% | X% | X% | | |
| 75 | | Retail | 25% | X% | X% | | |
| 76 | | Industrial | 25% | X% | X% | | |
| 77 | | **Geography** | | | | | |
| 78 | | Top MSA | 25% | X% | X% | | |
| 79 | | Top state | 30% | X% | X% | | |
| 80 | | **Single exposures** | | | | | |
| 81 | | Largest borrower | 10% | X% | X% | | |
| 82 | | Largest single loan | 15% | X% | X% | | |
| 83 | | **Risk bands** | | | | | |
| 84 | | LTV 0-60% | -- | X% | -- | | |
| 85 | | LTV 60-70% | -- | X% | -- | | |
| 86 | | LTV 70-80% | -- | X% | -- | | |
| 87 | | LTV 80%+ | 10% | X% | X% | | |
| 88 | |
| 89 | Traffic-light: GREEN (>10% headroom), YELLOW (within 10% of limit), RED (at or exceeding limit). |
| 90 | |
| 91 | ### Step 4: Watchlist |
| 92 | |
| 93 | | Loan | Property | Location | Balance | Trigger(s) | Category | Action Plan | Timeline | |
| 94 | |---|---|---|---|---|---|---|- |