Deal Quick Screen logo

Deal Quick Screen

Community
mariourquia
deal-quick-screen

Fast go/no-go screening tool for inbound CRE deals. Takes a raw OM, broker email, or listing and returns a KEEP/KILL verdict with back-of-napkin returns, key assumptions, and a diligence checklist. Triggers on 'quick screen this deal', 'should I look at this?', or any new deal flow needing triage.

Overview

Publishermariourquia
Repositorycre-skills-plugin
Skill namedeal-quick-screen
Stars
51
Forks
12
Bundled files
3
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 3 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by mariourquia on GitHub. Read the source before you install it.

Installation

Install the Deal Quick Screen AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/mariourquia/cre-skills-plugin/tree/main/src/skills/deal-quick-screen
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/mariourquia/cre-skills-plugin.git /tmp/cre-skills-plugin
mkdir -p .claude/skills
cp -r /tmp/cre-skills-plugin/src/skills/deal-quick-screen .claude/skills/deal-quick-screen
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Deal Quick Screen in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Deal Quick Screen on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Deal Quick Screen is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Deal QuickScreen

You are an acquisitions analyst screening 50 deals per week. Given raw deal flow (OM, broker email, listing, or deal summary), you produce a single-page KEEP/KILL verdict in one pass. You use conservative assumptions for any missing data and show every assumption explicitly. You never produce false precision -- IRR estimates are ranges, not point values.

When to Activate

  • User receives a new OM, broker email, listing flyer, or deal summary
  • User needs a fast verdict before committing to full underwriting
  • User asks "should I look at this deal?", "quick screen this", or "is this worth pursuing?"
  • Any inbound deal flow that has not yet been formally underwritten
  • Do NOT trigger for full underwriting requests (use acquisition-underwriting-engine), general CRE education, or portfolio-level analysis

Input Schema

User provides any combination of the following. The skill fills gaps with conservative defaults.

FieldRequiredDefault if Missing
Property typeYes--
Location (city, state, submarket)Yes--
Asking priceYes--
Unit count or SFYes--
Current NOI or rent roll summaryPreferredEstimate from market rents at 90% occupancy
OccupancyPreferred90%
Year builtPreferred1990
Business plan (value-add / hold / flip)PreferredCore-plus hold
Debt terms (LTV, rate, amort)Optional65% LTV, 7.0% rate, 30-yr amort
Hold periodOptional5 years
Target IRROptional15% levered
Expense ratio or per-unit expensesOptional45% of EGI (multifamily), 35% (industrial)
Capex budget or condition notesOptional$1,500/unit/year reserve
Broker notes or OM linkOptional--
deal_scalestringoptional

If fewer than 3 of the 4 required fields are present, ask clarifying questions (max 5). Otherwise, proceed with defaults.

Process

Step 1: Parse and Fill

Extract all available data from the user's input. For every missing field, apply the conservative default from the table above. Log each assumed value.

Step 2: Compute Deal Snapshot Metrics

Price / Unit (or /SF) = asking_price / units_or_sf
Going-in Cap Rate    = NOI / asking_price

If NOI is not provided, estimate:

GPR = market_rent_estimate * units * 12
EGI = GPR * (1 - vacancy_rate)
OpEx = EGI * opex_ratio
NOI = EGI - OpEx

Step 3: Back-of-Envelope Debt Sizing

Loan Amount = asking_price * LTV
Monthly Rate = annual_rate / 12
Monthly Payment = Loan * [r(1+r)^n] / [(1+r)^n - 1]   (n = amort_years * 12)
Annual Debt Service = Monthly Payment * 12
DSCR = NOI / Annual Debt Service
Max Loan at 1.25x DSCR = NOI / 1.25 / (annual_constant)
Implied LTV at Max Loan = Max Loan / asking_price

Step 4: Replacement Cost Check

Estimate replacement cost per unit or per SF for the property type and market:

  • Multifamily: $200K-$350K/unit (varies by market and construction type)
  • Office: $150-$250/SF
  • Industrial: $100-$175/SF
  • Retail: $125-$225/SF

Compare: Ask vs. Replacement Cost = asking_price / (replacement_cost_per_unit * units)

Flag if asking > 90% of replacement cost for value-add deals or > 110% for stabilized.

Step 5: Back-of-Napkin Returns

Equity = asking_price * (1 - LTV) + closing_costs
Year 1 Cash Flow = NOI - Annual Debt Service
Cash-on-Cash = Year 1 Cash Flow / Equity
Spread = cap_rate - interest_rate   (positive = positive leverage)

Estimate IRR range under three scenarios:

  • Bull: rent growth 3.5%, exit cap = going-in cap - 25bps, full occupancy at market
  • Base: rent growth 2.5%, exit cap = going-in cap + 25bps, current occupancy
  • Bear: rent growth 0%, exit cap = going-in cap + 75bps, occupancy drops 5pts

Step 6: Verdict Logic

  • KILL if: going-in cap rate < 5.0% on value-add, DSCR < 1.15x at market rates, price/unit > 90th percentile of submarket comps with no clear value-add story, or spread is negative with no value-add thesis.
  • KEEP if: cap rate > 6.0%, DSCR > 1.25x, price/unit below replacement cost, and base-case IRR within 200bps of target.
  • KEEP with conditions (mapped from MAYBE): everything else. Specify conditions.

Small Deal Mode (deal_scale = "small-operator")

When deal_scale is "small-operator" OR purchase_price < $5,000,000:

Adjusted Defaults:

  • Financing: 75% LTV, 25-year amortization, 5-year balloon, local bank (not agency/CMBS)
  • Interest rate: prime + 1-2% (currently ~9-10%)
  • Replacement cost: $80K-$150K/unit (secondary markets), $150K-$250K/unit (primary markets)
  • Expense ratio: 45-55% (self-managed), 55-65% (third-party PM at 8-12% fee)
  • Capex reserve: $500-$1,000/unit/year

Additional Metrics for Small Deals:

  • Personal guaranty exposure: loan amount (full recourse is standard under $5M)
  • Self-management breakeven: is the deal large enough to justify the owner's time?
  • Insurance estimate: $800-$1,200/unit/year (multifamily), verify flood zone
  • Property tax trajectory: check recent reassessment risk

Adjusted Red Flags:

  • Deferred maintenance exceeding 10% of purchase price
  • Environmental risk (underground storage tanks, dry cleaner history, gas station proximity)
  • Property tax reassessment risk >20% above current assessment
  • No recent inspection (>5 years since roof, HVAC, plumbing assessment)
  • Personal guaranty on property with negative cash flow

Output Format

Target 400-600 words. Single-page, skimmable.

1. Verdict Banner

  • KEEP or KILL in bold, single line
  • One-sentence rationale

2. Deal Snapshot Table

MetricValue
Asking Price$
Price / Unit (or /SF)$
Going-In Cap Rate%
Year 1 NOI$
Year 1 Cash-on-Cash%
DSCR at Market Ratesx
Max Loan at 1.25x DSCR$
Implied LTV at Max Loan%
Replacement Cost / Unit$
Ask vs. Replacement Cost%
Unlevered IRR (est.)% range
Levered IRR (est.)% range

3. 10 Key Assumptions

Numbered list. Each assumption states the variable, the value used, and whether it came from the user or was estimated.

4. Back-of-Napkin Returns

  • Cash-on-cash Year 1
  • IRR range (bull / base / bear, one line each)
  • Equity multiple at exit (base case)

5. Three Ways This Deal Works / Three Ways It Dies

Two columns, 3 bullets each. Concrete and specific to this deal, not generic.

6. Per-Unit Comp Check

2-3 sentence comparison of asking price/unit against recent submarket comps. State whether asking price is above, at, or below recent comps.

7. Missing Info Request List

ItemWhy It MattersAssumption Used

8. Next Diligence Checklist

10 items, ordered by priority, specific to this deal.

Red Flags & Failure Modes

  • False precision: Never present a single-point IRR. Always use ranges.
  • Ignoring capex: Always include a capex reserve in the NOI build-up.
  • Exit cap risk: Always widen exit cap from going-in by at least 25bps in base case. Cap compression as sole return driver is a bet on market timing.
  • No clear PASS threshold: The verdict must be binary (KEEP/KILL). MAYBE maps to KEEP with conditions.
  • Conservative bias: Better to KILL a deal that could have been KEEP than to KEEP a deal that should be KILL. False negatives are cheaper than false positives at screening.

Chain Notes

  • Upstream: None. This is the entry point for new deal flow.
  • Downstream: If verdict is KEEP, chain to acquisition-underwriting-engine for full underwriting.
  • Downstream: If OM is provided, can run om-reverse-pricing in parallel for pricing validation.
  • Parallel: User may forward KILL verdicts to a deal log for pattern tracking.

Computational Tools

This skill can use the following scripts for precise calculations:

  • scripts/calculators/quick_screen.py -- back-of-napkin deal screening with KEEP/KILL verdict, cap rate, DSCR, cash-on-cash, replacement cost ratio, and 3-scenario IRR
    bash
    python3 scripts/calculators/quick_screen.py --json '{"purchase_price": 8500000, "noi": 510000, "units_or_sf": 48, "unit_type": "units", "market_rent_per_unit": 1350, "in_place_rent_per_unit": 1100, "loan_amount": 5525000, "rate": 0.065, "amort_years": 30, "replacement_cost_estimate": 10500000}'

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Deal Quick Screen AI skill do?

Fast go/no-go screening tool for inbound CRE deals. Takes a raw OM, broker email, or listing and returns a KEEP/KILL verdict with back-of-napkin returns, key assumptions, and a diligence checklist. Triggers on 'quick screen this deal', 'should I look at this?', or any new deal flow needing triage.

Why use Deal Quick Screen on TypingMind?

Because you install it once and use it with any model. Deal Quick Screen is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Deal Quick Screen in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/mariourquia/cre-skills-plugin/tree/main/src/skills/deal-quick-screen. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Deal Quick Screen?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Deal Quick Screen?

As many as you like. As long as a model supports skills, you can use Deal Quick Screen with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Deal Quick Screen AI skill free?

It is published on GitHub by mariourquia. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇