@rubytech/create-realagent 1.0.847 → 1.0.850

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/dist/__tests__/port-canonicalisation.test.js +1 -0
  2. package/dist/__tests__/snap-chromium.test.js +115 -0
  3. package/dist/index.js +201 -1
  4. package/dist/port-resolution.js +1 -1
  5. package/dist/snap-chromium.js +89 -0
  6. package/package.json +1 -1
  7. package/payload/platform/plugins/admin/skills/onboarding/SKILL.md +1 -1
  8. package/payload/platform/plugins/admin/skills/public-agent-manager/SKILL.md +2 -2
  9. package/payload/platform/plugins/cloudflare/PLUGIN.md +1 -1
  10. package/payload/platform/plugins/cloudflare/scripts/setup-tunnel.sh +25 -7
  11. package/payload/platform/plugins/cloudflare/skills/setup-tunnel/SKILL.md +1 -1
  12. package/payload/platform/plugins/docs/references/adherence.md +1 -1
  13. package/payload/platform/plugins/docs/references/deployment.md +8 -0
  14. package/payload/platform/plugins/docs/references/plugins-guide.md +4 -2
  15. package/payload/platform/plugins/docs/references/troubleshooting.md +33 -0
  16. package/payload/platform/plugins/linkedin-import/PLUGIN.md +2 -2
  17. package/payload/platform/plugins/linkedin-import/skills/linkedin-import/references/connections.md +2 -2
  18. package/payload/platform/plugins/memory/PLUGIN.md +1 -1
  19. package/payload/platform/plugins/memory/references/schema-base.md +1 -1
  20. package/payload/platform/scripts/test-laptop-vnc-boot.sh +81 -0
  21. package/payload/platform/scripts/vnc.sh +42 -2
  22. package/payload/platform/templates/agents/admin/AGENTS.md +6 -4
  23. package/payload/platform/templates/agents/admin/IDENTITY.md +6 -2
  24. package/payload/platform/templates/specialists/agents/content-producer.md +2 -2
  25. package/payload/premium-plugins/real-agency/BUNDLE.md +3 -3
  26. package/payload/premium-plugins/real-agency/agents/valuer.md +10 -0
  27. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/SKILL.md +42 -0
  28. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/buyer-qualification-questions.md +16 -0
  29. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/buyer-qualification.md +59 -0
  30. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/buyer-scripts.md +63 -0
  31. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/buyer-working-scripts.md +54 -0
  32. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/feedback-collection.md +42 -0
  33. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/offer-capture.md +38 -0
  34. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/viewing-booking.md +32 -0
  35. package/payload/premium-plugins/real-agency/plugins/buyers/skills/buyer-management/references/viewing-management.md +52 -0
  36. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/negotiation/SKILL.md +35 -0
  37. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/negotiation/references/deal-saving.md +47 -0
  38. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/negotiation/references/negotiation-deep-guide.md +64 -0
  39. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/negotiation/references/negotiation-prep-principles.md +29 -0
  40. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/negotiation/references/negotiation-techniques.md +42 -0
  41. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/negotiation/references/offer-presentation.md +43 -0
  42. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/sales-negotiation/SKILL.md +29 -0
  43. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/sales-negotiation/references/chris-voss-negotiation.md +70 -0
  44. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/sales-negotiation/references/phil-jones-price-words.md +40 -0
  45. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/sales-negotiation/references/serhant-negotiation-plus.md +55 -0
  46. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/sales-negotiation/references/tom-panos-commission-pricing.md +57 -0
  47. package/payload/premium-plugins/real-agency/plugins/estate-sales/skills/sales-negotiation/references/tony-morris-questioning.md +54 -0
  48. package/payload/premium-plugins/real-agency/plugins/loop/mcp/dist/lib/loop-api.d.ts +6 -4
  49. package/payload/premium-plugins/real-agency/plugins/loop/mcp/dist/lib/loop-api.d.ts.map +1 -1
  50. package/payload/premium-plugins/real-agency/plugins/loop/mcp/dist/lib/loop-api.js +82 -10
  51. package/payload/premium-plugins/real-agency/plugins/loop/mcp/dist/lib/loop-api.js.map +1 -1
  52. package/payload/premium-plugins/real-agency/plugins/loop/mcp/src/lib/loop-api.ts +111 -15
  53. package/payload/server/chunk-DIRNBH7F.js +1603 -0
  54. package/payload/server/chunk-GOO2J3X7.js +10561 -0
  55. package/payload/server/chunk-LCAFHNZR.js +10420 -0
  56. package/payload/server/chunk-X3LVMXI5.js +10578 -0
  57. package/payload/server/client-pool-7Z6YRUQT.js +34 -0
  58. package/payload/server/maxy-edge.js +2 -2
  59. package/payload/server/public/assets/{admin-DFUet1XM.js → admin-Dyl8uNxX.js} +1 -1
  60. package/payload/server/public/assets/{architectureDiagram-Q4EWVU46-Bs5MjIKf.js → architectureDiagram-Q4EWVU46-BePoi8XC.js} +1 -1
  61. package/payload/server/public/assets/{blockDiagram-DXYQGD6D-BVSXiX4T.js → blockDiagram-DXYQGD6D-BkiwLTtq.js} +1 -1
  62. package/payload/server/public/assets/{c4Diagram-AHTNJAMY-DBqsWCjl.js → c4Diagram-AHTNJAMY-bpjPj2Ln.js} +1 -1
  63. package/payload/server/public/assets/channel-D3U0_a1j.js +1 -0
  64. package/payload/server/public/assets/{chunk-336JU56O-COUTB2TN.js → chunk-336JU56O-BpATJiGl.js} +2 -2
  65. package/payload/server/public/assets/{chunk-426QAEUC-zKsTsXw6.js → chunk-426QAEUC-Wz6Bpsil.js} +1 -1
  66. package/payload/server/public/assets/{chunk-4TB4RGXK-CI9i2J5g.js → chunk-4TB4RGXK-CLXL19Wd.js} +1 -1
  67. package/payload/server/public/assets/{chunk-5FUZZQ4R-DfchzZ2Y.js → chunk-5FUZZQ4R-BoTfWHuW.js} +1 -1
  68. package/payload/server/public/assets/{chunk-5PVQY5BW-_iMyxz0C.js → chunk-5PVQY5BW-RhIfPCRB.js} +1 -1
  69. package/payload/server/public/assets/{chunk-EDXVE4YY-Ddtw_ZHk.js → chunk-EDXVE4YY-utELKGQK.js} +1 -1
  70. package/payload/server/public/assets/{chunk-ENJZ2VHE-BrGMkslM.js → chunk-ENJZ2VHE-CNHjq5xK.js} +1 -1
  71. package/payload/server/public/assets/{chunk-ICPOFSXX-DHInTpuR.js → chunk-ICPOFSXX-Di63NBur.js} +1 -1
  72. package/payload/server/public/assets/{chunk-OYMX7WX6-mOQ4KZ9j.js → chunk-OYMX7WX6-BSPzqyxs.js} +1 -1
  73. package/payload/server/public/assets/{chunk-U2HBQHQK-D5vGkUe9.js → chunk-U2HBQHQK-BZnA7c4T.js} +1 -1
  74. package/payload/server/public/assets/{chunk-X2U36JSP-CnNxZbqc.js → chunk-X2U36JSP-DpQ2OA_c.js} +1 -1
  75. package/payload/server/public/assets/{chunk-YZCP3GAM-Cb7OSc_r.js → chunk-YZCP3GAM-BAkNXu0G.js} +1 -1
  76. package/payload/server/public/assets/{chunk-ZZ45TVLE-BipxpzL8.js → chunk-ZZ45TVLE-DBSm41oP.js} +1 -1
  77. package/payload/server/public/assets/classDiagram-6PBFFD2Q-6EGGLDD_.js +1 -0
  78. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-DfAV4tgE.js +1 -0
  79. package/payload/server/public/assets/clone-BoV8noAi.js +1 -0
  80. package/payload/server/public/assets/{dagre-KV5264BT-B91sXKT2.js → dagre-KV5264BT-BkvWofSp.js} +1 -1
  81. package/payload/server/public/assets/{dagre-lObrgXUJ.js → dagre-nvPNAunb.js} +1 -1
  82. package/payload/server/public/assets/{diagram-5BDNPKRD-DB2Kcx9r.js → diagram-5BDNPKRD-CMEgyt4E.js} +1 -1
  83. package/payload/server/public/assets/{diagram-G4DWMVQ6-Cq1J05SW.js → diagram-G4DWMVQ6-ChorrAF0.js} +1 -1
  84. package/payload/server/public/assets/{diagram-MMDJMWI5-CwqXxUXd.js → diagram-MMDJMWI5-D_iD27po.js} +1 -1
  85. package/payload/server/public/assets/{diagram-TYMM5635-Nmk38u6a.js → diagram-TYMM5635-8qXI1ioG.js} +1 -1
  86. package/payload/server/public/assets/{erDiagram-SMLLAGMA-D2EfAdSD.js → erDiagram-SMLLAGMA-BFjtKDSB.js} +1 -1
  87. package/payload/server/public/assets/{flowDiagram-DWJPFMVM-CS98o6Jz.js → flowDiagram-DWJPFMVM-Bpd7IL9l.js} +1 -1
  88. package/payload/server/public/assets/{ganttDiagram-T4ZO3ILL-rWm6xQ8t.js → ganttDiagram-T4ZO3ILL-CwOozU85.js} +1 -1
  89. package/payload/server/public/assets/{gitGraphDiagram-UUTBAWPF-BuwECvwx.js → gitGraphDiagram-UUTBAWPF-CcPILiC9.js} +1 -1
  90. package/payload/server/public/assets/{graphlib-BXEED8qM.js → graphlib-B_mcXEVr.js} +1 -1
  91. package/payload/server/public/assets/{infoDiagram-42DDH7IO-CEmJMuVh.js → infoDiagram-42DDH7IO-T2sn--WJ.js} +1 -1
  92. package/payload/server/public/assets/{ishikawaDiagram-UXIWVN3A-CAQMMx-Y.js → ishikawaDiagram-UXIWVN3A-DOP9-Q8H.js} +1 -1
  93. package/payload/server/public/assets/{journeyDiagram-VCZTEJTY-toHrBGCq.js → journeyDiagram-VCZTEJTY-DGATg0WC.js} +1 -1
  94. package/payload/server/public/assets/{kanban-definition-6JOO6SKY-DwXLkenV.js → kanban-definition-6JOO6SKY-C5PigmKg.js} +1 -1
  95. package/payload/server/public/assets/{line-BkM2KuUb.js → line-DlKKhwkO.js} +1 -1
  96. package/payload/server/public/assets/{mermaid-parser.core-CsaDWYZC.js → mermaid-parser.core-C8xGCa9p.js} +1 -1
  97. package/payload/server/public/assets/{mermaid.core-CvICILSR.js → mermaid.core-CCUSwZB_.js} +3 -3
  98. package/payload/server/public/assets/{mindmap-definition-QFDTVHPH-DQyCWpKS.js → mindmap-definition-QFDTVHPH-75k-IVhC.js} +1 -1
  99. package/payload/server/public/assets/{pieDiagram-DEJITSTG-CVRIcK6b.js → pieDiagram-DEJITSTG-DN5RsDwZ.js} +1 -1
  100. package/payload/server/public/assets/preload-helper-qlgyTAkD.js +1 -0
  101. package/payload/server/public/assets/{public-CR_CX3K5.js → public-B_PNZUph.js} +1 -1
  102. package/payload/server/public/assets/{quadrantDiagram-34T5L4WZ-CnfXm2xw.js → quadrantDiagram-34T5L4WZ-Sd9x6pNe.js} +1 -1
  103. package/payload/server/public/assets/{requirementDiagram-MS252O5E-BntW6fnu.js → requirementDiagram-MS252O5E-BDgifYzj.js} +1 -1
  104. package/payload/server/public/assets/{sankeyDiagram-XADWPNL6-Bt6AfgXn.js → sankeyDiagram-XADWPNL6-BX9VULNJ.js} +1 -1
  105. package/payload/server/public/assets/{sequenceDiagram-FGHM5R23-D6s0kP6H.js → sequenceDiagram-FGHM5R23-z3vMxhgE.js} +1 -1
  106. package/payload/server/public/assets/{stateDiagram-FHFEXIEX-B9y9cOff.js → stateDiagram-FHFEXIEX-DlP0hBxF.js} +1 -1
  107. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-DSddQStC.js +1 -0
  108. package/payload/server/public/assets/{timeline-definition-GMOUNBTQ-DIFjQGfl.js → timeline-definition-GMOUNBTQ-DwQbhKCo.js} +1 -1
  109. package/payload/server/public/assets/{useVoiceRecorder-DWRtIHOw.js → useVoiceRecorder-fD0IWzJj.js} +3 -3
  110. package/payload/server/public/assets/{vennDiagram-DHZGUBPP-YRVHIBU9.js → vennDiagram-DHZGUBPP-WTqmZWWa.js} +1 -1
  111. package/payload/server/public/assets/{wardleyDiagram-NUSXRM2D-B20PPeAr.js → wardleyDiagram-NUSXRM2D-BUY50x5T.js} +1 -1
  112. package/payload/server/public/assets/{xychartDiagram-5P7HB3ND-BztKw58Q.js → xychartDiagram-5P7HB3ND-Btdq-fDj.js} +1 -1
  113. package/payload/server/public/index.html +3 -3
  114. package/payload/server/public/public.html +3 -3
  115. package/payload/server/server.js +6 -3
  116. package/payload/server/public/assets/channel-lEc18pSi.js +0 -1
  117. package/payload/server/public/assets/classDiagram-6PBFFD2Q-rkW6IED-.js +0 -1
  118. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-CRQJXpMG.js +0 -1
  119. package/payload/server/public/assets/clone-icRAjexu.js +0 -1
  120. package/payload/server/public/assets/preload-helper-bPV_ZjF3.js +0 -1
  121. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-DH4gbGCS.js +0 -1
@@ -0,0 +1,42 @@
1
+ # Feedback Collection
2
+
3
+ ## Purpose
4
+
5
+ Capture honest post-viewing feedback to relay to the vendor and inform the agent's strategy. Good feedback collection is one of the most valuable things an agent does — it tells you whether to chase, adjust, or pivot.
6
+
7
+ ## Timing
8
+
9
+ Reach out within 24 hours of the viewing. Sooner is better — impressions fade.
10
+
11
+ ## Questions
12
+
13
+ Ask conversationally, not as a checklist:
14
+
15
+ 1. **Overall impression** — "How did you find the viewing? What were your first impressions?"
16
+ 2. **Positives** — "What stood out to you? What did you like most?"
17
+ 3. **Concerns** — "Were there any reservations or things that gave you pause?"
18
+ 4. **Comparison** — "How does it compare to others you've seen?" (if applicable)
19
+ 5. **Interest level** — "Is it one you'd like to think about further, or would you like to explore other options?"
20
+ 6. **Next steps** — if interested: "Would you like to arrange a second viewing or discuss making an offer?" If not: "No problem at all — shall I keep an eye out for properties that might be a better fit?"
21
+
22
+ ## Reading Between the Lines
23
+
24
+ - **"It was nice but..."** usually means no. Gently probe the "but"
25
+ - **"We need to think about it"** — ask what specifically they're weighing up
26
+ - **"We loved it"** — ask what specifically they loved (the agent uses this when presenting offers)
27
+ - **Silence / no response** — follow up once more after 48 hours, then note as unresponsive
28
+
29
+ ## Recording Feedback
30
+
31
+ Save to `memory/users/{phone}/viewings/YYYY-MM-DD-address-slug.md`:
32
+ - Date of viewing
33
+ - Property address
34
+ - Overall reaction (positive / mixed / negative)
35
+ - Key positives mentioned
36
+ - Concerns raised
37
+ - Interest level (keen / considering / not interested)
38
+ - Next action (second viewing / offer / no further action)
39
+
40
+ ## Escalation
41
+
42
+ If a buyer expresses strong interest or wants to discuss an offer, transition to offer capture immediately. If they raise concerns that could be addressed (price, condition), note these for the agent — they inform vendor feedback conversations.
@@ -0,0 +1,38 @@
1
+ # Offer Capture
2
+
3
+ ## Purpose
4
+
5
+ Gather all the information the agent needs to present an offer to the vendor professionally. You capture — the agent negotiates.
6
+
7
+ ## Information to Gather
8
+
9
+ 1. **The offer amount** — "What figure would you like to offer?"
10
+ 2. **How they arrived at it** — "How did you come to that figure?" (This helps the agent understand their thinking and position)
11
+ 3. **Their buying position:**
12
+ - Cash or mortgage?
13
+ - If mortgage: AIP confirmed? Lender? Deposit amount?
14
+ - Property to sell? Status? (Under offer, exchanged, no property)
15
+ - Chain length?
16
+ - Solicitor instructed?
17
+ 4. **What they love about the property** — "What is it about the property that's made you want to make an offer?" (the agent uses this when presenting to the vendor — emotional connection matters)
18
+ 5. **Timeline** — when would they ideally like to complete?
19
+ 6. **Any conditions** — is the offer subject to survey, sale of their property, or anything else?
20
+
21
+ ## Critical Rules
22
+
23
+ - **Never counter-offer** — you do not negotiate on behalf of the vendor
24
+ - **Never disclose other offers** — not the number, not the amount, not whether any exist
25
+ - **Never hint at what might be acceptable** — no "I think the vendor would want more" or "that's quite low"
26
+ - **Never disclose the vendor's circumstances** — their timeline, motivation, or financial position is confidential
27
+ - **Stay neutral and professional** — "I'll make sure the agent presents this to the seller and they'll be in touch to discuss"
28
+
29
+ ## After Capture
30
+
31
+ 1. Save the offer to `memory/users/{phone}/offers/YYYY-MM-DD-address-slug.md`
32
+ 2. Include all gathered details
33
+ 3. **Escalate to the agent immediately** — offers are time-sensitive
34
+ 4. Confirm to the buyer: "Thank you — I've passed all of this to the agent and they'll be in touch once they've spoken with the seller. Is there anything else you'd like me to include?"
35
+
36
+ ## Multiple Offers
37
+
38
+ If another buyer also wants to offer on the same property, capture their details separately. Never mention the other offer. The agent manages the best-and-final process if needed.
@@ -0,0 +1,32 @@
1
+ # Viewing Booking
2
+
3
+ ## Purpose
4
+
5
+ Convert a qualified buyer into a confirmed viewing. Make it easy, organised, and professional.
6
+
7
+ ## Booking Flow
8
+
9
+ 1. **Confirm the property** — make sure you're both talking about the same one
10
+ 2. **Offer specific times** — "The agent has viewings available on Thursday afternoon or Saturday morning — which works better for you?" Two options, not open-ended
11
+ 3. **Confirm attendees** — will it be just them, or partner/family too? This helps the agent prepare
12
+ 4. **Set expectations** — the agent conducts all viewings personally. They'll walk them through the property and answer any questions on the day
13
+ 5. **Confirm details** — repeat the time, date, property address, and their name
14
+
15
+ ## Important
16
+
17
+ - Viewings are arranged on set days where possible to be respectful of the seller's time
18
+ - If the buyer's preferred time clashes, offer the next available slot — don't leave it hanging
19
+ - If the property has high interest, mention this factually ("there's been good interest this week") but never fabricate urgency
20
+ - Always confirm the buyer has been qualified before booking — if not, qualify first
21
+
22
+ ## After Booking
23
+
24
+ - Save the viewing to `memory/users/{phone}/viewings/YYYY-MM-DD-address-slug.md`
25
+ - Include: date, time, property address, buyer name, their position, any notes
26
+ - If shared calendar is available, create the event there too
27
+
28
+ ## Cancellations and Rescheduling
29
+
30
+ - Be understanding — things come up
31
+ - Offer an alternative promptly
32
+ - If a buyer cancels twice without rescheduling, note it in their profile — they may be going cold
@@ -0,0 +1,52 @@
1
+ # Viewing Management
2
+
3
+ Handles the full lifecycle of property viewings — from booking through to post-viewing follow-up.
4
+
5
+ ## Booking a Viewing
6
+
7
+ When a buyer requests a viewing:
8
+
9
+ 1. **Confirm the property** — match their request to a known listing. If ambiguous, ask.
10
+ 2. **Collect buyer details** (if new contact): full name, phone, email (optional), chain status, mortgage position
11
+ 3. **Check availability** — look at `memory/shared/events/` for conflicts
12
+ 4. **Propose 2-3 time slots** — default 30 minutes; 45 min for large/rural properties
13
+ 5. **Confirm in writing:** property address, date/time, duration, who will conduct, access instructions
14
+ 6. **Create calendar event** in both:
15
+ - `memory/shared/events/YYYY-MM-DD-viewing-{property-slug}.md`
16
+ - `memory/users/{buyer-phone}/events/YYYY-MM-DD-viewing-{property-slug}.md`
17
+
18
+ ## Rescheduling
19
+
20
+ 1. Find the existing event in `memory/shared/events/`
21
+ 2. Confirm the new date/time with the buyer
22
+ 3. Update both event files (shared + user)
23
+ 4. Change status to `rescheduled` and add a note with the original date
24
+ 5. Confirm the change in writing
25
+
26
+ ## Cancellations
27
+
28
+ 1. Update event status to `cancelled`
29
+ 2. Add cancellation reason and who cancelled
30
+ 3. Confirm to the buyer
31
+ 4. If vendor-side cancellation, apologise and offer alternatives
32
+
33
+ ## Reminders
34
+
35
+ - **24 hours before:** Confirmation reminder with address and time
36
+ - **Morning of:** Brief reminder with any last-minute access details
37
+ - Use the cron/events tool for scheduling these
38
+
39
+ ## Schedule Summaries
40
+
41
+ When the agent needs an overview:
42
+ 1. List all viewing events from `memory/shared/events/` for the requested period
43
+ 2. Present chronologically: time, property, buyer name, conducted by
44
+ 3. Flag conflicts or tight turnarounds (< 30 min between viewings at different properties)
45
+
46
+ ## Rules
47
+
48
+ - **Never double-book** a property or team member at the same time
49
+ - **Always confirm in writing** — verbal confirmations are not sufficient
50
+ - **Vendor preferences matter** — some vendors don't want viewings at certain times, or require notice
51
+ - **Access instructions are confidential** — never share lockbox codes or key locations with anyone other than the conducting agent
52
+ - **No-shows** — record on buyer's profile. Two no-shows = flag to agent before further bookings
@@ -0,0 +1,35 @@
1
+ ---
2
+ name: negotiation
3
+ description: "Handle offer presentation, deal saving, multi-offer scenarios, and negotiation preparation. Agent captures and prepares — the business owner negotiates."
4
+ publicEmbed: false
5
+ ---
6
+
7
+ # Negotiation
8
+
9
+ Provides guidance on the information-gathering and preparation side of negotiations. The agent never negotiates directly — the business owner handles all negotiation — but the agent prepares the ground.
10
+
11
+ ## When to Activate
12
+
13
+ An offer has been received, a deal is at risk of falling through, a multi-offer situation is developing, or preparation is needed for a pricing conversation.
14
+
15
+ ## Reference Table
16
+
17
+ | Task | When | Reference |
18
+ |------|------|-----------|
19
+ | Negotiation prep (principles + checklist) | Immediately after an offer / counter / wobble | `references/negotiation-prep-principles.md` |
20
+ | Five techniques + tactical principles | Deep preparation for complex negotiations | `references/negotiation-techniques.md` |
21
+ | Deep negotiation guide (Serhant) | Interests vs positions, comp reports, silence | `references/negotiation-deep-guide.md` |
22
+ | Offer presentation prep | Offer received, needs presenting to vendor | `references/offer-presentation.md` |
23
+ | Deal saving | Agreed sale at risk of collapse | `references/deal-saving.md` |
24
+
25
+ ## Key Rules
26
+
27
+ - The agent NEVER negotiates — no counter-offers, no hints, no pressure
28
+ - Information asymmetry is critical — never disclose vendor circumstances to buyers or vice versa
29
+ - Speed matters — offers and at-risk deals are time-sensitive, always escalate promptly
30
+ - Frame the business owner as the negotiation expert
31
+ - Negotiate for the DEAL, not to "win" — mutually beneficial outcomes
32
+ - Interests over positions — understand WHY, not just WHAT
33
+ - Always know three numbers before entering: first offer, best target, walkaway
34
+ - Let silence do the heavy lifting — present your point, then wait
35
+ - Precise counter-numbers give credibility (£298,450 not £300,000)
@@ -0,0 +1,47 @@
1
+ # Deal Saving
2
+
3
+ ## Purpose
4
+
5
+ When an agreed sale is at risk of collapsing, identify the issue and help the agent resolve it. Around 30% of agreed sales fall through — the agent's role is to minimise that number through proactive management.
6
+
7
+ ## Common Reasons Deals Fail
8
+
9
+ ### Survey Issues
10
+ - Down-valuation (lender values below purchase price)
11
+ - Structural concerns flagged
12
+ - Costly repairs identified
13
+
14
+ **Agent's role:** Gather the specific concerns. What exactly did the survey say? What's the buyer's reaction? Are they willing to proceed at a lower price, or do they want the issue fixed first? Compile for the agent.
15
+
16
+ ### Chain Breaks
17
+ - Someone further up or down the chain pulls out
18
+ - A related sale falls through
19
+
20
+ **Agent's role:** Map the chain clearly. Who has fallen out? What are the options — can the affected party find an alternative quickly? Is there a chain-break solution (bridging finance, temporary rental)?
21
+
22
+ ### Buyer Cold Feet
23
+ - Found another property
24
+ - Change in financial circumstances
25
+ - Emotional uncertainty
26
+
27
+ **Agent's role:** Understand what's changed. Is it fixable? Remind them (gently) why they fell in love with the property. But never pressure — if they've genuinely changed their mind, it's better to know now.
28
+
29
+ ### Solicitor Delays
30
+ - Slow searches, unresponsive solicitors, missing paperwork
31
+
32
+ **Agent's role:** Identify the bottleneck. Which solicitor? What's outstanding? How long have they been waiting? The agent can then apply pressure directly.
33
+
34
+ ### Vendor Changes Mind
35
+ - Changed circumstances, emotional attachment, second thoughts
36
+
37
+ **Agent's role:** Listen, understand, flag to the agent immediately. This is a sensitive conversation the agent should lead.
38
+
39
+ ## Escalation
40
+
41
+ All deal-saving situations should be flagged to the agent with:
42
+ - What the issue is (specific, not vague)
43
+ - What the parties have said
44
+ - What the options appear to be
45
+ - How time-sensitive it is
46
+
47
+ Speed matters. A wobble that's caught in 24 hours is often saveable. A wobble that festers for a week becomes a collapse.
@@ -0,0 +1,64 @@
1
+ # Negotiation Deep Guide
2
+ *Adapted from Serhant Closing & Negotiation Guide*
3
+
4
+ ## Three Fundamentals
5
+
6
+ 1. **You're working for the DEAL** — not to "win"
7
+ 2. **Playing for the other side to win** — when they win, you win
8
+ 3. **Put interests over ego** — hard on the problem, soft on the person
9
+
10
+ ## Interests vs Positions
11
+
12
+ Positions are what people SAY they want. Interests are WHY they want it.
13
+
14
+ **Example:** Buyer says can't go above £485k. Why?
15
+ - Can't secure a larger mortgage
16
+ - Needs renovation budget factored in
17
+ - Hasn't sold yet
18
+ - Monthly payment concern
19
+
20
+ **Vendor says won't go below £500k. Why?**
21
+ - Needs the money for next purchase
22
+ - Emotional attachment to what they paid
23
+ - Not in a rush
24
+
25
+ **If you know the interests, you may bridge the gap creatively** — timelines, fixtures, completion dates.
26
+
27
+ ## Preparation: Three Numbers
28
+
29
+ 1. **First offer** — opening position (supported by evidence)
30
+ 2. **Best target** — realistic hope (NEVER share)
31
+ 3. **Walkaway** — absolute limit (set BEFORE emotions kick in)
32
+
33
+ ## Five Techniques
34
+
35
+ ### 1. "The Pull"
36
+ Pull the deal away when it drags and your side wants it more.
37
+
38
+ ### 2. "The Facts"
39
+ Pull the comps. Present the evidence. Hard to argue with data.
40
+
41
+ ### 3. "What Do You Want To Do?"
42
+ When the deal is fair — put the decision in their hands.
43
+
44
+ ### 4. "The Emotions"
45
+ "£10k over budget, spread over 10 years, is £1,000 a year. Is this home worth that?"
46
+
47
+ ### 5. "The Reality"
48
+ Sometimes the truth hurts. The best agents tell it.
49
+
50
+ ## Tactical Principles
51
+
52
+ - **Reciprocity** — offer something, ask something in return
53
+ - **No hostile emotions** — agents are shock absorbers
54
+ - **Silence** — present your point, then SHUT UP
55
+ - **Decoy** — ask for something expendable first, then win what matters
56
+ - **Gradual persuasion** — tugboats, not rams
57
+ - **Precise numbers** — £298,450 not £300,000
58
+
59
+ ## Comparable Reports
60
+
61
+ - Start with the building/street — most recent sales first
62
+ - Comp realistically — explain outliers
63
+ - More recent = better — nothing over 12 months
64
+ - Comps should never make a seller feel bad — they're helpful tools
@@ -0,0 +1,29 @@
1
+ # Negotiation prep — principles + preparation (Serhant)
2
+
3
+ Your role is **prep and information capture**. The agent negotiates.
4
+
5
+ ## Three principles
6
+ 1) **Work for the deal** (not to "win")
7
+ 2) **When the other side wins, you win** (find mutual gain)
8
+ 3) **Put interest over ego**
9
+
10
+ ## Interests vs positions
11
+ - People state **positions** ("£500k", "I won't move") but act on **interests** (timing, fear, certainty, renovations, chain risk).
12
+ - Ask "**Why?**" to uncover interests on both sides.
13
+ - Avoid "split the difference" by default. Look for creative ways to bridge the gap.
14
+
15
+ ## Prep checklist (before the agent calls)
16
+ - Buyer's position: offer amount, conditions, timeframes, chain status, mortgage readiness.
17
+ - Buyer's interests: what's driving the number (affordability, renovations, risk, other bids).
18
+ - Seller's interests (if known): urgency, onward purchase, risk tolerance, certainty vs price.
19
+ - Evidence: key comps + story (why the offer is rational, what the market is saying).
20
+ - 3 numbers (conceptual):
21
+ - **First offer**
22
+ - **Best target** (never share)
23
+ - **Walkaway** (seller's minimum / buyer's max)
24
+
25
+ ## Script fragments (safe for an assistant)
26
+ - "So I can brief the agent properly, what's driving that number for you?"
27
+ - "If that figure isn't accepted, what would your next offer be?" (captures range without countering)
28
+
29
+ Source: *Serhant Closing & Negotiation Guide* (Ryan Serhant)
@@ -0,0 +1,42 @@
1
+ # Five Negotiation Techniques — Serhant Method
2
+
3
+ ## Three Fundamentals
4
+ 1. Work for the DEAL, not to "win"
5
+ 2. Play for the other side to win — mutual benefit
6
+ 3. Interests over ego — hard on the problem, soft on the person
7
+
8
+ ## Interests vs Positions
9
+ Positions = what people say. Interests = why. Ask WHY to find creative bridges.
10
+
11
+ ## Three Numbers (always know before negotiating)
12
+ 1. **First offer** — opening position, supported by evidence
13
+ 2. **Best target** — realistic goal (NEVER share)
14
+ 3. **Walkaway** — absolute limit, set BEFORE emotions kick in
15
+
16
+ ## The Five Techniques
17
+
18
+ ### 1. "The Pull"
19
+ Pull the deal away when at stalemate. Risky but effective.
20
+ "Thank you for getting us this far. Unfortunately it's just not going to work. Good luck!"
21
+
22
+ ### 2. "The Facts"
23
+ Purely analytical. Comps speak for themselves.
24
+ "Here are the facts. Here are the comparables. This is our justification."
25
+
26
+ ### 3. "What Do You Want To Do?"
27
+ Put the decision in their hands when you believe the deal is fair.
28
+
29
+ ### 4. "The Emotions"
30
+ When SO close to closing AND losing. Lean into what the property means.
31
+ "£10k over budget, spread over 10 years, is £1,000 a year. Worth it for this home?"
32
+
33
+ ### 5. "The Reality"
34
+ Hardest technique. The truth, simply stated.
35
+ "This is what the market is saying. Right now, today — this is what we can get."
36
+
37
+ ## Tactical Principles
38
+ - **Reciprocity** — offer something, then ask for something
39
+ - **Silence** — present your point, then shut up. First to speak loses
40
+ - **Decoy** — ask for something you don't need, concede it, win what you care about
41
+ - **Gradual persuasion** — tugboats, not battering rams
42
+ - **Precise numbers** — £298,450 not £300,000 (shows you agonised over it)
@@ -0,0 +1,43 @@
1
+ # Offer Presentation Preparation
2
+
3
+ ## Purpose
4
+
5
+ Prepare a complete picture for the agent to present to the vendor. The better the information, the stronger the agent's position in guiding the vendor to the right decision.
6
+
7
+ ## The Complete Offer Package
8
+
9
+ For the agent to present effectively, compile:
10
+
11
+ ### Buyer Profile
12
+ - Full name and contact details
13
+ - Current position (FTB, chain-free, selling, sold STC)
14
+ - Funding (cash, mortgage — lender, AIP confirmed, deposit level)
15
+ - Solicitor instructed? Who?
16
+ - Timeline expectations
17
+
18
+ ### The Offer
19
+ - Amount offered
20
+ - How they arrived at the figure (their rationale)
21
+ - Any conditions (subject to survey, subject to sale, etc.)
22
+ - Their emotional connection — what do they love about the property?
23
+
24
+ ### Context
25
+ - How many viewings has this buyer had of this property?
26
+ - How long has the property been on the market?
27
+ - What's the viewing-to-offer ratio? (lots of viewings with one offer tells a different story to first viewing, first offer)
28
+ - Any other active interest or potential offers?
29
+
30
+ ## Multi-Offer Situations
31
+
32
+ When multiple buyers want to offer:
33
+ - Capture each offer separately and fully
34
+ - Never disclose one offer to another buyer — not the amount, not the existence
35
+ - The agent decides whether to run a best-and-final process
36
+ - The agent's role is to ensure every interested party has the opportunity to submit their best position
37
+
38
+ ## After Presentation
39
+
40
+ - Record the vendor's response in `memory/admin/pipeline/{property-slug}.md`
41
+ - If accepted: trigger sales progression tracking
42
+ - If rejected: relay to buyer with grace — "The seller has decided not to accept at this level. Would you like to reconsider your position?"
43
+ - If counter-offered: the agent communicates this directly
@@ -0,0 +1,29 @@
1
+ ---
2
+ name: sales-negotiation
3
+ description: "Frame value, protect price, and navigate objections — integrating Chris Voss, Tom Panos, Tony Morris, Phil Jones, and Serhant negotiation frameworks."
4
+ publicEmbed: false
5
+ ---
6
+
7
+ # Sales Negotiation (v2)
8
+
9
+ When the conversation turns to price, your job is to protect value -- not to discount.
10
+
11
+ ## Three rules
12
+
13
+ 1. **Value before price.** If discovery isn't complete, briefly acknowledge and return to qualifying.
14
+ 2. **Frame cost as investment.** Translate into outcomes and avoided pain.
15
+ 3. **Never concede without gaining.** Any concession must be reciprocal.
16
+
17
+ ## What negotiation is not
18
+
19
+ - apologising for price
20
+ - creating false urgency
21
+ - discounting without approval
22
+
23
+ ## References (load as needed)
24
+
25
+ - **Serhant deal-saving tactics** -> `references/serhant-negotiation-plus.md`
26
+ - **Chris Voss negotiation framework** -> `references/chris-voss-negotiation.md`
27
+ - **Tom Panos commission & pricing scripts** -> `references/tom-panos-commission-pricing.md`
28
+ - **Tony Morris -- questioning for commitment** -> `references/tony-morris-questioning.md`
29
+ - **Phil Jones magic words for price** -> `references/phil-jones-price-words.md`
@@ -0,0 +1,70 @@
1
+ # Chris Voss -- Full Negotiation Framework for Estate Agency
2
+
3
+ Source: "Never Split the Difference" by Chris Voss
4
+
5
+ Core argument: **Traditional negotiation advice is wrong.** Compromise and "meeting in the middle" is lazy. Great negotiators use psychology, empathy, and calibrated questions.
6
+
7
+ ## The Complete Toolkit
8
+
9
+ ### 1. Tactical Empathy
10
+ Not sympathy -- **tactical empathy** means understanding the other person's emotions, acknowledging them, and showing you see their perspective.
11
+
12
+ ### 2. Mirroring
13
+ Repeat the last 1-3 words someone said to encourage them to elaborate.
14
+
15
+ ### 3. Labelling
16
+ Name the other person's emotion to defuse it.
17
+ - "It seems like you're concerned about the timing."
18
+ - "It sounds like you feel pressured."
19
+
20
+ ### 4. The Power of "That's Right"
21
+ Summarise their position until they say "That's right." Trust increases dramatically.
22
+ **"That's right" = real agreement. "You're right" = dismissal.**
23
+
24
+ ### 5. Calibrated Questions
25
+ - "How am I supposed to do that?" (when asked to reduce fee)
26
+ - "What would make this work for you?"
27
+ - "How can we solve this together?"
28
+ - "What made you arrive at that figure?"
29
+
30
+ ### 6. The Accusation Audit
31
+ **For fee negotiation:**
32
+ > "You may feel like the fee is too much. You might think you could find a cheaper agent. And you might wonder whether the extra marketing really makes a difference."
33
+
34
+ **For price reduction:**
35
+ > "You're probably going to feel like I'm the bearer of bad news. And the last thing I want is for you to think I didn't fight for you."
36
+
37
+ ### 7. The Ackerman Model
38
+ Structured bargaining:
39
+ 1. Set your target price
40
+ 2. Start at 65% of target
41
+ 3. Increase in decreasing increments: 85%, 95%, 100%
42
+ 4. Final offer uses a precise, non-round number (e.g. £487,250 not £487,000)
43
+ 5. On the final amount, throw in a non-monetary item
44
+
45
+ The precise number signals "I've calculated this to my absolute limit."
46
+
47
+ ### 8. Three Negotiation Tones
48
+ 1. **Late-Night FM DJ Voice** -- slow, calm, reassuring. Use to reduce tension.
49
+ 2. **Positive Playful Voice** -- friendly and warm. Use to build rapport.
50
+ 3. **Direct Voice** -- assertive but calm. Use sparingly.
51
+
52
+ ## Practical Estate Agent Scripts
53
+
54
+ **Buyer offers £780k on a £850k property:**
55
+
56
+ Voss style:
57
+ > "It sounds like you're trying to make sure you don't overpay."
58
+ > [Pause]
59
+ > "What made you arrive at £780k?"
60
+
61
+ **Vendor resisting price reduction:**
62
+ > "It seems like you feel the property is worth more."
63
+ > "What would need to happen for you to feel comfortable adjusting the guide price?"
64
+
65
+ ## Core Principles
66
+
67
+ - People care about: **Autonomy, Respect, Being Heard**
68
+ - Listening is more powerful than talking
69
+ - "No" creates safety -- encourage it
70
+ - Aim for "That's right", not "You're right"
@@ -0,0 +1,40 @@
1
+ # Phil Jones -- Magic Words for Price Conversations
2
+
3
+ Source: "Exactly What to Say" by Phil M. Jones
4
+
5
+ ## For Fee Protection
6
+
7
+ ### "I'm not sure if it's for you, but..."
8
+ > "I'm not sure if it's for you, but our premium marketing package has consistently helped vendors achieve 5-10% more than the initial valuation."
9
+
10
+ ### "Just imagine..."
11
+ > "Just imagine the difference an extra £20,000 would make to your onward purchase."
12
+
13
+ ### "How open-minded would you be..."
14
+ > "How open-minded would you be to investing a little more in marketing if it meant attracting stronger offers?"
15
+
16
+ ### "Don't take my word for it"
17
+ > "Don't take my word for it -- here are the results from the last five homes we've marketed at this level."
18
+
19
+ ## For Price Reduction Conversations
20
+
21
+ ### "Before you decide..."
22
+ > "Before you decide to hold at the current asking price, there's something you should see about how buyers are behaving this month."
23
+
24
+ ### "If... then..."
25
+ > "If we adjusted the guide price to £475,000, then we'd be visible to a much larger pool of active buyers. Would that be worth exploring?"
26
+
27
+ ### "Would it be a bad idea if..."
28
+ > "Would it be a bad idea if we tested a new price for two weeks and measured the response?"
29
+
30
+ ## For Handling "Your fee is too high"
31
+
32
+ ### "What do you know about..."
33
+ > "What do you know about how fee levels typically correlate with sale prices in this area?"
34
+
35
+ ### "If you were to..."
36
+ > "If you were to choose the cheapest agent and the property took three months longer to sell, what would that cost you in terms of your onward move?"
37
+
38
+ ## The Golden Rule
39
+
40
+ > "The difference between a good conversation and a great one is often just a few words."
@@ -0,0 +1,55 @@
1
+ # Serhant Negotiation -- Expanded
2
+
3
+ ## Bridge the gap
4
+ - break big numbers into smaller frames
5
+ - always counter (keep the conversation alive)
6
+ - trade structure for price (phasing, terms, added value)
7
+
8
+ ## Play the fears (ethically)
9
+ Name real costs of delay (time, uncertainty, restarting).
10
+ Never fabricate urgency.
11
+
12
+ ## Keep the conversation moving
13
+ Silence kills deals.
14
+ If you can't answer now: acknowledge + set a time.
15
+
16
+ ## Calm / Control / Conviction
17
+ - calm tone
18
+ - control the process
19
+ - conviction in boundaries and next step
20
+
21
+ ## Selective communication (MAP)
22
+ Before sharing a problem:
23
+ - **M material?**
24
+ - **A answer?**
25
+ - **P personality?**
26
+
27
+ ## Positive sandwich
28
+ Positive -> constraint -> path forward.
29
+
30
+ ## CODO Mindset: Push, Pull, Persist
31
+
32
+ - **Push** -- prepare your client for the process, connect them to the right people, use market research to anticipate what might happen next
33
+ - **Pull** -- pulling the deal away reminds people why they are truly invested
34
+ - **Persist** -- keep repeating the same story with consistent language
35
+
36
+ ## ABC Method for Client Communication
37
+
38
+ - **Answer** -- acknowledge client's concern
39
+ - **Bridge** -- offer your take ("how about...")
40
+ - **Communicate** -- give them your solution
41
+
42
+ ## The HALL Method
43
+
44
+ - **H** -- Have empathy
45
+ - **A** -- Always counter
46
+ - **L** -- Look for the sweet spot
47
+ - **L** -- Listen
48
+
49
+ ## Five-Step Path to CODO
50
+
51
+ 1. **Know the star players** -- map every person involved and what they want
52
+ 2. **Know the opposing team** -- research the other agent, their client, lifestyle, motivations
53
+ 3. **Create urgency** -- the right kind, based on real market factors
54
+ 4. **Study the market** -- comparable data, supply/demand, days on market
55
+ 5. **Work the setting** -- choose the right communication method for each scenario