@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,199 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "title": "property-preval inputs",
4
- "description": "Single-source contract for render.py. Mirrors the 12 property-data MCP responses for one full UK address, plus operator-supplied brand, subject (including the three EPC certificate fields pasted before invocation), market_summary, and agent_listings.",
5
- "type": "object",
6
- "required": [
7
- "out_dir", "filename_stem", "address", "postcode", "generated",
8
- "brand", "subject", "valuation", "area", "demand_trend",
9
- "market_summary", "agent_listings", "agent_overrides"
10
- ],
11
- "properties": {
12
- "out_dir": { "type": "string", "description": "Absolute path to the output directory (created if missing)." },
13
- "filename_stem": { "type": "string", "description": "PDF filename stem; .pdf appended by the renderer." },
14
- "address": { "type": "string", "description": "Full UK address as the operator gave it." },
15
- "postcode": { "type": "string", "description": "Postcode derived from the address, e.g. 'CM23 2UJ'." },
16
- "generated": { "type": "string", "description": "Human date, e.g. '19 May 2026'." },
17
-
18
- "brand": {
19
- "type": "object",
20
- "required": ["name", "tagline", "primary", "primary_dark", "accent", "paper", "paper_banded", "rule"],
21
- "properties": {
22
- "name": { "type": "string" },
23
- "tagline": { "type": "string" },
24
- "primary": { "type": "string", "description": "Hex, e.g. '#064444'." },
25
- "primary_dark": { "type": "string" },
26
- "accent": { "type": "string" },
27
- "paper": { "type": "string" },
28
- "paper_banded": { "type": "string" },
29
- "rule": { "type": "string" },
30
- "logo_light": { "type": "string", "description": "Optional filesystem path to white-on-transparent logo for the cover." },
31
- "logo_dark": { "type": "string", "description": "Optional filesystem path to full-colour logo for body-page headers." }
32
- }
33
- },
34
-
35
- "subject": {
36
- "type": "object",
37
- "required": ["cover_hero", "total_floor_area_m2", "current_energy_rating", "lodgement_date"],
38
- "properties": {
39
- "cover_hero": { "type": "string", "description": "Filesystem path or URL to a photo of the subject property — required for the cover. Renderer asserts the file exists, is ≥ 1200×800, and is not symlinked to another property's folder." },
40
- "beds": { "type": ["integer", "null"] },
41
- "type": { "type": ["string", "null"], "description": "e.g. 'Semi-detached', 'Terraced', 'Flat'." },
42
- "tenure": { "type": ["string", "null"], "description": "e.g. 'Freehold', 'Leasehold'." },
43
- "condition": { "type": ["string", "null"], "description": "'well' | 'average' | 'needs work'." },
44
- "total_floor_area_m2": { "type": "number", "description": "Total internal area in square metres, copied verbatim from the EPC certificate. Operator pastes this into inputs.json before invocation. Null aborts with epc-certificate-not-supplied." },
45
- "current_energy_rating": { "type": "string", "description": "Current energy rating from the EPC certificate, e.g. 'C'. Operator paste-in. Null aborts with epc-certificate-not-supplied." },
46
- "lodgement_date": { "type": "string", "description": "ISO date of the EPC certificate's lodgement, e.g. '2018-04-21'. Operator paste-in. Null aborts with epc-certificate-not-supplied." },
47
- "narrative": { "type": ["string", "null"], "description": "One short paragraph the operator writes about the subject — shown under the valuation panel." },
48
- "adjustments": {
49
- "type": "array",
50
- "description": "Operator-curated esoteric factors that shift the headline range. Deltas sum linearly into the final factor (1 + Σ delta_pct/100).",
51
- "items": {
52
- "type": "object",
53
- "required": ["label", "delta_pct"],
54
- "properties": {
55
- "label": { "type": "string" },
56
- "delta_pct": { "type": "number", "description": "Percent change, e.g. 3 for +3%, -8 for -8%." }
57
- }
58
- }
59
- }
60
- }
61
- },
62
-
63
- "valuation": {
64
- "type": "object",
65
- "required": ["avg_asking", "asking_psf", "avg_sold", "sold_psf", "sold_psf_low", "sold_psf_high", "sold_comps", "asking_comps"],
66
- "properties": {
67
- "avg_asking": { "type": "integer", "description": "Mean asking £ from property-data-prices." },
68
- "asking_psf": { "type": "integer", "description": "Mean asking £/sqft." },
69
- "avg_sold": { "type": "integer", "description": "Mean sold £ from property-data-sold-prices." },
70
- "sold_psf": { "type": "integer", "description": "Mean sold £/sqft (midpoint of valuation)." },
71
- "sold_psf_low": { "type": "integer", "description": "Lower bound of the sold £/sqft 70pc range." },
72
- "sold_psf_high":{ "type": "integer", "description": "Upper bound of the sold £/sqft 70pc range." },
73
- "sold_range": { "type": "array", "items": { "type": "integer" }, "minItems": 2, "maxItems": 2, "description": "Optional 70pc sold-£ range [low, high]." },
74
- "sold_comps": {
75
- "type": "array",
76
- "description": "Nearest sold transactions (≤ 6 rows in the table).",
77
- "items": {
78
- "type": "object",
79
- "required": ["date", "address", "type", "price"],
80
- "properties": {
81
- "date": { "type": "string" },
82
- "address": { "type": "string" },
83
- "type": { "type": "string" },
84
- "price": { "type": "integer" }
85
- }
86
- }
87
- },
88
- "asking_comps": {
89
- "type": "array",
90
- "description": "Live asking comps (≤ 4 tiles).",
91
- "items": {
92
- "type": "object",
93
- "required": ["address", "price"],
94
- "properties": {
95
- "address": { "type": "string" },
96
- "price": { "type": "integer" },
97
- "beds": { "type": ["integer", "null"] },
98
- "type": { "type": ["string", "null"] }
99
- }
100
- }
101
- }
102
- }
103
- },
104
-
105
- "area": {
106
- "type": "object",
107
- "required": ["crime_rating", "flood_risk", "council_tax_band_d", "population", "crime_breakdown", "council_tax_bands", "headline"],
108
- "properties": {
109
- "crime_rating": { "type": "string" },
110
- "flood_risk": { "type": "string" },
111
- "council_tax_band_d": { "type": "integer" },
112
- "population": { "type": "integer" },
113
- "crime_breakdown": { "type": "array", "items": { "type": "object", "required": ["category", "count"], "properties": { "category": {"type":"string"}, "count": {"type":"integer"} } } },
114
- "council_tax_bands": { "type": "array", "items": { "type": "object", "required": ["band", "amount"], "properties": { "band": {"type":"string"}, "amount": {"type":"integer"} } } },
115
- "headline": { "type": "string" }
116
- }
117
- },
118
-
119
- "demand_trend": {
120
- "type": "object",
121
- "required": ["demand_rating", "dom", "turnover_pct", "for_sale", "growth_series", "growth_psf_series", "rental", "type_dist"],
122
- "properties": {
123
- "demand_rating": { "type": "string" },
124
- "dom": { "type": "integer" },
125
- "turnover_pct": { "type": "integer" },
126
- "for_sale": { "type": "integer" },
127
- "sales_per_month":{ "type": "integer" },
128
- "yoy_growth_pct": { "type": "number" },
129
- "growth_series": {
130
- "type": "array",
131
- "items": { "type": "object", "required": ["label", "price"], "properties": { "label": {"type":"string"}, "price": {"type":"integer"} } }
132
- },
133
- "growth_psf_series": {
134
- "type": "array",
135
- "items": { "type": "object", "required": ["label", "psf"], "properties": { "label": {"type":"string"}, "psf": {"type":"integer"} } }
136
- },
137
- "rental": {
138
- "type": "object",
139
- "required": ["demand_rating", "dom", "turnover_pct", "for_rent"],
140
- "properties": {
141
- "demand_rating": { "type": "string" },
142
- "dom": { "type": "integer" },
143
- "turnover_pct": { "type": "integer" },
144
- "for_rent": { "type": "integer" }
145
- }
146
- },
147
- "type_dist": {
148
- "type": "array",
149
- "items": { "type": "object", "required": ["name", "pct"], "properties": { "name": {"type":"string"}, "pct": {"type":"number"} } }
150
- }
151
- }
152
- },
153
-
154
- "market_summary": {
155
- "type": "object",
156
- "required": ["headline", "paragraphs", "demand_gauge_position", "price_growth_note", "demand_note", "origin"],
157
- "properties": {
158
- "headline": { "type": "string", "description": "One-line display-italic h2 for the market context page." },
159
- "paragraphs": { "type": "array", "minItems": 2, "items": { "type": "string" }, "description": "2–3 short paragraphs. First gets a drop cap. Fewer than 2 aborts the run." },
160
- "demand_gauge_position": { "type": "string", "description": "Percentage string for the gauge marker position, e.g. '62%'." },
161
- "price_growth_note": { "type": "string" },
162
- "demand_note": { "type": "string" },
163
- "origin": { "type": "string", "enum": ["operator", "operator-edited-llm-stub"], "description": "Provenance of the paragraphs. 'agent-invented' is never permitted — the gate aborts with `market-summary-invented`." }
164
- }
165
- },
166
-
167
- "agent_listings": {
168
- "type": "array",
169
- "minItems": 1,
170
- "maxItems": 6,
171
- "description": "Agent's own recent listings to feature on the closing page. Operator paste-in (not the PropertyData sample). Empty array aborts the run.",
172
- "items": {
173
- "type": "object",
174
- "required": ["address", "price", "status", "slug", "origin"],
175
- "properties": {
176
- "url": { "type": ["string", "null"], "description": "Source URL — listing card becomes an <a> when present." },
177
- "address": { "type": "string" },
178
- "price": { "type": "integer" },
179
- "beds": { "type": ["integer", "null"] },
180
- "type": { "type": ["string", "null"] },
181
- "image": { "type": ["string", "null"], "description": "Path or URL to a tile photo for the card." },
182
- "status": { "type": "string", "enum": ["Sold", "Under offer", "For sale"], "description": "Operator picks; no default. The gate aborts if status was set when the source property.json had status:null without agent_overrides.listings_status_curated." },
183
- "slug": { "type": "string", "description": "Used to name the copied image file under img/." },
184
- "origin": { "type": "string", "description": "'operator' when the operator typed the row by hand, or the filesystem path of the source property.json the row was copied from." }
185
- }
186
- }
187
- },
188
-
189
- "agent_overrides": {
190
- "type": "object",
191
- "description": "Explicit operator confirmations that authorise bypass of adherence gates. Each override is a named boolean that lands next to the disputed value in inputs.json — auditable post-hoc.",
192
- "required": ["brand_selected_by_operator", "listings_status_curated"],
193
- "properties": {
194
- "brand_selected_by_operator": { "type": "boolean", "description": "True only when the operator told the agent which estate agent is pitching. Inferring brand from on-disk DESIGN.md files is invention." },
195
- "listings_status_curated": { "type": "boolean", "description": "True only when the operator explicitly signed off on each agent_listings[].status value." }
196
- }
197
- }
198
- }
199
- }
@@ -1,312 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="utf-8">
5
- <title>Pre-valuation · <!-- REPLACE: address --> · <!-- REPLACE: generated --> · <!-- REPLACE: brand_name --></title>
6
- <meta name="viewport" content="width=device-width,initial-scale=1">
7
- <link rel="preconnect" href="https://fonts.googleapis.com">
8
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
- <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500;1,600&family=Lora:ital,wght@0,400;0,500;0,600;1,400&family=Inter:wght@400;500;600&display=swap" rel="stylesheet">
10
- <style>
11
- :root{
12
- --teal-900:<!-- REPLACE: brand_primary -->;
13
- --teal-950:<!-- REPLACE: brand_primary_dark -->;
14
- --gold-500:<!-- REPLACE: brand_accent -->;
15
- --paper-0:#FFFFFF;
16
- --paper-25:<!-- REPLACE: brand_paper -->;
17
- --paper-50:#FBF8F8;
18
- --paper-75:<!-- REPLACE: brand_paper_banded -->;
19
- --slate-500:#56605F; --slate-600:#6E6E6E;
20
- --rule-300:<!-- REPLACE: brand_rule -->;
21
-
22
- --text-default:var(--teal-900);
23
- --text-muted:var(--slate-600);
24
- --text-accent:var(--gold-500);
25
- --text-on-dark:var(--paper-0);
26
- --surface-page:var(--paper-25);
27
- --surface-card:var(--paper-0);
28
- --surface-banded:var(--paper-75);
29
- --surface-deep:var(--teal-900);
30
- --radius-md:4px; --radius-lg:8px; --radius-xl:16px;
31
-
32
- --display:"Cormorant Garamond",Garamond,Georgia,serif;
33
- --body:"Lora",Georgia,serif;
34
- --sans:"Inter",system-ui,sans-serif;
35
- }
36
- *{box-sizing:border-box;margin:0;padding:0}
37
- html,body{background:var(--rule-300);font-family:var(--body);color:var(--text-default);font-weight:400;-webkit-font-smoothing:antialiased}
38
- a{color:inherit;text-decoration:none}
39
- .page{width:210mm;min-height:297mm;height:297mm;margin:8mm auto;background:var(--surface-page);position:relative;overflow:hidden;padding:18mm 16mm;page-break-after:always}
40
- .page.dark{background:var(--surface-deep);color:var(--text-on-dark)}
41
- .page.dark .muted{color:#B7C8C8}
42
- @page{size:A4 portrait;margin:0}
43
- @media print{html,body{background:transparent} .page{margin:0;box-shadow:none;page-break-after:always}}
44
-
45
- h1,h2,h3,h4{font-family:var(--display);font-weight:500;line-height:1.15;color:inherit}
46
- h1{font-size:48pt;letter-spacing:-1pt;font-style:italic;font-weight:400}
47
- h2{font-size:26pt;font-style:italic;font-weight:400;margin-bottom:6mm;letter-spacing:-.3pt}
48
- h3{font-size:14pt;font-weight:500}
49
- h4{font-family:var(--sans);font-size:8.5pt;font-weight:600;letter-spacing:2.2pt;text-transform:uppercase;color:var(--text-accent)}
50
- p{font-size:11pt;line-height:1.65;color:inherit;font-family:var(--body)}
51
- .muted{color:var(--text-muted);font-size:9.5pt;line-height:1.55;font-family:var(--body)}
52
- .eyebrow{font-family:var(--sans);font-weight:600;font-size:9pt;letter-spacing:3pt;text-transform:uppercase;color:var(--text-accent)}
53
- .dropcap::first-letter{font-family:var(--display);font-weight:400;font-style:italic;font-size:5em;line-height:.82;float:left;margin:.05em .12em -.08em 0;color:var(--teal-900);letter-spacing:-.04em}
54
-
55
- /* --- COVER --- */
56
- .cover-bg{position:absolute;inset:0;background:url(<!-- REPLACE: subject_hero_path -->) center/cover no-repeat}
57
- .cover-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,68,68,.55) 0%,rgba(6,68,68,.78) 55%,rgba(4,45,45,.94) 100%)}
58
- .cover-frame{position:absolute;inset:0;padding:18mm 16mm;display:flex;flex-direction:column;justify-content:space-between;z-index:1}
59
- .cover-hero h1{color:var(--text-on-dark);max-width:170mm}
60
- .cover-hero .lede{color:var(--gold-500);font-family:var(--display);font-style:italic;font-weight:400;font-size:16pt;letter-spacing:.2pt;margin-top:6mm}
61
- .cover-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8mm;border-top:1px solid rgba(255,255,255,.22);padding-top:8mm}
62
- .cover-meta dt{font-family:var(--sans);font-weight:600;font-size:8pt;letter-spacing:2pt;text-transform:uppercase;color:var(--gold-500);margin-bottom:3mm}
63
- .cover-meta dd{font-family:var(--display);font-style:italic;font-weight:500;font-size:14pt;color:var(--text-on-dark)}
64
- .cover-rule{height:1px;background:var(--gold-500);width:30mm}
65
- .pc-chip{display:inline-flex;align-items:center;padding:2.5mm 6mm;border:1px solid var(--gold-500);border-radius:50px;color:var(--gold-500);font-family:var(--sans);font-weight:600;font-size:10pt;letter-spacing:2.5pt}
66
-
67
- /* --- BODY HEAD/FOOT --- */
68
- .doc-head{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:6mm;border-bottom:1px solid var(--rule-300);margin-bottom:8mm}
69
- .doc-head .breadcrumb{font-family:var(--sans);font-weight:500;font-size:8pt;letter-spacing:2pt;text-transform:uppercase;color:var(--text-muted)}
70
- .doc-foot{position:absolute;bottom:9mm;left:16mm;right:16mm;display:flex;justify-content:space-between;font-family:var(--sans);font-weight:500;font-size:8pt;letter-spacing:1.5pt;text-transform:uppercase;color:var(--text-muted)}
71
- .page.dark .doc-foot{color:#7FA0A0}
72
-
73
- /* --- KPI TILES --- */
74
- .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:4mm;margin-bottom:6mm}
75
- .kpis.three{grid-template-columns:repeat(3,1fr)}
76
- .kpis.cube{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:4mm;margin-bottom:0;height:100%}
77
- .kpis.cube .kpi{padding:5mm;display:flex;flex-direction:column;justify-content:space-between}
78
- .kpi{background:var(--surface-card);border-radius:var(--radius-lg);padding:5mm;border:1px solid var(--rule-300);position:relative;overflow:hidden}
79
- .kpi.subject::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1.4mm;background:var(--gold-500)}
80
- .kpi .label{font-family:var(--sans);font-weight:600;font-size:7pt;letter-spacing:1.7pt;text-transform:uppercase;color:var(--text-muted);margin-bottom:2mm}
81
- .kpi .value{font-family:var(--display);font-style:italic;font-weight:500;font-size:20pt;color:var(--text-default);line-height:1;letter-spacing:-.3pt}
82
- .kpi .sub{font-size:8pt;color:var(--text-muted);margin-top:2mm;font-family:var(--body);font-style:italic}
83
- .kpi.gold{background:var(--teal-900);color:var(--text-on-dark);border:none}
84
- .kpi.gold .label{color:var(--gold-500)}
85
- .kpi.gold .value{color:var(--text-on-dark);font-size:22pt}
86
- .kpi.gold .sub{color:#B7C8C8}
87
-
88
- /* --- LAYOUTS --- */
89
- .two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:8mm;align-items:start}
90
- .panel{background:var(--surface-card);border-radius:var(--radius-lg);padding:5.5mm;border:1px solid var(--rule-300)}
91
- .panel.banded{background:var(--surface-banded)}
92
- .panel h4{margin-bottom:3mm}
93
-
94
- /* --- VALUATION PANEL --- */
95
- .val-panel{background:var(--surface-banded);border-radius:var(--radius-lg);padding:7mm;border:1px solid var(--rule-300)}
96
- .val-row{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:4mm;padding:3mm 0;border-bottom:1px dashed var(--rule-300)}
97
- .val-row:last-child{border-bottom:none}
98
- .val-row .lbl{font-family:var(--sans);font-weight:500;font-size:9pt;letter-spacing:.4pt;color:var(--text-default)}
99
- .val-row .lbl small{display:block;font-family:var(--body);font-style:italic;font-weight:400;color:var(--text-muted);font-size:8pt;letter-spacing:0;text-transform:none;margin-top:.8mm}
100
- .val-row .num{font-family:var(--display);font-style:italic;font-weight:500;font-size:18pt;color:var(--text-default);letter-spacing:-.3pt}
101
- .val-row.headline .num{font-size:22pt;color:var(--teal-900)}
102
- .val-row.adj .num{font-size:14pt;color:var(--text-muted)}
103
- .val-row.adj .num.pos{color:#2E7D63}
104
- .val-row.adj .num.neg{color:#B0463E}
105
- .val-final{margin-top:5mm;padding:5mm 6mm;background:var(--teal-900);color:var(--text-on-dark);border-radius:var(--radius-lg);display:flex;justify-content:space-between;align-items:baseline;gap:4mm}
106
- .val-final .lbl{font-family:var(--sans);font-weight:600;font-size:8pt;letter-spacing:2pt;text-transform:uppercase;color:var(--gold-500)}
107
- .val-final .num{font-family:var(--display);font-style:italic;font-weight:500;font-size:26pt;color:var(--text-on-dark);letter-spacing:-.4pt}
108
-
109
- /* --- TABLES --- */
110
- table.cmp{width:100%;border-collapse:collapse;font-size:10pt;font-family:var(--body)}
111
- table.cmp th,table.cmp td{padding:2.4mm 2mm;text-align:left;border-bottom:1px solid var(--rule-300)}
112
- table.cmp th{font-family:var(--sans);font-weight:600;font-size:7.5pt;letter-spacing:1.8pt;text-transform:uppercase;color:var(--text-muted)}
113
- table.cmp td.num{font-family:var(--display);font-style:italic;font-weight:500;text-align:right;font-size:11.5pt}
114
- table.cmp tr:last-child td{border-bottom:none}
115
-
116
- /* --- ASKING TILES (FULL WIDTH) --- */
117
- .ask-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4mm}
118
- .ask-tile{background:var(--surface-card);border:1px solid var(--rule-300);border-radius:var(--radius-md);padding:4mm}
119
- .ask-tile .addr{font-family:var(--display);font-style:italic;font-weight:500;font-size:12pt;color:var(--text-default);line-height:1.2}
120
- .ask-tile .price{font-family:var(--display);font-style:italic;font-weight:500;font-size:16pt;color:var(--teal-900);margin-top:2mm;letter-spacing:-.2pt}
121
- .ask-tile .meta{font-family:var(--sans);font-weight:500;font-size:7pt;letter-spacing:.6pt;color:var(--text-muted);margin-top:2mm;text-transform:uppercase}
122
-
123
- /* --- DIST BARS --- */
124
- .dist{display:flex;flex-direction:column;gap:3mm;margin-top:2mm}
125
- .dist-row{display:grid;grid-template-columns:40mm 1fr 14mm;align-items:center;gap:3mm}
126
- .dist-row .name{font-size:10pt;color:var(--text-default);font-family:var(--body)}
127
- .dist-row .pct{font-family:var(--display);font-style:italic;font-weight:500;font-size:12pt;color:var(--text-default);text-align:right}
128
- .bar{height:5mm;background:var(--paper-75);border-radius:var(--radius-md);overflow:hidden}
129
- .bar > span{display:block;height:100%;background:var(--teal-900);border-radius:var(--radius-md)}
130
- .bar > span.gold{background:var(--gold-500)}
131
-
132
- /* --- DEMAND GAUGE --- */
133
- .pill{display:inline-flex;align-items:center;gap:2.5mm;padding:2mm 5mm;border-radius:50px;background:var(--gold-500);color:var(--text-on-dark);font-family:var(--display);font-style:italic;font-weight:500;font-size:11pt;letter-spacing:.3pt}
134
- .pill::before{content:"";width:2.2mm;height:2.2mm;border-radius:50%;background:#fff}
135
- .gauge{display:flex;align-items:center;gap:6mm;margin-top:4mm}
136
- .gauge-track{flex:1;height:5mm;background:var(--paper-75);border-radius:50px;position:relative;overflow:hidden}
137
- .gauge-fill{position:absolute;inset:0 50% 0 0;background:linear-gradient(90deg,var(--teal-900),var(--gold-500))}
138
- .gauge-marker{position:absolute;top:-2mm;width:1.2mm;height:9mm;background:var(--text-default);border-radius:2px}
139
- .gauge-ends{display:flex;justify-content:space-between;font-family:var(--sans);font-weight:500;font-size:7.5pt;letter-spacing:1.5pt;text-transform:uppercase;color:var(--text-muted);margin-top:2mm}
140
-
141
- /* --- SPARKLINE --- */
142
- .spark{width:100%;height:36mm;display:block;background:var(--surface-card);border:1px solid var(--rule-300);border-radius:var(--radius-md)}
143
- .spark .pl{fill:none;stroke:var(--teal-900);stroke-width:1.4}
144
- .spark .pl-psf{fill:none;stroke:var(--gold-500);stroke-width:1.4;stroke-dasharray:2 1.5}
145
- .spark .pt{fill:var(--teal-900)}
146
- .spark .pt-psf{fill:var(--gold-500)}
147
- .spark text{font-family:Inter,sans-serif;font-size:5pt;fill:#6E6E6E;letter-spacing:.4pt}
148
- .spark .axis{stroke:var(--rule-300);stroke-width:.4}
149
- .legend{display:flex;gap:6mm;font-family:var(--sans);font-weight:500;font-size:7pt;letter-spacing:1.3pt;text-transform:uppercase;color:var(--text-muted);margin-top:2mm}
150
- .legend .sw{display:inline-block;width:6mm;height:1mm;vertical-align:middle;margin-right:2mm;background:var(--teal-900)}
151
- .legend .sw.gold{background:var(--gold-500)}
152
-
153
- /* --- AGENT LISTINGS --- */
154
- .listings{display:grid;grid-template-columns:repeat(2,1fr);gap:4mm;margin-top:3mm}
155
- .listing{display:grid;grid-template-columns:50mm 1fr;border:1px solid var(--rule-300);border-radius:var(--radius-xl);overflow:hidden;background:var(--surface-card);transition:background 200ms,border-color 200ms}
156
- .listing:hover{background:var(--paper-50);border-color:var(--gold-500)}
157
- .listing .photo{position:relative;aspect-ratio:4/3;background:var(--paper-75)}
158
- .listing .photo img{width:100%;height:100%;object-fit:cover;display:block}
159
- .listing .photo .badge{position:absolute;left:2mm;top:2mm;background:var(--gold-500);color:#fff;font-family:var(--sans);font-weight:600;font-size:6pt;letter-spacing:1.2pt;text-transform:uppercase;padding:.9mm 2.2mm;border-radius:50px}
160
- .listing .photo .badge.sold{background:#2E7D63}
161
- .listing .photo .badge.under{background:#7C5BC4}
162
- .listing .meta{padding:3mm 4mm;display:flex;flex-direction:column;justify-content:center;gap:.5mm}
163
- .listing .meta .addr{font-family:var(--display);font-style:italic;font-weight:500;font-size:13pt;color:var(--text-default);line-height:1.15;letter-spacing:-.2pt}
164
- .listing .meta .price{font-family:var(--display);font-style:italic;font-weight:500;font-size:14pt;color:var(--text-default);margin-top:1mm;line-height:1;letter-spacing:-.2pt}
165
- .listing .meta .kfs{display:flex;flex-wrap:wrap;gap:1.2mm;margin-top:1.5mm}
166
- .listing .meta .kfs span{font-family:var(--sans);font-weight:500;font-size:6.5pt;letter-spacing:.4pt;color:var(--text-default);background:var(--paper-75);padding:.8mm 2mm;border-radius:50px}
167
-
168
- /* --- SOURCES --- */
169
- .sources{margin-top:6mm;padding-top:5mm;border-top:1px solid var(--rule-300)}
170
- .sources h4{margin-bottom:3mm}
171
- .sources p{font-size:8pt;color:var(--text-muted);line-height:1.55;font-family:var(--body);font-style:italic}
172
- .sources p + p{margin-top:2.5mm}
173
-
174
- /* --- WORDMARK FALLBACK --- */
175
- .wm{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1;color:var(--teal-900)}
176
- .wm.light{color:var(--paper-0)}
177
- .wm-name{font-family:var(--display);font-weight:600;font-style:normal;font-size:34pt;letter-spacing:-1pt;line-height:.9}
178
- .wm-sub{font-family:var(--sans);font-weight:600;font-size:7pt;letter-spacing:2pt;text-transform:uppercase;margin-top:2mm}
179
- .wm.small .wm-name{font-size:20pt}
180
- .wm.small .wm-sub{margin-top:.8mm;font-size:5.5pt;letter-spacing:1.8pt}
181
- </style>
182
- </head>
183
- <body>
184
-
185
- <!-- PAGE 1 — COVER -->
186
- <section class="page dark">
187
- <div class="cover-bg"></div>
188
- <div class="cover-frame">
189
- <div>
190
- <!-- REPLACE: wordmark_light -->
191
- </div>
192
- <div class="cover-hero">
193
- <div class="cover-rule"></div>
194
- <h4 style="color:var(--gold-500);margin:6mm 0 4mm"><!-- REPLACE: brand_name --> · Pre-valuation</h4>
195
- <h1><!-- REPLACE: address --></h1>
196
- <p class="lede">A view of what this property is worth — <!-- REPLACE: generated -->.</p>
197
- <div style="margin-top:8mm"><span class="pc-chip"><!-- REPLACE: postcode --></span></div>
198
- </div>
199
- <dl class="cover-meta">
200
- <div><dt>Report</dt><dd>Pre-valuation</dd></div>
201
- <div><dt>Address</dt><dd style="font-size:11pt;line-height:1.2"><!-- REPLACE: address_short --></dd></div>
202
- <div><dt>Postcode</dt><dd><!-- REPLACE: postcode --></dd></div>
203
- <div><dt>Generated</dt><dd><!-- REPLACE: generated --></dd></div>
204
- </dl>
205
- </div>
206
- <div class="doc-foot" style="z-index:2"><span><!-- REPLACE: brand_name --> · Property Intelligence</span><span>01</span></div>
207
- </section>
208
-
209
- <!-- PAGE 2 — SUBJECT VALUATION -->
210
- <section class="page">
211
- <header class="doc-head">
212
- <!-- REPLACE: wordmark_dark -->
213
- <div class="breadcrumb">Subject valuation · <!-- REPLACE: postcode --> · <!-- REPLACE: generated --></div>
214
- </header>
215
- <div class="eyebrow">Subject property</div>
216
- <h2 style="margin-top:3mm">What this property is worth.</h2>
217
- <div class="kpis">
218
- <div class="kpi subject"><div class="label">Floor area</div><div class="value"><!-- REPLACE: kpi_subject_sqft --></div><div class="sub"><!-- REPLACE: kpi_subject_sqft_sub --></div></div>
219
- <div class="kpi subject"><div class="label">Bedrooms</div><div class="value"><!-- REPLACE: kpi_subject_beds --></div><div class="sub">As recorded</div></div>
220
- <div class="kpi subject"><div class="label">EPC rating</div><div class="value"><!-- REPLACE: kpi_subject_epc --></div><div class="sub"><!-- REPLACE: kpi_subject_epc_sub --></div></div>
221
- <div class="kpi subject"><div class="label">Type</div><div class="value" style="font-size:16pt"><!-- REPLACE: kpi_subject_type --></div><div class="sub"><!-- REPLACE: kpi_subject_tenure --></div></div>
222
- </div>
223
- <!-- REPLACE: valuation_block -->
224
- <p class="muted" style="margin-top:6mm;max-width:170mm"><!-- REPLACE: subject_narrative --></p>
225
- <div class="doc-foot"><span><!-- REPLACE: brand_name --> · Property Intelligence</span><span>02</span></div>
226
- </section>
227
-
228
- <!-- PAGE 3 — MARKET CONTEXT -->
229
- <section class="page">
230
- <header class="doc-head">
231
- <!-- REPLACE: wordmark_dark -->
232
- <div class="breadcrumb">Market context · <!-- REPLACE: postcode --> · <!-- REPLACE: generated --></div>
233
- </header>
234
- <div class="eyebrow">Market summary</div>
235
- <h2 style="margin-top:3mm"><!-- REPLACE: summary_headline --></h2>
236
- <div class="summary" style="max-width:170mm"><!-- REPLACE: summary_paragraphs --></div>
237
- <div style="height:5mm"></div>
238
- <div class="kpis three">
239
- <div class="kpi gold"><div class="label">Average asking £</div><div class="value"><!-- REPLACE: kpi_avg_asking --></div><div class="sub">Current listings · <!-- REPLACE: postcode --></div></div>
240
- <div class="kpi"><div class="label">Average sold £</div><div class="value"><!-- REPLACE: kpi_avg_sold --></div><div class="sub">Completed transactions</div></div>
241
- <div class="kpi"><div class="label">Price per sq ft</div><div class="value"><!-- REPLACE: kpi_psf --></div><div class="sub">Asking-price basis</div></div>
242
- </div>
243
- <div class="two-col" style="align-items:stretch">
244
- <div class="panel banded" style="display:flex;flex-direction:column">
245
- <h4>Price growth</h4>
246
- <div style="display:flex;align-items:baseline;gap:4mm;margin-top:3mm">
247
- <span style="font-family:var(--display);font-style:italic;font-weight:500;font-size:30pt;color:var(--teal-900);line-height:1;letter-spacing:-.5pt"><!-- REPLACE: kpi_yoy --></span>
248
- <span class="muted" style="font-style:italic">year on year</span>
249
- </div>
250
- <p class="muted" style="margin-top:3mm"><!-- REPLACE: price_growth_note --></p>
251
- </div>
252
- <div class="panel" style="display:flex;flex-direction:column">
253
- <h4>Demand rating</h4>
254
- <div style="margin-top:3mm"><span class="pill"><!-- REPLACE: demand_rating --></span></div>
255
- <div class="gauge"><div class="gauge-track"><div class="gauge-fill"></div><div class="gauge-marker" style="left:<!-- REPLACE: gauge_position -->"></div></div></div>
256
- <div class="gauge-ends"><span>Buyer's market</span><span>Seller's market</span></div>
257
- <p class="muted" style="margin-top:4mm"><!-- REPLACE: demand_note --></p>
258
- </div>
259
- </div>
260
- <div class="panel" style="margin-top:5mm">
261
- <h4>7-year price trend · £ and £/sqft</h4>
262
- <!-- REPLACE: spark_svg -->
263
- <div class="legend"><span><span class="sw"></span>Average £</span><span><span class="sw gold"></span>£/sqft</span></div>
264
- </div>
265
- <div class="doc-foot"><span><!-- REPLACE: brand_name --> · Property Intelligence</span><span>03</span></div>
266
- </section>
267
-
268
- <!-- PAGE 4 — COMPARABLES (FULL-WIDTH, STACKED) -->
269
- <section class="page">
270
- <header class="doc-head">
271
- <!-- REPLACE: wordmark_dark -->
272
- <div class="breadcrumb">Comparables · <!-- REPLACE: postcode --> · <!-- REPLACE: generated --></div>
273
- </header>
274
- <div class="eyebrow">Evidence</div>
275
- <h2 style="margin-top:3mm;margin-bottom:5mm">The comparables behind the range.</h2>
276
- <div class="panel banded">
277
- <h4>Nearest sold transactions · Land Registry</h4>
278
- <table class="cmp" style="margin-top:3mm">
279
- <tr><th>Date</th><th>Address</th><th>Type</th><th style="text-align:right">Price</th></tr>
280
- <!-- REPLACE: sold_comps_rows -->
281
- </table>
282
- </div>
283
- <div class="panel" style="margin-top:5mm">
284
- <h4>Live asking comparables</h4>
285
- <div class="ask-grid" style="margin-top:3mm">
286
- <!-- REPLACE: asking_comps_tiles -->
287
- </div>
288
- </div>
289
- <div class="doc-foot"><span><!-- REPLACE: brand_name --> · Property Intelligence</span><span>04</span></div>
290
- </section>
291
-
292
- <!-- PAGE 5 — AGENT LISTINGS + SOURCES -->
293
- <section class="page">
294
- <header class="doc-head">
295
- <!-- REPLACE: wordmark_dark -->
296
- <div class="breadcrumb">Recently with <!-- REPLACE: brand_name --> · <!-- REPLACE: postcode --></div>
297
- </header>
298
- <div class="eyebrow">Recently with <!-- REPLACE: brand_name --></div>
299
- <h2 style="margin-top:3mm;margin-bottom:2mm">What we have been delivering nearby.</h2>
300
- <p class="muted" style="max-width:170mm">A selection of recent sales, properties under offer and live instructions handled by <!-- REPLACE: brand_name -->. If you would like the same outcome on <!-- REPLACE: address_short -->, we would welcome a conversation.</p>
301
- <div class="listings"><!-- REPLACE: agent_listings_cards --></div>
302
- <div class="sources">
303
- <h4>Sources &amp; methodology</h4>
304
- <p><strong>Sources.</strong> PropertyData (asking, sold, demand, growth, crime, flood, council tax, property-type mix). HM Land Registry (sold transactions). Home Office (recorded crime). Environment Agency (flood risk). Valuation Office Agency (council-tax bands). Department for Levelling Up, Housing &amp; Communities — EPC register (subject floor area &amp; energy rating).</p>
305
- <p><strong>Method.</strong> Twelve PropertyData endpoints called on the postcode derived from the address, plus one EPC lookup on the subject address. Valuation range = subject floor area × the Land Registry 70-percent £/sqft band, with operator-supplied adjustments applied linearly. Live and recent listings shown on the previous page were picked by <!-- REPLACE: brand_name -->.</p>
306
- <p><strong>Accuracy.</strong> Property data can change rapidly. Figures are estimates — obtain independent professional advice for specific decisions. This pack is not financial or investment advice.</p>
307
- </div>
308
- <div class="doc-foot"><span><!-- REPLACE: brand_name --> · Generated <!-- REPLACE: generated --> · <!-- REPLACE: postcode --></span><span>05</span></div>
309
- </section>
310
-
311
- </body>
312
- </html>
@@ -1,17 +0,0 @@
1
- {
2
- "name": "real-agent-property-data",
3
- "description": "PropertyData UK market analytics — postcode-keyed valuation, asking prices, sold prices, £/sqft baselines and growth, demand (sales + rent), yields, area risk (crime, flood), council tax, planning precedent, UPRN resolution, property-type mix, national HPI. One encrypted API key per account.",
4
- "version": "0.1.0",
5
- "author": {
6
- "name": "Rubytech LLC"
7
- },
8
- "mcpServers": {
9
- "real-agent-property-data": {
10
- "type": "stdio",
11
- "command": "node",
12
- "args": [
13
- "${CLAUDE_PLUGIN_ROOT}/mcp/dist/index.js"
14
- ]
15
- }
16
- }
17
- }