Welcome to the Course
No tech background needed. By the end, you'll be building automations that save you hours every week.
Who This Is For
You're a real estate agent (or part of a real estate team) who's heard about AI tools like Claude but isn't sure where to start. Maybe you've used ChatGPT to write a listing description. Maybe you haven't touched any of this yet. Either way, you're in the right place.
This course starts from absolute zero and builds up, lesson by lesson, until you're creating real tools that handle lead follow-up, listing launches, transaction coordination, and marketing — automatically.
How This Course Works
| Phase | Lessons | What You'll Learn |
|---|---|---|
| Beginner | 1 – 3 | What AI agents are, what skills do, and how they work in plain English |
| Intermediate | 4 – 7 | Building your first skills, organizing them, and applying them to real estate workflows |
| Advanced | 8 – 11 | Multi-step automations, team distribution, measurement, and building a full system |
Each lesson includes real estate scenarios you'll recognize, knowledge checks to reinforce the ideas, and expandable deep dives for when you want more detail.
Hit "Mark Complete" at the bottom of each lesson and it will advance you to the next one. Your progress is tracked in the sidebar. Go at your own pace — there's no timer.
What Is an AI Agent?
Before we talk about skills, let's make sure we're on the same page about what an AI agent actually is — no jargon required.
The Short Version
An AI agent is software that can do tasks on its own, make decisions along the way, and use tools to get things done — kind of like a really capable virtual assistant that doesn't need you to hold its hand through every step.
What Makes an Agent Different from Regular AI?
When you type a question into ChatGPT and get an answer, that's a one-shot interaction. You ask, it responds, done.
An agent is different. It can take a goal like "prepare a market report for 80920" and then:
- Pull recent sales data
- Compare to the previous quarter
- Write the narrative summary
- Format it into a document
- Save it to your drive
It figures out the steps itself. It uses multiple tools. It handles problems along the way.
Claude Code: Your AI Agent
Claude Code is the AI agent we'll be working with in this course. It's built by Anthropic (the same company behind Claude). It can read files, write code, run commands, browse the web, and interact with other software — all while following your instructions.
Think of Claude Code as the agent. In the next lesson, we'll learn about skills — which are how you teach that agent to do specific things the way you want them done.
Imagine it's Monday morning. Instead of manually pulling comps, writing a CMA narrative, formatting it, and emailing it to your client, you say: "Prepare a CMA for 1234 Oak Street and email a summary to the buyer."
The agent does all of it. That's where we're headed.
- Agents are smarter and know more facts
- Agents can take multi-step actions, use tools, and make decisions independently
- Agents only work with code, not regular text
- There's no real difference — they're the same thing
What Are Skills?
If Claude Code is the agent, skills are the playbooks you hand it. They tell it exactly how to handle specific situations — your way.
Skills in Plain English
A skill is a set of instructions, reference materials, and tools bundled together in a folder. When you give Claude Code a skill, you're teaching it how to handle a specific task the way your business needs it done.
Skills Are Folders, Not Just Files
This is the biggest misconception people have. A skill isn't a single document with instructions. It's a folder that can contain:
| What's Inside | What It Does | Real Estate Example |
|---|---|---|
| Instructions (SKILL.md) | The main playbook Claude reads first | "When doing a listing launch, follow these steps..." |
| Reference files | Detailed info Claude pulls in when needed | MLS field requirements, compliance checklists |
| Templates | Pre-built formats for outputs | Listing description template, market report format |
| Scripts | Code that Claude can run | A script that pulls comps from your data source |
| Examples | Good and bad examples of output | "Here's a great listing description" vs. "Here's one that uses too much hype" |
| Config files | Settings specific to your setup | Your MLS ID, preferred Slack channel, brokerage name |
Why This Matters for You
Without skills, Claude Code is a generalist. It's smart, but it doesn't know your market, your brokerage's rules, your preferred writing style, or your transaction process.
With skills, it becomes your agent — one that knows Colorado Springs neighborhoods, writes in your voice, follows your compliance requirements, and handles your specific workflows.
Here's what a simple listing description skill folder might look like:
listing-description/
SKILL.md ← "Write descriptions that are warm but not
salesy. Focus on lifestyle, not features.
See templates/ for format."
templates/
single-family.md ← Template for single-family homes
condo.md ← Template for condos/townhomes
examples/
good.md ← "Tucked into a quiet cul-de-sac in
Briargate, this 4-bed..."
bad.md ← "STUNNING LUXURY DREAM HOME!!!
You won't BELIEVE..."
references/
neighborhoods.md ← Key selling points for each
Colorado Springs neighborhood
gotchas.md ← "Never say 'walking distance' (Fair
Housing). Say 'near' instead."
Claude reads SKILL.md first, then pulls in the right template, checks the neighborhood reference, and avoids the gotchas — all automatically.
- A single document with instructions for Claude
- A coding plugin that requires programming knowledge
- A folder containing instructions, references, templates, scripts, and examples
- A setting you toggle on or off in Claude's preferences
The 9 Types of Skills
Not all skills do the same thing. After building hundreds of them, Anthropic found they fall into 9 categories. Here's what each one does — translated into real estate terms.
Think of these categories like the departments in a brokerage. Each handles a different part of the business. As you read through, ask yourself: "Which of these would save me the most time right now?"
These skills teach Claude how to use a specific tool, platform, or system. They include documentation, code snippets, and a list of common mistakes to avoid.
A skill that teaches Claude how to properly use your MLS system's API, your CRM's data structure, or your brokerage's internal tools. "Here's how to pull active listings from our MLS. Here are the fields that matter. Here's what breaks if you do it wrong."
These skills verify that Claude's work is correct before you use it. They run tests and check outputs against expected results.
A skill that checks a listing description against Fair Housing guidelines before it's posted. Or one that verifies a CMA report has all required sections and the math adds up. "Before sending this to the client, run through this checklist."
Skills that know how to pull data from your systems and analyze it — dashboards, databases, spreadsheets, APIs.
A skill that pulls market stats for a zip code, compares month-over-month trends, and produces a summary. "Pull all sales in 80920 for the last 90 days, calculate median price, days on market, and list-to-sale ratio, then compare to the previous quarter."
Skills that automate repetitive workflows into a single command. These often connect multiple tools together.
A Monday morning skill that checks your CRM for new leads from the weekend, drafts personalized follow-up emails for each one, creates tasks in your project management tool, and posts a summary to your team's Slack channel. One command replaces 45 minutes of manual work.
Skills that create new files, projects, or documents from your pre-built templates.
A "new listing launch" skill that generates all your marketing assets at once: the MLS description, social media posts for each platform, an email to your database, a property flyer layout, and an open house checklist — all from the property details you provide.
Skills that review work for quality, consistency, and compliance with your standards.
A skill that reviews all outgoing client communications against your brand voice, checks for compliance issues, and flags anything that doesn't meet your quality bar. Think of it as a built-in editor and compliance officer.
Skills that handle the process of publishing and distributing content or code.
A skill that takes your finished listing materials and publishes them — posts to your website, uploads photos to the MLS, schedules social media posts, and sends the email blast. The "go live" button for a listing.
Skills that take a problem or symptom, investigate it across multiple sources, and produce a structured report with findings.
A "deal at risk" skill. You tell it a transaction has a problem (appraisal came in low, inspection found issues, buyer is going cold). It pulls the transaction timeline, reviews recent communication, checks comparable data, and produces an action plan with options — like a mini case study for every deal that hits a snag.
Skills that handle maintenance, cleanup, and ongoing operational tasks.
A CRM hygiene skill that runs weekly: finds duplicate contacts, flags leads that haven't been contacted in 30 days, identifies incomplete records, and produces a cleanup report. Or a skill that audits your marketing spend across platforms and flags anything out of budget.
Look at the 9 categories above and pick the one that would save you the most time this week. That's your first skill to build — and we'll show you how starting in Lesson 4.
- Data Fetching & Analysis
- Business Process & Team Automation
- Code Scaffolding & Templates
- Runbooks
Writing Your First Skill
Time to build something real. We'll start with the most important part of any skill: telling Claude what you know that it doesn't.
The #1 Rule: Don't State the Obvious
Claude already knows a lot. It knows how to write. It knows what a listing description is. It knows general real estate terminology. Your skill should focus on what Claude doesn't know — the stuff that's specific to you, your market, and your business.
Start With the Gotchas
The single most valuable thing in any skill is the Gotchas section — a list of common mistakes and how to avoid them. Every time Claude gets something wrong, you add it to the list. Over time, this becomes the most important part of your skill.
## Gotchas
- Never say "walking distance" — Fair Housing violation.
Say "near" or "close to" instead.
- Don't use "luxury" unless the home is $750K+ in our
market. It sets wrong expectations.
- Always mention the school district by name — parents
search by district, not by neighborhood name.
- Fort Carson homes: always mention gate proximity and
base access. This is the #1 question military buyers ask.
- Don't describe views unless the listing has photos to
back it up. "Mountain views" with no photo = complaints.
- Never list square footage in the description — it's in
the MLS fields. Repeating it creates liability if the
numbers don't match.
This is worth more than 10 pages of general writing instructions. Each gotcha is a real mistake that was caught and prevented from happening again.
Give Claude Flexibility, Not a Script
Because you'll use the same skill in many different situations, avoid writing step-by-step scripts that lock Claude into one exact flow. Instead, write constraints — things Claude should always do or never do — and let it figure out the best approach for each situation.
| Too Rigid | Better: Constraints |
|---|---|
| "Step 1: Write a 50-word hook. Step 2: List 3 features. Step 3: Write a 100-word conclusion." | "Keep descriptions under 250 words. Lead with lifestyle, not features. Always mention the neighborhood and school district." |
| "Always start the email with 'Hi [Name], thank you for your interest in...'" | "Use a warm, personal tone. Reference something specific about their inquiry when possible. Never open with a generic greeting." |
The Description Field: Your Trigger
Every skill has a description field. This isn't a summary for humans — it's what Claude reads to decide whether to use this skill. Write it in terms of when to activate.
"A skill for writing listing descriptions for residential properties in the Colorado Springs market."
"Use when writing MLS descriptions, property marketing copy, listing narratives, or any customer-facing property text. Trigger on: new listing, listing description, property description, MLS copy, listing launch."
The strong version gives Claude a clear list of situations where this skill applies. The more trigger words you include, the more reliably Claude will use the skill when it should.
Pick a task you do every week. Write down 3 things Claude would get wrong if it tried to do it without your guidance. Congratulations — you just wrote the start of a Gotchas section for your first skill.
- Because Claude can't follow step-by-step instructions
- Because skills are reused across different situations, and constraints adapt better than rigid scripts
- Because constraints use less storage space
- Because step-by-step instructions are a security risk
Organizing Your Skill With File Structure
The way you organize your skill folder directly affects how well Claude uses it. Think of it as designing a filing cabinet that an AI agent can navigate.
Progressive Disclosure: Show What's Needed, When It's Needed
Claude has a limited amount of information it can hold in its "working memory" at one time (called a context window). If you cram everything into one massive file, Claude has to process all of it upfront — even the parts that aren't relevant to the current task.
The solution is progressive disclosure: put the main instructions in SKILL.md, and put detailed references in separate files. Tell Claude those files exist, and it will read them only when it needs them.
The SKILL.md Is Your Table of Contents
Think of SKILL.md as the top sheet on a file folder. It tells Claude the big picture and points to where the details live.
transaction-coordinator/
SKILL.md ← Main instructions + table of contents
config.json ← Brokerage name, agent info, timezone
references/
timeline.md ← Day-by-day transaction timeline
compliance-checklist.md ← Required docs by transaction type
gotchas.md ← Common mistakes + fixes
vendor-contacts.md ← Title companies, inspectors, lenders
templates/
buyer-milestone-email.md ← Template for buyer status updates
seller-milestone-email.md ← Template for seller status updates
closing-checklist.md ← Final walkthrough + closing day checklist
scripts/
deadline-calculator.py ← Calculates key dates from contract date
examples/
smooth-transaction.md ← Example of a well-coordinated deal
problem-transaction.md ← Example of one that went sideways + lessons
When you say "Send the buyer a 2-week update," Claude reads SKILL.md, opens the buyer milestone email template, checks the timeline reference for what should be happening at the 2-week mark, and generates the email. It doesn't load the seller templates, the vendor contacts, or the closing checklist — because those aren't needed yet.
Give Claude Runnable Code
One of the most powerful things you can include in a skill is scripts that Claude can actually run. Instead of spending its energy writing code from scratch, Claude uses your pre-built tools and focuses on the decisions and composition.
Imagine a skill that includes scripts for pulling MLS data, calculating market stats, and comparing neighborhoods. When you ask "How's the 80920 market doing?" Claude doesn't build the data pipeline from scratch. It runs your scripts, gets the numbers, and spends its effort on writing an insightful analysis.
Your first skill can be just a SKILL.md and a gotchas.md. That's enough to be useful. Add templates, scripts, and references over time as you see what Claude needs.
- Gradually revealing the skill's features to the user over time
- Organizing detailed information in separate files so Claude only loads what's relevant to the current task
- A security feature that restricts Claude's access to certain files
- A way to make skills load faster on slow internet connections
Setup, Memory & Safety Hooks
Skills that configure themselves, remember what happened last time, and activate guardrails when working on sensitive tasks.
Setup: Configuring a Skill for Your Business
Some skills need specific information about you before they can run. Which brokerage are you with? What's your MLS ID? What Slack channel does your team use?
The clean way to handle this: store it in a config.json file inside the skill. On first run, if the config is missing, Claude asks you for the info and saves it. After that, it just works.
// config.json
{
"agent_name": "Brandon",
"brokerage": "The Ridgeline Group",
"crm_system": "Follow Up Boss",
"response_time_target": "5 minutes",
"default_greeting": "personal and warm, not scripted",
"market_area": "Colorado Springs",
"military_focus": true,
"slack_channel": "#new-leads"
}
The SKILL.md would include: "Check config.json first. If it doesn't exist, ask the user for each field before proceeding."
This way, the skill works for anyone on your team — each person just configures it once with their own info.
Memory: Skills That Learn From Past Runs
Skills can store data between uses — creating a form of memory. This can be as simple as a text log file or as structured as a small database.
Your "market update" skill saves each report it generates to a log. The next week, it reads its own history and can say "Median price in 80920 is up 3.2% from last week's report." Without memory, it would generate each report in isolation with no continuity.
Data saved inside the skill folder can get deleted when you update the skill. For anything you want to keep long-term, use the stable storage folder: ${CLAUDE_PLUGIN_DATA}. Think of the skill folder as a rental — the stable folder is property you own.
On-Demand Hooks: Situational Guardrails
Sometimes you want extra safety rules, but not all the time. On-demand hooks are guardrails that activate only when you call a specific skill, and last for that session only.
| Hook | What It Does | When You'd Use It |
|---|---|---|
/compliance-mode | Blocks any output that hasn't been checked against Fair Housing, advertising regs, and your brokerage policies | When writing any public-facing content |
/careful | Prevents any destructive actions — no deleting files, no sending emails, no modifying CRM records | When you're testing a new automation and don't want it to accidentally contact clients |
/read-only | Claude can analyze and report, but can't change anything | When you want market analysis but don't want Claude touching your data |
These hooks are defined inside the skill's configuration and only activate when you invoke that skill. They're not running in the background all the time.
- It's required by Claude Code and the skill won't work without it
- It stores user-specific settings so the skill can be personalized per person without changing the core instructions
- It controls which team members have access to the skill
- It's where Claude saves its conversation history
Hands-On: Build a Lead Follow-Up Skill
Let's put everything together and build a complete, practical skill from scratch — a lead follow-up system for real estate.
What We're Building
A skill that takes a new lead (name, inquiry source, property interest, and any notes) and produces a personalized follow-up plan: an initial response, a 3-day check-in, and a 7-day nurture message — all in your voice and tailored to the lead's situation.
Step 1: Create the Folder
lead-follow-up/
SKILL.md
config.json
references/
gotchas.md
lead-sources.md
templates/
initial-response.md
day3-checkin.md
day7-nurture.md
examples/
military-pcs-lead.md
zillow-inquiry.md
Step 2: Write SKILL.md
# Lead Follow-Up Skill
## When to Use
Generate a personalized follow-up sequence for new real
estate leads. Produces 3 messages: initial response,
day-3 check-in, and day-7 nurture.
## Setup
Check config.json for agent details. If missing, ask the
user for: agent name, brokerage, market area, and
whether they specialize in military relocation.
## Instructions
1. Read the lead information provided by the user
2. Check references/lead-sources.md for source-specific
guidance (Zillow leads need different handling than
referrals)
3. Generate 3 messages using the templates in templates/
4. Personalize based on lead details — never send
anything generic
5. Check references/gotchas.md before finalizing
## Constraints
- Tone: warm, personal, service-first. Never salesy.
- Always reference something specific about their inquiry
- If military: mention PCS experience and base familiarity
- Keep initial response under 150 words
- Never promise specific outcomes ("I'll find you the
perfect home") — use service language instead
("I'll make sure you have everything you need")
- Include a clear but soft call to action in each message
## References
- references/gotchas.md — common mistakes to avoid
- references/lead-sources.md — how to adjust by source
- See templates/ for message frameworks
- See examples/ for complete follow-up sequences
Step 3: Write the Gotchas
# Gotchas — Lead Follow-Up
- Never start with "I saw you were looking at..."
It feels surveillance-y. Start with a warm intro
and then naturally reference the property.
- Zillow leads often submit on multiple homes. Don't
assume the specific property is "the one." Ask about
their overall search.
- Military leads: use "PCS" naturally — it signals you
understand their world. Don't overexplain military
terms they already know.
- Don't include your phone number in every message.
It reads as desperate. Include it once in the initial
response, then reference it casually if needed.
- The day-7 nurture should provide VALUE (market insight,
neighborhood tip, or a relevant listing) — not another
"just checking in" message. Nobody wants that.
- If the lead mentioned a timeline ("moving in June"),
reference it. Time-awareness builds trust.
- Never use "Hope this email finds you well." Just don't.
Step 4: Add a Template
# Initial Response Template
## Structure
1. Warm, personal greeting (not "Dear" — too formal)
2. Reference something specific about their inquiry
3. Brief credibility signal (1 sentence max — don't
list awards or years of experience)
4. Offer something helpful (a resource, a question
to help narrow their search, or a specific insight)
5. Soft CTA — make it easy to reply
## Length
100-150 words. Respect their time.
## Tone
Like a knowledgeable friend who happens to be in
real estate, not a salesperson who happens to be
friendly.
Step 5: Add an Example
# Example: Military PCS Lead
## Lead Info
- Name: SSG Torres
- Source: Google search "homes near Fort Carson"
- Notes: PCS from Fort Hood, arriving July, family of 4
## Initial Response
Hi Torres family —
Welcome to Colorado Springs! Making the move from
Hood to Carson is a big transition, and I want to
make sure the housing part of it is the easiest thing
on your list.
A few quick things that'll save you time: Fountain
and Widefield have the shortest commute to Carson's
main gate. If school ratings are a priority, District
20 (north side) consistently ranks highest, though
the commute adds about 15 minutes.
I put together a quick neighborhood comparison for
PCS families — happy to send it over if that'd be
helpful. What's your biggest priority for the move?
Brandon
The Ridgeline Group
719-XXX-XXXX
Notice how every piece of this skill is built from real knowledge — not generic AI instructions. The gotchas come from real mistakes. The templates encode your actual process. The examples show what your voice sounds like. That's what makes a skill valuable.
- Because "checking in" emails violate CAN-SPAM regulations
- Because "just checking in" provides no value to the lead — a market insight or useful resource builds trust and keeps them engaged
- Because Claude can't write "checking in" emails properly
- Because day-7 messages should always be about pricing
Sharing Skills With Your Team
You've built skills that work. Now it's time to get them into the hands of everyone on your team — and keep them from turning into a mess.
Two Ways to Share
Option 1: Check Into Your Shared Workspace
The simplest approach. Put your skills in a shared folder (like .claude/skills/ in a shared repository or drive). Anyone with access gets the skills automatically.
Best for: Small teams (2-5 people), a few skills, everyone uses the same workflows.
Downside: Every skill adds to Claude's context. As the library grows, this overhead adds up.
Option 2: Plugin Marketplace
Package skills as plugins and let team members choose which ones to install. This is like an app store for your team's AI tools.
Best for: Larger teams, many skills, different roles need different tools.
Downside: More setup. Requires some organization to manage.
How Skills Surface Organically
Anthropic doesn't have a committee that approves skills. They let the best ones emerge naturally:
| Stage | What Happens | Real Estate Equivalent |
|---|---|---|
| 1. Build | Someone builds a skill for their own use | You create a listing launch checklist that works |
| 2. Share | They share it informally (Slack, email) | You send it to a couple agents: "Hey, try this" |
| 3. Traction | Others try it and start using it regularly | Three more agents adopt it without being asked |
| 4. Promote | It moves into the official library | It becomes part of your team's standard toolkit |
It's easy to create bad or duplicate skills. If your team starts building without coordination, you'll end up with three different "listing description" skills that all conflict. Establish a light curation process before things get messy — even something as simple as "post new skills in the #ai-tools channel for feedback before adding to the shared folder."
- As soon as you have more than one skill
- When your team is large enough that not everyone needs every skill, and the context overhead is becoming a problem
- Marketplaces are always better — start there from day one
- Only when Anthropic requires it
Composing Skills & Measuring Results
Making skills work together as a system, and tracking whether they're actually being used.
Skills That Call Other Skills
The real power comes when skills work together. You can reference one skill from another, and Claude will chain them if both are installed.
Imagine you have these individual skills:
- listing-description — writes the MLS narrative
- social-media-posts — creates platform-specific posts
- email-blast — writes the database email
- compliance-check — reviews everything for Fair Housing and ad regulations
A "listing-launch" skill could reference all four: "Write the description using the listing-description skill, create social posts using social-media-posts, draft the email using email-blast, then run compliance-check on all outputs before finalizing."
One command. Four skills. Complete listing launch package.
There's no automatic dependency resolution yet. You simply reference other skills by name in your SKILL.md, and Claude invokes them if they're installed. If a referenced skill is missing, Claude will try its best without it — so make sure your team has the full set installed.
Measuring Skill Usage
Once you have skills in production, you need to know if they're actually being used. Anthropic tracks this with a PreToolUse hook that logs every skill invocation. This surfaces two critical signals:
| Signal | What It Tells You | What to Do |
|---|---|---|
| Trigger rate | Is the skill activating when it should? | Low trigger rate? Rewrite the description with better trigger words. |
| Adoption | How many people are using it? | Low adoption? Either the skill solves the wrong problem or people don't know about it. |
The Iteration Cycle
The best skills aren't built in a day. They evolve through a continuous feedback loop:
- Claude gets something wrong → add it to the Gotchas
- A team member has trouble → clarify the instructions
- Your APIs or tools change → update the references
- Usage data shows undertriggering → refine the description
- A new use case emerges → add a template or example
Most of Anthropic's best skills started as a few lines and a single gotcha. They got better because people kept adding to them as Claude hit new edge cases. Don't wait for perfection — ship a v1 and improve.
- Rewrite the entire SKILL.md with more detailed instructions
- Delete the skill and rebuild from scratch
- Rewrite the description field with better trigger words that match how people actually phrase requests
- Move the skill to a different folder
Hands-On: Build a Full Listing Launch System
Time to put it all together. We'll design a multi-skill system that handles your entire listing launch workflow — from photos received to marketing live.
The Problem We're Solving
A typical listing launch involves writing MLS copy, creating social posts for 3+ platforms, drafting an email to your database, preparing a property flyer, writing ad copy, and reviewing everything for compliance. Doing this manually takes 2-4 hours per listing. A skill-based system can reduce that to minutes of review time.
System Architecture
We'll build five focused skills that work together:
Purpose: Generate the MLS narrative and property description.
Key files:
references/neighborhoods.md— selling points for each neighborhoodreferences/gotchas.md— Fair Housing, accuracy, tone rulestemplates/single-family.md,condo.md,land.md
Constraints: Lead with lifestyle. No "luxury" below $750K. Always name the school district. Never state square footage in narrative.
Purpose: Create platform-specific social media posts from listing details.
Key files:
references/platform-specs.md— character limits, hashtag rules, image specs per platformtemplates/instagram.md,facebook.md,tiktok-hook.md
Constraints: Each platform gets unique content (no copy-paste across platforms). Hooks should be curiosity-driven. No "Just listed!" as a hook — it's overused.
Purpose: Draft the listing announcement email for your database.
Key files:
templates/new-listing-email.md— structure and tone guidereferences/subject-lines.md— what works, what doesn't
Constraints: Subject line under 50 characters. No ALL CAPS. CTA should be "See the details" or similar — not "Schedule a showing NOW!"
Purpose: Review all outputs against Fair Housing, advertising regulations, and brokerage policies.
Key files:
references/fair-housing-flags.md— words and phrases to flagreferences/brokerage-requirements.md— required disclaimers, logo rulesscripts/flag-checker.py— automated scan for flagged terms
Constraints: Err on the side of caution. Flag anything questionable. Never auto-approve — always present findings for human review.
Purpose: Coordinate all four skills above into a single workflow.
# Listing Launch Skill — SKILL.md
## When to Use
When launching a new listing. Trigger on: new listing,
listing launch, just listed, go live, listing package.
## Workflow
1. Collect property details from the user (or read from
provided document)
2. Use the listing-description skill to write the MLS copy
3. Use the social-content skill to create posts for each
platform
4. Use the email-campaign skill to draft the database email
5. Use the compliance-review skill to check ALL outputs
6. Present everything to the user for final review
7. Save all outputs to a dated folder:
listings/[address]-[date]/
## Important
- Never publish anything without human review
- Flag any compliance findings prominently at the top
- Include a summary of what was generated and any items
needing attention
The Result
With this system in place, you say: "Launch listing for 1234 Oak Street, 80920 — 4 bed, 3 bath, 2800 sq ft, Briargate North, District 20 schools, mountain views from the deck."
Claude generates all your marketing materials, runs compliance review, and saves everything to a folder for your approval. What used to take hours becomes a 10-minute review.
You don't need all five skills on day one. Start with listing-description. Once it's working well, add social-content. Then email-campaign. Then compliance-review. Then the orchestrator that ties them together. Each one is useful on its own — together they're a system.
- Because Claude Code can't actually publish content
- Because AI-generated marketing content should always have a human reviewing for accuracy, compliance, and brand alignment before it goes public
- Because auto-publishing would use too much computing power
- Because it's a legal requirement for all AI tools
Your Action Plan
Everything you've learned, condensed into a reference and a concrete next-steps plan you can start on today.
Key Principles — Quick Reference
| Principle | What It Means |
|---|---|
| Skills are folders | Include instructions, references, templates, scripts, examples, and config |
| 9 categories | Reference, Verification, Data, Automation, Scaffolding, Quality, Deployment, Runbooks, Operations |
| Don't state the obvious | Focus on what Claude doesn't know — your market, your rules, your gotchas |
| Gotchas are gold | Build from real failures. Add to it every time Claude gets something wrong. |
| Progressive disclosure | SKILL.md is the overview; details live in subfolders Claude reads on demand |
| Constraints over scripts | Tell Claude what to always/never do. Let it figure out the how. |
| Descriptions are triggers | Write for the model, not for humans. List the situations where the skill should activate. |
| Config for personalization | Use config.json so the same skill works for everyone on the team |
| Memory persists | Store data in ${CLAUDE_PLUGIN_DATA} for continuity between runs |
| Hooks for safety | Activate guardrails only when needed — compliance mode, read-only, careful mode |
| Compose skills | Reference skills by name. Build individual tools, then orchestrate them. |
| Measure and iterate | Track trigger rates. Refine descriptions. Add gotchas. Ship v1, improve forever. |
Your 30-Day Action Plan
Week 1: Your First Skill
- Pick one repetitive task (listing descriptions, lead follow-up, or market updates)
- Create a skill folder with SKILL.md and a Gotchas section
- Add one template and one example
- Test it on a real task. Note what Claude gets wrong. Add it to Gotchas.
Week 2: Add Depth
- Add progressive disclosure: move details into references/ subfolders
- Create a config.json with your personal settings
- Add 2-3 more gotchas based on your testing
- Write a strong description field with trigger words
Week 3: Build a Second Skill
- Choose a different category from the 9 types
- Build it faster this time using what you learned
- Share both skills with one teammate for feedback
Week 4: Connect and Scale
- Create an orchestrator skill that references your first two skills
- Set up your team's shared skill folder or marketplace
- Document your skill-building process so others can contribute
- Identify the next 3 skills your team needs most
Claude Code includes a Skill Creator tool that can help you build skills faster. Use the /skill-creator command to get started. And most importantly — don't wait for perfection. The best skills started as a few lines and got better over time.