Skip to content
All free classes

Free class · Content · 42:36

Real estate content in your voice: How do I make ChatGPT write in my voice as a real estate agent?

Write down how you sound once, in a short plain-text file called a Context Card, and add cards for your client and the deal. Load the cards the job needs into ChatGPT, ask for the piece, then check the facts and fix the card wherever it doesn't sound like you.

Flip through the slides.

All 34 slides in class order. The tabs jump to each chapter. Click the frame and the arrow keys move.

Content Creation Machine. INNOVATION LAB · COMPASS LAKESIDE · APR 28, 2026

1 / 34Content Creation Machine

Read all 34 slides as text
  1. 1 Content Creation Machine

    AI Acceleration · Real Estate · INNOVATION LAB · COMPASS LAKESIDE · APR 28, 2026 · Build the system that writes every listing, post, and email — in your voice, for the rest of your career. · Presented by Build Things That Build Things

  2. 2 Run this loop right and you can stop coming to AI classes. Please don't.

    Pattern matching — train the eye for where AI fits. · Context cards — HOME, CLIENT, SELF. The three cards. · Research the output — decide what good looks like first. · Output context card — tell AI what 'good' is for THIS deliverable. · Write the prompt — brief, don't ask. Pull the cards in. · Put it in one place — one workspace, one machine, repeatable. · Generate the piece — listing copy, social, blog. Live. · Iterate forward — first draft is never the last. Push it sharper. · By 11:00 AM you'll have run this loop once unaided.

  3. 3 Pattern Matching

    AI Acceleration · Real Estate · META SKILLS · CLASS 01 · I'm still finding places to apply AI. If I'm still finding them, you definitely are. · Presented by Build Things That Build Things

  4. 4 The Frame

    "AI isn't a tool for one job. It's universal intelligence. The bottleneck is your pattern matching." · Most agents pick AI up for one task — listing descriptions, or email replies, or a market update — and then put it back down. They treat it like a calculator. It's not a calculator. It's a thinking partner that works on every function in your business, the same way, with the same moves. The reason it isn't already running ten parts of your day is not that AI can't do it. It's that you haven't seen the pattern yet.

  5. 5 The Scaffold

    OODA loop, with first principles in the Orient step. · Observe what's actually happening — pull the data, the conversation, the deal sheet. Orient with first principles — strip the situation down to what is actually true, not what's habit. Decide where AI inserts — usually in Orient (compress days of analysis to minutes) or Act (draft the work). Then Act. Then loop. · Observe · Orient · Decide · Act · OBSERVE · See what's actually happening · Pull the data, the conversation, the deal sheet — not the story.

  6. 6 Why This Matters

    The room divides here. · Most people are using AI wrong and getting dumber from it. The students in this room are going to use it the other way. That's not a motivational line. That's a fork in the road. Six months from now, the agents who challenged the model and validated the outputs are going to look like a different species from the agents who just pasted questions and trusted answers. Pick the column you want to be in. Then run the rest of today like you mean it.

  7. 7 Bridge to the Build

    The Content Machine is one instance of the pattern. · What you're about to build today IS the pattern in action. We're going to build a content machine — three context cards, stacked, that generate any content you'll ever need in your voice. But the cards are not the point. The pattern is the point. Once you've built one, you can build the next ten for any other function in your business. Same move on ops. Same move on finance. Same move on the pipeline. The Content Machine is rep one.

  8. 8 The Bar

    "Walk out today able to look at any function and see the pattern." · Three cards. One stack. One brief. Run that loop on content today. Run it on the next function tomorrow. The content machine is the prop. The pattern matching is the skill. Let's build.

  9. 9 Now: OODA, Applied to YOUR Content

    AI Acceleration · Real Estate · OODA · APPLIED · Same loop. Different chair. We use it to pick what to build, build it, and sharpen it in real time. · Presented by Build Things That Build Things

  10. 10 Observe

    O · Pick the content outcome before you pick the prompt. · Observe — What are we even building? · Social post — short, voice-first, 1-2 hooks per piece. · Blog post — longer arc, education + SEO, 600-1200 words. · Website copy — durable, brand-anchored, slow to revise. · Listing description — fact-led, MLS-bounded, sells the home. · Client email — relational, specific, signals you read the file. · Pick **one** today. Do it well. Add a second next week. Don't try to ship five outcomes from one prompt.

  11. 11 Orient

    O · You have a context card for YOU. The channel needs its own. · Orient — Build a context card for the channel · You already have a SELF card — voice, tone, things you don't say. · Each channel needs its own card — what 'good social' is ≠ what 'good listing copy' is. · The CHANNEL card answers: who reads this? What format constraints (length, hooks, CTA)? · Without it: AI defaults to the average of every blog post on the internet. · With it: AI writes for THIS channel, THIS audience. · We build the channel card together in the next 10 minutes.

  12. 12 Decide

    D · Pick whose voices AI should learn from. Then ask AI to PLAN, not produce. · Decide — Trust + research + plan · Pick 2-3 trusted influences — who writes the kind of {channel} you'd be proud to ship? · Have AI research them — read their last 10 pieces. What's the pattern? · Have AI lay out 3 plans for your specific piece — different angles, different hooks. · You decide which plan ships — AI plans, you pick. Don't outsource the call. · AI is your researcher and your strategist. The taste is yours.

  13. 13 Act

    A · Generate. Then loop. Hypothesize: prompt, or context card? · Act — Ship, observe, iterate · Generate the output — run the prompt with both cards loaded. · Read what you got — what's great? What's wrong? Be specific. · Hypothesize the cause — is it the prompt, or is it the context card? · Test ONE change — same prompt + edited card. Or edited prompt + same card. Never both. · Repeat — the loop is the work. The first draft is never the ship. · The agents who win this aren't the ones who write the best first prompt. They're the ones who run the loop the most times before lunch.

  14. 14 The Loop

    Same four phases. Zoom in on Act — that’s the iteration loop. · Inside the Act phase, every piece of content gets its own mini-loop: read what AI gave you, check it against the real client and the real channel, keep-edit-or-redo the parts that fail, then ship or run another pass. Most agents change five things at once and learn nothing. Run the loop one variable at a time and you'll out-ship every other agent in the room. · Observe · Orient · Decide · Act · OBSERVE · Read AI output · Read every line. What’s great? What’s wrong? Be specific.

  15. 15 Build Your Content Machine

    AI Acceleration · Real Estate · INNOVATION LAB · BUILD ALONG · APR 28 · Files in. Any content out. In your voice. Forever. · Presented by Build Things That Build Things

  16. 16 Plan Before You Touch AI

    This is where operators get made and prompt-typers stay stuck. · Two minutes. Pen on paper. Write the plan in YOUR words first: what am I building, what does done look like, what do I already know cold, what is the smallest version that ships today. THEN paste it into AI as a second pair of eyes. The agents pulling away write the plan first. The agents stuck typing prompts open the chat window first. Same minute. Different decade of results. AI lives in Orient and Act. Observe is yours. Always. Hand AI a brief. Never hand it a blank page.

  17. 17 The Files You Leave With

    Build them once. Use them forever. · self.md — who you are, how you write, your market, your non-negotiables. The card that makes every output sound like you. · persona.md — the audience you are writing FOR right now. Lakefront downsizer. Newsletter subscriber. Cold-email recipient. One file per audience. Most agents end up with three to five. · subject.md — the thing you are writing ABOUT. Listing. Market topic. Recipient profile. Listing event. Swap this file when the subject changes. · machine.md — the runner. Tells AI how to read the three above and produce the output format you picked. · Four files. One folder on your laptop. Every piece of content from now on stacks two or three of them and asks for the output.

  18. 18 Pick Your Content Medium

    One pick. Whatever you pick is what you build for the rest of class. · Listing description engine — MLS public + agent remarks for any active listing. · Social caption generator — captions in your voice, per channel (Instagram, Facebook, LinkedIn). · Email campaign machine — just-listed, price-drop, open-house, just-sold templates that read like you. · SMS sphere generator — three short variants under 160 characters for listing-day outreach. · Long-form blog writer — 800 to 1,000 word neighborhood and market posts. · Cold email sequence builder — three-touch sequences to a named recipient profile. · Short-form video script + thumbnail — 30 to 45 second hook, body, CTA, plus a thumbnail brief. · Newsletter assembler — monthly market update with three sections and a CTA. · Same four cards. Different output. Pick the one you would actually ship this week.

  19. 19 self.md

    1 · You. Your voice. Your fingerprints. The card that stops AI from sounding like a robot.

  20. 20 The Voice Extraction Prompt

    Run this now. Then we build self.md from the output. · Paste this into your AI tool. · Then paste THREE pieces of your own · writing below it. · --- · Analyze the writing style across these · 3 pieces of writing. Tell me: · 1. Typical sentence length and rhythm · 2. Signature phrases or openers I · actually use · 3. Words I lean on. Words I avoid. · 4. What makes this distinctly mine — · patterns I might not see myself · Be specific. Cite examples from the · text. I'll use this output to build · a voice card. · --- · [Paste Piece 1 — listing description] · --- · [Paste Piece 2 — past client email] · --- · [Paste Piece 3 — text to a client]

  21. 21 The Style-Match Test

    Did the file work? One prompt tells you. · Paste your finished self.md into a fresh AI chat. Then ask: "Using the voice card above, write a three-sentence Instagram caption for a Cage Bend lake listing." Read the output. If it sounds like you, the card works. If it sounds robotic, the card has too many generic bullets. Open the card, sharpen one tone bullet (make it more specific), and re-run. Iterate the FILE, never the prompt. The prompt is throwaway. The file compounds.

  22. 22 persona.md

    2 · The audience reading. Their world, their words, their worry. One file per audience.

  23. 23 Why This Card Stops Generic Output

    One subject. N personas. N pieces of content. · When you do not have a persona card, AI defaults to talking to a generic audience. Generic audience equals generic output. The moment you paste a real persona — with their actual fears and their actual vocabulary — the output gets specific. Same listing turns into five posts because you target five personas. Same market topic turns into a downsizer email AND a first-time-buyer newsletter AND a brokerage cold-outreach. One subject. N personas. N pieces of content. That is the multiplier.

  24. 24 subject.md

    3 · The thing you are writing about. Listing, topic, recipient, or event.

  25. 25 What Goes on subject.md

    Five sections. Four variants. Pick the variant that matches your medium. · Listing variant — address, beds/baths, hooks, neighborhood, story, do-not-say. (Use this if you picked listing engine, social caption, open-house, or listing video.) · Topic variant — topic name, key facts with sources, audience pain points, what to avoid. (Use this if you picked blog, newsletter, or market-update content.) · Recipient variant — recipient profile, business pain points, hook angle, ask, do-not-say. (Use this if you picked cold email sequence.) · Listing-event variant — what happened (just listed / price drop / open house / sold), the listing it points to, what to celebrate, what to soft-pedal. (Use this if you picked sphere SMS or email-campaign machine.) · Every variant has the same five-section shape: basics, hooks, context, story, do-not-say. The labels change. The discipline does not. If you do not know a fact, write [verify] and move on. AI sees the brackets and will not invent.

  26. 26 machine.md

    4 · The runner. Tells AI how to read the three cards and produce content in your chosen format.

  27. 27 machine.md — The Runner

    Copy · # machine.md — Content Output Machine · ## Role · You are a content production assistant for · a real estate operator. Always read the · attached self.md, persona.md, and subject.md · before writing anything. · ## Voice · Match self.md exactly. Use signature phrases · naturally. Never use anything from the · do-not-say list across any of the three cards. · ## Audience · Speak directly to the persona in persona.md. · Use their vocabulary. Match their stage. · ## Facts · Only use facts present in subject.md. If a · fact is marked [verify], write [VERIFY: <fact>] · in the output and move on. Never invent. · ## Output formats (pick the one you built for) · - listing_mls: 180 words max, no exclamation · - listing_caption_ig: 150 words, hook in line 1 · - email_just_listed: 200 words, subject + body, 1 CTA · - sms_sphere: 3 variants, under 160 chars, no links · - blog_neighborhood: 800-1000 words, H2 sections · - cold_email_3touch: 3 emails, <125 words each · - video_script_short: 30-45 sec, hook+body+CTA + thumbnail brief · - newsletter_monthly: 3 sections, 600 words total, 1 CTA · ## Compliance pass · Before returning output, scan against every · do-not-say in self.md and subject.md. · Replace any flagged phrases. · ## End every output with · [VERIFY] block listing every fact from · subject.md so the operator can confirm · before publishing.

  28. 28 The Stacking Move

    Two cards always. Add the others when the job needs them. · ALWAYS = machine.md + self.md. Every stack starts here. Machine tells AI how to read. Self makes the output sound like you. · + subject.md when you are writing ABOUT a specific thing. A listing. A market topic. A recipient. A listing event. The subject card swaps when the thing changes. · + persona.md when you are writing FOR a specific audience. A buyer profile. A subscriber. A cold-email recipient. The persona card swaps when the reader changes. · Both, when both matter — most content. Social caption for a listing aimed at downsizers = machine + self + subject(listing) + persona(downsizer). · Quick reference for the 8 mediums — Listing description: subject only. SMS sphere: subject (listing event) only. Social caption / Email campaign / Long-form blog / Cold email / Video script / Newsletter: subject + persona. · Two cards always. The other two when the job needs them. Pick the row that matches what you built. Stack the cards in that order. Type one sentence asking for the output. The stacking is the skill — the output is what falls out.

  29. 29 Ship One Piece — Right Now

    Pick your stack. Pick your output. Run it. · Step 1 — Open your AI tool in a fresh conversation. Clean slate. · Step 2 — Paste machine.md first. · Step 3 — Paste self.md. · Step 4 — Paste subject.md (and persona.md if your stack needs it). · Step 5 — Type one sentence: "Write [output format] for [audience or subject]." · Step 6 — Read the output. Run it against the do-not-say list. Spot-check the [VERIFY] block. Edit one or two lines. · Step 7 — Hit publish. Right now. In this room. Before the next slide.

  30. 30 What You Just Did

    Name it so it sticks. · You just built a content machine. From scratch. With four markdown files, a free AI tool, and the writing you already had. You did not buy software. You did not learn to code. You did not hire anyone. You wrote down what you already know and handed it to a model that is good at pattern matching. The machine is yours forever now. The next time you need any piece of content, you do not start from a blank prompt. You stack and ask.

  31. 31 When the Machine Gets It Wrong

    The fix is on the file. Always. · If the output sounds robotic — fix self.md. Add a signature phrase. Sharpen a tone bullet. If the output uses the wrong vocabulary — fix persona.md. Add the words your audience actually uses. If the output invents a fact — fix subject.md. Add the verified version. Mark the rest as [verify]. If the output uses banned phrases — add them to do-not-say in the right card. The discipline is: every correction goes on a file. Never on a prompt. The prompt is gone after this chat. The file is in your folder forever.

  32. 32 The Two Safety Rails

    Run these on every output before you publish. · Fair Housing pass — read the output for protected-class language. Family-coded, race-coded, religion-coded, age-coded. The do-not-say list catches most. Your eyes catch the rest. You are responsible. Always. · Fact verification — every number, every claim, every comparable sale named in the output. Cross-check against the MLS sheet, the disclosure, your direct observation. If it did not come from one of those, it does not go out. · These are not optional. AI does not understand consequences. You do. The machine is a draft generator. You are the publisher. Publishers carry liability.

  33. 33 Your 7-Day Plan

    TODAY · Save the four files to a folder called content-machine on your laptop. Email the folder to yourself as a backup. · TOMORROW · Run the machine on your next coming-soon listing or your next newsletter. Ship one piece. Anywhere. Just ship. · THIS WEEK · Build your second persona.md. Run the stack against an existing subject using the new persona. Compare to the first persona output. · DAY 7 · Open self.md. Add or remove two signatures based on what AI kept getting wrong. The card gets smarter forever.

  34. 34 The Pattern Is the Gift

    "The cards are the artifact. The pattern is the gift." · Four files today. Same four-file pattern on ops next week. On finance the week after. On the pipeline the week after that. Pattern Matching opened with this. Today was rep one — the first one of many.

Read and practice on this page. Everything on this page is free: the recording, the slides, the prompts, and the workbook. No account needed. The free portal account is for downloading the files.

Watch the build-along.

First the frame: why the same AI gives one agent generic copy and another agent copy that sounds like them. Then Ryan opens the class folder, explains the cards about you, your client and the deal, and the room starts uploading them.

The recording ends during that setup. Filling in the cards and writing the first piece are on this page.

42:36 · recorded live

Watch on YouTube

What the stack wrote

“Roof’s new. Fence is new. Walk the yard first, then we’ll argue about the kitchen.”

Illustrative output, not from the recording. The agent and every card here are fictional.

You leave with four cards like these, written in your own words, and a style-match test that checks whether yours sound like you.

From a blank card to your voice.

The method from class in 8 steps. Start with one kind of content and one card, then add the rest.

  1. Pick one kind of content first

    Choose the one thing you'd write this week, like an Instagram caption, a blog post or a client email. Get that one right before you add another. The cards you make for it carry over to the rest.

  2. Write a card about how you sound

    In a plain-text file, describe how your writing feels to read at your best, the way you'd describe a friend's style. Add phrases you really say and words you never use. No code needed.

  3. Let AI fill the card from your writing

    Paste the blank card into ChatGPT with three things you wrote, like a listing, a client email and a text. Ask it to fill in the card from them. Read every line and fix anything that isn't you.

  4. Add cards for the client and the deal

    Most of what agents write comes back to three things: you, your client and the deal. Give each one its own card. Then the same house can be written one way for a client who loves modern and another for one who loves antiques.

  5. Give each channel its own card

    A good Instagram caption isn't a good blog post. Keep a short card for each place you post: length, format and what reads well there. Load it next to your voice card so the piece fits the channel and still sounds like you.

  6. Load the cards, then ask for one piece

    For anything a client will see, open a fresh chat, add your voice card and the cards this job needs, and say in one sentence what you want. For a quick one-off, like tidying an email, just ask.

  7. Fix one thing at a time

    Ask: is this close enough to use? If not, say what's wrong and guess the cause: the ask, a card or a missing fact. Change one thing and run it again. When it's right, ask the AI what would get it in one try.

  8. Check every fact before it goes out

    AI can sound sure and still be wrong. Check each fact against the MLS, the seller or what you saw. If it cites a source, open the link. Read for Fair Housing problems yourself.

Use the class workbook · Get the supporting files

Read and work through the lesson here. Downloadable files use your free student account.

Clipped from the recording.

Ryan’s own words from class. Each time opens the recording at that moment. The recording ends while the room sets up the cards, so these are Ryan explaining the method, not a finished post.

  • Watch from 4:35

    “we spent a long time chatting to get this output. What would I need to do to get this output in one try, right?”

    When a draft finally comes out right, ask the AI what would get it there in one try, then test that in a fresh chat.

  • Watch from 5:23

    “But if you pull your context and you pull their specific context, and then you pull the house's context”

    Your card, the client's card and the house's card together let the AI write the same home one way for one client and another way for the next.

  • Watch from 6:10

    “they think, oh wow, this is how she would write it or how he would write it, right?”

    The test of your cards is whether the person reading the email recognizes it as yours.

  • Watch from 16:33

    “a context card for you guys. We're going to have a client context card for your clients. We're going to have a deal context card.”

    You start with three cards: one about you, one about your client and one about the deal.

  • Watch from 18:16

    “whatever it is that you want to do, we're going to build out one channel really well. And then we add the next one, right?”

    Get one kind of content working before you add the next, because the cards you build carry over.

  • Watch from 19:27

    “Each medium needs its own context card.”

    Your voice card says how you sound, and a separate card for each channel says what works there.

  • Watch from 24:49

    “it's one paragraph, no adjectives, describe how your writing feels to read when you're at your best.”

    The voice card opens with one plain paragraph on how your writing feels to read at your best.

  • Watch from 25:42

    “I'm looking for the person that most closely gets the outcome that I want.”

    For one kind of message, Ryan modeled his card on someone whose writing gets the result he wants, here warm replies to customers.

  • Watch from 28:09

    “is this what I want? Or rather, is this close enough to what I want that I can use it?”

    After each draft, you ask whether it's close enough to use, and if not, what to change.

  • Watch from 30:05

    “prompts are really good for one-off work. Um if you're just going into something and you just need an email rewritten”

    A quick one-off, like rewording an email, doesn't need your cards, but anything client-facing does.

  • Watch from 41:03

    “pushing them in and saying, “Fill these out for me, and make them uh true to my brand.””

    You don't fill the cards in by hand: you upload them and ask your AI to fill them in, true to your brand.

Where the voice slips.

What makes a draft sound like everyone else, or sound like you and still be wrong.

Calling yourself friendly and professional
That line fits every agent, so it gives the AI nothing to copy. Your own phrases, your rhythm and the words you never use are what make a draft sound like you.
Building every channel at once
Trying to do social posts, blogs, emails and listings on day one spreads you thin. Get one channel sounding right, then add the next. Most of what you built carries over.
Making the same fix in every chat
If you keep typing the same correction, it belongs on a card. A correction in one chat may not carry into another. Save it in an owned card and verify that the next task actually uses it.
Changing five things at once
When a draft misses, guess the one cause and change only that. Change the ask, the card and the facts all at once and you won't know which fix worked.
Trusting it because it sounds like you
Sounding like you isn't the same as being right. A draft in your voice can still invent a feature or a number, and your name is the one on it.
Putting private client details on a card
A client card is for what they want and how they like to hear from you. Leave off anything private you don't have their OK to use, and anything Fair Housing protects.

Write the four cards.

One folder on your laptop. Four plain-text markdown files, no code. Each card is the class template. A few lines were changed so no card asks about a reader’s age, family, income or schools. Anything in braces is a blank to fill in your own words.

The slides name the files. On the recording, Ryan names the cards by what they cover. Same jobs, two sets of names:

You
self.md
Your client or reader
persona.md
The deal or the home
subject.md
Each channel
machine.md and its format rules

self.md — your voice

Who you are, how you sound, the phrases you say (and never say). The voice card.

# self.md

## Who you are
- Name: {your full name}
- Years selling: {N}
- Market: {city, state}
- Specialty: {listings / buyers / luxury / first-time / investor / etc.}
- Brokerage: {brokerage name}

## How you sound
- Tone (3-5 contrast pairs): warm but not cheesy / direct but not blunt / confident but not arrogant
- Sentence rhythm: short. Then a longer one to land it. Then short again.
- Reading level: 7th grade. If a homebuyer can't read it, cut it.
- Personality tells: {dry humor / dad jokes / sports analogies / Southern hospitality / etc.}

## What you know cold
- {neighborhood 1}: {what makes it specific}
- {neighborhood 2}: {what makes it specific}
- {neighborhood 3}: {what makes it specific}
- {local rule or quirk}: {one detail nobody else mentions}
- {commute / drive time fact}: {specific minute count}

## Signature phrases
- "{phrase 1 you actually say}"
- "{phrase 2 you actually say}"
- "{phrase 3 you actually say}"
- "{phrase 4 you actually say}"
- "{phrase 5 you actually say}"

## Do not say
- 'Quaint', 'cozy', 'charming' (lazy)
- 'Dream home', 'forever home' (overused)
- 'Reach out', 'circle back', 'touch base' (corporate)
- '!' at the end of any sentence (tone)
- {your own banned list — anything that's not you}

## Writing samples (paste 3+ recent ones)
```
{paste a recent text you wrote — caption, email, or text}
```
```
{paste another}
```
```
{paste another}
```

Fill it from what you’ve already written.

Don’t describe your voice with adjectives. Show it. Paste this prompt with three things you wrote. Pick your normal Tuesday-morning writing, not your best work.

Analyze the writing style across these 3 pieces of writing. Tell me:

1. Typical sentence length and rhythm
2. Signature phrases or openers I actually use
3. Words I lean on. Words I avoid.
4. What makes this distinctly mine, including patterns I might not see myself

Be specific. Cite examples from the text. I'll use this output to build a voice card.

---
[Paste piece 1: a listing description you wrote]
---
[Paste piece 2: an email to a past client]
---
[Paste piece 3: a text to a client]

Then run the style-match test.

Paste your finished self.md into a fresh chat and ask for one short caption. If it sounds like you, the card works. If it sounds robotic, sharpen a tone bullet and run it again.

Using the voice card above, write a three-sentence Instagram caption for [one of your listings].

persona.md — who you're talking to

One persona per file. Build a second one once your first is shipping content that works.

# persona.md

## Who they are
- Name (composite, not real): {e.g. 'Move-Up Megan'}
- What they're shopping for: {e.g. first home / move-up / investment}
- Current home: {renting / own a home they'll sell / relocating for work}
- Price range: {what they told you or their pre-approval}
- Where they live now: {neighborhood / type of home}
- Where they want to live next: {neighborhood / type of home}

## What they want (ranked)
1. {top driver — e.g. 'shorter commute before fall']
2. {second driver — e.g. 'a home office with a door']
3. {third driver — e.g. 'a finished basement']
4. {fourth — e.g. 'walkable to coffee']
5. {fifth — e.g. 'good resale in 5 years']

## What they fear
- Buying high right before a correction
- Picking the wrong neighborhood for their commute
- Getting outbid 4 times in a row
- Their current house not selling
- Looking dumb in front of people they trust

## How they talk
- They use words like: {real phrases — 'commute', 'cul-de-sac', 'walkability'}
- They DON'T use words like: {realtor jargon — 'comps', 'DOM', 'closing costs'}
- Where they get info: {e.g. Zillow + Instagram + neighbor texts + Reddit}
- What they trust: {e.g. friends > reviews > realtor's word}

## Where they are in the journey
- Stage: {dreaming / shopping / under-contract / waiting / ready]
- Time horizon: {0-3mo / 3-6mo / 6-12mo / 12mo+}
- Money status: {pre-approved / not yet / cash}
- What's stopping them: {one specific blocker}

## Best message angles for THIS persona
- {angle 1 — 'neighborhood walk-throughs']
- {angle 2 — 'commute math, not opinions']
- {angle 3 — 'what to fix before you list']

Write to one reader, not a crowd.

Without a reader, AI writes to nobody. Give it what they want, what worries them, and the words they really use. Same house, two reader cards, two different pieces.

Leave age, family, income and schools off the card. Family status is protected under Fair Housing, and the copy doesn’t need the rest.

subject.md — the thing you're talking about

Four variants. Pick the one that matches what you're publishing — listing, topic, recipient, or event.

# subject.md

Four variants below. Use the one that matches your output. Keep facts sourced — every claim gets a [src: ...] tag or [verify] marker.

Only verified facts go on it.

Every fact comes from the MLS, the seller, public record, or what you saw yourself, tagged with its source. If you don’t know it, write [verify]. The brackets tell the AI not to guess and show you what to check. Then pick the variant for the job: a listing, a topic, a recipient, or a listing event.

Variant A — listing

# subject.md (listing variant)

## Address
{full street address, city, state, ZIP}

## Price
${list price} [src: MLS as of {date}]

## Specs
- Beds: {N}
- Baths: {N.5}
- SqFt: {N,NNN} [src: tax record / appraisal]
- Lot: {N.NN acres}
- Year built: {YYYY}
- HOA: {$/mo or 'none'}
- Taxes: {$/yr} [src: county tax record]

## What's true and verifiable
- {feature 1 — e.g. 'new roof 2023, transferable warranty'} [src: seller disclosure]
- {feature 2 — e.g. 'fenced yard backs to common space, no rear neighbors'} [src: site visit]
- {feature 3 — e.g. 'walking distance to {specific park}, 0.4 mi'} [src: Google Maps walking time]
- {feature 4 — e.g. 'kitchen renovated 2024, full receipts available'} [src: seller disclosure]

## Comparable context
- {similar address that sold}: ${price}, {beds/baths/sqft}, sold {date} [src: MLS]
- {similar address that sold}: ${price}, {beds/baths/sqft}, sold {date} [src: MLS]

## Things to verify or correct before posting
- [verify] {anything you weren't sure of}
- [verify] {anything else}

## DO NOT INVENT
- Square footage, lot size, year built, HOA fees — only use what's in the source files above.
- If you don't have a fact, write [verify] and stop. Never round up. Never guess.

Variant B — topic

# subject.md (topic variant)

## Topic
{e.g. '2026 spring market in {neighborhood}'}

## Why this matters NOW
{1-2 sentences on the timing peg — interest rate news, season, market shift}

## Sourced facts
- {stat 1} [src: {publication, date, URL}]
- {stat 2} [src: {publication, date, URL}]
- {stat 3} [src: {publication, date, URL}]
- {stat 4} [src: {publication, date, URL}]

## Direct observations (yours)
- {what you saw at open houses last week}
- {what buyers told you in the last 7 days}
- {what sellers asked you in the last 7 days}

## Counter-takes
- {what other realtors are saying that's wrong or oversimplified}
- {what the public mostly believes that doesn't match the data}

## Things to verify or correct
- [verify] {anything still unsourced}

## DO NOT INVENT
- Stats. Comps. Quotes from people who didn't say them. If a number isn't sourced, leave it out.

Variant C — recipient

# subject.md (recipient variant — for cold email)

## Recipient
- Name: {full name}
- Role: {e.g. broker / sphere contact / lender / past client}
- Where you got their info: {referral / event / public list}
- Last touchpoint: {date + what happened, or 'first touch'}

## What they care about (your guess, with a tag if it's just a guess)
- {driver 1} [verify]
- {driver 2} [verify]
- {driver 3 — confirmed via {source}}

## What you have for them
- {value 1 — a specific market take, comp, intro, or piece of data they can use}
- {value 2}
- {value 3 — saved for touch 4}
- {value 4 — the soft ask}

## What you do NOT want them to feel
- Pitched to. Generic. Bulk. Like one of 50.

## Things to verify
- [verify] their email is current
- [verify] their role hasn't changed
- [verify] they're still in this market

Variant D — listing event (open house / just-listed / price-drop / just-sold)

# subject.md (listing-event variant — for SMS + targeted social)

## Event type
{just-listed / open-house / price-drop / under-contract / just-sold}

## Listing
- Address: {full street}
- Price: ${current price} [src: MLS]
- {beds}br / {baths}ba / {sqft} sqft

## Event details
- When: {date + time window}
- Who it's for: {first-time buyers / move-up / investors / sphere}
- One specific reason to come: {e.g. 'the first open house since the kitchen was redone'}

## SMS-safe facts (under 160 chars when combined)
- Price drop: {old} → {new} = {%} off
- Open house: {day, date}, {start-end time}
- Just listed: {beds/baths/sqft/price}

## Personalization slots
- {{first_name}}
- {{neighborhood}} (if you segment)

## Things to verify
- [verify] price is current as of send time
- [verify] open house is still on the calendar
- [verify] you have explicit consent to text every recipient

## DO NOT INVENT
- Price changes. Open-house times. Buyer counts. Pending offer rumors.

machine.md — the runner

The system prompt that sits on top of every output. Tells the AI HOW to combine the cards.

# machine.md

You are an AI writing assistant for a real estate agent. You combine three context cards — self.md (their voice), persona.md (the audience), and subject.md (what we're talking about) — to produce one piece of content per request.

## Role
You are a content producer. Not a coach, not a lecturer, not a consultant. You write the thing that gets posted.

## Voice
- Match self.md's tone, rhythm, signature phrases, and "do not say" list exactly.
- If a phrase isn't in self.md's vocabulary, do not use it.
- Reading level: 7th grade unless the format spec says otherwise.
- Never use exclamation points unless self.md explicitly allows them.

## Audience
- Write to the persona named in persona.md. Singular, second-person.
- Lead with what they want or fear (from persona.md), not with what the agent wants to sell.
- Do not introduce demographic stereotypes or stand-ins not present in persona.md.

## Facts
- Use ONLY facts present in subject.md.
- Every numeric claim, date, comp, and stat must trace to a [src: ...] line in subject.md.
- If a needed fact is missing, write [verify: {what's missing}] inline. Do not guess.
- Never invent square footage, year built, HOA fees, or comps.

## Output formats
Follow the format spec the agent passes in (e.g. mls_description = 180 words max, no exclamation points; sms_three = three 160-char variants with {{first_name}} merge token; ig_caption = under 220 chars with semantic keyword cluster, NO hashtags).

## Compliance pass (run before returning output)
- [ ] Fair Housing — no protected-class language (family status, race, religion, age coded, disability, national origin)
- [ ] Self.md "do not say" list — every banned phrase removed
- [ ] Subject.md "DO NOT INVENT" list — no fabricated facts
- [ ] Tone match — output sounds like the writing samples in self.md, not generic AI
- [ ] Format spec — word/character count and structure rules followed
- [ ] No hashtags (semantic keywords embedded in prose instead)

## Verify block (append at the end of every output)
At the end of every output, return a short list:
```
[verify before posting]
- {fact 1 to double-check}
- {fact 2 to double-check}
- {compliance flag if any}
```
If nothing needs verifying, return: `[verify: clear]`

## When you are stuck
If the cards are missing information you need, ask one specific question. Do NOT guess. Do NOT generate the output and hope for the best.

Stack it, then ask in one sentence.

machine.md and self.md go in every stack. Add subject.md for a specific listing, topic, recipient or event, and persona.md for a specific reader. Most content needs both. machine.md also holds the format rules for each channel, the job a channel card does on the recording.

  1. Open a fresh chat.
  2. Paste machine.md, then self.md, then the cards this job needs.
  3. Type one sentence: “Write [output format] for [audience or subject].”
  4. Check every fact, read it for Fair Housing and your do-not-say list, and clear the verify block before it goes out.

What each stack writes.

8 jobs from the class workbook. Each names its stack, the one line you type after pasting it, and the format rules machine.md holds it to.

  1. Listing description (MLS-ready)

    • machine.md
    • self.md
    • subject.mdlisting variant
    Using these cards, write the MLS description in mls_description format.

    Skip persona.md for MLS — the audience is mixed. Add it back when you adapt the description for social or email.

    Format spec

    • 180 words maximum.
    • No exclamation points.
    • Lead with the most-verifiable distinguishing feature, not adjectives.
    • End with one specific call to schedule a showing — no urgency manipulation.
    • Include the verify block at the end.
  2. Social caption (per channel)

    • machine.md
    • self.md
    • persona.md
    • subject.md

    Variants: instagram · tiktok · linkedin · facebook · x · youtube

    Write a {channel} caption for {persona name} about this subject.

    Hashtags are banned across the board.

    Format spec

    • Instagram: under 220 characters, hook in line 1, semantic keywords embedded in prose, no hashtags.
    • TikTok: under 150 characters, written like spoken speech, no hashtags.
    • LinkedIn: 600-900 characters, three short paragraphs, professional but human, no hashtags.
    • Facebook: 200-400 characters, conversational, ends with a soft question, no hashtags.
    • X: under 250 characters, one idea, no hashtags, no thread.
    • YouTube (description): 300-500 characters with chapter timestamps if applicable, no hashtags.
  3. Email campaign (4 types)

    • machine.md
    • self.md
    • persona.md
    • subject.md

    Variants: just-listed · price-drop · open-house · just-sold

    Write a {type} email to {persona name} for {listing or topic}.

    If you're using AIA's email rules: no em-dashes anywhere in the body. Replace with periods or commas.

    Format spec

    • Subject line: 35-50 characters, no emoji, no all-caps, no '!'.
    • Preheader: 60-90 characters, complements the subject — never repeats it.
    • Body: 80-180 words, three short paragraphs, plain text feel even in HTML.
    • One CTA, one link. Soft language ('see the photos', 'check the new price') over hard ('book now', 'don't miss out').
    • P.S. line that adds one specific human detail — not a second pitch.
  4. SMS to sphere (event-driven)

    • machine.md
    • self.md
    • persona.md
    • subject.mdlisting-event variant
    Write three SMS variants for a {event type} text to my sphere.

    Verify consent for every recipient before send. Cold SMS is illegal under TCPA without prior express written consent.

    Format spec

    • Three variants, 160-300 characters each.
    • Each must include the {{first_name}} merge token.
    • No links unless explicitly approved (carrier delivery hits links hard).
    • Plain text, no emoji unless self.md says emoji are part of your voice.
    • End each variant with a soft yes/no question — never a generic 'let me know'.
  5. Long-form blog post

    • machine.md
    • self.md
    • persona.md
    • subject.mdtopic variant
    Write a long-form blog post for {persona name} on this topic.

    Long-form is where Perplexity earns its keep. Use it for fact-finding before you start writing.

    Format spec

    • 800-1200 words.
    • H2 sections (3-5 of them). Each H2 answers one specific question the persona is actually asking.
    • Lead paragraph hooks with a contrarian take or a sourced surprising stat.
    • No sales pitch. The post earns the right to a single soft CTA at the end.
    • Every stat embedded in prose — never a bullet list of unsourced numbers.
    • Include a sources section at the bottom listing every [src: ...] from subject.md.
  6. Cold email sequence (4 touches)

    • machine.md
    • self.md
    • persona.md
    • subject.mdrecipient variant
    Write a 4-touch cold email sequence to {recipient name} delivering value across the first three and asking on touch 4.

    If self.md says 'no dashes', the body must have zero em-dashes, en-dashes, or compound hyphens. Biggest AI tell.

    Format spec

    • Touch 1: pure value — one specific market take, comp, or intro relevant to them. No ask. 70-120 words.
    • Touch 2 (5-7 days later): second value drop — different angle. No ask. 70-120 words.
    • Touch 3 (5-7 days after touch 2): third value drop — proof of pattern. No ask. 70-120 words.
    • Touch 4 (5-7 days after touch 3): single soft ask — 'mind if I send you the full report'. 60-90 words.
    • No subject lines longer than 6 words. No 'just checking in'. No 'circling back'.
  7. Short-form video script + thumbnail

    • machine.md
    • self.md
    • subject.md
    Write a 15-60 second short-form video script and a thumbnail prompt.

    Same script, three crops: 9:16 (Reels/TikTok/Shorts), 1:1 (feed), 16:9 (YouTube).

    Format spec

    • Hook: first 1.5 seconds, written exactly as you'd say it on camera. One sentence.
    • Body: 8-12 sentences max. Plain spoken language. Read it out loud — if you stumble, rewrite.
    • CTA: one specific next step (DM a word, comment a number, save the video). Never 'link in bio' alone.
    • Word count: 80-180 words for a 15-60 sec read.
    • Thumbnail prompt for Gemini Nano Banana: 'Generate a 1080x1080 thumbnail showing {specific scene}, {style}, {one bold word of text overlay if any}.'
  8. Newsletter assembler

    • machine.md
    • self.md
    • persona.md
    • subject.mdtopic variant — can stack multiple
    Assemble a newsletter for {persona name} using these {N} subject cards.

    Stack multiple subject.md (topic variants) when you have several local data points. Machine.md handles the assembly.

    Format spec

    • Subject line: 35-50 characters. Specific, not clever.
    • Preheader: 60-90 characters that promises the most useful section.
    • Body: three sections — Market Read (sourced data), Listings This Week (your inventory), and One Thing I Learned (single human story).
    • Each section: 80-120 words. Total under 400 words.
    • Single CTA at the bottom — reply with a question, or forward to one friend.

The rules card rides on top of every stack.

Run these on every output before it posts. AI doesn’t understand consequences. You do. The machine drafts, and you’re the publisher.

Before anything posts

  • Fair Housing pass. Read the output for protected-class language: family status (no 'great for kids', 'family-friendly'), race, religion, national origin, disability, age coded ('mature neighborhood'), gender. When in doubt, cut it.
  • Do-not-say list applied. Every banned phrase from self.md and subject.md scanned and removed. Includes the realtor-clichés list ('quaint', 'cozy', 'charming', 'dream home') and your personal banned phrases.
  • Fact verification. Every number, claim, and comparable cross-checked against MLS, seller disclosure, or direct observation. If you can't source it in 30 seconds, it doesn't go in.
  • Source attribution. Every fact in subject.md has a [src: ...] tag with publication and date, or a [verify] marker if you haven't confirmed it yet.
  • Consent check. If the persona is a real person (testimonial, story, photo), explicit consent on file for name use, story use, and photo use. SMS sphere blasts: prior express written consent for every recipient (TCPA).
  • No hashtags. Embed keywords naturally in the writing.

When it gets it wrong, fix the card, not the prompt.

The prompt is gone after this chat. The card stays in your folder.

It sounds robotic.
self.md Sharpen a tone bullet. Add a signature phrase.
Wrong words for the reader.
persona.md Add the words your audience actually uses.
It invented a fact.
subject.md Add the verified version. Mark the rest [verify].
It used a banned phrase.
do-not-say Add it to the list on the right card.

Where to run the stack.

The class workbook covers 6 tools. Any of them can run the cards, so pick the one where you can finish a build today. Prices change, so they’re left out.

  • Claude Code

    terminal

    Anthropic's terminal agent — drives Claude inside any folder on your machine.

    Setup and first five minutes

    Best for: You want the AI to read, write, and run files on your computer (not just chat). Best for repeatable systems.

    1. Install Node.js 18+ firstPick the LTS download. After installing, open a fresh terminal.nodejs.org
    2. Install Claude Code globallynpm install -g @anthropic-ai/claude-codeIf you see a permission error on macOS, prefix with 'sudo' or use a Node version manager.
    3. Sign inclaudeFirst run opens a browser for OAuth. After that, 'claude' is ready in any folder.

    First five minutes

    1. Make a folder called content-machine on your Desktop and put your four .md files inside.
    2. In Terminal, type: cd ~/Desktop/content-machine then claude
    3. Ask: 'Read every file in this folder and summarize what they're for.'
    4. Then ask: 'Use these cards to write a listing description for 123 Main St.'
    5. Confirm the output sounds like you. If not, your self.md needs more samples.
  • Google Antigravity

    desktop

    Google's AI-native IDE — agent panel built into the editor for vibe-coding workflows.

    Setup and first five minutes

    Best for: You want to build the machine inside an editor (not a terminal) and let the agent move files around for you.

    Google Antigravity’s setup was changing when this class ran, so the steps are left out. Start at antigravity.google.

    First five minutes

    1. Open the agent panel (right side of the window).
    2. Drop your four cards into the chat: self.md, persona.md, subject.md, machine.md.
    3. Ask: 'Read these and tell me what's missing from the self card.'
    4. Use the suggestion to add 2-3 more signature phrases to self.md.
    5. Then ask: 'Write a social caption for Instagram using these cards.'
  • ChatGPT

    web

    OpenAI's flagship — the most familiar surface, best for fast voice tuning and one-off rewrites.

    Setup and first five minutes

    Best for: You want zero install friction. Best as your daily driver for caption rewrites, subject lines, and quick A/B tests.

    1. Use the web app (no install needed)Sign in with Google or email. Works in any browser on any device.chatgpt.com
    2. Optional — install the desktop appmacOS and Windows. Adds a global hotkey (Option+Space on Mac) for an instant prompt window.chatgpt.com/download

    First five minutes

    1. Start a new chat. Paste your full self.md as the first message.
    2. Ask: 'Read this and tell me three signature phrases I overuse.'
    3. Edit your self.md based on the answer.
    4. If your account supports Projects, add the approved current card. In a new chat, verify which file the AI can read; saved context is not guaranteed recall.
    5. If your account supports creating a custom assistant, check current official setup instructions and test which instructions and files persist before relying on it. You may and paste machine.md as the system prompt for a reusable assistant.
  • Grok

    web

    xAI's model with native real-time access to X — useful for current-event hooks.

    Setup and first five minutes

    Best for: You write timely content. Listing-market takes, neighborhood news angles, current-event newsjacks.

    Grok’s setup was changing when this class ran, so the steps are left out. Start at grok.com.

    First five minutes

    1. Ask: 'What are people in {your city} talking about on X right now about housing?'
    2. Watch the citations — every claim should link to a real X post or article.
    3. Pick one trend, paste your subject.md, and ask Grok to write a take in your voice (paste self.md too).
    4. Compare the output to another AI's version.
    5. Keep self.md tight so the tone stays yours.
  • Perplexity

    web

    Search-first AI — every answer comes with citations, a tool that can help research source-supported content, which still needs verification.

    Setup and first five minutes

    Best for: You want sourced facts on the page. Best for blog posts, market reports, and any claim you'd hate to be wrong about.

    1. Use the web appCheck the current official setup instructions and account limits. Do not assume a subscription, feature or authorization from this historical class.perplexity.ai

    First five minutes

    1. Ask: 'Median home price in {your city} ZIP code in the last 90 days. Cite sources.'
    2. Click each citation. If a source is missing or stale, ask Perplexity to redo with newer sources.
    3. Paste the verified facts into your subject.md (topic variant) under a [src: ...] tag.
    4. Then ask Claude / ChatGPT to write the post using subject.md — your facts are now sourced.
    5. Save the citations. Use them in the post itself when you're making a market claim.
  • Gemini

    web

    Google's flagship — best when you live in Gmail, Docs, and Drive. Native image gen via Nano Banana.

    Setup and first five minutes

    Best for: Your stack is Google Workspace. Drafting in Docs, image gen for thumbnails, and embedded prompts in Gmail.

    1. Open GeminiCheck the current official setup instructions and account limits. Do not assume a subscription, feature or authorization from this historical class.gemini.google.com
    2. Create a GemInside Gemini, click 'Gems' → 'Create new'. Paste machine.md as the instructions. Save it.
    3. Optional — image gen via Nano BananaIn any Gemini chat, ask: 'Generate a thumbnail showing X.' Output is the Nano Banana model.

    First five minutes

    1. Create a Gem with machine.md pasted as instructions. Save it as 'Content Machine'.
    2. In the new Gem, paste your self.md and persona.md.
    3. Ask: 'Write a Just-Listed email for 123 Main St in my voice.'
    4. Edit the Gem instructions to add anything that came out wrong — Gems are reusable.
    5. For a thumbnail, ask: 'Generate a square image of a kitchen in {style}, 1080x1080.'

The week you write the cards.

The cards are never finished. Tune them once a week and the output gets sharper.

  1. TODAY

    Save the four files to a folder called content-machine.

    Email the folder to yourself as a backup. Now you have it on at least two devices. The cards are the asset; everything else rebuilds from them.

  2. TOMORROW

    Run the machine on your next coming-soon listing or topic.

    Ship one piece. Anywhere. The first ship is what proves the system works for you, not for the person who built the demo.

  3. THIS WEEK

    Build your second persona.md.

    Run the stack against an existing subject with the new persona. Compare the two outputs. Treat the differences as hypotheses. Check them against the reader’s stated question and permitted evidence, then test usefulness.

  4. DAY 7

    Open self.md. Add or remove two signatures based on what AI kept getting wrong.

    The voice card is never finished. Every week you tune it once and the output gets sharper. This is the compounding part.

  5. ONGOING — every Monday

    Draft one checked source asset, then adapt useful renditions and record the time.

    Use a recurring review date to compare each rendition with your source and writing examples.

The class files.

The context cards from class, ready to fill, and the class skill card for your AI.

Create a free student portal account to download this class's files.

  • SELF Context Kit

    Realtor identity, brand voice, and working style files. Load order is handled internally.

    Markdown · 6 KB · Free accountGet it: SELF Context Kit

  • Realtor about-me.md

    Identity, business, market, priorities, frameworks, and quality bar

    Markdown · 1 KB · Free accountGet it: Realtor about-me.md

  • Realtor brand-voice.md

    Voice rules, banned words, context-specific tone, and on/off-brand examples

    Markdown · 3 KB · Free accountGet it: Realtor brand-voice.md

  • Realtor working-style.md

    Output defaults, ambiguity handling, quality rules, sources, and collaboration preferences

    Markdown · 1 KB · Free accountGet it: Realtor working-style.md

  • GUARDRAILS Context Card

    Canonical guardrails card built from Fair Housing, privacy, disclosure, and fraud resources

    Markdown · 3 KB · Free accountGet it: GUARDRAILS Context Card

  • HOME Context Card

    Property, listing, seller, and deal context template

    Markdown · 2 KB · Free accountGet it: HOME Context Card

  • PERSONA Context Card

    Reusable audience/archetype context for luxury, STR, investor, first-time, relocation, and similar segments

    Markdown · 1 KB · Free accountGet it: PERSONA Context Card

  • CLIENT Context Kit

    Existing client kit with consent gates, citations, story branch, and relationship notes

    Markdown · 3 KB · Free accountGet it: CLIENT Context Kit

  • pipeline.md

    Lightweight pipeline file for the expanded Context Kit CRM

    Markdown · 1 KB · Free accountGet it: pipeline.md

  • Instagram Channel Card

    Existing Instagram format specs, algorithm context, and shot-list rules

    Markdown · 2 KB · Free accountGet it: Instagram Channel Card

  • Class skill card

    The class method on one page, written so you can hand it to your AI as instructions.

    Markdown · 13 KB · Free accountGet it: Class skill card

The machine, installed

You've seen the files. Now have them installed.

This class builds the files by hand. The Content Machine install builds your context folder with you, then runs in your own Claude by slash commands and makes branded content in your voice, even when you've added nothing new.

What the room asked about the cards.

Questions agents asked during the build-along, with Ryan’s answer. Each time opens the recording where the question starts.

What is a Context Card, and where do I keep it?

Asked at 20:01: “Is that something that I have on my desk in a Rolodex or is that something that is copied into a spreadsheet somewhere”

Ryan showed one. A Context Card is a plain-text markdown file, a .md file, written in plain English with no code. The class cards sat in a shared Google Drive folder, and you add them to your AI chat. He prefers markdown to PDFs or Word docs, which carry hidden data that bloats what the AI reads.

Do markdown files work the same in every AI?

Asked at 33:12: “Do the MD files work the same way in everything with the same AI? Like is there one better than the other”

Ryan said markdown works the same across them. Some AIs handle PDFs better than others, though that's close to solved. He uses markdown because it's lean. An AI can only take in so much before its answers drift, and a Google Doc or PDF uses up more of that room than plain markdown.

Do I need to change the sample cards before I upload them?

Asked at 40:41: “So, we don't change anything on the any of those cards?”

Ryan said no. Upload the sample cards as they are and ask the AI to fill them out for you, true to your brand. The more you've used that AI, the more it already knows about you. Then read what it wrote, decide what's right and wrong, tell it what to change, and repeat until you're happy.

Should I upload all the card files at once?

Asked at 41:31: “And we do all five files at the same time?”

Ryan said yes. Upload all of them to the AI together, and it builds your personal card from them. The class would then build a deal card and a client card the same way.

Read the edited build-along transcript.

Automatic captions from the recording, lightly corrected. Stretches with personal details, unsourced numbers, dated news or advice the class has since changed are left out. That’s 16 stretches in all. The recording ends during setup, so the transcript does too.

Read the transcript, 12 chapters

0:13 Plan before you build

All right, guys. So, my name is Ryan and I am here to teach you guys about AI. Specifically today, we are going to actually build a content machine. So, one of the things we're going to go over first is what I think is probably the most useful skill in all of AI and that is pattern recognition or pattern matching. Then we're going to go over how to build a plan using an OODA loop, which is one of the things that is like really, really important in building almost anything with AI is the planning phase.

substantial project, you're going to want to know how it starts, how it ends, clarity of outcome, because AI is very similar to like an aircraft, right? If you leave an airport like a very minor shift in the coordinates makes a very major shift on the other end. If you think about AI in that same way, where if you start with an input that is a little bit off, by the time you get to the output you want, you're going to be magnitudes further away from where you want to be, if that makes sense.

Um, so, we're just going to kind of go over that and then we are going to go over basically pattern matching. So, what are the things that are the same across all domains? Context cards. So, breaking your problems down into smaller and smaller chunks. Um, researching the output so you know what is actually useful. Um, writing the prompt, putting things in place, generating the content, and what you want. You're going to have to move it forward. And a lot of people think, I did the stuff to make the magic uh, computer work and it's not giving me exactly what I want. Why is that happening, right?

3:46 Iterate, then pull in your context

The way computer scientists think about it is, okay, I've got the output. What is different from this output than what I wanted? What is my hypothesis of the thing that needs to change to make that true, right? And so, it could be your prompt, it could be the context that you put in, it could be uh, information. Could be any of that that's that's false. And so, you have to kind of say, okay, which of the things that I've put in here has the most likelihood to make this be better, right? And so, you're just you're always trying to hypothesize with a scalpel so that you can make very precise adjustments.

And then what you want to do at the end of all that is you want to ask the AI how it arrived at the perfect output for you, right? Because if you ask the AI, after you get the output that's exactly what you want, you say to the AI, hey, um, we spent a long time chatting to get this output. What would I need to do to get this output in one try, right? And then you take that and you start a new chat and you see if that gets you the output in one try. Because the second you can start getting outputs in one try, you can move substantially faster over and over again, right? And so, if you get your materials built out so that it's um, basically the same across all domains,

you can just pull those pieces. So, like if you have your who you are as a realtor, you have, let's say a client, right? You have a client that likes luxury, they like clean, they like white space, they like all that stuff. And then you have another client that likes antique, they like the more like gothic style, stuff like that, right? They're going to have two different visions of the same exact house, right? But if you pull your context and you pull their specific context, and then you pull the house's context, right? So, there's three different LEGO blocks that we have that we can pull in to solve the problem. We pull all those in, you can now make a custom listing for the person who wants the the white space in the modern, and you can also make a custom

listing for the person who wants the antique, and you can connect it to their vision a lot simpler, right? And so, the goal with AI, um, for most people is to just speed up outputs, right?

5:56 Keep the human connection

The thing that gets lost when you're just speeding up outputs is the human connection piece. And that's something that is pretty unique to realtors is that human connection piece. And so, we want to make sure that our context is dialed in so that when your client gets an email, even when a lender or co-worker gets an email, they think, oh wow, this is how she would write it or how he would write it, right? It's not like, oh, what? Did they get a personality infusion? I don't recognize this person at all, right? And so, you want it to be um, kind of bringing you closer to the goal instead of kind of separating um, just to move faster.

So, basically, um, what I mean when I say pattern matching is the ultimate meta skill is you'll see that if you can solve the same problem the same way, um, you can apply that to operations, finance, marketing, customer retention, customer whatever division in your business, um, that you either are really strong at or need help with, AI can be kind of that delegatable employee. And that's where the deep expertise comes in. But AI can help you with all of the stuff that is generalized. The deep expertise is the stuff that you you guys have to supply.

Um, and I've said this before and this is another big one for me is the only advantage that people have right now as it relates to like search and stuff like that is what's called non-proprietary non-public proprietary data, meaning information that is in your head that no one else knows, right? those little internal pieces that no one else knows, or like maybe you're like, oh, I know that the 12 South neighborhood has the following things going in and the economics are growing and da da da da da.

Whatever your kind of hidden advantage is, that's what you want to really focus on and understand, because everybody has the same access to public information now, right? Every it's it's all the same. Being intelligent is no longer an advantage, because if you know how to co-intelligence with AI, no person is smarter than AI in general. People may be smarter in expert domain niches, uh, because the training data isn't there for [clears throat] AI, and so that's why it's important to go really deep instead of really wide, because anyone can go really wide with AI now. I can solve literally any problem in your business with AI because of this it's all the same problem-solving framework. Do it's it's Do I need to brainstorm or do I have a clear outcome in mind? If I don't know

what outcome I have in mind, I need to brainstorm, right? So, I go and then I work through a brainstorming workflow and I'm like, "Okay, orient

10:05 Observe, orient, decide, act

the OODA loop is observe, orient, decide, act. That is the OODA loop. It's four sequences that you want to work through as fast as you can. Observe, orient, decide, act. So, and I'll get to all that, but actually, that might be on the next slide. Sure enough. So, the OODA loop is observe, orient, decide, act. What we want to do is we want to observe what's actually happening, pull that data and those resources into one place so we can orient to the information that we have, right? One of the other big skills that's going to be very, very massive in the AI age is one, we're all data companies now. Every single company out there is a data company because, again, the only moat is that proprietary data that you have that no other business has.

The other big thing is going to be resource management. A lot of people don't understand um that resource management is going to be one of the most important things in AI, and the reason for that is most people don't even know what their full repository of resources are, right? Like, you may have worked with a lender one time that did a great job with this really niche case, and that was 5 years ago and you have no recorded piece of that. And so, if that really niche case comes across again, you're you'll have to do the same lender search that you did to find that first lender, right?

And so now, what we can do is we can take that context every time we have one of those unique situations, we can add it to what's called a markdown file, and now you have context on it. So, if you have a client card that says, "This buyer is in this weird situation, blah blah blah blah blah." And you say, "I need a team to help them move this to closing." And you you have that context in there, you can have your AI search and you can say, "Hey, this is my client. This is all of their problems. Who is the best team to get this from A to Z?" Right?

And it it'll recommend if you have a rehabber in your in your repository, if you have a lender, if you have, you know, insurance, whatever it is that you have, it'll pull and it'll say like, "Based on this person specifically and the qualifications, strengths, and weaknesses of these vendors, this is what we think the right team is." Right? And again, you're just breaking things down into small blocks that you can pull LEGO pieces from. You have In this, you have your context card, you have your client context card, and you have your vendor list or vendor context cards, right? And so, it's If you look at the problem, it's the different problem, I'm solving it roughly the same way, right? And so, that's what this does. It gives you a repeatable pattern to solve any problem because the

intelligence is useful across so many domains. I made the joke so I can be super pretentious twice that AI is like CrossFit. So, it's good across broad time and modal domains. That's literally the definition of CrossFit. AI is good across broad business domains, right? The same thing. It's just make It's just giving you general preparedness to handle the problems within your business. So, there is a way that AI can make you dumber. There's a way that AI can make you smarter. I, for the longest time, was using AI in a way that made me dumber, and I did not have IQ points to lose, so that was not a great time for me.

But basically, if you just trust it completely, you never push back on its answers, even out of principle. Like, I'll push back and be like, if it gives me the best idea in the world, I will try to find the problem and push that out. And sometimes it's like, "Oh yeah, you would be committing tax fraud by doing that." Right? And it's like, "Okay, that's a little problem that should be addressed much sooner." And so, like, push back on it just out of principle. Um If you don't disagree with it, if you don't validate the outputs, that's something that a lot of people don't do is they just trust as gospel. And if you're not an expert in the domain that you're talking about, like, you might be an expert in 12 South and you can see

immediately, "Oh, that's not right." Right? But if you're not an expert in, let's say, architectural design, and it comes up with a response, and I mean, it reads like it's okay, right? And so, if there's something that you're not an expert in, minimally validate it with another AI. Like, take the response from Claude and go to ChatGPT. Maximally, follow the citations. All I always ask for citations and links and stuff like that so that it can't just make up sources. And so, click on the links because sometimes you'll click the link and it's like, "This page no longer exists." And it's like, "Okay, why are you citing a page that doesn't even exist at this point?" Right? So, click on a couple of the links at random and just make sure your AI is not feeding

you nonsense. And then So, challenge it, brainstorm with it. That's something that a lot of people convolute the brainstorming session and the actual building session, right? And so, what happens is you want those to be two separate things with two separate context windows. So, if you don't have an idea that you really want to produce, go brainstorm with it to come up with the best idea. Say, "Hey, this is what I want. I have a client like a 150 client email list. I need to engage them.

They're all first-time home buyers, blah blah blah blah blah." You give it the context, and you can also pull in your context cards there. And then it goes forth and just kind of generates, right? Like, it's going to give you ideas, and then you can choose from the idea and say, "Okay, now I need to take this idea and turn it into execution." Right? And that's the thing that a lot of people kind of miss. So, a lot of people are using it wrong.

15:53 Three cards: you, client, deal

The content machine is one instance of pattern recognition. And so, when we build the content machine, we are going to be able to take that content at context and turn it into a blog, a website, social media post. You'll see that the context is very broadly applicable, and you'll see how it's kind of applicable across all communication styles. Um especially the more deep you get into the the context. So, there's basically going to be We're going to have kind of the materials needed to run the loops to solve the problems that you guys have on a daily basis, right? So, we're going to have, you know, the a context card for you guys. We're going to have a client context card for your clients. We're going to have a deal context card. And those are going to be the big three. If

you could only do three things, it would be that because the majority of what real estate realtors do is going to resolve revolve around those three types of context, right? It's um And then you could also do a vendor context, but those three, if you're only going to do three, those are the important ones. Fun fact also, if you grab pictures of the slides, you can take the images, put them into the AI of your choice, and ask it to transcribe it so you can actually manipulate the data that is on here and have more of like, if you want like a summary for yourself, or if you want like something like that, you can upload the images of the slides you've taken, and you can say, "Hey, summarize this for me in like a concise little report."

So, So, going over the OODA loop. So, observe. So, and this is where I need you guys to make some decisions for what we're building today. And this is one of the cool things with AI because historically, teacher would come in and say, "Hey, this is what we're going to build." And it would be one thing that serves one purpose across one domain, right?

18:08 Choose one content channel

You guys can choose from social like a social post, Instagram, Facebook, LinkedIn, whatever, a blog post, website copy, an actual listing description, a client email, whatever it is that you want to do, we're going to build out one channel really well. And then we add the next one, right? And so, what we're not going to try to do is broadly scope every project that you guys want to do and communicate with. We're going to do one channel really well because that's going to give us the building blocks of everything else, right? So, if we build a context card for us, we build a client context card, we build a deal context card, that is going to be applicable for all the other communication styles that we want to come up with, right? Because let's say you want to do a social post.

You want to Let's say you want Instagram, you want captions for Instagram, and you want it to generate a photo as well. Right? So, if that's your target, once we have the raw materials to build the social post, we also have the raw materials, minus one or two things, to build a blog post, to build website copy, right? It's all going to be in your voice the whole way down. Orient. So, what we want to do is we want to build our context card specifically for um Well, this is a little bit outdated.

Each medium needs its own context card. We want to build our personal context card exclusively around details for us. If we're doing a blog, what we're going to do is we're going to do research on what the best practices are to build a blog. Then, we're going to have a context card on building blogs, right? And so then, what we need to do is we need to take the context card about us and the context card about best practices for writing a blog, we take both of those and we put it into the AI and we tell it what we want it to write the blog about.

20:01 What a context card actually is

I'm sorry. There's some terms here I'm not really understanding. Like context card. Yeah. Is that something that I have on my desk in a Rolodex or is that something that is copied into a spreadsheet somewhere that I copy and paste on? What kind of Take take me back a little more basic. So so I can kind of keep up with you. No, absolutely. That's that's perfect. That's a great question. I appreciate it. Um give me 1 second and I will show you exactly what a context card is.

And you guys will have access to this whole thing. Like this whole Google Drive. So as an example, this is one piece of a context card and I'm going to I'll read this so don't strain your eyes doing that. Context cards and the way the best way to communicate with AI is something called a markdown file. It's a .md file. Markdown files, you don't need coding experience, you don't need uh tags and stuff like that. You can do it in plain English. And so what we're going to be building today are markdown files and you might say, "Oh, wow, that's just text. How can this actually help the AI?"

It'll help the AI dramatically because the best um the best format to interact with AI is markdown, right? And so a lot of people upload PDFs, they upload Word docs, and what happens when you upload those two things is there's a lot of what's called metadata or data that humans can't see. It's invisible to the human eye. And so it block it bloats up the context a lot, right? So in a Google Because there's no Google Doc layer that needs to get processed by the computer.

It's just markdown which is pretty natural, right? And so this is one

Ryan, can I read something? Hit me. Uh context defined: the set of circumstances, background information, or surrounding text that helps explain, define, or interpret a specific word, event, or situation. That's exactly right. That's it acts as a frame and provides the necessary details for understanding the broader true meaning of a message. So it's the it's the communication we do to tell AI kind of who we are, what we want. Yeah, exactly. It's it's all the background information. It's basically giving your AI a childhood. Well, well, what it is we're just inputting it and AI is creating this on their own. Exactly, yeah.

saying that what we'll do is we're actually going to create Yep. Yep, we're going to build context cards so you guys have for your own like real estate business, your personal context card that'll be named, you know, specific to your best practices, all that kind of stuff.

Okay, then we'll be able to just use and instead of having to brainstorm so much and just here's what I want, we just input that. Yeah, you just throw that in and you say, "Hey, this is the outcome I If you're brainstorming with it, you'd say, "Hey, this is the outcome I need. Give me five ideas to get there using what you know about me, right?" And so you always want to be processing the context card. And in a later class, I'll show how to turn it into a project and I'll show a couple of the more advanced things we can do. This is just um just to kind of build the basics so that I don't want to say every class from here on out is going to build on this, but it will make every class much

simpler. Like it'll make everything you do in AI much simpler including classes if if you have a base.

How I framed it in my mind is I actually found from the '70s code that I wrote on DOS when I was in high school. And it was like, "If X equals Y, then this." You know, like that's how you put code into the computer to get what you wanted out of it. And this is like plain English talking like, "Hey, do this from my perspective. I'm softer, I'm warmer, I'm not I don't want all this gibberish, plain English. I'm telling the computer who I am and that's how he's going to frame it every time he does something for me." And it's just taking our words and then translating it into something that they can understand. Yep. Yep, exactly. Yeah, so

24:18 Define your brand voice

We got it. As an example, so this is the brand voice template. So this is kind of when your brand writes, how do you want to be understood, right? Like the goal of communi- of communicating is to be understood, right? So like we want to have the way we best communicate and best feel understood, we want to have that all laid out. So and this is a sample so it kind of gives um a template and we're going to be building the context cards in AI as well. So we're not going to be redoing this character by character.

Um but you up here it's got voice essence. So it's one paragraph, no adjectives, describe how your writing feels to read when you're at your best. Write it the way you describe a friend's style to someone who's never read them. So like as an example of that, I don't always take my skills and put them to the forefront because I'm not the best at a majority of things, right? Like as an example, and I've given this example a couple times, but if you write into me and I'm the one that's responsible for writing a customer service response back, being an introvert engineer brain, those don't go typically well. Like I solve the problem, but it doesn't leave them feeling warm and fuzzy, right? And so what I did was I looked at who was in my

life and who um when I walked away from that com- those conversations, who made me feel incredibly special when I would walk away from those conversations, right? So not looking for who's the best customer service person, who's the best whatever. I'm looking for the person that most closely gets the outcome that I want. And the outcome that I want is to make people who email in feel like they are my biggest priority and that I'm warm and fuzzy and all that kind of stuff. Well, with the context cards, it turns out I have a personality infusion and I am like very active and chipper and cheerful and warm and sunshine and all that kind of stuff on the email. So Um but yeah, we're going to be building these and I'm going to be um I need to actually distribute the

link to this folder um because you'll get uh sample context and then also in channels. And this is going to be built out for you guys uh to everything. So this is going to be built out for blog posts, for social, for everything. And so you can see here like Facebook has its own set of criteria that make posts more effective on Facebook versus Instagram, right? Instagram is a very visual medium. Um And so you guys will get all of those things.

27:38 Read the draft, then loop again

And then um so going back to the OODA loop, decide So once you have done your research, you built the plan, you're [clears throat] ready to go, do it. Go forth and uh decide on what you want and then act. Build it. And then once act is complete, you re-enter the OODA loop phase, right? So once you've done act, you're going to go back to observe and you're going to look at the um output that you received from AI and you're going to say, "Okay, is this what I want?" Or rather, is this close enough to what I want that I can use it?

Then you'll say, "Okay, it's it's far enough away that I can't use it. These are the iterations that I want to make. Here's what I think the problem is." And go forth and try to solve it that way. You never want to go into a problem-solving situation with AI without having some type of plan because if you ask it to fix the problem, problem, there's a thousand ways for them to solve it. There might be two that match your particular circumstances, guardrails, and situation, right? So that you might give them the problem and they're like, "Oh, just spend $50,000 on this consultant." Okay, well, that's not, you know, the thing that I want to do for this considering it's like a $500 problem. Let's, you know, and you just kind of iterate forward with with what

we're doing. So this is the loop. It's the same four phases, you just repeat them over and over and over across all business domains, across all kind of problem-solving cycles, right? So whether it's finance, operations, whatever, you look at the problem, you say you orient you observe it, what is the problem, you orient to it, okay, what do I think is the best way to fix it, you decide on the solution you came up with, and then you act. You just repeat that across all cycles of your business over and over and over again.

And with AI, that's how that's how the kind of the best in the world are using AI right now. They are running it without being in the loop. We are going to run it being in the loop because we're not like high-level frontier engineers at this point, right? Now, eventually that will get easy enough and it it's it's starting to already. It will get easy enough that you can run it on your own like that without a problem. Um All right. So, we talked about planning.

Planning is the most important phase with AI. Um

30:05 When to use cards, and which tool

And then prompts are really good for one-off work. Um if you're just going into something and you just need an email rewritten or you need something summarized, you don't need to pull all your context in. Don't You don't want to over-engineer a solution that doesn't require it. But, if you're doing something client-facing, if you're doing something that's you deem is important enough to that you want to make sure the tone is on point, then that's when you want to use the context cards. So, we're going to build um basically the things that I showed you and then we're going to pick a content medium.

We're going to pick the tool tier that we want. And so, this is again the easiest with less least amount of features is going to be the web app. So, if you go to chat.openai.com, that is going to be the simplest, easiest, least amount of features, but most straightforward. And honestly, that'll be enough for most of what we're doing. Um the desktop app allows you to access more tools. It allows you to connect it to more things. And so, as an example, um the web app there we're going to be doing a lot of copying and pasting from the web app into the mediums where they go. With the desktop app, you start to get into automatically putting things where they need to go. Um and then once you get to terminal and IDE or

integrated development environment you're closer to a software engineer and it looks intimidating. It looks like it's a problem. I promise you it's not. If I can learn it, literally anyone can learn it. I assure you. Um so, that is kind of the the tradeoffs and the value in getting down the technical ladder. The deeper down the technical ladder you get, the more things that are accessible to you at lower or no cost. Like you would be amazed what you're able to accomplish for free if you understand how to use open-source software. And the only way you understand how to use open-source software is if you get down to here. I'm not saying everyone should get down to here, but I'm saying if you're interested in AI and you want to improve your like what you're doing significantly try to

follow this down. The follow that funnel down. Um the tools are super easy to set up. We'll go over that if needed. Um so,

33:12 Why the cards are markdown files

Do the MD files work the same way in everything with the same AI? Like is there one better than the other that you know reacts to the context or not? Um there's not not to markdown. There are some that react better to like PDF than others um just because the parsing has always been a little bit of a problem, but that's a that's pretty close to being solved. Um the only reason I choose markdown is for the efficiency of it. Um with AI right now context uh and context management is a big thing. So, are you familiar with context windows?

Okay, perfect. No, that's um so, a context window is basically how much stuff can you type into the AI before it overflows and it starts getting dumb. Oh, the bloating you're talking about. Yeah, exactly. Exactly. So, how much can you fit in there before it starts giving you answers that are not at all related, it has things that are required for the Google Doc, it's not nearly as efficient and it's just eating context compared to uploading with markdown. So, that's why we do markdown. Um and there's also machine-readable files like XML and JSON which are usable, but markdown is just so simple. Um and it's markdown is what all the AI agents right now are using to talk to each other. So, it's like it's kind of like going to a foreign country and being able to speak

the language, right? Like rather than go there and kind of like struggle through ordering, you're fluent in the language instead of kind of having that context bloat and the other things that come along with it. Did you

37:07 Upload your cards and fill them in

Okay. So, once you guys have the link, go ahead and download um you can download both if you want, but sample contexts is predominantly what we're going to be working out of today. Once you have those downloaded go to the AI of your choice and we're going to upload those into the system. So, whether that's ChatGPT and it can be mobile, it can be on the computer, whatever it is. Um the four main frontier models are ChatGPT, Claude, Gemini, and Grok. I would highly recommend using one of those.

That is another reason why these context kits are very useful, right? Because if you have all your stuff in markdowns that you own and control if Grok releases the best model in the history of the world, you can move to Grok as quickly as you want to because you own all of your contexts if that makes sense. Right? You're owning and not renting. And this is one of the reasons that I say that my job is to put educators and marketers out of business on this stuff is because you guys can now own and build and create the same as everyone as like a developer, right? It's much easier to create internal tools than it is to create production-ready um like software as a service, right?

So, the capability that you guys will have within your own business by understanding AI is very very useful, but don't think you're a software engineer just because of that because there are major security risks. If you do create something that's like, "Oh man, this could be good for public consumption." I would highly recommend you bring in someone uh from what's called a devops department and they will review it to make sure um So, as an that's why I would not, um, necessarily push into software as a service without really having an understanding of of what you're doing.

Um, so once you have the context stuff downloaded, boot it into the AI, and what you're going to do is you're going to say, especially if you've used AI for any amount of time, you're going to say, "Hey, this is my context card. I'm a realtor, X, Y, and Z. Please fill out any information on this card." Actually, here, I'll write you guys prompts. So, we don't change anything on the any of those cards? No, you just

Just upload it Push it in and say, "Hey, fill these out for me so that I have a personal context card." And then you iterate it forward. And so, the more that the AI has learned about you, so the the more that you've interacted with whatever your specific AI is, it will have some level of base memory, and you can get a big head start by just pushing them in and saying, "Fill these out for me, and make them uh true to my brand." That's kind of all you need to do, and then you just iterate forward from there. You're just looking at it, what's right, what's wrong, what needs to change, make those decisions, and then tell it, "Hey, these are the things that need to change." And then just iterate that until you have something

that you're like, "I'm very happy with this." So, we're downloading the sample context, right? Sample context, yep. And we do all five files at the same time? Yeah, yeah, just push all of them right up into the, um, right up into the AI, and that will That will build your personal context card. And then we will also do deal, and we'll do I'll do a client sample as well, so you guys can build that. And then we'll figure out, uh, mediums. And then once we have all that, we can build a sample piece of content, and then just kind of keep moving forward.

Cuz what It's more work, it's almost always more work on the front end with AI than it is on the back end, right? So, you're almost always going to spend a majority of the time in a project planning and building the initial piece. And then as that project gets going, because you've built good infrastructure, you're able to move that project ahead forward much faster. Are people having problems? What do we need? Let's get it.

Where to go next.

How to Fix Generic AI Real Estate Pages uses the same habit at page scale. When the AI gets something wrong, the fix goes back into your context, not into another prompt.

Next questions

All free classes

Sources behind the rules