Delinquency and Collections

Canonical delinquency-to-resolution playbook. Classifies every case by aging stage, proposes the next-step action per the overlay's playbook, generates draft resident communications with legal-review banners where jurisdictions treat them as notices, opens approval_requests for every gated transition (legal notice, eviction filing, non-standard payment plan, write-off above threshold), and records fair-housing guardrails at each decision point. Runs weekly at the property and on-demand when a single case transitions aging buckets.

6 stars

Best use case

Delinquency and Collections is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Canonical delinquency-to-resolution playbook. Classifies every case by aging stage, proposes the next-step action per the overlay's playbook, generates draft resident communications with legal-review banners where jurisdictions treat them as notices, opens approval_requests for every gated transition (legal notice, eviction filing, non-standard payment plan, write-off above threshold), and records fair-housing guardrails at each decision point. Runs weekly at the property and on-demand when a single case transitions aging buckets.

Teams using Delinquency and Collections 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/delinquency_collections/SKILL.md --create-dirs "https://raw.githubusercontent.com/mariourquia/cre-skills-plugin/main/src/skills/residential_multifamily/workflows/delinquency_collections/SKILL.md"

Manual Installation

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

How Delinquency and Collections Compares

Feature / AgentDelinquency and CollectionsStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Canonical delinquency-to-resolution playbook. Classifies every case by aging stage, proposes the next-step action per the overlay's playbook, generates draft resident communications with legal-review banners where jurisdictions treat them as notices, opens approval_requests for every gated transition (legal notice, eviction filing, non-standard payment plan, write-off above threshold), and records fair-housing guardrails at each decision point. Runs weekly at the property and on-demand when a single case transitions aging buckets.

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

# Delinquency and Collections

## Workflow purpose

Move residents through a documented aging-and-resolution pipeline with zero guesswork about what the next permissible action is, under the governing jurisdiction's rules and the operator's policy overlay. Every transition that could become a legal action opens an `approval_request` at the correct row in the approval matrix. The workflow never sends notices, never files, never commits to a non-standard payment plan, and never writes off without a matching approved record. It does produce drafts, the structured cases, and the sensitivity math to make human decisions fast.

This pack is deliberately load-bearing. Collections discipline is one of the highest-leverage inputs to `economic_occupancy`, `bad_debt_rate`, `noi_margin`, and `dscr`. It is also the area most prone to fair-housing risk, so every stage carries an explicit guardrail.

## Trigger conditions

- **Explicit:** "weekly delinquency review", "delinquency by aging", "payment plan request for unit X", "what's the next step on case Y", "pre-legal case list", "bad-debt write-off candidates".
- **Implicit:** ledger balance transitions an aging bucket; `delinquency_rate_30plus` week-over-week spike above overlay materiality; resident requests a payment plan; a case approaches the jurisdiction's cure-period deadline; write-off date approaches.
- **Recurring:** weekly at property grain for the aging review; daily screen for cases crossing cure-period or court-deadline dates.

## Inputs (required / optional)

| Input | Type | Required | Notes |
|---|---|---|---|
| Resident ledger (current + T12) | table | required | unit_id, balance, as_of_date, aging bucket |
| DelinquencyCase records | table | required | case_id, stage, opened_date, last_action_date |
| Rent roll snapshot | table | required | unit status, lease state |
| Jurisdiction legal-notice rules | yaml | required | grace period, cure period, notice format rules |
| Delinquency playbook | csv | required | overlay-driven stage-by-stage action matrix |
| Payment-plan policy | yaml | required | max term, min down, cap per unit, off-policy flag criteria |
| Approval thresholds | csv | required | write-off and legal thresholds |
| Fair-housing baseline | derived | optional | trailing approval/collections disparity baseline |
| Prior approval records | table | required | link every gated action to an approved record |

## Outputs

| Output | Type | Shape |
|---|---|---|
| Stage cohort table | `kpi_review` | counts + dollars by aging bucket |
| Per-case action list | `checklist` | case_id, current stage, proposed next step, approval gate, due date |
| Draft communication set | `email_draft` | resident-facing letters per stage with banners |
| Approval request bundle | list | one per gated transition, pre-filled |
| Weekly delinquency memo | `memo` | narrative with fair-housing scan result |
| Confidence banner | banner | reference freshness + status tags |

## Required context

Asset_class, segment, form_factor, lifecycle_stage, management_mode, market, jurisdiction, role. Jurisdiction is **required** — the workflow refuses to propose any notice or filing action without a jurisdiction overlay. If the jurisdiction reference is missing, workflow opens a `missing_docs` entry and routes the case list without proposing legal-stage actions.

## Process

### Step 1. Pull cohorts and tag each case with stage.

Canonical stages (this is the overlay's playbook axis; stages map to the overlay's `delinquency_playbook_middle_market.csv`):

- `current` — ledger balance zero or below the `delinquency_threshold_dollars`; case open only to track recent payment patterns.
- `1_7` — balance above threshold, 1–7 days past due. Most cases resolve themselves here; gentle reminder only.
- `8_30` — 8–30 days past due. Formal reminder, payment offer menu, payment-plan eligibility reviewed.
- `31_60` — 31–60 days past due. Pre-legal posture. Cure period warning if jurisdiction supports. Payment plan must be in place or pre-legal pathway is considered.
- `61_90` — 61–90 days past due. Legal-notice pathway becomes active under most jurisdictions.
- `91_plus` — 91+ days past due. Filing window for most jurisdictions.
- `legal_notice` — a legal notice has been served; case is in cure window.
- `eviction_filed` — filing complete; awaiting court date.
- `judgment` — judgment entered (favorable or adverse); next step is either payment enforcement, move-out, or post-judgment workout.
- `write_off` — case recognized as bad debt per overlay write-off rules; ledger entry scheduled.

### Step 2. Per-case proposed next step (playbook lookup).

For each case, read the playbook row for the case's `(stage, jurisdiction, lease_state, payment_plan_state)` tuple. The playbook returns:

- `proposed_action` (e.g., send_reminder, offer_payment_plan, issue_legal_notice_draft_for_review, file_eviction_draft_for_review, continue_legal_hold, propose_write_off_draft_for_review).
- `approval_gate_row` (if any).
- `communication_template_ref` (path to the draft template).
- `legal_review_required` flag.

No case advances autonomously past a gated row.

### Step 3. Gated transitions — open approvals.

The following transitions always open an `approval_request`, regardless of dollar:

- **Any transition that would issue a legal notice** (moving into `legal_notice` stage, or preparing one in `31_60` / `61_90` / `91_plus`): opens `approval_request` row 1. The request names the jurisdiction, the cure-period deadline, the overlay playbook row, and the template reference. The workflow does not send the notice.
- **Any transition that would file for eviction** (moving into `eviction_filed`): opens `approval_request` row 2. Requires legal counsel sign-off in addition to PM and regional.
- **Any proposed non-standard payment plan** (outside the payment_plan_policy overlay: longer term, lower down, more frequent rescheduling, etc.): opens `approval_request` row 13.
- **Any proposed write-off** at or above the org overlay's threshold: opens row 6 or row 7 depending on threshold band.
- **Any tenant dispute with legal exposure signal** (retaliation claim, fair-housing complaint, reasonable-accommodation / reasonable-modification dispute): opens `approval_request` row 3; resident-facing response draft is not produced without counsel sign-off.

Any action without a matching `approved` record refuses to execute. This is a hard guardrail.

### Step 4. Stage-by-stage playbook (canonical).

The workflow references the overlay's playbook; this section describes the canonical skeleton that overlays customize. Overlays may tighten (faster escalation, more conservative write-off) but may not loosen below the floor described here.

**`current`.** No action required. If a resident shows repeated late-in-cycle payments (late in-month but never over 1–7 days), the workflow notes a pattern flag for the PM, informational only.

**`1_7`.** Informational reminder draft. Template `draft_for_review`. No approval gate. No fair-housing scan beyond routine. The goal is self-cure.

**`8_30`.**
- Formal reminder draft (portal + email).
- Payment-offer menu: full pay, split pay (inside policy), ledger-hold for short window (inside policy).
- Payment-plan eligibility evaluation: if request is **inside** `payment_plan_policy`, no approval gate; the workflow draft-produces the plan for PM confirmation. If request is **outside** policy, opens `approval_request` row 13.
- Auto-payment prompt if failed auto-pay is the cause.
- Fair-housing guardrail: sort by category (unit type, building, resident tenure) and compare action distributions to baseline. Statistically meaningful disparity opens a human-review flag (not autonomous action).

**`31_60`.**
- Pre-legal posture. The draft communication now includes overlay-approved escalation language and the cure-period heads-up if jurisdiction requires. Template carries `legal_review_required` banner.
- If payment plan is in place and in compliance, keep on plan; no escalation.
- If no payment plan or plan in default, proposed action is to prepare a legal-notice draft; that proposal opens `approval_request` row 1.
- Fair-housing guardrail: same disparity scan. Any statistically meaningful disparity routes to regional_manager before any legal-stage draft is opened.

**`61_90`.**
- Legal-notice pathway active under most jurisdictions. The workflow prepares the legal notice draft per the overlay's template. Every legal notice has a `legal_review_required` banner. The notice is never sent; it opens `approval_request` row 1 with the cure-period deadline attached.
- If jurisdiction requires a specific form (e.g., pay-or-quit, cure-or-quit), the overlay's template library is consulted; if the overlay does not cover the jurisdiction, the workflow refuses the legal draft and opens a `missing_docs` ticket. It still produces the informational memo for the PM.
- Payment plan, if any, is reassessed: missed installments move the plan to default, which triggers the `31_60 -> 61_90` path above.

**`91_plus`.**
- Filing pathway active. The workflow prepares an eviction-filing draft per the jurisdiction overlay and opens `approval_request` row 2. Requires legal counsel sign-off.
- Alternative path: if a qualifying workout or payment plan is now in play (overlay allows this to suspend filing), filing preparation is held but row 2 approval is still opened in parallel with a hold note.
- Any resident who raises a legal defense (retaliation, habitability, fair housing, reasonable accommodation) triggers `approval_request` row 3; filing holds pending legal direction.

**`legal_notice`.**
- Case is in cure window. The workflow tracks the cure deadline from the jurisdiction overlay and prepares a cure-verification action for the deadline date.
- Payments received during cure window are applied per overlay rules (full cure vs. partial cure vs. payment-plan-initiated cure).

**`eviction_filed`.**
- Case is in court process. The workflow maintains the case record, tracks hearing dates, and prepares a post-judgment decision brief with scenarios (judgment + payment, judgment + move-out, vacated / dismissed).
- No resident-facing communication is produced without legal direction.

**`judgment`.**
- Post-judgment branch:
  - **Favorable, payment plan proposed:** the workflow prepares a proposed plan per the overlay's post-judgment policy; opens row 13 if the plan is outside overlay.
  - **Favorable, move-out ordered:** hands off to `workflows/move_out_administration` and updates the rent roll; opens the turn project via `workflows/unit_turn_make_ready`.
  - **Adverse / vacated / dismissed:** closes the legal stage; case may return to earlier stages for non-legal workout or may move to `write_off` per overlay.

**`write_off`.**
- Recognizes the balance as bad debt per overlay write-off rules. Opens `approval_request` row 6 or row 7 depending on threshold band. Produces the GL journal draft `draft_for_review`.

### Step 5. Fair-housing guardrails at every stage.

At every stage the workflow:

- Never records, infers, or uses a protected-class attribute in any recommendation. The Fair Housing Act superset is the governing set; the guardrail treats source-of-income, age, marital status, lawful occupation, military status, and the full jurisdiction-specific set as protected.
- Produces no communication with protected-class language; copy is scanned against the term list before any draft is finalized.
- Runs a disparity scan on proposed actions by (aging bucket, unit cluster, tenure). Statistically meaningful disparity is an **informational flag** — never an autonomous action. Flagged cases route to regional_manager.
- Refuses to propose differential enforcement (e.g., faster escalation for one set of cases than another) without an explicit, documented policy justification that is traceable to the overlay.
- Escalates any reasonable-accommodation or reasonable-modification request immediately to human handling; does not route it through this playbook.

### Step 6. Communication drafts and banners.

Every resident-facing draft is `draft_for_review`. Drafts that could constitute notice under the jurisdiction carry `legal_review_required`. Drafts never assert sample data as fact; if a ledger balance or amount owed is cited, the confidence banner surfaces the ledger's `as_of` timestamp and source.

### Step 7. Weekly roll-up and portfolio view.

At the weekly cadence, the workflow produces:

- Aging distribution (count + dollars) by bucket.
- Week-over-week transitions (cases into and out of each bucket).
- `delinquency_rate_30plus`, `collections_rate`, `bad_debt_rate` vs. bands and benchmarks.
- Pattern flags: clusters by building / unit type / lease vintage.
- Fair-housing disparity scan summary.
- Gated-action queue: pending approvals, open cases, deadlines by date.
- Anchors to `economic_occupancy`, `notice_exposure`, and `noi_margin` impact.

### Step 8. Confidence banner.

Surface: jurisdiction overlay `as_of_date`, playbook `as_of_date` and `status`, ledger snapshot timestamp, and fair-housing baseline `as_of_date`. If any required reference is sample-tagged, the output says so.

## Metrics used

`delinquency_rate_30plus`, `collections_rate`, `bad_debt_rate`, `economic_occupancy`, `notice_exposure`. Supporting but not primary: `turnover_rate` (post-judgment move-outs), `average_days_vacant` (collections-related turns).

## Reference files used

- `reference/normalized/collections_benchmarks__{region}_mf.csv`
- `reference/normalized/delinquency_playbook_middle_market.csv`
- `reference/normalized/approval_threshold_defaults.csv`
- `reference/derived/role_kpi_targets.csv`
- `reference/normalized/jurisdiction_legal_notice_rules__{jurisdiction}.yaml`
- `reference/normalized/payment_plan_policy__{org}.yaml`
- `reference/normalized/resident_comm_templates__{jurisdiction}/*.md` (via reference; every template scoped to jurisdiction)

## Escalation points

- Any proposed transition into `legal_notice` or `eviction_filed` -> `approval_request` row 1 or 2.
- Any proposed non-standard payment plan -> `approval_request` row 13.
- Any write-off above threshold -> `approval_request` row 6 or 7.
- Any dispute with legal exposure -> `approval_request` row 3.
- Any missing jurisdiction overlay -> `missing_docs` ticket; workflow refuses to draft legal-stage actions.

## Required approvals

- `legal_notice` (row 1).
- `eviction_filing` (row 2).
- Non-standard payment plan (row 13).
- Write-off at/above threshold (row 6 or 7).
- Tenant dispute with legal exposure (row 3).

## Failure modes

1. Drafting a legal notice for a jurisdiction without an overlay. Fix: overlay missing -> refuse the draft; open `missing_docs`.
2. Treating "delinquency" as a single rate. Fix: always report `delinquency_rate_30plus` plus aging distribution; bad debt separately.
3. Proposing differential enforcement by resident attribute. Fix: the fair-housing scan is mandatory every run; statistically meaningful disparity routes to regional before any enforcement escalation.
4. Sending a template that could constitute notice without legal review. Fix: `legal_review_required` banner is automatic for any stage `31_60` and beyond.
5. Processing a reasonable-accommodation / reasonable-modification request through this playbook. Fix: automatic handoff out of this workflow; humans only.
6. Applying a payment plan without ledger check. Fix: ledger snapshot timestamp must be within overlay freshness threshold; stale ledger refuses.
7. Silent write-off. Fix: every write-off opens an approval; GL journal is a draft until approved.
8. Using sample references as operating fact. Fix: confidence banner surfaces `status` tags; sample rows never authoritative.

## Edge cases

- **First-of-month edge:** auto-pay failures cluster on the 1st–3rd; the `1_7` stage shows a transient spike. Workflow notes the seasonality so the weekly review does not overreact.
- **Resident in bankruptcy:** the workflow refuses to advance the case through any legal-stage transition; opens a `bankruptcy_review` flag and routes to legal counsel immediately. Communication drafts are held.
- **Military deployment (SCRA-protected resident):** the workflow checks for an SCRA flag in the lease record; if present, legal-stage transitions are blocked and counsel is routed.
- **Reasonable accommodation pending:** any open accommodation request suspends collections-stage transitions past `31_60` until resolved; counsel notified.
- **Partial cure during cure window:** jurisdiction overlay governs; if overlay treats partial cure as non-cure, case advances. Workflow does not override overlay.
- **Resident disputes balance in writing:** all communications default to `draft_for_review`; PM verifies ledger before any escalation.
- **TPM-managed property:** the workflow drafts the owner-oversight view and the TPM-facing request; does not bypass the TPM.
- **Multiple residents on lease, one facing workout:** ledger is joint; communications address the lease, not individual residents; fair-housing scan is conservative.

## Example invocations

1. "Run this week's delinquency review for Ashford Park. Include fair-housing scan and list every case that should open an approval this week."
2. "Unit 305 at Willow Creek is 45 days past due. What's the next step and what approvals do I need?"
3. "Build the month-end write-off candidate list for the South End portfolio. Route each to the right approval row based on balance size."

## Example outputs

### Output — Weekly delinquency review (abridged, Ashford Park, week ending 2026-04-12)

**Aging distribution.** Counts and dollars by stage (`current`, `1_7`, `8_30`, `31_60`, `61_90`, `91_plus`, `legal_notice`, `eviction_filed`, `judgment`, `write_off`). Week-over-week movement into/out of each bucket. `delinquency_rate_30plus` within band; `collections_rate` within band; `bad_debt_rate` within band.

**Case actions this week.**

- **3 cases in `8_30`.** Two on in-policy payment plan (no gate). One auto-pay failure; reminder drafted `draft_for_review`.
- **2 cases in `31_60`.** One on compliant plan; hold. One plan in default; pre-legal draft prepared per overlay; `approval_request` row 1 opened with Charlotte jurisdiction overlay cure-period deadline attached.
- **1 case in `61_90`.** Legal notice draft per overlay template; `legal_review_required` banner; `approval_request` row 1 opened.
- **0 cases in `91_plus`.**
- **1 case in `legal_notice` (prior week).** Cure-window tracker shows deadline in 6 days; cure-verification action queued.
- **0 cases in `eviction_filed`, `judgment`.**
- **2 candidate write-offs below threshold:** no gate; GL journal draft prepared.

**Fair-housing scan.** No term-list hits. Disparity scan across aging buckets vs. trailing 90-day baseline within tolerance. All `ApprovalOutcome` rows cite `policy_ref`.

**Approvals opened this week.** Row 1 x 2. Row 13 x 0. Row 6 x 2 (write-off below threshold; informational queue).

**Metric impact.** Pro-forma `economic_occupancy` improvement if all cases cure (dollar range), downside if all escalate (dollar range). Reported as sensitivity, not forecast.

**Confidence banner.** `delinquency_playbook_middle_market@2026-03-31, status=starter`. `jurisdiction_legal_notice_rules__charlotte@2026-02-15, status=sample (operator overlay override pending)`. Ledger snapshot 2026-04-12 08:00 local. Fair-housing baseline T90.

### Output — Single-case action brief (abridged, Unit 305, Willow Creek)

**Case state.** Stage `31_60`. Balance above threshold for 44 days. No active payment plan. Resident contacted 7 days ago, no response.

**Proposed next step.** Open `approval_request` row 1 for jurisdiction pre-legal notice draft per overlay template. Notice not sent until approved. Cure-period deadline computed from jurisdiction overlay.

**Alternative paths.**

- If resident responds with in-policy payment plan, hold the notice preparation; PM confirms plan.
- If resident responds with off-policy request, open `approval_request` row 13 in parallel.
- If resident raises a legal defense (retaliation, habitability, fair housing), stop the escalation and open `approval_request` row 3.

**Fair-housing guardrail.** Proposed action consistent with baseline; no disparity signal. No term-list hits in case notes.

**Confidence banner.** Ledger snapshot current; jurisdiction overlay sample-tagged; playbook starter-tagged.

Related Skills

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'.

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-credit-analyzer

6
from mariourquia/cre-skills-plugin

Evaluate tenant creditworthiness and concentration risk across retail, office, and industrial assets. Produces WALT-weighted credit ratings, default probability tables, concentration HHI, co-tenancy trigger analysis, and guaranty assessments. Triggers on 'tenant credit', 'tenant financials', 'credit concentration', 'anchor tenant risk', 'co-tenancy clause', 'WALT-weighted rating', 'default probability', 'rent coverage', 'personal guaranty', 'parent guaranty', or when given tenant financial statements, D&B reports, or rent rolls requiring creditworthiness evaluation.