Claude Skill

personal-cfo

When you want to model personal financial scenarios — house purchase + rental income (ADU, bedroom rentals, house-hacking), renovation budgets, monthly cash flow forecasts, big-purchase decisions, savings/investment what-ifs. For personal life: a household (you + partner), househ

LLM Mart · 0 points · 6 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download coreyhaines31-makerskills-skills_personal-cfo-1868b81.zip · 9 KB
Part of coreyhaines31/makerskills — 18 skills

Install

skills CLI npx skills add https://github.com/coreyhaines31/makerskills/tree/main/skills/personal-cfo
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install coreyhaines31-makerskills@llmmart
Git git clone https://github.com/coreyhaines31/makerskills.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole coreyhaines31/makerskills collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

/personal-cfo — Personal financial scenario modeling

This skill is for a household (you + partner): housing decisions, monthly cash flow, big purchases, scenario what-ifs. Pair it with a business-books CFO skill if you also run one for a company — the DNA is the same, the domain is different.

Step 1 — Pick the scenario type

Invocation Type What it models
/personal-cfo house (default for now) house Buy a house + rental income scenarios (ADU / bedrooms / combinations) + renovations + monthly cash flow
/personal-cfo refi refi Refinancing scenarios
/personal-cfo cash-flow cash-flow Generic monthly cash flow (income, expenses, savings rate)
/personal-cfo big-purchase big-purchase Should we buy X (car, education, equipment) — cash vs finance vs lease comparisons
/personal-cfo side-income side-income Adding a side income stream — break-even, tax implications
/personal-cfo savings-what-if savings-what-if What if we put $X into Y for N years — index funds, real estate, etc.

For v0.1, only the house template is fleshed out. Others are sketched in references/templates/ as stubs.

Step 2 — Gather inputs

Ask in a structured batch. For house mode, see references/templates/house.md for the full input questionnaire. Core fields:

Property

  • Purchase price
  • Down payment (% or $)
  • Mortgage rate + term (years)
  • Property taxes (annual)
  • HOA (monthly, if any)
  • Homeowner's insurance (monthly)
  • Closing costs (estimate)

Renovations / repairs

  • Day-1 renovations (line items with estimates — kitchen, bath, ADU buildout, etc.)
  • Year-1 expected repairs
  • Annual maintenance budget (rule of thumb: 1% of purchase price)

Rental scenarios (for the house mode)

  • ADU monthly rent estimate + vacancy assumption (typical: 5–8%)
  • Bedroom 1 monthly rent + vacancy
  • Bedroom 2 monthly rent + vacancy
  • Utilities split assumption (who pays what)
  • Property management cost (if not self-managing)

Personal

  • Current monthly housing cost (rent or current mortgage)
  • Combined household income
  • Marginal tax bracket (for mortgage interest + rental income calcs)
  • Time horizon for the analysis (typical: 5 yr, 10 yr, 30 yr)

If anything's fuzzy, ask. Don't proceed with placeholder numbers — financial models with wrong inputs are dangerous.

Step 3 — Build the scenarios

For the house mode, default scenarios to compare:

Scenario Description
Baseline Own + live in, no rental income
A: ADU only Rent the ADU, live in main house
B: 1 bedroom only House-hack 1 bedroom, keep ADU empty (or for guests)
C: 2 bedrooms only House-hack 2 bedrooms, ADU empty
D: ADU + 1 bedroom Both ADU and 1 bedroom rented
E: ADU + 2 bedrooms Maximum rental
F: ADU + bedrooms (year 2+) Year 1: just ADU while renovating. Year 2+: add bedrooms after partner's comfort

Let the user customize the scenario list — every house is different.

Step 4 — Run the math

For each scenario, calculate:

Monthly

  • Mortgage payment (P&I) — see references/calculators.md for the formula
    • Property tax / 12
    • HOA + Insurance + Utilities (owner-paid portion)
  • − Gross rental income (rooms + ADU)
  • × (1 − vacancy rate) for effective rental income
  • − Property management fee (if applicable)
  • = Net monthly housing cost (negative = positive cash flow)

Annual

  • Sum of 12 months
    • One-time renovation costs (amortized over time horizon)
  • − Tax savings (mortgage interest deduction + depreciation on rented portion)

Long-term

  • Equity build-up (mortgage paydown + appreciation assumption — default 3%/yr)
  • Total cost of ownership at year 5 / 10 / 30
  • Return on cash invested vs. alternative (e.g., S&P 500 at 7% real return)

Step 5 — Output the comparison table

Output to ~/Documents/personal-cfo/<scenario-slug>-<YYYY-MM-DD>/:

  • inputs.yaml — all the input numbers (so the analysis is rerunnable + auditable)
  • report.md — the full analysis with assumptions called out
  • comparison.md — side-by-side scenario table (the headline output)

comparison.md template

# <Property nickname> — scenario comparison

**Date:** YYYY-MM-DD
**Property:** <address or nickname>
**Time horizon:** 10 years
**Key assumptions:** 3%/yr appreciation, 7% S&P alt return, 6% vacancy

| Scenario | Net monthly cost | Annual cost | 10-yr total | Equity @ 10yr | Notes |
|---|---:|---:|---:|---:|---|
| Baseline | $X,XXX | $XX,XXX | $XXX,XXX | $XXX,XXX | No rental income |
| A: ADU | $X,XXX | $XX,XXX | $XXX,XXX | $XXX,XXX | $X,XXX/mo ADU rent |
| B: 1 BR | … | … | … | … | … |
| C: 2 BR | … | … | … | … | … |
| D: ADU + 1 BR | … | … | … | … | … |
| E: ADU + 2 BR | … | … | … | … | … |

## Headline takeaway
<1–2 sentences: which scenario wins on cash flow, which wins on lifestyle, where the inflection points are>

## Sensitivity analysis
- If rates rise 1%: <impact>
- If ADU rent comes in 20% lower: <impact>
- If renovations overrun 30%: <impact>
- If vacancy doubles to 12%: <impact>

## Open questions
- <what would change the recommendation>
- <what to research next — composes with /deep-research>

Step 6 — Archive

Save the scenario folder so future revisits work. The archive index lives in ${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/personal-cfo/archive/ (create the directory if missing). Never write archives inside the skill's own folder — skill installs and upgrades re-sync from source and wipe anything saved there. Migration: if this skill's folder contains an old references/scenarios-archive/ with user entries, move those files into the archive directory first.

Append a one-liner to <archive dir>/INDEX.md (create if missing):

- 2026-06-26 — [<property nickname>](~/Documents/personal-cfo/<slug>-2026-06-26/) — <type> — <headline takeaway>

This compounds — when you're considering Property #2 a year later, you can reuse the model and grep past analyses for patterns.

Step 7 — Surface + offer follow-ups

  • Show the comparison table in chat
  • Tell the user the workdir path
  • Offer:
    • "Want to run /deep-research on rental comps for the area to firm up the ADU and bedroom rent assumptions?"
    • "Want to formalize the buy/don't-buy decision through /decide once the scenarios land?"
    • "Want to capture this analysis to second-brain raw/ as note-house-<slug>.md?"
    • "Want me to revisit in 30 days as more info comes in (loan rate locked, inspection done, etc.)?"

Composes with

  • decide — once scenarios are modeled, the buy / don't / negotiate decision goes through /decide. Cash flow analysis is input, not the decision itself.
  • deep-research — for inputs that need market data: rental comps, mortgage rate trends, neighborhood trajectory, school ratings, comparable sales.
  • business-brainstorm — if the scenario tips into "this is a business" (e.g., short-term rental, multi-unit purchase, scaling to N properties), route there to pressure-test the business angle.
  • second-brain — capture analyses to raw/note-house-<slug>.md so they live in the personal wiki and can be referenced later.

Notes on quality

  • Conservative assumptions by default. Default to higher vacancy (8% not 5%), lower appreciation (3% not 6%), 20% buffer on renovation estimates. Real estate optimism is the most reliable way to lose money.
  • Surface the sensitivity, not just the point estimate. A scenario that's positive only if everything goes right isn't actually positive.
  • Lifestyle is a real variable. "Living with 2 roommates" can be financially optimal AND a quality-of-life disaster. Note these tradeoffs in the report, even if they aren't quantified.
  • Tax calcs are starting points, not authoritative. This skill estimates; an accountant verifies. Flag this in the report.
  • The decision isn't here — the inputs to the decision are. This skill produces the model. /decide makes the call.

Future templates (sketched in references/templates/)

  • refi.md — refinance scenarios
  • cash-flow.md — generic monthly budget
  • big-purchase.md — cash vs finance vs lease for big-ticket items
  • side-income.md — adding a side income stream
  • savings-what-if.md — investment what-ifs

v0.1 ships only house.md fleshed out. Add others when the use case is real.

Files (makerskills)
  • references
    • templates
      • house.md 5.7 KB
        # House template — full input questionnaire
        
        For `/personal-cfo house` mode. Walk the user through this in a structured batch (one message, numbered questions). Don't proceed with placeholder numbers — bad inputs → dangerous output.
        
        ## Property fundamentals
        
        1. **Property nickname** (for filing — e.g., "Elm Street," "the white one")
        2. **Address** (for the record — optional)
        3. **Purchase price** ($)
        4. **Estimated closing costs** (% of purchase, typical: 2–5%. If unknown, use 3% as a placeholder + flag for verification)
        5. **Down payment** (% or $ — confirm which)
        
        ## Financing
        
        6. **Mortgage rate** (interest rate, %, fixed or ARM — note which)
        7. **Mortgage term** (years — typical: 30, sometimes 15)
        8. **PMI** (does down payment trigger PMI? typically yes if <20%. Estimate $50–$200/mo if applicable.)
        9. **Loan type** (conventional / FHA / VA / jumbo — affects insurance + qualification)
        
        ## Holding costs
        
        10. **Property taxes** (annual $ — usually 1–2% of value but varies wildly by state/county. Get exact from listing or assessor.)
        11. **Homeowner's insurance** (annual $ — typical: $1,200–$3,000)
        12. **HOA fees** (monthly $, if any)
        13. **Utilities estimate** (monthly $ — electric + water + gas + sewer + trash, owner portion if renting rooms)
        14. **Lawn / pest / pool / other recurring** (monthly $)
        
        ## Renovations (one-time, day 1)
        
        15. **List of planned renovations** with line items. Common categories:
            - Kitchen: $X
            - Bathroom(s): $X each
            - Flooring: $X
            - Paint: $X
            - ADU buildout / refresh: $X
            - Roof / HVAC if needed: $X
            - Landscaping: $X
            - Permits / contractor markup buffer: add 15–25% on top of line-item subtotal
        16. **Timeline** (months to complete — affects whether Year 1 income includes ADU)
        
        ## Ongoing maintenance
        
        17. **Year-1 expected repairs** ($ — inspection report informs this; older properties higher)
        18. **Annual maintenance budget** ($ — rule of thumb: 1% of purchase price per year)
        
        ## Rental scenarios
        
        For each potential rental unit:
        
        ### ADU
        19. **ADU monthly rent estimate** ($ — verify against local comps)
        20. **ADU ready when?** (immediately / after X months of renovation)
        21. **ADU utilities** (owner pays / tenant pays / split — affects net cash flow)
        22. **ADU vacancy assumption** (typical: 5–10% — higher for short-term)
        23. **Short-term vs long-term**? (STR has higher gross but higher costs + management overhead)
        
        ### Bedroom 1 (house-hack)
        24. **Bedroom 1 monthly rent** ($)
        25. **Vacancy assumption** (higher than ADU usually — typical 10–15% for room rentals)
        26. **Includes utilities?** (usually yes for room rentals)
        
        ### Bedroom 2 (if applicable)
        27–29. Same as Bedroom 1
        
        ### Property management
        30. **Self-manage or property manager?** PM typically 8–12% of rent collected. STR can be 20–30%.
        
        ## Tax
        
        31. **Combined household marginal tax bracket** (federal % — affects mortgage interest deduction value)
        32. **State** (for state income tax + property tax deduction cap awareness)
        33. **Filing status** (married joint / single — affects SALT cap, standard deduction)
        
        ## Personal context (for comparison)
        
        34. **Current monthly housing cost** (rent or mortgage on existing place — this is the baseline)
        35. **Combined household income** (for affordability + ratio sanity checks)
        36. **Cash on hand for down + closing + reserves** ($ — should have 6 months reserves after closing)
        37. **Time horizon** for the analysis (default: 10 years; also model 5 and 30)
        
        ## Lifestyle (qualitative — not in the math, but in the report)
        
        38. **Comfort level with roommates** (partner / spouse especially — this is a real variable in shared-living scenarios)
        39. **Distance / commute from this property** (vs. current)
        40. **Schools / future kids planning** (affects neighborhood weighting)
        41. **Exit plan** (how long do you plan to live here? sell when? rent out fully later?)
        
        ---
        
        ## After gathering
        
        Output an `inputs.yaml` so the analysis is rerunnable:
        
        ```yaml
        property:
          nickname: "Elm Street"
          purchase_price: 850000
          down_payment_pct: 20
          closing_costs_pct: 3
        financing:
          rate_pct: 6.5
          term_years: 30
          pmi_monthly: 0
        holding:
          property_tax_annual: 12000
          insurance_annual: 1800
          hoa_monthly: 0
          utilities_owner_monthly: 250
        renovations:
          - { item: "Kitchen refresh", cost: 25000 }
          - { item: "ADU buildout", cost: 65000 }
          - { item: "Buffer (20%)", cost: 18000 }
          timeline_months: 4
        maintenance:
          year_1_repairs: 8000
          annual_pct_of_price: 1.0
        rental:
          adu:
            monthly_rent: 2200
            ready_month: 5   # available starting month 5
            utilities: "tenant pays"
            vacancy_pct: 6
          bedroom_1:
            monthly_rent: 1100
            vacancy_pct: 12
            includes_utilities: true
          bedroom_2:
            monthly_rent: 1100
            vacancy_pct: 12
            includes_utilities: true
          property_management_pct: 0   # self-manage
        tax:
          federal_marginal_pct: 32
          state: "CA"
          filing: "married_joint"
        personal:
          current_housing_monthly: 3500
          household_income: 350000
          cash_for_close: 220000
          time_horizon_years: 10
        lifestyle:
          roommate_comfort: "open to ADU; not comfortable with bedroom rentals year 1"
          commute_minutes: 25
          exit_plan: "live in 5–10 yr, then full STR rental"
        ```
        
        This file lives in the workdir and is the source of truth. The `report.md` and `comparison.md` are generated from it.
        
        ## When inputs are incomplete
        
        Don't fake numbers. Mark missing as `null` and flag at the top of the report:
        
        ```markdown
        > ⚠️ Inputs incomplete. The following used placeholders or estimates — verify before acting:
        > - `closing_costs_pct`: 3% (typical, not verified for this property)
        > - `adu.monthly_rent`: $2,200 (estimate, verify via Zillow/Craigslist comps via /deep-research)
        > - `tax.federal_marginal_pct`: 32% (estimated from income; verify with last year's return)
        ```
        
    • calculators.md 5 KB
      # Calculators — formulas this skill uses
      
      All formulas are documented inline so the math is auditable. Round to whole dollars in output; carry full precision internally.
      
      ## Mortgage monthly payment (P&I)
      
      Standard amortization formula:
      
      ```
      M = P × [r(1+r)^n] / [(1+r)^n − 1]
      ```
      
      Where:
      - `M` = monthly P&I payment
      - `P` = principal (loan amount = purchase price − down payment)
      - `r` = monthly interest rate (annual rate / 12, as decimal)
      - `n` = total number of payments (years × 12)
      
      **Example** — $680K loan at 6.5% for 30 years:
      - `P = 680000`
      - `r = 0.065 / 12 = 0.005417`
      - `n = 360`
      - `M = 680000 × (0.005417 × 1.005417^360) / (1.005417^360 − 1) ≈ $4,298/mo`
      
      Add property tax (annual / 12), insurance (annual / 12), and HOA on top for **PITI** (Principal + Interest + Tax + Insurance).
      
      ## Effective rental income (vacancy-adjusted)
      
      ```
      Effective monthly rent = Gross monthly rent × (1 − vacancy_rate)
      ```
      
      If property management:
      ```
      Net monthly rent = Effective × (1 − pm_fee_pct)
      ```
      
      ## Net monthly housing cost (per scenario)
      
      ```
      Net monthly = PITI
                  + utilities (owner-paid portion)
                  + HOA
                  + monthly_maintenance_reserve  (annual maintenance / 12)
                  − net_monthly_rent (all units, summed)
      ```
      
      Negative result = positive cash flow.
      
      ## Renovation amortization
      
      For comparison purposes, amortize one-time renovation costs over the time horizon:
      
      ```
      Monthly renovation amortization = total_renovation_cost / (time_horizon_years × 12)
      ```
      
      This converts a $108K upfront cost into a comparable monthly figure (over 10 years, that's $900/mo of "renovation rent").
      
      Don't conflate with mortgage — renovations are paid in cash (or via a renovation loan, which adds a separate payment).
      
      ## Mortgage interest deduction value
      
      ```
      Annual interest paid year 1 ≈ P × r  (rough — actually slightly less due to amortization)
                                    ≈ $680K × 6.5% = $44,200 first-year interest
      
      Deduction value = annual_interest × marginal_federal_tax_rate
                      ≈ $44,200 × 0.32 = $14,144/year of tax savings
      ```
      
      **Caveats:**
      - Only valid if itemizing exceeds standard deduction
      - 2017 TCJA capped mortgage interest deduction to first $750K of debt
      - SALT cap ($10K) limits property tax deduction
      - These rules expire 2025 — verify current law before acting
      
      ## Depreciation (for rented portion of the property)
      
      If renting part of the property (ADU, bedrooms), the rented square footage's portion of the building basis depreciates over 27.5 years.
      
      ```
      Building basis = purchase_price − land_value  (land doesn't depreciate)
      Rented fraction = sq_ft_rented / total_sq_ft
      Annual depreciation = (building_basis × rented_fraction) / 27.5
      ```
      
      This depreciation is deducted against rental income — can produce paper losses that offset other income (up to $25K for active management, phased out above $100K AGI).
      
      **Caveat**: depreciation recapture at sale at 25% — not free money, just deferred.
      
      This is the messiest part of the math. Default to surfacing it as an estimate and flagging "verify with accountant."
      
      ## Cap rate (return on investment, simplified)
      
      ```
      Cap rate = (Net annual operating income) / (Purchase price + closing + renovations)
      ```
      
      Where NOI = rent collected − all operating expenses (not including mortgage P&I).
      
      **Rule of thumb**: ≥8% cap rate is good for residential. <4% means you're betting on appreciation, not income.
      
      ## Cash-on-cash return
      
      ```
      Cash-on-cash = (Annual pre-tax cash flow) / (Total cash invested)
      ```
      
      Where cash invested = down payment + closing + renovations + reserves.
      
      A house-hack where you live in a unit + rent others: cash-on-cash often higher than pure investment property because you also save on rent you'd otherwise pay.
      
      ## Equity build-up (over time horizon)
      
      Two components:
      
      ```
      Equity year N = Mortgage paydown by year N + Appreciation by year N
                    = (P − remaining_balance_year_N) + P × (1 + appreciation_rate)^N − P
      ```
      
      Default appreciation: 3%/yr (conservative; long-run US average is closer to 3.5–4% nominal).
      
      ## Opportunity cost (vs S&P alternative)
      
      ```
      Alternative wealth at year N = cash_invested × (1 + 0.07)^N
                                    (using 7% real return — long-run S&P average)
      ```
      
      Compare to equity build-up + cash flow to see net financial benefit of the property.
      
      This is the most important number for "should we buy at all" decisions. If the property barely beats S&P + 7%, the lifestyle benefits matter more than the financial ones.
      
      ## Sensitivity analysis variables
      
      For each scenario, surface what happens if:
      
      | Variable | Stress |
      |---|---|
      | Mortgage rate | +1%, +2% (refi-from-current implications) |
      | ADU rent | −10%, −20% (market softens) |
      | Vacancy | 2× baseline (long vacancy after tenant leaves) |
      | Renovation cost | +30% (overruns are the norm) |
      | Appreciation | 0%, −2% (flat or declining market) |
      | Maintenance | 2% of price/yr (older property) |
      
      Surface the 3 variables the scenario is most sensitive to — these are the ones that flip the decision.
      
  • SKILL.md 9.6 KB
    ---
    name: personal-cfo
    description: "When you want to model personal financial scenarios — house purchase + rental income (ADU, bedroom rentals, house-hacking), renovation budgets, monthly cash flow forecasts, big-purchase decisions, savings/investment what-ifs. For personal life: a household (you + partner), household budgets, real-estate decisions. v0.1 ships with the house scenario template (purchase + rental scenarios) as the first use case. Architected so other personal-finance scenarios (refi, car, education, retirement, side income) slot in as additional templates. Outputs scenario comparison tables in markdown. Saves every scenario to ~/Documents/personal-cfo/ with an index at ~/.config/makerskills/personal-cfo/archive/ for revisit + comparison. Composes with decide (formalize the call after modeling), deep-research (rental comps, mortgage rates, market data), business-brainstorm (when the scenario is a small business / side hustle), second-brain (capture the analysis to outputs/). Triggers on \"/personal-cfo,\" \"model this scenario,\" \"house math,\" \"rental forecast,\" \"monthly cash flow,\" \"what if I rent out the ADU,\" \"compare these housing scenarios,\" \"should we buy this house,\" \"house-hack math,\" \"renovation budget.\""
    metadata:
      version: 0.2.0
    ---
    
    # /personal-cfo — Personal financial scenario modeling
    
    This skill is for a household (you + partner): housing decisions, monthly cash flow, big purchases, scenario what-ifs. Pair it with a business-books CFO skill if you also run one for a company — the DNA is the same, the domain is different.
    
    ## Step 1 — Pick the scenario type
    
    | Invocation | Type | What it models |
    |---|---|---|
    | `/personal-cfo house` (default for now) | **house** | Buy a house + rental income scenarios (ADU / bedrooms / combinations) + renovations + monthly cash flow |
    | `/personal-cfo refi` | **refi** | Refinancing scenarios |
    | `/personal-cfo cash-flow` | **cash-flow** | Generic monthly cash flow (income, expenses, savings rate) |
    | `/personal-cfo big-purchase` | **big-purchase** | Should we buy X (car, education, equipment) — cash vs finance vs lease comparisons |
    | `/personal-cfo side-income` | **side-income** | Adding a side income stream — break-even, tax implications |
    | `/personal-cfo savings-what-if` | **savings-what-if** | What if we put $X into Y for N years — index funds, real estate, etc. |
    
    For v0.1, only the **house** template is fleshed out. Others are sketched in `references/templates/` as stubs.
    
    ## Step 2 — Gather inputs
    
    Ask in a structured batch. For house mode, see `references/templates/house.md` for the full input questionnaire. Core fields:
    
    **Property**
    - Purchase price
    - Down payment (% or $)
    - Mortgage rate + term (years)
    - Property taxes (annual)
    - HOA (monthly, if any)
    - Homeowner's insurance (monthly)
    - Closing costs (estimate)
    
    **Renovations / repairs**
    - Day-1 renovations (line items with estimates — kitchen, bath, ADU buildout, etc.)
    - Year-1 expected repairs
    - Annual maintenance budget (rule of thumb: 1% of purchase price)
    
    **Rental scenarios** (for the house mode)
    - ADU monthly rent estimate + vacancy assumption (typical: 5–8%)
    - Bedroom 1 monthly rent + vacancy
    - Bedroom 2 monthly rent + vacancy
    - Utilities split assumption (who pays what)
    - Property management cost (if not self-managing)
    
    **Personal**
    - Current monthly housing cost (rent or current mortgage)
    - Combined household income
    - Marginal tax bracket (for mortgage interest + rental income calcs)
    - Time horizon for the analysis (typical: 5 yr, 10 yr, 30 yr)
    
    If anything's fuzzy, ask. Don't proceed with placeholder numbers — financial models with wrong inputs are dangerous.
    
    ## Step 3 — Build the scenarios
    
    For the house mode, default scenarios to compare:
    
    | Scenario | Description |
    |---|---|
    | **Baseline** | Own + live in, no rental income |
    | **A: ADU only** | Rent the ADU, live in main house |
    | **B: 1 bedroom only** | House-hack 1 bedroom, keep ADU empty (or for guests) |
    | **C: 2 bedrooms only** | House-hack 2 bedrooms, ADU empty |
    | **D: ADU + 1 bedroom** | Both ADU and 1 bedroom rented |
    | **E: ADU + 2 bedrooms** | Maximum rental |
    | **F: ADU + bedrooms (year 2+)** | Year 1: just ADU while renovating. Year 2+: add bedrooms after partner's comfort |
    
    Let the user customize the scenario list — every house is different.
    
    ## Step 4 — Run the math
    
    For each scenario, calculate:
    
    **Monthly**
    - Mortgage payment (P&I) — see `references/calculators.md` for the formula
    - + Property tax / 12
    - + HOA + Insurance + Utilities (owner-paid portion)
    - − Gross rental income (rooms + ADU)
    - × (1 − vacancy rate) for effective rental income
    - − Property management fee (if applicable)
    - = **Net monthly housing cost** (negative = positive cash flow)
    
    **Annual**
    - Sum of 12 months
    - + One-time renovation costs (amortized over time horizon)
    - − Tax savings (mortgage interest deduction + depreciation on rented portion)
    
    **Long-term**
    - Equity build-up (mortgage paydown + appreciation assumption — default 3%/yr)
    - Total cost of ownership at year 5 / 10 / 30
    - Return on cash invested vs. alternative (e.g., S&P 500 at 7% real return)
    
    ## Step 5 — Output the comparison table
    
    Output to `~/Documents/personal-cfo/<scenario-slug>-<YYYY-MM-DD>/`:
    - `inputs.yaml` — all the input numbers (so the analysis is rerunnable + auditable)
    - `report.md` — the full analysis with assumptions called out
    - `comparison.md` — side-by-side scenario table (the headline output)
    
    ### `comparison.md` template
    
    ```markdown
    # <Property nickname> — scenario comparison
    
    **Date:** YYYY-MM-DD
    **Property:** <address or nickname>
    **Time horizon:** 10 years
    **Key assumptions:** 3%/yr appreciation, 7% S&P alt return, 6% vacancy
    
    | Scenario | Net monthly cost | Annual cost | 10-yr total | Equity @ 10yr | Notes |
    |---|---:|---:|---:|---:|---|
    | Baseline | $X,XXX | $XX,XXX | $XXX,XXX | $XXX,XXX | No rental income |
    | A: ADU | $X,XXX | $XX,XXX | $XXX,XXX | $XXX,XXX | $X,XXX/mo ADU rent |
    | B: 1 BR | … | … | … | … | … |
    | C: 2 BR | … | … | … | … | … |
    | D: ADU + 1 BR | … | … | … | … | … |
    | E: ADU + 2 BR | … | … | … | … | … |
    
    ## Headline takeaway
    <1–2 sentences: which scenario wins on cash flow, which wins on lifestyle, where the inflection points are>
    
    ## Sensitivity analysis
    - If rates rise 1%: <impact>
    - If ADU rent comes in 20% lower: <impact>
    - If renovations overrun 30%: <impact>
    - If vacancy doubles to 12%: <impact>
    
    ## Open questions
    - <what would change the recommendation>
    - <what to research next — composes with /deep-research>
    ```
    
    ## Step 6 — Archive
    
    Save the scenario folder so future revisits work. The archive index lives in `${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/personal-cfo/archive/` (create the directory if missing). Never write archives inside the skill's own folder — skill installs and upgrades re-sync from source and wipe anything saved there. **Migration:** if this skill's folder contains an old `references/scenarios-archive/` with user entries, move those files into the archive directory first.
    
    Append a one-liner to `<archive dir>/INDEX.md` (create if missing):
    
    ```markdown
    - 2026-06-26 — [<property nickname>](~/Documents/personal-cfo/<slug>-2026-06-26/) — <type> — <headline takeaway>
    ```
    
    This compounds — when you're considering Property #2 a year later, you can reuse the model and grep past analyses for patterns.
    
    ## Step 7 — Surface + offer follow-ups
    
    - Show the comparison table in chat
    - Tell the user the workdir path
    - Offer:
      - *"Want to run `/deep-research` on rental comps for the area to firm up the ADU and bedroom rent assumptions?"*
      - *"Want to formalize the buy/don't-buy decision through `/decide` once the scenarios land?"*
      - *"Want to capture this analysis to `second-brain raw/` as `note-house-<slug>.md`?"*
      - *"Want me to revisit in 30 days as more info comes in (loan rate locked, inspection done, etc.)?"*
    
    ## Composes with
    
    - **`decide`** — once scenarios are modeled, the buy / don't / negotiate decision goes through `/decide`. Cash flow analysis is input, not the decision itself.
    - **`deep-research`** — for inputs that need market data: rental comps, mortgage rate trends, neighborhood trajectory, school ratings, comparable sales.
    - **`business-brainstorm`** — if the scenario tips into "this is a business" (e.g., short-term rental, multi-unit purchase, scaling to N properties), route there to pressure-test the business angle.
    - **`second-brain`** — capture analyses to `raw/note-house-<slug>.md` so they live in the personal wiki and can be referenced later.
    
    ## Notes on quality
    
    - **Conservative assumptions by default.** Default to higher vacancy (8% not 5%), lower appreciation (3% not 6%), 20% buffer on renovation estimates. Real estate optimism is the most reliable way to lose money.
    - **Surface the sensitivity, not just the point estimate.** A scenario that's positive only if everything goes right isn't actually positive.
    - **Lifestyle is a real variable.** "Living with 2 roommates" can be financially optimal AND a quality-of-life disaster. Note these tradeoffs in the report, even if they aren't quantified.
    - **Tax calcs are starting points, not authoritative.** This skill estimates; an accountant verifies. Flag this in the report.
    - **The decision isn't here — the inputs to the decision are.** This skill produces the model. `/decide` makes the call.
    
    ## Future templates (sketched in references/templates/)
    
    - `refi.md` — refinance scenarios
    - `cash-flow.md` — generic monthly budget
    - `big-purchase.md` — cash vs finance vs lease for big-ticket items
    - `side-income.md` — adding a side income stream
    - `savings-what-if.md` — investment what-ifs
    
    v0.1 ships only `house.md` fleshed out. Add others when the use case is real.
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related