@rubytech/create-maxy-code 0.1.63 → 0.1.64

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 (571) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/plugins/docs/references/admin-session.md +2 -1
  3. package/payload/platform/plugins/docs/references/platform.md +4 -0
  4. package/payload/platform/services/claude-session-manager/dist/index.js +4 -0
  5. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  6. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +12 -0
  7. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  8. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +67 -19
  9. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  10. package/payload/platform/services/claude-session-manager/dist/tool-surface.d.ts.map +1 -1
  11. package/payload/platform/services/claude-session-manager/dist/tool-surface.js +19 -4
  12. package/payload/platform/services/claude-session-manager/dist/tool-surface.js.map +1 -1
  13. package/payload/platform/services/claude-session-manager/dist/types.d.ts +5 -0
  14. package/payload/platform/services/claude-session-manager/dist/types.d.ts.map +1 -1
  15. package/payload/platform/templates/agents/admin/IDENTITY.md +1 -1
  16. package/payload/premium-plugins/real-agent/BUNDLE.md +2 -4
  17. package/payload/premium-plugins/real-agent/agents/valuer.md +1 -2
  18. package/payload/premium-plugins/real-agent/plugins/epc/.claude-plugin/plugin.json +3 -3
  19. package/payload/premium-plugins/real-agent/plugins/listings/.claude-plugin/plugin.json +1 -1
  20. package/payload/premium-plugins/real-agent/plugins/listings/PLUGIN.md +1 -3
  21. package/payload/premium-plugins/real-agent/plugins/listings/skills/new-instruction/SKILL.md +11 -12
  22. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/SKILL.md +55 -33
  23. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/render.py +69 -70
  24. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/template-inputs.schema.json +12 -7
  25. package/payload/premium-plugins/real-agent/plugins/preval/skills/property-preval/references/template.html +88 -19
  26. package/payload/premium-plugins/real-agent/specs/03-new-instruction.md +8 -12
  27. package/payload/server/{chunk-2IKQERHN.js → chunk-S6PQA6Q4.js} +43 -34
  28. package/payload/server/maxy-edge.js +1 -1
  29. package/payload/server/server.js +1 -1
  30. package/payload/platform/plugins/brochures/.claude-plugin/plugin.json +0 -8
  31. package/payload/platform/plugins/brochures/PLUGIN.md +0 -38
  32. package/payload/platform/plugins/brochures/commands/make-brochure.md +0 -11
  33. package/payload/platform/plugins/brochures/skills/a4-print-documents/SKILL.md +0 -478
  34. package/payload/platform/plugins/brochures/skills/brand-design/SKILL.md +0 -192
  35. package/payload/platform/plugins/brochures/skills/make-brochure/SKILL.md +0 -354
  36. package/payload/platform/plugins/brochures/skills/make-brochure/references/seller-brief-template.md +0 -115
  37. package/payload/platform/plugins/brochures/skills/property-brochure/SKILL.md +0 -142
  38. package/payload/platform/plugins/brochures/skills/property-brochure/references/build.md +0 -270
  39. package/payload/platform/plugins/brochures/skills/property-brochure/references/copy.md +0 -211
  40. package/payload/platform/plugins/brochures/skills/property-brochure/references/images.md +0 -166
  41. package/payload/platform/plugins/brochures/skills/property-brochure/references/index-landing.md +0 -376
  42. package/payload/platform/plugins/brochures/skills/property-brochure/references/index.html +0 -1288
  43. package/payload/platform/plugins/brochures/skills/property-brochure/references/placeholders.md +0 -250
  44. package/payload/platform/plugins/brochures/skills/property-brochure/references/registers.md +0 -47
  45. package/payload/platform/plugins/brochures/skills/property-brochure/references/seller-brief.md +0 -56
  46. package/payload/platform/plugins/brochures/skills/property-brochure/references/structure.md +0 -249
  47. package/payload/platform/plugins/brochures/skills/property-brochure/references/template.html +0 -2370
  48. package/payload/platform/plugins/brochures/skills/property-extract/SKILL.md +0 -372
  49. package/payload/platform/plugins/brochures/skills/property-market-report/SKILL.md +0 -100
  50. package/payload/platform/plugins/brochures/skills/property-market-report/references/render.py +0 -267
  51. package/payload/platform/plugins/brochures/skills/property-market-report/references/template.html +0 -266
  52. package/payload/platform/plugins/brochures/skills/property-socials/SKILL.md +0 -141
  53. package/payload/platform/plugins/buyers/.claude-plugin/plugin.json +0 -8
  54. package/payload/platform/plugins/buyers/PLUGIN.md +0 -34
  55. package/payload/platform/plugins/buyers/skills/buyer-feedback/SKILL.md +0 -109
  56. package/payload/platform/plugins/buyers/skills/buyer-management/SKILL.md +0 -42
  57. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-qualification-questions.md +0 -16
  58. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-qualification.md +0 -59
  59. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-scripts.md +0 -63
  60. package/payload/platform/plugins/buyers/skills/buyer-management/references/buyer-working-scripts.md +0 -54
  61. package/payload/platform/plugins/buyers/skills/buyer-management/references/feedback-collection.md +0 -42
  62. package/payload/platform/plugins/buyers/skills/buyer-management/references/offer-capture.md +0 -38
  63. package/payload/platform/plugins/buyers/skills/buyer-management/references/viewing-booking.md +0 -32
  64. package/payload/platform/plugins/buyers/skills/buyer-management/references/viewing-management.md +0 -52
  65. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/SKILL.md +0 -407
  66. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/care-fees-guide.md +0 -68
  67. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/divorce-sales-guide.md +0 -61
  68. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/downsizing-guide.md +0 -45
  69. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/first-time-buyers.md +0 -92
  70. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/first-time-sellers.md +0 -78
  71. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/probate-guide.md +0 -53
  72. package/payload/platform/plugins/buyers/skills/buyer-seller-guides/references/upsizing-guide.md +0 -41
  73. package/payload/platform/plugins/buyers/skills/property-enquiry/SKILL.md +0 -126
  74. package/payload/platform/plugins/buyers/skills/viewing-management/SKILL.md +0 -111
  75. package/payload/platform/plugins/epc/.claude-plugin/plugin.json +0 -17
  76. package/payload/platform/plugins/epc/PLUGIN.md +0 -90
  77. package/payload/platform/plugins/epc/mcp/dist/index.d.ts +0 -2
  78. package/payload/platform/plugins/epc/mcp/dist/index.d.ts.map +0 -1
  79. package/payload/platform/plugins/epc/mcp/dist/index.js +0 -117
  80. package/payload/platform/plugins/epc/mcp/dist/index.js.map +0 -1
  81. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.d.ts +0 -3
  82. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.d.ts.map +0 -1
  83. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.js +0 -72
  84. package/payload/platform/plugins/epc/mcp/dist/lib/crypto.js.map +0 -1
  85. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.d.ts +0 -60
  86. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.d.ts.map +0 -1
  87. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.js +0 -181
  88. package/payload/platform/plugins/epc/mcp/dist/lib/epc-api.js.map +0 -1
  89. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.d.ts +0 -3
  90. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  91. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.js +0 -49
  92. package/payload/platform/plugins/epc/mcp/dist/lib/file-crypto.js.map +0 -1
  93. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.d.ts +0 -15
  94. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.d.ts.map +0 -1
  95. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.js +0 -130
  96. package/payload/platform/plugins/epc/mcp/dist/lib/key-store.js.map +0 -1
  97. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.d.ts +0 -5
  98. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.d.ts.map +0 -1
  99. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.js +0 -38
  100. package/payload/platform/plugins/epc/mcp/dist/lib/neo4j.js.map +0 -1
  101. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.d.ts +0 -4
  102. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  103. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.js +0 -9
  104. package/payload/platform/plugins/epc/mcp/dist/tools/key-deregister.js.map +0 -1
  105. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.d.ts +0 -4
  106. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.d.ts.map +0 -1
  107. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.js +0 -10
  108. package/payload/platform/plugins/epc/mcp/dist/tools/key-list.js.map +0 -1
  109. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.d.ts +0 -5
  110. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.d.ts.map +0 -1
  111. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.js +0 -36
  112. package/payload/platform/plugins/epc/mcp/dist/tools/key-register.js.map +0 -1
  113. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.d.ts +0 -10
  114. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.d.ts.map +0 -1
  115. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.js +0 -30
  116. package/payload/platform/plugins/epc/mcp/dist/tools/lookup.js.map +0 -1
  117. package/payload/platform/plugins/epc/mcp/package-lock.json +0 -2566
  118. package/payload/platform/plugins/epc/mcp/package.json +0 -21
  119. package/payload/platform/plugins/epc/mcp/src/__tests__/epc-api.test.ts +0 -251
  120. package/payload/platform/plugins/epc/mcp/src/__tests__/key-roundtrip.test.ts +0 -113
  121. package/payload/platform/plugins/epc/mcp/src/__tests__/lookup.test.ts +0 -181
  122. package/payload/platform/plugins/epc/mcp/src/__tests__/schema-parity.test.ts +0 -54
  123. package/payload/platform/plugins/epc/mcp/src/index.ts +0 -156
  124. package/payload/platform/plugins/epc/mcp/src/lib/crypto.ts +0 -79
  125. package/payload/platform/plugins/epc/mcp/src/lib/epc-api.ts +0 -241
  126. package/payload/platform/plugins/epc/mcp/src/lib/file-crypto.ts +0 -55
  127. package/payload/platform/plugins/epc/mcp/src/lib/key-store.ts +0 -172
  128. package/payload/platform/plugins/epc/mcp/src/lib/neo4j.ts +0 -47
  129. package/payload/platform/plugins/epc/mcp/src/tools/key-deregister.ts +0 -9
  130. package/payload/platform/plugins/epc/mcp/src/tools/key-list.ts +0 -10
  131. package/payload/platform/plugins/epc/mcp/src/tools/key-register.ts +0 -44
  132. package/payload/platform/plugins/epc/mcp/src/tools/lookup.ts +0 -43
  133. package/payload/platform/plugins/epc/mcp/tsconfig.json +0 -20
  134. package/payload/platform/plugins/epc/mcp/vitest.config.ts +0 -8
  135. package/payload/platform/plugins/estate-business/.claude-plugin/plugin.json +0 -8
  136. package/payload/platform/plugins/estate-business/PLUGIN.md +0 -64
  137. package/payload/platform/plugins/estate-business/skills/business-growth/SKILL.md +0 -133
  138. package/payload/platform/plugins/estate-business/skills/business-growth/references/buy-back-your-time.md +0 -37
  139. package/payload/platform/plugins/estate-business/skills/business-growth/references/firewave-gost-scorecards.md +0 -14
  140. package/payload/platform/plugins/estate-business/skills/business-growth/references/keller-org-model.md +0 -17
  141. package/payload/platform/plugins/estate-business/skills/business-growth/references/lencioni-team-models.md +0 -22
  142. package/payload/platform/plugins/estate-business/skills/business-growth/references/listing-management-system.md +0 -11
  143. package/payload/platform/plugins/estate-business/skills/business-growth/references/net-figure-form.md +0 -11
  144. package/payload/platform/plugins/estate-business/skills/business-growth/references/serhant-bizinbox-notes.md +0 -13
  145. package/payload/platform/plugins/estate-business/skills/business-growth/references/team-roles-commission.md +0 -14
  146. package/payload/platform/plugins/estate-business/skills/business-growth/references/va-2026-ops.md +0 -43
  147. package/payload/platform/plugins/estate-business/skills/business-growth/references/wingman-structure.md +0 -13
  148. package/payload/platform/plugins/estate-business/skills/business-operations/SKILL.md +0 -32
  149. package/payload/platform/plugins/estate-business/skills/business-operations/references/crm-systems.md +0 -57
  150. package/payload/platform/plugins/estate-business/skills/business-operations/references/hiring-guide.md +0 -59
  151. package/payload/platform/plugins/estate-business/skills/business-operations/references/impact-framework.md +0 -47
  152. package/payload/platform/plugins/estate-business/skills/business-operations/references/minutes-equal-money.md +0 -55
  153. package/payload/platform/plugins/estate-business/skills/business-operations/references/team-management.md +0 -48
  154. package/payload/platform/plugins/estate-business/skills/commission-calculator/SKILL.md +0 -40
  155. package/payload/platform/plugins/estate-business/skills/exp-partnership/SKILL.md +0 -52
  156. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/12-reasons.md +0 -39
  157. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/95-5-system.md +0 -66
  158. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/agent-attraction-scripts.md +0 -90
  159. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/business-partnership.md +0 -92
  160. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/exp-model-overview.md +0 -66
  161. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/model-comparison.md +0 -66
  162. package/payload/platform/plugins/estate-business/skills/exp-partnership/references/revenue-share-explained.md +0 -57
  163. package/payload/platform/plugins/estate-business/skills/month-end-close/SKILL.md +0 -69
  164. package/payload/platform/plugins/estate-business/skills/payment-batch-stager/SKILL.md +0 -42
  165. package/payload/platform/plugins/estate-business/skills/period-reconciler/SKILL.md +0 -42
  166. package/payload/platform/plugins/estate-business/skills/personal-branding/SKILL.md +0 -117
  167. package/payload/platform/plugins/estate-business/skills/personal-branding/references/attraction-agent-notes.md +0 -31
  168. package/payload/platform/plugins/estate-business/skills/personal-branding/references/attraction-agent.md +0 -58
  169. package/payload/platform/plugins/estate-business/skills/personal-branding/references/authenticity-boundaries.md +0 -28
  170. package/payload/platform/plugins/estate-business/skills/personal-branding/references/become-a-brand-leader-notes.md +0 -19
  171. package/payload/platform/plugins/estate-business/skills/personal-branding/references/blast-formula.md +0 -42
  172. package/payload/platform/plugins/estate-business/skills/personal-branding/references/brand-leader.md +0 -48
  173. package/payload/platform/plugins/estate-business/skills/personal-branding/references/brand-strategy-system.md +0 -59
  174. package/payload/platform/plugins/estate-business/skills/personal-branding/references/content-engine.md +0 -49
  175. package/payload/platform/plugins/estate-business/skills/personal-branding/references/firewave-blast-and-blogging.md +0 -23
  176. package/payload/platform/plugins/estate-business/skills/personal-branding/references/gary-v-content.md +0 -52
  177. package/payload/platform/plugins/estate-business/skills/personal-branding/references/gary-v-principles.md +0 -20
  178. package/payload/platform/plugins/estate-business/skills/personal-branding/references/oversubscribed-positioning.md +0 -18
  179. package/payload/platform/plugins/estate-business/skills/personal-branding/references/platforms.md +0 -41
  180. package/payload/platform/plugins/estate-business/skills/personal-branding/references/priestley-oversubscribed.md +0 -54
  181. package/payload/platform/plugins/estate-business/skills/personal-branding/references/storeys-style-examples.md +0 -25
  182. package/payload/platform/plugins/estate-business/skills/personal-branding/references/visual-identity.md +0 -27
  183. package/payload/platform/plugins/estate-coaching/.claude-plugin/plugin.json +0 -8
  184. package/payload/platform/plugins/estate-coaching/PLUGIN.md +0 -54
  185. package/payload/platform/plugins/estate-coaching/skills/agent-performance/SKILL.md +0 -371
  186. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/atomic-habits.md +0 -52
  187. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/daily-routine-scorecard.md +0 -104
  188. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/hp6-model.md +0 -63
  189. package/payload/platform/plugins/estate-coaching/skills/agent-performance/references/twelve-week-year.md +0 -71
  190. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/SKILL.md +0 -36
  191. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/coaching-boundaries.md +0 -56
  192. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/feedback-framework.md +0 -61
  193. package/payload/platform/plugins/estate-coaching/skills/bespoke-coaching/references/performance-framework.md +0 -109
  194. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/SKILL.md +0 -421
  195. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/coaching-exercises.md +0 -86
  196. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/goal-setting.md +0 -78
  197. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/one-to-one-framework.md +0 -92
  198. package/payload/platform/plugins/estate-coaching/skills/coaching-toolkit/references/soi-workbook.md +0 -103
  199. package/payload/platform/plugins/estate-coaching/skills/serhant-training/SKILL.md +0 -410
  200. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/agent-training-guide.md +0 -70
  201. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/business-in-a-box.md +0 -72
  202. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/buyers-guide.md +0 -53
  203. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/codo-method.md +0 -72
  204. package/payload/platform/plugins/estate-coaching/skills/serhant-training/references/website-planning-guide.md +0 -79
  205. package/payload/platform/plugins/estate-sales/.claude-plugin/plugin.json +0 -8
  206. package/payload/platform/plugins/estate-sales/PLUGIN.md +0 -52
  207. package/payload/platform/plugins/estate-sales/skills/chase-progression/SKILL.md +0 -107
  208. package/payload/platform/plugins/estate-sales/skills/negotiation/SKILL.md +0 -35
  209. package/payload/platform/plugins/estate-sales/skills/negotiation/references/deal-saving.md +0 -47
  210. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-deep-guide.md +0 -64
  211. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-prep-principles.md +0 -29
  212. package/payload/platform/plugins/estate-sales/skills/negotiation/references/negotiation-techniques.md +0 -42
  213. package/payload/platform/plugins/estate-sales/skills/negotiation/references/offer-presentation.md +0 -43
  214. package/payload/platform/plugins/estate-sales/skills/risk-scorer/SKILL.md +0 -42
  215. package/payload/platform/plugins/estate-sales/skills/sales-closer/SKILL.md +0 -24
  216. package/payload/platform/plugins/estate-sales/skills/sales-closer/references/serhant-emotion-stages.md +0 -36
  217. package/payload/platform/plugins/estate-sales/skills/sales-discovery/SKILL.md +0 -30
  218. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/chris-voss-discovery.md +0 -88
  219. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/firewave-gost-journey.md +0 -68
  220. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/phil-jones-openers.md +0 -78
  221. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/pre-listing-checklist.md +0 -77
  222. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/serhant-improv.md +0 -22
  223. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/tom-ferry-discovery.md +0 -103
  224. package/payload/platform/plugins/estate-sales/skills/sales-discovery/references/vendor-motivation-competitor.md +0 -52
  225. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/SKILL.md +0 -29
  226. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/chris-voss-negotiation.md +0 -70
  227. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/phil-jones-price-words.md +0 -40
  228. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/serhant-negotiation-plus.md +0 -55
  229. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/tom-panos-commission-pricing.md +0 -57
  230. package/payload/platform/plugins/estate-sales/skills/sales-negotiation/references/tony-morris-questioning.md +0 -54
  231. package/payload/platform/plugins/estate-sales/skills/sales-progression/SKILL.md +0 -27
  232. package/payload/platform/plugins/estate-sales/skills/sales-progression/references/conveyancing-guide.md +0 -54
  233. package/payload/platform/plugins/estate-sales/skills/sales-progression/references/transaction-tracking.md +0 -66
  234. package/payload/platform/plugins/estate-teaching/.claude-plugin/plugin.json +0 -8
  235. package/payload/platform/plugins/estate-teaching/PLUGIN.md +0 -30
  236. package/payload/platform/plugins/estate-teaching/skills/content-directory/SKILL.md +0 -39
  237. package/payload/platform/plugins/estate-teaching/skills/content-directory/references/module-delivery.md +0 -65
  238. package/payload/platform/plugins/estate-teaching/skills/content-directory/references/progress-tracking.md +0 -47
  239. package/payload/platform/plugins/leads/.claude-plugin/plugin.json +0 -8
  240. package/payload/platform/plugins/leads/PLUGIN.md +0 -61
  241. package/payload/platform/plugins/leads/skills/chain-progression-tracker/SKILL.md +0 -51
  242. package/payload/platform/plugins/leads/skills/diary-builder/SKILL.md +0 -38
  243. package/payload/platform/plugins/leads/skills/enquiry-triage/SKILL.md +0 -36
  244. package/payload/platform/plugins/leads/skills/lead-nurturing/SKILL.md +0 -137
  245. package/payload/platform/plugins/leads/skills/lead-nurturing/references/buyer-search-letter.md +0 -28
  246. package/payload/platform/plugins/leads/skills/lead-nurturing/references/buyer-search-letters.md +0 -37
  247. package/payload/platform/plugins/leads/skills/lead-nurturing/references/database-reactivation.md +0 -30
  248. package/payload/platform/plugins/leads/skills/lead-nurturing/references/email-nurture-sequences.md +0 -45
  249. package/payload/platform/plugins/leads/skills/lead-nurturing/references/facebook-referrals.md +0 -30
  250. package/payload/platform/plugins/leads/skills/lead-nurturing/references/firewave-email-nurture-sequences.md +0 -41
  251. package/payload/platform/plugins/leads/skills/lead-nurturing/references/keller-33-touch.md +0 -34
  252. package/payload/platform/plugins/leads/skills/lead-nurturing/references/neighbour-letters.md +0 -31
  253. package/payload/platform/plugins/leads/skills/lead-nurturing/references/neighbour-notification-letter.md +0 -20
  254. package/payload/platform/plugins/leads/skills/lead-nurturing/references/ofi-follow-up-dialogue.md +0 -22
  255. package/payload/platform/plugins/leads/skills/lead-nurturing/references/ofi-follow-up.md +0 -26
  256. package/payload/platform/plugins/leads/skills/lead-nurturing/references/serhant-three-fs-plus.md +0 -21
  257. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sharran-10x10x10.md +0 -18
  258. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sms-templates.md +0 -40
  259. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sphere-of-influence-notes.md +0 -34
  260. package/payload/platform/plugins/leads/skills/lead-nurturing/references/sphere-of-influence.md +0 -60
  261. package/payload/platform/plugins/leads/skills/lead-nurturing/references/tom-panos-sms-templates.md +0 -59
  262. package/payload/platform/plugins/leads/skills/morning-round/SKILL.md +0 -72
  263. package/payload/platform/plugins/leads/skills/prospecting/SKILL.md +0 -33
  264. package/payload/platform/plugins/leads/skills/prospecting/references/database-matching.md +0 -30
  265. package/payload/platform/plugins/leads/skills/prospecting/references/database-value.md +0 -53
  266. package/payload/platform/plugins/leads/skills/prospecting/references/prospecting-dialogues.md +0 -24
  267. package/payload/platform/plugins/leads/skills/prospecting/references/reactivation.md +0 -34
  268. package/payload/platform/plugins/listings/.claude-plugin/plugin.json +0 -8
  269. package/payload/platform/plugins/listings/PLUGIN.md +0 -102
  270. package/payload/platform/plugins/listings/skills/comparable-finder/SKILL.md +0 -52
  271. package/payload/platform/plugins/listings/skills/epc-checker/SKILL.md +0 -38
  272. package/payload/platform/plugins/listings/skills/home-preparation/SKILL.md +0 -28
  273. package/payload/platform/plugins/listings/skills/home-preparation/references/kerb-appeal.md +0 -38
  274. package/payload/platform/plugins/listings/skills/home-preparation/references/photo-day.md +0 -59
  275. package/payload/platform/plugins/listings/skills/home-preparation/references/situational-tips.md +0 -50
  276. package/payload/platform/plugins/listings/skills/home-preparation/references/staging-guide.md +0 -52
  277. package/payload/platform/plugins/listings/skills/listing-copy-writer/SKILL.md +0 -55
  278. package/payload/platform/plugins/listings/skills/listing-presentation/SKILL.md +0 -286
  279. package/payload/platform/plugins/listings/skills/listing-presentation/references/booking-script.md +0 -51
  280. package/payload/platform/plugins/listings/skills/listing-presentation/references/objection-scripts.md +0 -193
  281. package/payload/platform/plugins/listings/skills/listing-presentation/references/penhaul-presentation.md +0 -123
  282. package/payload/platform/plugins/listings/skills/listing-presentation/references/pre-listing-kit.md +0 -139
  283. package/payload/platform/plugins/listings/skills/listing-presentation/references/set-to-sell.md +0 -55
  284. package/payload/platform/plugins/listings/skills/listing-presentation/references/sharran-frameworks.md +0 -107
  285. package/payload/platform/plugins/listings/skills/local-market-stats/SKILL.md +0 -33
  286. package/payload/platform/plugins/listings/skills/new-instruction/SKILL.md +0 -78
  287. package/payload/platform/plugins/listings/skills/particulars-builder/SKILL.md +0 -48
  288. package/payload/platform/plugins/listings/skills/portal-launch-scheduler/SKILL.md +0 -49
  289. package/payload/platform/plugins/listings/skills/pricing-scenario-builder/SKILL.md +0 -35
  290. package/payload/platform/plugins/listings/skills/property-marketing/SKILL.md +0 -337
  291. package/payload/platform/plugins/listings/skills/property-marketing/references/auction-report-template.md +0 -41
  292. package/payload/platform/plugins/listings/skills/property-marketing/references/coming-soon-campaign.md +0 -43
  293. package/payload/platform/plugins/listings/skills/property-marketing/references/direct-mail-templates.md +0 -121
  294. package/payload/platform/plugins/listings/skills/property-marketing/references/eoi-form-template.md +0 -62
  295. package/payload/platform/plugins/listings/skills/property-marketing/references/monthly-scorecard.md +0 -63
  296. package/payload/platform/plugins/listings/skills/supplier-booker/SKILL.md +0 -39
  297. package/payload/platform/plugins/listings/skills/talk-track-composer/SKILL.md +0 -36
  298. package/payload/platform/plugins/listings/skills/terms-of-business-drafter/SKILL.md +0 -54
  299. package/payload/platform/plugins/listings/skills/valuation-prep/SKILL.md +0 -69
  300. package/payload/platform/plugins/loop/.claude-plugin/plugin.json +0 -17
  301. package/payload/platform/plugins/loop/PLUGIN.md +0 -260
  302. package/payload/platform/plugins/loop/mcp/dist/index.d.ts +0 -2
  303. package/payload/platform/plugins/loop/mcp/dist/index.d.ts.map +0 -1
  304. package/payload/platform/plugins/loop/mcp/dist/index.js +0 -320
  305. package/payload/platform/plugins/loop/mcp/dist/index.js.map +0 -1
  306. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.d.ts +0 -10
  307. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.d.ts.map +0 -1
  308. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.js +0 -88
  309. package/payload/platform/plugins/loop/mcp/dist/lib/crypto.js.map +0 -1
  310. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.d.ts +0 -3
  311. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  312. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.js +0 -48
  313. package/payload/platform/plugins/loop/mcp/dist/lib/file-crypto.js.map +0 -1
  314. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.d.ts +0 -22
  315. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.d.ts.map +0 -1
  316. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.js +0 -165
  317. package/payload/platform/plugins/loop/mcp/dist/lib/key-store.js.map +0 -1
  318. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.d.ts +0 -82
  319. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.d.ts.map +0 -1
  320. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.js +0 -392
  321. package/payload/platform/plugins/loop/mcp/dist/lib/loop-api.js.map +0 -1
  322. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.d.ts +0 -5
  323. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.d.ts.map +0 -1
  324. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js +0 -40
  325. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js.map +0 -1
  326. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.d.ts +0 -12
  327. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.d.ts.map +0 -1
  328. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.js +0 -22
  329. package/payload/platform/plugins/loop/mcp/dist/tools/auto-responder.js.map +0 -1
  330. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.d.ts +0 -10
  331. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.d.ts.map +0 -1
  332. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.js +0 -24
  333. package/payload/platform/plugins/loop/mcp/dist/tools/customer-preferences.js.map +0 -1
  334. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.d.ts +0 -16
  335. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.d.ts.map +0 -1
  336. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.js +0 -35
  337. package/payload/platform/plugins/loop/mcp/dist/tools/feedback.js.map +0 -1
  338. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.d.ts +0 -5
  339. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  340. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.js +0 -9
  341. package/payload/platform/plugins/loop/mcp/dist/tools/key-deregister.js.map +0 -1
  342. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.d.ts +0 -4
  343. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.d.ts.map +0 -1
  344. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.js +0 -14
  345. package/payload/platform/plugins/loop/mcp/dist/tools/key-list.js.map +0 -1
  346. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.d.ts +0 -9
  347. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.d.ts.map +0 -1
  348. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.js +0 -43
  349. package/payload/platform/plugins/loop/mcp/dist/tools/key-register.js.map +0 -1
  350. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.d.ts +0 -6
  351. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.d.ts.map +0 -1
  352. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.js +0 -7
  353. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-enquiry.js.map +0 -1
  354. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.d.ts +0 -9
  355. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.d.ts.map +0 -1
  356. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.js +0 -16
  357. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-batch.js.map +0 -1
  358. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.d.ts +0 -15
  359. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.d.ts.map +0 -1
  360. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.js +0 -11
  361. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match-request.js.map +0 -1
  362. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.d.ts +0 -10
  363. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.d.ts.map +0 -1
  364. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.js +0 -39
  365. package/payload/platform/plugins/loop/mcp/dist/tools/marketing-match.js.map +0 -1
  366. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.d.ts +0 -9
  367. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.d.ts.map +0 -1
  368. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.js +0 -125
  369. package/payload/platform/plugins/loop/mcp/dist/tools/people-detail.js.map +0 -1
  370. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.d.ts +0 -18
  371. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.d.ts.map +0 -1
  372. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.js +0 -87
  373. package/payload/platform/plugins/loop/mcp/dist/tools/people-search.js.map +0 -1
  374. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.d.ts +0 -10
  375. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.d.ts.map +0 -1
  376. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.js +0 -82
  377. package/payload/platform/plugins/loop/mcp/dist/tools/property-detail.js.map +0 -1
  378. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.d.ts +0 -33
  379. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.d.ts.map +0 -1
  380. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.js +0 -19
  381. package/payload/platform/plugins/loop/mcp/dist/tools/property-intent.js.map +0 -1
  382. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.d.ts +0 -11
  383. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.d.ts.map +0 -1
  384. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.js +0 -26
  385. package/payload/platform/plugins/loop/mcp/dist/tools/property-listed.js.map +0 -1
  386. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.d.ts +0 -15
  387. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.d.ts.map +0 -1
  388. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.js +0 -11
  389. package/payload/platform/plugins/loop/mcp/dist/tools/property-request.js.map +0 -1
  390. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.d.ts +0 -16
  391. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.d.ts.map +0 -1
  392. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.js +0 -41
  393. package/payload/platform/plugins/loop/mcp/dist/tools/property-search.js.map +0 -1
  394. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.d.ts +0 -9
  395. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.d.ts.map +0 -1
  396. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.js +0 -19
  397. package/payload/platform/plugins/loop/mcp/dist/tools/property-sold.js.map +0 -1
  398. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.d.ts +0 -13
  399. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.d.ts.map +0 -1
  400. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.js +0 -49
  401. package/payload/platform/plugins/loop/mcp/dist/tools/supplier.js.map +0 -1
  402. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.d.ts +0 -7
  403. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.d.ts.map +0 -1
  404. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.js +0 -19
  405. package/payload/platform/plugins/loop/mcp/dist/tools/team-availability.js.map +0 -1
  406. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.d.ts +0 -5
  407. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.d.ts.map +0 -1
  408. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.js +0 -32
  409. package/payload/platform/plugins/loop/mcp/dist/tools/team-info.js.map +0 -1
  410. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.d.ts +0 -14
  411. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.d.ts.map +0 -1
  412. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.js +0 -11
  413. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-create.js.map +0 -1
  414. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.d.ts +0 -9
  415. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.d.ts.map +0 -1
  416. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.js +0 -85
  417. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-detail.js.map +0 -1
  418. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.d.ts +0 -13
  419. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.d.ts.map +0 -1
  420. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.js +0 -44
  421. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-search.js.map +0 -1
  422. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.d.ts +0 -14
  423. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.d.ts.map +0 -1
  424. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.js +0 -18
  425. package/payload/platform/plugins/loop/mcp/dist/tools/viewing-update.js.map +0 -1
  426. package/payload/platform/plugins/loop/mcp/package-lock.json +0 -2549
  427. package/payload/platform/plugins/loop/mcp/package.json +0 -21
  428. package/payload/platform/plugins/loop/mcp/src/__tests__/loop-swagger.snapshot.json +0 -26467
  429. package/payload/platform/plugins/loop/mcp/src/__tests__/new-tool-shape.test.ts +0 -99
  430. package/payload/platform/plugins/loop/mcp/src/__tests__/plugin-md-time-doctrine.test.ts +0 -132
  431. package/payload/platform/plugins/loop/mcp/src/__tests__/swagger-write-coverage.test.ts +0 -154
  432. package/payload/platform/plugins/loop/mcp/src/index.ts +0 -498
  433. package/payload/platform/plugins/loop/mcp/src/lib/crypto.ts +0 -105
  434. package/payload/platform/plugins/loop/mcp/src/lib/file-crypto.ts +0 -54
  435. package/payload/platform/plugins/loop/mcp/src/lib/key-store.ts +0 -221
  436. package/payload/platform/plugins/loop/mcp/src/lib/loop-api.ts +0 -567
  437. package/payload/platform/plugins/loop/mcp/src/lib/neo4j.ts +0 -51
  438. package/payload/platform/plugins/loop/mcp/src/tools/auto-responder.ts +0 -80
  439. package/payload/platform/plugins/loop/mcp/src/tools/customer-preferences.ts +0 -66
  440. package/payload/platform/plugins/loop/mcp/src/tools/feedback.ts +0 -86
  441. package/payload/platform/plugins/loop/mcp/src/tools/key-deregister.ts +0 -12
  442. package/payload/platform/plugins/loop/mcp/src/tools/key-list.ts +0 -19
  443. package/payload/platform/plugins/loop/mcp/src/tools/key-register.ts +0 -70
  444. package/payload/platform/plugins/loop/mcp/src/tools/marketing-enquiry.ts +0 -27
  445. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match-batch.ts +0 -53
  446. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match-request.ts +0 -42
  447. package/payload/platform/plugins/loop/mcp/src/tools/marketing-match.ts +0 -84
  448. package/payload/platform/plugins/loop/mcp/src/tools/people-detail.ts +0 -245
  449. package/payload/platform/plugins/loop/mcp/src/tools/people-search.ts +0 -180
  450. package/payload/platform/plugins/loop/mcp/src/tools/property-detail.ts +0 -145
  451. package/payload/platform/plugins/loop/mcp/src/tools/property-intent.ts +0 -84
  452. package/payload/platform/plugins/loop/mcp/src/tools/property-listed.ts +0 -81
  453. package/payload/platform/plugins/loop/mcp/src/tools/property-search.ts +0 -92
  454. package/payload/platform/plugins/loop/mcp/src/tools/property-sold.ts +0 -67
  455. package/payload/platform/plugins/loop/mcp/src/tools/supplier.ts +0 -129
  456. package/payload/platform/plugins/loop/mcp/src/tools/team-availability.ts +0 -52
  457. package/payload/platform/plugins/loop/mcp/src/tools/team-info.ts +0 -95
  458. package/payload/platform/plugins/loop/mcp/src/tools/viewing-create.ts +0 -41
  459. package/payload/platform/plugins/loop/mcp/src/tools/viewing-detail.ts +0 -171
  460. package/payload/platform/plugins/loop/mcp/src/tools/viewing-search.ts +0 -92
  461. package/payload/platform/plugins/loop/mcp/src/tools/viewing-update.ts +0 -53
  462. package/payload/platform/plugins/loop/mcp/tsconfig.json +0 -20
  463. package/payload/platform/plugins/loop/mcp/vitest.config.ts +0 -9
  464. package/payload/platform/plugins/loop/skills/compliance-flag-checker/SKILL.md +0 -53
  465. package/payload/platform/plugins/loop/skills/priority-ranker/SKILL.md +0 -40
  466. package/payload/platform/plugins/loop/skills/tone-matched-drafter/SKILL.md +0 -53
  467. package/payload/platform/plugins/loop/skills/variance-narrator/SKILL.md +0 -50
  468. package/payload/platform/plugins/loop/skills/vendor-research/SKILL.md +0 -54
  469. package/payload/platform/plugins/preval/.claude-plugin/plugin.json +0 -8
  470. package/payload/platform/plugins/preval/PLUGIN.md +0 -55
  471. package/payload/platform/plugins/preval/hooks/preval-prompt-required.sh +0 -140
  472. package/payload/platform/plugins/preval/skills/property-preval/SKILL.md +0 -176
  473. package/payload/platform/plugins/preval/skills/property-preval/references/__tests__/adherence.test.py +0 -373
  474. package/payload/platform/plugins/preval/skills/property-preval/references/render.py +0 -815
  475. package/payload/platform/plugins/preval/skills/property-preval/references/template-inputs.schema.json +0 -199
  476. package/payload/platform/plugins/preval/skills/property-preval/references/template.html +0 -312
  477. package/payload/platform/plugins/property-data/.claude-plugin/plugin.json +0 -17
  478. package/payload/platform/plugins/property-data/PLUGIN.md +0 -180
  479. package/payload/platform/plugins/property-data/mcp/dist/index.d.ts +0 -2
  480. package/payload/platform/plugins/property-data/mcp/dist/index.d.ts.map +0 -1
  481. package/payload/platform/plugins/property-data/mcp/dist/index.js +0 -236
  482. package/payload/platform/plugins/property-data/mcp/dist/index.js.map +0 -1
  483. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.d.ts +0 -3
  484. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.d.ts.map +0 -1
  485. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.js +0 -72
  486. package/payload/platform/plugins/property-data/mcp/dist/lib/crypto.js.map +0 -1
  487. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.d.ts +0 -3
  488. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.d.ts.map +0 -1
  489. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.js +0 -49
  490. package/payload/platform/plugins/property-data/mcp/dist/lib/file-crypto.js.map +0 -1
  491. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.d.ts +0 -15
  492. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.d.ts.map +0 -1
  493. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.js +0 -135
  494. package/payload/platform/plugins/property-data/mcp/dist/lib/key-store.js.map +0 -1
  495. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.d.ts +0 -5
  496. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.d.ts.map +0 -1
  497. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.js +0 -38
  498. package/payload/platform/plugins/property-data/mcp/dist/lib/neo4j.js.map +0 -1
  499. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.d.ts +0 -28
  500. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.d.ts.map +0 -1
  501. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.js +0 -101
  502. package/payload/platform/plugins/property-data/mcp/dist/lib/propertydata-api.js.map +0 -1
  503. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.d.ts +0 -24
  504. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.d.ts.map +0 -1
  505. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.js +0 -33
  506. package/payload/platform/plugins/property-data/mcp/dist/tools/endpoints.js.map +0 -1
  507. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.d.ts +0 -4
  508. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.d.ts.map +0 -1
  509. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.js +0 -9
  510. package/payload/platform/plugins/property-data/mcp/dist/tools/key-deregister.js.map +0 -1
  511. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.d.ts +0 -4
  512. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.d.ts.map +0 -1
  513. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.js +0 -10
  514. package/payload/platform/plugins/property-data/mcp/dist/tools/key-list.js.map +0 -1
  515. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.d.ts +0 -5
  516. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.d.ts.map +0 -1
  517. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.js +0 -50
  518. package/payload/platform/plugins/property-data/mcp/dist/tools/key-register.js.map +0 -1
  519. package/payload/platform/plugins/property-data/mcp/package-lock.json +0 -2566
  520. package/payload/platform/plugins/property-data/mcp/package.json +0 -21
  521. package/payload/platform/plugins/property-data/mcp/src/__tests__/endpoints.test.ts +0 -252
  522. package/payload/platform/plugins/property-data/mcp/src/__tests__/key-roundtrip.test.ts +0 -107
  523. package/payload/platform/plugins/property-data/mcp/src/__tests__/propertydata-api.test.ts +0 -184
  524. package/payload/platform/plugins/property-data/mcp/src/__tests__/schema-parity.test.ts +0 -62
  525. package/payload/platform/plugins/property-data/mcp/src/index.ts +0 -409
  526. package/payload/platform/plugins/property-data/mcp/src/lib/crypto.ts +0 -79
  527. package/payload/platform/plugins/property-data/mcp/src/lib/file-crypto.ts +0 -55
  528. package/payload/platform/plugins/property-data/mcp/src/lib/key-store.ts +0 -181
  529. package/payload/platform/plugins/property-data/mcp/src/lib/neo4j.ts +0 -47
  530. package/payload/platform/plugins/property-data/mcp/src/lib/propertydata-api.ts +0 -120
  531. package/payload/platform/plugins/property-data/mcp/src/tools/endpoints.ts +0 -47
  532. package/payload/platform/plugins/property-data/mcp/src/tools/key-deregister.ts +0 -9
  533. package/payload/platform/plugins/property-data/mcp/src/tools/key-list.ts +0 -10
  534. package/payload/platform/plugins/property-data/mcp/src/tools/key-register.ts +0 -54
  535. package/payload/platform/plugins/property-data/mcp/tsconfig.json +0 -20
  536. package/payload/platform/plugins/property-data/mcp/vitest.config.ts +0 -8
  537. package/payload/platform/plugins/property-data/skills/property-data/SKILL.md +0 -77
  538. package/payload/platform/plugins/vendors/.claude-plugin/plugin.json +0 -8
  539. package/payload/platform/plugins/vendors/PLUGIN.md +0 -33
  540. package/payload/platform/plugins/vendors/skills/vendor-communication/SKILL.md +0 -42
  541. package/payload/platform/plugins/vendors/skills/vendor-communication/references/fee-protection-and-agenda.md +0 -28
  542. package/payload/platform/plugins/vendors/skills/vendor-communication/references/listing-scripts.md +0 -44
  543. package/payload/platform/plugins/vendors/skills/vendor-communication/references/negotiation-deep-guide.md +0 -70
  544. package/payload/platform/plugins/vendors/skills/vendor-communication/references/price-alignment-scripts.md +0 -33
  545. package/payload/platform/plugins/vendors/skills/vendor-communication/references/price-alignment.md +0 -34
  546. package/payload/platform/plugins/vendors/skills/vendor-communication/references/scenario-scripts.md +0 -38
  547. package/payload/platform/plugins/vendors/skills/vendor-communication/references/seller-engagement.md +0 -51
  548. package/payload/platform/plugins/vendors/skills/vendor-communication/references/valuation-booking.md +0 -76
  549. package/payload/platform/plugins/vendors/skills/vendor-communication/references/vendor-scripts.md +0 -63
  550. package/payload/platform/plugins/vendors/skills/vendor-communication/references/vendor-updates.md +0 -41
  551. package/payload/platform/plugins/vendors/skills/vendor-updates/SKILL.md +0 -153
  552. package/payload/premium-plugins/real-agent/plugins/epc/PLUGIN.md +0 -90
  553. package/payload/premium-plugins/real-agent/plugins/epc/mcp/package-lock.json +0 -2566
  554. package/payload/premium-plugins/real-agent/plugins/epc/mcp/package.json +0 -21
  555. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/epc-api.test.ts +0 -251
  556. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/key-roundtrip.test.ts +0 -113
  557. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/lookup.test.ts +0 -181
  558. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/__tests__/schema-parity.test.ts +0 -54
  559. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/index.ts +0 -156
  560. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/crypto.ts +0 -79
  561. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/epc-api.ts +0 -241
  562. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/file-crypto.ts +0 -55
  563. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/key-store.ts +0 -172
  564. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/lib/neo4j.ts +0 -47
  565. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-deregister.ts +0 -9
  566. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-list.ts +0 -10
  567. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/key-register.ts +0 -44
  568. package/payload/premium-plugins/real-agent/plugins/epc/mcp/src/tools/lookup.ts +0 -43
  569. package/payload/premium-plugins/real-agent/plugins/epc/mcp/tsconfig.json +0 -20
  570. package/payload/premium-plugins/real-agent/plugins/epc/mcp/vitest.config.ts +0 -8
  571. package/payload/premium-plugins/real-agent/plugins/listings/skills/epc-checker/SKILL.md +0 -38
@@ -1,171 +0,0 @@
1
- import {
2
- aggregateAcrossTeams,
3
- formatAggregationResult,
4
- loopGet,
5
- } from "../lib/loop-api.js";
6
-
7
- // ─── Loop API V2: /residential/{dept}/viewings/{id} ────────────
8
- // Fields: id, dateCreated, dateOfAppointment, dateOfAppointmentEnd,
9
- // dateBuyerFeedbackGiven, dateSellerFeedbackGiven, dateDone,
10
- // status, type, comment, buyerFeedback, sellerFeedback,
11
- // buyerConfirmed, sellerConfirmed, agentConfirmed,
12
- // property (nested PropertySummary), buyer (nested BuyerSummary),
13
- // seller (nested SellerSummary),
14
- // attendingAgent (nested TeamMember), creatingAgent (nested TeamMember),
15
- // teamId
16
- // ────────────────────────────────────────────────────────────────
17
- interface LoopViewingDetail {
18
- id: number;
19
- dateCreated?: string;
20
- dateOfAppointment?: string;
21
- dateOfAppointmentEnd?: string;
22
- dateBuyerFeedbackGiven?: string | null;
23
- dateSellerFeedbackGiven?: string | null;
24
- dateDone?: string | null;
25
- status?: string;
26
- type?: string;
27
- comment?: string | null;
28
- buyerFeedback?: string | null;
29
- sellerFeedback?: string | null;
30
- buyerConfirmed?: boolean;
31
- sellerConfirmed?: boolean;
32
- agentConfirmed?: boolean;
33
- property?: {
34
- id: number;
35
- propertyAddress?: string;
36
- status?: string;
37
- propertyType?: string;
38
- price?: number;
39
- bedrooms?: number;
40
- [key: string]: unknown;
41
- };
42
- buyer?: {
43
- id: number;
44
- buyerGroupName?: string;
45
- maxPrice?: number | null;
46
- position?: string;
47
- viewingCount?: number;
48
- offerCount?: number;
49
- [key: string]: unknown;
50
- };
51
- seller?: {
52
- id: number;
53
- sellerGroupName?: string;
54
- propertyAddress?: string;
55
- price?: number;
56
- [key: string]: unknown;
57
- };
58
- attendingAgent?: {
59
- id: string;
60
- firstName?: string;
61
- lastName?: string;
62
- email?: string;
63
- mobilePhone?: string;
64
- jobTitle?: string;
65
- [key: string]: unknown;
66
- };
67
- creatingAgent?: {
68
- id: string;
69
- firstName?: string;
70
- lastName?: string;
71
- [key: string]: unknown;
72
- };
73
- teamId?: string;
74
- [key: string]: unknown;
75
- }
76
-
77
- type Department = "sales" | "lettings";
78
-
79
- export async function viewingDetail(params: {
80
- accountId: string;
81
- viewingId: number;
82
- department: Department;
83
- teamName?: string;
84
- }): Promise<string> {
85
- const { accountId, viewingId, department, teamName } = params;
86
-
87
- const result = await aggregateAcrossTeams<LoopViewingDetail>(
88
- accountId,
89
- "viewings",
90
- "loop-viewing-detail",
91
- async (apiKey, team) => {
92
- const path = `/residential/${department}/viewings/${viewingId}`;
93
- const data = await loopGet<LoopViewingDetail>(apiKey, path, "loop-viewing-detail", team);
94
- if (data && typeof data === "object" && !Array.isArray(data)) {
95
- return [data];
96
- }
97
- return [];
98
- },
99
- { teamName }
100
- );
101
-
102
- return formatAggregationResult(
103
- result,
104
- (v) => {
105
- const propAddr = v.property?.propertyAddress ?? "Unknown property";
106
- const lines = [`**${propAddr}** [Viewing ID: ${v.id}]`];
107
-
108
- // Appointment time
109
- if (v.dateOfAppointment) {
110
- const start = formatDateTime(v.dateOfAppointment);
111
- const end = v.dateOfAppointmentEnd ? formatDateTime(v.dateOfAppointmentEnd) : "";
112
- lines.push(`Date/Time: ${start}${end ? ` — ${end}` : ""}`);
113
- }
114
- if (v.status) lines.push(`Status: ${v.status}`);
115
- if (v.type) lines.push(`Type: ${v.type}`);
116
-
117
- // Confirmation status
118
- const confirmParts: string[] = [];
119
- if (v.buyerConfirmed != null) confirmParts.push(`Buyer: ${v.buyerConfirmed ? "yes" : "no"}`);
120
- if (v.sellerConfirmed != null) confirmParts.push(`Seller: ${v.sellerConfirmed ? "yes" : "no"}`);
121
- if (v.agentConfirmed != null) confirmParts.push(`Agent: ${v.agentConfirmed ? "yes" : "no"}`);
122
- if (confirmParts.length) lines.push(`Confirmed — ${confirmParts.join(", ")}`);
123
-
124
- // Property details
125
- if (v.property) {
126
- const prop = v.property;
127
- if (prop.price != null) lines.push(`Property price: £${prop.price.toLocaleString("en-GB")}`);
128
- if (prop.propertyType) lines.push(`Property type: ${prop.propertyType}`);
129
- if (prop.bedrooms != null) lines.push(`Bedrooms: ${prop.bedrooms}`);
130
- if (prop.id) lines.push(`Property ID: ${prop.id}`);
131
- }
132
-
133
- // Buyer
134
- if (v.buyer) {
135
- const b = v.buyer;
136
- lines.push(`\n**Buyer:** ${b.buyerGroupName ?? "Unknown"} [ID: ${b.id}]`);
137
- if (b.maxPrice != null) lines.push(` Max price: £${b.maxPrice.toLocaleString("en-GB")}`);
138
- if (b.position && b.position !== "none") lines.push(` Position: ${b.position}`);
139
- }
140
-
141
- // Seller
142
- if (v.seller) {
143
- const s = v.seller;
144
- lines.push(`\n**Seller:** ${s.sellerGroupName ?? "Unknown"} [ID: ${s.id}]`);
145
- }
146
-
147
- // Attending agent
148
- if (v.attendingAgent) {
149
- const a = v.attendingAgent;
150
- const agentName = [a.firstName, a.lastName].filter(Boolean).join(" ");
151
- const title = a.jobTitle ? ` (${a.jobTitle})` : "";
152
- const contact = a.email ?? a.mobilePhone ?? "";
153
- lines.push(`\n**Attending agent:** ${agentName}${title}${contact ? ` — ${contact}` : ""}`);
154
- }
155
-
156
- // Feedback
157
- if (v.buyerFeedback) lines.push(`\nBuyer feedback: ${v.buyerFeedback}`);
158
- if (v.sellerFeedback) lines.push(`Seller feedback: ${v.sellerFeedback}`);
159
- if (v.comment) lines.push(`Notes: ${v.comment}`);
160
-
161
- return lines.join("\n");
162
- },
163
- "viewing details"
164
- );
165
- }
166
-
167
- function formatDateTime(iso: string): string {
168
- const [datePart, timePart] = iso.split("T");
169
- if (!timePart) return datePart;
170
- return `${datePart} ${timePart.slice(0, 5)}`;
171
- }
@@ -1,92 +0,0 @@
1
- import {
2
- aggregateAcrossTeams,
3
- formatAggregationResult,
4
- loopGet,
5
- } from "../lib/loop-api.js";
6
-
7
- // ─── Loop API V2: /residential/{dept}/viewings ─────────────────
8
- // Fields: id, propertyId, propertyAddress, status,
9
- // dateOfAppointment, dateOfAppointmentEnd,
10
- // attendingAgentId, creatingAgentId, type, buyerName
11
- // ────────────────────────────────────────────────────────────────
12
- interface LoopViewingSummary {
13
- id: number;
14
- propertyId?: number;
15
- propertyAddress?: string;
16
- status?: string;
17
- dateOfAppointment?: string;
18
- dateOfAppointmentEnd?: string;
19
- attendingAgentId?: string;
20
- creatingAgentId?: string;
21
- type?: string;
22
- buyerName?: string;
23
- [key: string]: unknown;
24
- }
25
-
26
- type Department = "sales" | "lettings" | "both";
27
-
28
- export async function viewingSearch(params: {
29
- accountId: string;
30
- department?: Department;
31
- searchTerm?: string;
32
- appointmentStartDate?: string;
33
- appointmentEndDate?: string;
34
- status?: string;
35
- teamName?: string;
36
- limit?: number;
37
- }): Promise<string> {
38
- const {
39
- accountId, department = "both", searchTerm,
40
- appointmentStartDate, appointmentEndDate, status,
41
- teamName, limit,
42
- } = params;
43
-
44
- const result = await aggregateAcrossTeams<LoopViewingSummary>(
45
- accountId,
46
- "viewings",
47
- "loop-viewing-search",
48
- async (apiKey, team) => {
49
- const depts: string[] =
50
- department === "both" ? ["sales", "lettings"] : [department];
51
- const all: LoopViewingSummary[] = [];
52
-
53
- for (const dept of depts) {
54
- const qp: string[] = [];
55
- if (searchTerm) qp.push(`SearchTerm=${encodeURIComponent(searchTerm)}`);
56
- if (appointmentStartDate) qp.push(`AppointmentStartDate=${encodeURIComponent(appointmentStartDate)}`);
57
- if (appointmentEndDate) qp.push(`AppointmentEndDate=${encodeURIComponent(appointmentEndDate)}`);
58
- if (status) qp.push(`Status=${encodeURIComponent(status)}`);
59
-
60
- const query = qp.length > 0 ? `?${qp.join("&")}` : "";
61
- const path = `/residential/${dept}/viewings${query}`;
62
- const data = await loopGet<LoopViewingSummary[]>(apiKey, path, "loop-viewing-search", team);
63
- if (Array.isArray(data)) all.push(...data);
64
- }
65
- return all;
66
- },
67
- { teamName, limitPerTeam: limit ?? 50, limitTotal: limit ?? 200 }
68
- );
69
-
70
- return formatAggregationResult(
71
- result,
72
- (v) => {
73
- const addr = v.propertyAddress ?? "Unknown property";
74
- const id = v.id != null ? ` [ID: ${v.id}]` : "";
75
- // dateOfAppointment is ISO datetime e.g. "2026-04-10T15:30:00"
76
- const when = v.dateOfAppointment
77
- ? formatDateTime(v.dateOfAppointment)
78
- : "No date";
79
- const viewStatus = v.status ? ` [${v.status}]` : "";
80
- const buyer = v.buyerName ? ` — ${v.buyerName}` : "";
81
- const viewType = v.type ? ` (${v.type})` : "";
82
- return `- ${addr}${id} — ${when}${viewType}${buyer}${viewStatus}`;
83
- },
84
- "viewings"
85
- );
86
- }
87
-
88
- function formatDateTime(iso: string): string {
89
- const [datePart, timePart] = iso.split("T");
90
- if (!timePart) return datePart;
91
- return `${datePart} ${timePart.slice(0, 5)}`;
92
- }
@@ -1,53 +0,0 @@
1
- import { loopPost, withTeamKey } from "../lib/loop-api.js";
2
-
3
- type Department = "sales" | "lettings";
4
-
5
- // Feedback parties map to swagger endpoints:
6
- // sales: buyer-feedback, seller-feedback
7
- // lettings: renter-feedback, landlord-feedback
8
- type FeedbackParty = "buyer" | "seller" | "renter" | "landlord";
9
- type Action = "note" | "feedback";
10
-
11
- // ─── Loop API V2: POST /residential/{dept}/viewings/{id}/{suffix}
12
- // Suffix: "note" for notes, "{party}-feedback" for feedback
13
- // Request body: { result: string } (StringResponse format)
14
- // Response: boolean success
15
- // ────────────────────────────────────────────────────────────────
16
- interface LoopBooleanResponse {
17
- success?: boolean;
18
- [key: string]: unknown;
19
- }
20
-
21
- export async function viewingUpdate(params: {
22
- accountId: string;
23
- teamName: string;
24
- viewingId: number;
25
- department: Department;
26
- action: Action;
27
- text: string;
28
- feedbackParty?: FeedbackParty;
29
- }): Promise<string> {
30
- const { accountId, teamName, viewingId, department, action, text, feedbackParty } = params;
31
-
32
- if (action === "feedback" && !feedbackParty) {
33
- throw new Error("feedbackParty is required when action is 'feedback'. Use: buyer, seller, renter, or landlord.");
34
- }
35
-
36
- await withTeamKey<LoopBooleanResponse>(
37
- accountId,
38
- teamName,
39
- "viewings",
40
- "loop-viewing-update",
41
- async (apiKey) => {
42
- const suffix = action === "note"
43
- ? "note"
44
- : `${feedbackParty}-feedback`;
45
- const path = `/residential/${department}/viewings/${viewingId}/${suffix}`;
46
- // Loop expects the text as a StringResponse body
47
- return loopPost<LoopBooleanResponse>(apiKey, path, { result: text }, "loop-viewing-update", teamName);
48
- }
49
- );
50
-
51
- const actionLabel = action === "note" ? "Note added" : `${feedbackParty} feedback recorded`;
52
- return `${actionLabel} for viewing ${viewingId} (${department}) via team "${teamName}".`;
53
- }
@@ -1,20 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "module": "Node16",
5
- "moduleResolution": "Node16",
6
- "lib": ["ES2022"],
7
- "outDir": "dist",
8
- "rootDir": "src",
9
- "strict": true,
10
- "esModuleInterop": true,
11
- "skipLibCheck": true,
12
- "forceConsistentCasingInFileNames": true,
13
- "resolveJsonModule": true,
14
- "declaration": true,
15
- "declarationMap": true,
16
- "sourceMap": true
17
- },
18
- "include": ["src"],
19
- "exclude": ["src/**/__tests__/**", "src/**/*.test.ts"]
20
- }
@@ -1,9 +0,0 @@
1
- import { defineConfig } from "vitest/config";
2
-
3
- export default defineConfig({
4
- test: {
5
- environment: "node",
6
- include: ["src/**/__tests__/**/*.test.ts"],
7
- testTimeout: 10_000,
8
- },
9
- });
@@ -1,53 +0,0 @@
1
- ---
2
- name: compliance-flag-checker
3
- description: "Flag AML, GDPR, DMCCA 2024 material information, ASA/CAP advertising standards, and Equality Act risks in any output before the operator approves it. Cross-cutting skill called by every workflow that produces an outbound message, a listing, terms of business, or a payment batch. Owned by the compliance specialist."
4
- ---
5
-
6
- # Compliance flag checker
7
-
8
- A cross-cutting building-block skill. Runs against every output that touches a regulated surface (a portal listing, a terms-of-business document, an outgoing message to a buyer or vendor, a payment batch, the AML status on a deal). Returns a list of flags the operator should see before approval.
9
-
10
- ## What it checks
11
-
12
- - **Material information.** DMCCA 2024 disclosure requirements for property listings: council tax band, tenure, ground rent and service charge if leasehold, property type, construction, utilities, heating, broadband, parking, and the wider Part C signals (flood risk, listed status, structural issues, planning permission, mining, and the rest). Missing items are flagged with the specific legislative requirement.
13
- - **Advertising standards.** ASA upheld-complaint patterns: fee transparency (VAT inclusion, mandatory surcharges disclosed), property descriptions accurate and substantiated, "local" claims supported, "leading" and "number one" claims substantiated.
14
- - **EPC display.** Asset rating present in any commercial media for the listing.
15
- - **AML state on the vendor.** Blocks a portal launch unless AML status is "passed" or the operator has explicitly overridden.
16
- - **GDPR.** Marketing messages to non-existing-client contacts checked for PECR opt-in basis. Data-retention prompts surfaced on close files.
17
- - **Equality Act.** Listing copy and outgoing messages checked for discriminatory phrasing (most commonly the "No DSS" pattern in lettings, court-declared as unlawful indirect discrimination).
18
- - **EAA s.21 personal interest disclosure.** Flags any output where the agent has a personal interest in the property and the disclosure has not been made.
19
- - **Renters' Rights Act 2025.** Where the workflow produces lettings output: bidding-ban compliance (must publish asking rent, must not request or accept above-advertised offers), discrimination ban (benefits, children), pet provisions, PRS database registration check, ombudsman membership display.
20
- - **Client money handling.** EAA 1979 ss.12 to 17 obligations on prescribed accounts, interest, trust requirements.
21
-
22
- ## Output
23
-
24
- Each flag returns:
25
-
26
- - The cited legislation (Act, SI, regulation, code provision), with format like `[DMCCA 2024, Part 4, s.237]`
27
- - The specific issue
28
- - The remediation required
29
- - The penalty exposure for non-compliance
30
-
31
- The calling workflow surfaces the flags at the top of the staged output. The operator clears the flags or accepts the residual risk before approving.
32
-
33
- ## What it does not do
34
-
35
- - It does not block approval. The operator decides; the skill informs.
36
- - It does not provide legal advice. Use "the legislation requires", "the regulatory position is", "this appears to fall short of". Never "you should" or "my advice is".
37
- - It does not certify a transaction or a listing as compliant. It flags gaps and cites requirements.
38
- - It does not amend the output it checks. Remediation is for the calling workflow or the operator.
39
-
40
- ## Connectors
41
-
42
- Read: profile (compliance state, AML provider, scheme memberships), CRM (deal, vendor, listing), the deep-research tool when an unfamiliar provision needs verification.
43
- Write: none.
44
-
45
- ## Profile keys
46
-
47
- - `realagent.compliance.cmp_scheme_membership`
48
- - `realagent.compliance.redress_scheme`
49
- - `realagent.compliance.ico_registration`
50
- - `realagent.compliance.mlro_designation`
51
- - `realagent.compliance.aml_provider`
52
- - `realagent.compliance.tpo_membership`
53
- - `realagent.compliance.propertymark_membership`
@@ -1,40 +0,0 @@
1
- ---
2
- name: priority-ranker
3
- description: "Order any list of items using the profile's urgency weights. Cross-cutting skill used by the morning round's top three and chase-progression's stalled list."
4
- ---
5
-
6
- # Priority ranker
7
-
8
- A cross-cutting building-block skill. Given a list of items with feature attributes, returns the same list ordered by relative urgency.
9
-
10
- ## Inputs
11
-
12
- The calling workflow passes:
13
-
14
- - A list of items. Each item has a feature attribute map (for chase-progression, the features are risk score, fee value, days stalled, recipient type, and so on).
15
- - An optional cap on how many top items to return (the morning round uses 3).
16
-
17
- ## What it does
18
-
19
- Reads the profile's weights for the relevant features. Returns the items in descending urgency order. If the cap is supplied, returns only the top N.
20
-
21
- For the top-three case the skill also returns, alongside each item, the feature that contributed most to its rank. The calling workflow uses that feature to write the reason sentence the operator reads ("Mrs Patel, her buyer's mortgage offer expires in 9 days and the survey was booked but not done").
22
-
23
- ## Learning
24
-
25
- When the operator actions a different item than the top-ranked one within the same session, the weighting reweights toward whatever feature distinguished the actioned item. Slow signal, high quality. All writes go through `profile-writer`.
26
-
27
- ## What it does not do
28
-
29
- - It does not generate the reason sentence. That is `variance-narrator`.
30
- - It does not decide what to do with the ranked items. The calling workflow owns that.
31
- - It does not write to the CRM.
32
-
33
- ## Connectors
34
-
35
- Read: profile (weights). No writes.
36
-
37
- ## Profile keys
38
-
39
- - `realagent.priority_weights.*` (per feature, learned)
40
- - `realagent.priority_weights.fee_multiplier`
@@ -1,53 +0,0 @@
1
- ---
2
- name: tone-matched-drafter
3
- description: "Draft a message in the operator's voice for a specific recipient type and channel. Cross-cutting skill used by chase-progression, new-instruction (vendor welcome), and any other workflow that needs an outgoing message. Never sends; the calling workflow owns the send gate."
4
- ---
5
-
6
- # Tone-matched drafter
7
-
8
- The cross-cutting skill that produces every outgoing message in Real Agent. The deepest learning hook in the product: edit-before-send diffs feed back here.
9
-
10
- ## Inputs
11
-
12
- The calling workflow passes:
13
-
14
- - Recipient type (vendor familiar, vendor formal, buyer familiar, buyer formal, vendor solicitor, buyer solicitor, mortgage broker, surveyor, photographer, EPC supplier, floorplan supplier, accountant, other)
15
- - Channel (WhatsApp, email, SMS, or "infer from recipient")
16
- - Intent (chase the solicitor on searches, welcome a new vendor, request a viewing, confirm a meeting, and so on)
17
- - Reference data (the deal record, the property record, the contact's prior messages)
18
-
19
- ## What it does
20
-
21
- Reads the profile's tone preference for the recipient type and the agent's voice samples. Drafts a message that matches:
22
-
23
- - The agent's vocabulary (the words they actually use)
24
- - The agent's sentence length and rhythm
25
- - The agent's preferred greeting and sign-off for the recipient type
26
- - The phrases the agent has previously edited out (the pet-peeve list), which are never included
27
- - The channel's constraints (WhatsApp templating for first contact, email subject lines, SMS character limits)
28
-
29
- The draft is returned to the calling workflow with the channel decision attached. The workflow decides when to surface the draft to the operator and when to fire on approval.
30
-
31
- ## What it does not do
32
-
33
- - It never sends. The calling workflow owns the send gate.
34
- - It does not negotiate. Drafts are messages the operator would send; negotiating substance is the operator's decision.
35
- - It does not invent facts. Every reference to a number, name, or date is read from the deal record or the connector. If a field is missing, the draft says so explicitly and the operator fills it.
36
-
37
- ## Learning
38
-
39
- Every time the operator edits a draft before approval, the diff is captured and weighted into the profile's tone preference and pet-peeve list. Within a quarter, the workflow should produce drafts the agent sends without editing 80% of the time on the common recipient types.
40
-
41
- ## Connectors
42
-
43
- Read: profile (tone, voice samples, pet peeves, channel preferences), CRM (deal and contact records).
44
- Write: none. The calling workflow handles sends.
45
-
46
- ## Profile keys
47
-
48
- - `realagent.tone_profile.*` (per recipient type)
49
- - `realagent.voice_samples`
50
- - `realagent.phrasing_pet_peeves`
51
- - `realagent.channel_preference.<recipient_id>`
52
- - `realagent.tone_profile.greetings.*`
53
- - `realagent.tone_profile.signoffs.*`
@@ -1,50 +0,0 @@
1
- ---
2
- name: variance-narrator
3
- description: "Write short prose summaries of numerical changes. Used by the morning round to write the cause sentence under each stalled deal, and by month-end-close to write the two paragraphs comparing the period to the prior month and the same period last year."
4
- ---
5
-
6
- # Variance narrator
7
-
8
- A cross-cutting building-block skill. Turns a set of numbers and structured events into a sentence or short paragraph in plain English, in the agent's voice.
9
-
10
- ## Two output shapes
11
-
12
- ### Cause sentence (used by morning round and chase-progression)
13
-
14
- Given a deal's state, produces one short sentence that names the most likely cause of the stall. The skill picks the pattern that fits the observable signals, not the one that sounds most dramatic. Examples:
15
-
16
- - "Mortgage offer expires in 9 days and the survey was booked but not done."
17
- - "Searches outstanding at day 28; solicitor last contacted day 14."
18
- - "Vendor unresponsive since day 12; buyer's broker has chased twice."
19
-
20
- If no pattern fits, the sentence reads "no clear cause from connectors, manual check recommended". The skill never invents a cause it cannot trace to data.
21
-
22
- ### Variance paragraphs (used by month-end-close)
23
-
24
- Given the period's reconciliation totals and the two comparison periods (prior month, same month last year), produces two paragraphs in plain language with no jargon. Example:
25
-
26
- > April was GBP 8,400 down on March because three completions slipped into May, all expected to land. The reconciliation matched cleanly otherwise; the only variance was a GBP 120 referral deduction on the Norton sale.
27
- >
28
- > Year-on-year April is 15% up on the same month last year. The increase came from two completions over GBP 8,000 fee value, both new instructions taken in February.
29
-
30
- The paragraphs are suitable to paste into a board update, a tax-return cover note, or a conversation with a partner.
31
-
32
- ## Voice source
33
-
34
- Reads the profile's voice samples and the operator's prior narrative paragraphs. Learns from edit-before-approve diffs.
35
-
36
- ## What it does not do
37
-
38
- - It does not write outgoing messages. That is `tone-matched-drafter`.
39
- - It does not produce numerical totals. The calling workflow passes the numbers in; this skill writes the prose around them.
40
- - It does not write to the CRM or the accounting platform.
41
-
42
- ## Connectors
43
-
44
- Read: profile (voice samples, narrative voice). No writes.
45
-
46
- ## Profile keys
47
-
48
- - `realagent.voice_samples`
49
- - `realagent.close.narrative_voice_samples`
50
- - `realagent.cause_phrases`
@@ -1,54 +0,0 @@
1
- ---
2
- name: vendor-research
3
- description: "Public-record and CRM-history lookup on a vendor, with the profile's privacy line enforced. Used in valuation-prep, in new-instruction AML staging, and in chase-progression when a vendor goes silent. Surfaces useful context; flags sensitive signals separately."
4
- ---
5
-
6
- # Vendor research
7
-
8
- A cross-cutting building-block skill. Looks the vendor up across the sources the platform has access to and returns a structured summary with the privacy line applied.
9
-
10
- ## What it looks at
11
-
12
- - Land Registry: ownership history, joint owners, transactions
13
- - The agency's CRM history with this vendor and with the property
14
- - Council planning portal: planning applications and decisions for the property
15
- - The portal record if the property has been listed before
16
- - Public probate registry where relevant
17
- - Public news sources via the deep-research tool when the brief warrants it
18
-
19
- ## The privacy line
20
-
21
- The profile holds a privacy preference. Default behaviour:
22
-
23
- - **Surface.** Ownership and planning history.
24
- - **Flag-but-suppress.** Deaths registered against the address, ownership changes that correlate with bereavement, planning disputes, anything that the agent could not quote in the appointment without harming their reputation.
25
-
26
- The flag-but-suppress signals are not deleted; they are summarised at the top of the output as "n suppressed signals exist on this address, available on request". The operator can say "show me everything you find" to see them, or "drop the sensitive stuff" to remove the heading entirely.
27
-
28
- ## Output shape
29
-
30
- A structured summary with:
31
-
32
- - How long the vendor has owned
33
- - Last purchase price
34
- - Joint owners on the title
35
- - Planning history (one-line per material event)
36
- - Prior listings (agent, asking price, sold or withdrawn)
37
- - CRM history with this agent
38
-
39
- Plus the suppressed-signal heading if any apply.
40
-
41
- ## What it does not do
42
-
43
- - It does not draft anything to send to the vendor. That is `tone-matched-drafter`.
44
- - It does not produce a valuation. That is `pricing-scenario-builder`.
45
- - It does not write to the CRM. The calling workflow stores anything it wants kept.
46
-
47
- ## Connectors
48
-
49
- Read: Land Registry, planning portal, CRM, portal data, probate registry, deep-research tool. No writes.
50
-
51
- ## Profile keys
52
-
53
- - `realagent.privacy_line.surface` (list of signal types)
54
- - `realagent.privacy_line.suppress` (list of signal types)
@@ -1,8 +0,0 @@
1
- {
2
- "name": "real-agent-preval",
3
- "description": "Single-address pre-valuation pitch pack. One full UK address in, 5-page A4 PDF out (cover · subject valuation · market context · comparables · recently with <brand>). Consumes the real-agent-property-data MCP — no MCP tools of its own. EPC certificate fields (total_floor_area_m2, current_energy_rating, lodgement_date) are pasted by the operator into inputs.json before invocation.",
4
- "version": "0.1.0",
5
- "author": {
6
- "name": "Rubytech LLC"
7
- }
8
- }